Пример #1
0
    protected override bool EvaluateIsValid()
    {
        string value = GetControlValidationValue(ControlToValidate);

        if (AllowEmpty && String.IsNullOrEmpty(value))
        {
            return(true);
        }

        return(LuhnUtility.IsCardNumberValid(value, AllowSpaces));
    }
Пример #2
0
    public override bool IsValid(object value)
    {
        string cardNumber = (string)value;

        if (String.IsNullOrEmpty(cardNumber))
        {
            return(AllowEmpty);
        }

        return(LuhnUtility.IsCardNumberValid(cardNumber, AllowSpaces));
    }
Пример #3
0
        public void CalculateCheckDigitShouldFailForInvalidInput(string value)
        {
            var exception = Assert.ThrowsAny <Exception>(() => LuhnUtility.CalculateCheckDigit(value));

            Assert.Contains(
                exception.GetType(),
                new List <Type>
            {
                typeof(ArgumentNullException),
                typeof(ArgumentException)
            }
                );
        }
Пример #4
0
 public void ValidationShouldReturnTrueForValidInput(string input)
 {
     Assert.True(LuhnUtility.Validate(input));
 }
Пример #5
0
 public void ValidationShouldReturnFalseButNotThrowForInvalidInput(string input)
 {
     Assert.False(LuhnUtility.Validate(input));
 }
Пример #6
0
 public void CalculateCheckDigitShouldGenerateValidCheckDigits(string inputValue, int expectedCheckDigit)
 {
     Assert.True(LuhnUtility.TryCalculateCheckDigit(inputValue, out var actualCheckDigit));
     Assert.Equal(expectedCheckDigit, actualCheckDigit);
 }