diff --git a/pkgs/racket-test/tests/racket/contract/prof.rkt b/pkgs/racket-test/tests/racket/contract/prof.rkt index 38191641bb..47c19c46a7 100644 --- a/pkgs/racket-test/tests/racket/contract/prof.rkt +++ b/pkgs/racket-test/tests/racket/contract/prof.rkt @@ -466,4 +466,51 @@ 'pos 'neg) 1)) + (test/spec-passed + 'contract-marks50 + '((contract (opt/c (-> neg-blame? any/c)) (λ (x) x) 'pos 'neg) 1)) + + (test/spec-passed + 'contract-marks51 + '((contract (opt/c (-> any/c pos-blame?)) (λ (x) x) 'pos 'neg) 1)) + + (test/spec-passed + 'contract-marks52 + '((contract (->d ([x pos-blame?] [y pos-blame?]) + #:rest z pos-blame? + #:pre pos-blame? + [res neg-blame?] + #:post neg-blame?) + (lambda (x y . z) 3) + 'pos 'neg) + 1 2 3)) + + (test/spec-passed + 'contract-marks53 + '((contract (->d ([x pos-blame?] [y pos-blame?]) + ([w pos-blame?]) + #:rest z pos-blame? + #:pre pos-blame? + [res neg-blame?] + #:post neg-blame?) + (lambda (x y [w 3] . z) 3) + 'pos 'neg) + 1 2 3 4)) + + (test/spec-passed + 'contract-marks54 + '((contract (->d ([x pos-blame?] [y pos-blame?]) + [res neg-blame?]) + (lambda (x y) 3) + 'pos 'neg) + 1 2)) + + (test/spec-passed + 'contract-marks55 + '((contract (->d ([x pos-blame?]) + [res neg-blame?]) + (lambda (x) 3) + 'pos 'neg) + 1)) + )