public void CheckCardNumber_CorrectNumber_ReturnTrue(string cardNumber) { // Act var cardIsValid = _cardChecker.CheckCardNumber(cardNumber); // Assert Assert.True(cardIsValid); }
/// <inheritdoc /> public CardType GetCardType(string number) { if (!_cardChecker.CheckCardNumber(number)) { return(CardType.OTHER); } var firstDigit = number[0]; var secondDigit = number[1]; switch (firstDigit) { case '2': return(CardType.MIR); case '4': return(CardType.VISA); case '5' when secondDigit == '0' || secondDigit > '5': return(CardType.MAESTRO); case '5' when secondDigit >= '1' && secondDigit <= '5': return(CardType.MASTERCARD); case '6': return(CardType.MAESTRO); default: return(CardType.OTHER); } }