diff --git a/collects/tests/mzscheme/contracts.ss b/collects/tests/mzscheme/contracts.ss index a381ba3..d439730 100644 --- a/collects/tests/mzscheme/contracts.ss +++ b/collects/tests/mzscheme/contracts.ss @@ -425,6 +425,38 @@ 'union7 '((contract (union false? (-> integer? integer?)) (lambda (x) x) 'pos 'neg) 1)) - ) + (test/spec-passed + 'define/contract1 + '(let () + (define/contract i integer? 1) + i)) + + (test/spec-failed + 'define/contract2 + '(let () + (define/contract i integer? #t) + i) + "i") + + (test/spec-failed + 'define/contract3 + '(let () + (define/contract i (-> integer? integer?) (lambda (x) #t)) + (i 1)) + "i") + + (test/spec-failed + 'define/contract4 + '(let () + (define/contract i (-> integer? integer?) (lambda (x) 1)) + (i #f)) + "<>") + + (test/spec-failed + 'define/contract5 + '(let () + (define/contract i (-> integer? integer?) (lambda (x) (i #t))) + (i 1)) + "<>")) (report-errs) \ No newline at end of file