@@ -956,10 +956,11 @@ class Validate extends AnyFunSuite {
956956 import com .github .gekomad .regexcollection .Collection .Validator
957957 import scala .util .Try
958958
959- implicit val validator = Validator [Foo ]((a : String ) =>
960- Try (a.toInt) match {
961- case Failure (_) => None
962- case Success (i) => if (i % 2 == 0 ) Option (a) else None
959+ implicit val validator = Validator [Foo ](
960+ (a : String ) =>
961+ Try (a.toInt) match {
962+ case Failure (_) => None
963+ case Success (i) => if (i % 2 == 0 ) Option (a) else None
963964 }
964965 )
965966
@@ -975,11 +976,55 @@ class Validate extends AnyFunSuite {
975976 assert(validate[Comments ](" hi" ) == None )
976977 assert(validate[Comments ](" /*hi" ) == None )
977978 assert(validate[Comments ](" /*hi*/" ) == Some (" /*hi*/" ))
978- assert(validate[Comments ](
979- """ /*hi
980- |foo * */""" .stripMargin) == Some (
981- """ /*hi
979+ assert(validate[Comments ](""" /*hi
980+ |foo * */""" .stripMargin) == Some (""" /*hi
982981 |foo * */""" .stripMargin))
983982 }
984983
984+ test(" CreditCardVisa" ) {
985+ import com .github .gekomad .regexcollection .CreditCardVisa
986+ import com .github .gekomad .regexcollection .Validate .validate
987+ assert(validate[CreditCardVisa ](" 4111x" ) == None )
988+ assert(validate[CreditCardVisa ](" 411111a111111" ) == None )
989+ assert(validate[CreditCardVisa ](" 4111111111111111" ) == Some (" 4111111111111111" ))
990+ assert(validate[CreditCardVisa ](" 4111111111111" ) == Some (" 4111111111111" ))
991+ }
992+
993+ test(" CreditCarMasterCard" ) {
994+ import com .github .gekomad .regexcollection .CreditCardMasterCard
995+ import com .github .gekomad .regexcollection .Validate .validate
996+ assert(validate[CreditCardMasterCard ](" 4111x" ) == None )
997+ assert(validate[CreditCardMasterCard ](" 550000000a000004" ) == None )
998+ assert(validate[CreditCardMasterCard ](" 5500000000000004" ) == Some (" 5500000000000004" ))
999+ }
1000+
1001+ test(" CreditCarAmericanExpress" ) {
1002+ import com .github .gekomad .regexcollection .CreditCardAmericanExpress
1003+ import com .github .gekomad .regexcollection .Validate .validate
1004+ assert(validate[CreditCardAmericanExpress ](" 4111x" ) == None )
1005+ assert(validate[CreditCardAmericanExpress ](" 140000000000009" ) == None )
1006+ assert(validate[CreditCardAmericanExpress ](" 340000000000009" ) == Some (" 340000000000009" ))
1007+ }
1008+
1009+ test(" CreditCarDinersClub" ) {
1010+ import com .github .gekomad .regexcollection .CreditCardinersClub
1011+ import com .github .gekomad .regexcollection .Validate .validate
1012+ assert(validate[CreditCardinersClub ](" 4111x" ) == None )
1013+ assert(validate[CreditCardinersClub ](" 30000000000004" ) == Some (" 30000000000004" ))
1014+ }
1015+
1016+ test(" CreditCardDiscover" ) {
1017+ import com .github .gekomad .regexcollection .CreditCardDiscover
1018+ import com .github .gekomad .regexcollection .Validate .validate
1019+ assert(validate[CreditCardDiscover ](" 4111x" ) == None )
1020+ assert(validate[CreditCardDiscover ](" 6011000000000004" ) == Some (" 6011000000000004" ))
1021+ }
1022+
1023+ test(" CreditCardJCB" ) {
1024+ import com .github .gekomad .regexcollection .CreditCardJCB
1025+ import com .github .gekomad .regexcollection .Validate .validate
1026+ assert(validate[CreditCardJCB ](" 4111x" ) == None )
1027+ assert(validate[CreditCardJCB ](" 3588000000000009" ) == Some (" 3588000000000009" ))
1028+ }
1029+
9851030}
0 commit comments