Exemplo n.º 1
0
            public void GivenAValidLuhnNumber_CheckLuhn_ReturnsTrue(string number)
            {
                // Arrange.

                // Act and Assert.
                Luhn.CheckLuhn(number).ShouldBe(true);
            }
        public CardRequestModelValidator()
        {
            RuleFor(x => x.Name)
            .NotEmpty();

            RuleFor(x => x.Number)
            .Must(number => Luhn.CheckLuhn(number));

            RuleFor(x => x.ExpiryMonth)
            .InclusiveBetween(1, 12);

            RuleFor(x => x.ExpiryYear)
            .InclusiveBetween(DateTime.UtcNow.AddYears(-1).Year, DateTime.UtcNow.AddYears(10).Year);

            RuleFor(x => x.Cvv)
            .NotEmpty();
        }