public ClassWithConstructorWithMultipleSubstitutableAbstractParametersThatThrowsCorrectExceptions(SubstitutableAbstractClass parameter1, SubstitutableAbstractClass parameter2)
 {
     if (parameter1 == null)
     {
         throw new ArgumentNullException(nameof(parameter1));
     }
     if (parameter2 == null)
     {
         throw new ArgumentNullException(nameof(parameter2));
     }
 }
#pragma warning restore 169

            public ClassWithConstructorWithSubstitutableParameterThatThrowsIncorrectExceptions(SubstitutableAbstractClass parameter1)
            {
                // ReSharper disable once NotResolvedInText
                if (parameter1 == null)
                {
                    throw new ArgumentNullException("WrongParameterName");
                }
            }
 public ClassWithConstructorWithMultipleSubstitutableAbstractParametersThatThrowsCorrectExceptions(SubstitutableAbstractClass parameter1, SubstitutableAbstractClass parameter2)
 {
     if (parameter1 == null) throw new ArgumentNullException("parameter1");
     if (parameter2 == null) throw new ArgumentNullException("parameter2");
 }
#pragma warning restore 169

            public ClassWithConstructorWithSubstitutableParameterThatThrowsCorrectExceptions(SubstitutableAbstractClass parameter1)
            {
                if (parameter1 == null)
                {
                    throw new ArgumentNullException(nameof(parameter1));
                }
            }
#pragma warning restore 169

            public ClassWithConstructorWithSubstitutableParameterThatThrowsIncorrectExceptions(SubstitutableAbstractClass parameter1)
            {
                if (parameter1 == null) throw new ArgumentNullException("WrongParameterName");
            }