bring contract tests up to date with changes to undefined

This commit is contained in:
Robby Findler 2014-04-16 22:05:23 -05:00
parent 5db4514004
commit 80c27cd3b4

View File

@ -5,12 +5,13 @@
(define-syntax (test-name stx) (define-syntax (test-name stx)
(syntax-case stx () (syntax-case stx ()
[(_ name contract) [(_ name contract)
#'(do-name-test 'name 'contract)])) (with-syntax ([line (syntax-line stx)])
#'(do-name-test line 'name 'contract))]))
(define (do-name-test name contract-exp) (define (do-name-test line name contract-exp)
(contract-eval #:test-case-name "test a name" (contract-eval #:test-case-name (format "name test on line ~a" line)
`(,test ,name contract-name ,contract-exp)) `(,test ,name contract-name ,contract-exp))
(contract-eval #:test-case-name "test a name opt/c" (contract-eval #:test-case-name (format "opt/c name test on line ~a" line)
`(,test ,name contract-name (opt/c ,contract-exp)))) `(,test ,name contract-name (opt/c ,contract-exp))))
(parameterize ([current-contract-namespace (make-basic-contract-namespace (parameterize ([current-contract-namespace (make-basic-contract-namespace
@ -174,9 +175,9 @@
(test-name 'printable/c printable/c) (test-name 'printable/c printable/c)
(test-name '(or/c 'a 'b 'c) (symbols 'a 'b 'c)) (test-name '(or/c 'a 'b 'c) (symbols 'a 'b 'c))
(test-name '(or/c 1 2 3) (one-of/c 1 2 3)) (test-name '(or/c 1 2 3) (one-of/c 1 2 3))
(test-name '(or/c '() 'x 1 #f #\a void? undefined?) (test-name '(or/c '() 'x 1 #f #\a void?)
(one-of/c '() 'x 1 #f #\a (void) (letrec ([x x]) x))) (one-of/c '() 'x 1 #f #\a (void)))
(test-name '(or/c #f #t #\a "x") (or/c #f #t #\a "x")) (test-name '(or/c #f #t #\a "x") (or/c #f #t #\a "x"))
(test-name '(or/c #f #t #\a "x" #rx"x" #rx#"x") (or/c #f #t #\a "x" #rx"x" #rx#"x")) (test-name '(or/c #f #t #\a "x" #rx"x" #rx#"x") (or/c #f #t #\a "x" #rx"x" #rx#"x"))