ArgumentNullException

I’d never looked too hard at what ArgumentNullException actually throws, including formatting. A test that includes it:

public static List<int> GetRandomInterval(int lowerLimit, int upperLimit, int maxDistance, Random rand) {
          if (rand == null) {
              throw new ArgumentNullException(nameof(rand));
          }

[TestMethod]
     [ExpectedException(typeof(ArgumentNullException))]
     public void PassingInNullRandomToGetRandomIntervalThrowsException() {
         Random rand = null;
         try {
             // ReSharper disable once ExpressionIsAlwaysNull
             NumberUtilities.GetRandomInterval(LowerLimit, UpperLimit, MaxDistance, rand);
         }
         catch (ArgumentNullException e) {
             Assert.AreEqual("Value cannot be null.\r\nParameter name: rand", e.Message);
             throw;
         }
     }