#lang racket/base
(require (planet neil/overeasy:2)
"ccnum.rkt")
(test-section 'ccnum
(test (credit-card-number-seems-ok? "4408 0412 3456 7893") #t)
(test (credit-card-number-seems-ok? "4408041234567893") #t)
(test (credit-card-number-seems-ok? " 4408041234567893 ") #t)
(test (credit-card-number-seems-ok? "5368 2358 9683 1135") #t)
(test (credit-card-number-seems-ok? "4242 4242 4242 4242") #t)
(test (credit-card-number-seems-ok? "0") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7890") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7891") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7892") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7894") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7895") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7896") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7897") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7898") #f)
(test (credit-card-number-seems-ok? "4408 0412 3456 7899") #f)
(test (credit-card-number-seems-ok? "4403 1234 5678 9012") #f)
(test (credit-card-number-seems-ok? "4000 3456 7890 1234") #f)
(test (credit-card-number-seems-ok? "4544 1234 5678 9123") #f)
(test (credit-card-number-seems-ok? "4417 1234 5678 9112") #f)
(test (credit-card-number-seems-ok? "1234 5678 9012 3456") #f)
(test (credit-card-number-seems-ok? "4417 1234 5678 9112") #f)
(test (credit-card-number-seems-ok? "5490 1234 5678 9123") #f)
(test (credit-card-number-seems-ok? "5410 5678 1234 5678") #f)
(test (credit-card-number-seems-ok? "4104 1600 1234 5678") #f)
(test (credit-card-number-seems-ok? "3759 876543 21001") #f)
(test (credit-card-number-seems-ok? "1") #f)
(test (credit-card-number-seems-ok? "trump") #f)
(test (credit-card-number-seems-ok? "") #f))