public void GivenACardIssuer_RandomCardNumber_ReturnsAValidCard_Length_MaxLength(CardIssuer cardIssuer) { // Arrange. var maxLength = TestHelperUtilities.Lengths(cardIssuer).Last(); // Act. var number = CreditCardFactory.RandomCardNumber(cardIssuer, maxLength); // Assert. var detector = new CreditCardDetector(number); number.Length.ShouldBe(maxLength); detector.Brand.ShouldBe(cardIssuer); detector.IsValid(cardIssuer).ShouldBe(true); detector.IsValid().ShouldBe(true); }
public void GivenACardIssuer_RandomCardNumber_ReturnsAValidCard_Length_MinLength(CardIssuer cardIssuer) { // Arrange. var lengths = TestHelperUtilities.Lengths(cardIssuer); foreach (var len in lengths) { // Act. var number = CreditCardFactory.RandomCardNumber(cardIssuer, len); // Assert. var detector = new CreditCardDetector(number); number.Length.ShouldBe(len); detector.Brand.ShouldBe(cardIssuer); detector.IsValid(cardIssuer).ShouldBe(true); detector.IsValid().ShouldBe(true); } }