From 7eb3ef16efb7e3aafcfa328c83ae4acee861613e Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Tue, 8 Oct 2013 22:43:54 -0700 Subject: [PATCH] Making test suite files all meet a standard interface. All test suite files now export one identifier with the name 'tests'. This allows for them to be treated the same across the test infrastructure. original commit: 14c340a77bc3d35dc3edc489b0ff01719bcf31e7 --- .../typed-racket/unit-tests/all-tests.rkt | 62 ++++++++----------- .../unit-tests/contract-tests.rkt | 4 +- .../typed-racket/unit-tests/infer-tests.rkt | 4 +- .../unit-tests/interactive-tests.rkt | 4 +- .../unit-tests/keyword-expansion-test.rkt | 4 +- .../unit-tests/parse-type-tests.rkt | 4 +- .../unit-tests/remove-intersect-tests.rkt | 8 ++- .../special-env-typecheck-tests.rkt | 4 +- .../typed-racket/unit-tests/subst-tests.rkt | 3 +- .../typed-racket/unit-tests/subtype-tests.rkt | 4 +- .../unit-tests/type-equal-tests.rkt | 4 +- .../unit-tests/typecheck-tests.rkt | 4 +- 12 files changed, 53 insertions(+), 56 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/all-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/all-tests.rkt index b459bdbd..945b7850 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/all-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/all-tests.rkt @@ -1,41 +1,33 @@ -#lang scheme/base +#lang racket/base (require - "test-utils.rkt" - "typecheck-tests.rkt" ;;pass - - "subtype-tests.rkt" ;; pass - "type-equal-tests.rkt" ;; pass - "remove-intersect-tests.rkt" ;; pass - "parse-type-tests.rkt" ;; pass - "subst-tests.rkt" ;; pass - "infer-tests.rkt" ;; pass - "type-annotation-test.rkt" ;; pass - "keyword-expansion-test.rkt" ;;pass - "special-env-typecheck-tests.rkt" ;;pass" - - "contract-tests.rkt" - "interactive-tests.rkt" - - rackunit) + rackunit + (for-syntax racket/base syntax/parse racket/syntax)) (provide unit-tests) +(define-syntax define-tests + (syntax-parser + [(_ test-name:id files:expr ...) + (define/with-syntax (new-names ...) + (generate-temporaries #'(files ...))) + #'(begin + (require (only-in files [tests new-names]) ...) + (define test-name + (make-test-suite + "Unit Tests" + (list new-names ...))))])) -(define unit-tests - (make-test-suite - "Unit Tests" - (list - typecheck-special-tests - typecheck-tests - subtype-tests - type-equal-tests - restrict-tests - remove-tests - overlap-tests - parse-type-tests - type-annotation-tests - fv-tests - contract-tests - keyword-tests - interactive-tests))) +(define-tests unit-tests + "typecheck-tests.rkt" + "subtype-tests.rkt" + "type-equal-tests.rkt" + "remove-intersect-tests.rkt" + "parse-type-tests.rkt" + "subst-tests.rkt" + "infer-tests.rkt" + "type-annotation-test.rkt" + "keyword-expansion-test.rkt" + "special-env-typecheck-tests.rkt" + "contract-tests.rkt" + "interactive-tests.rkt") diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/contract-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/contract-tests.rkt index aa42a8b7..bba1ace9 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/contract-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/contract-tests.rkt @@ -7,7 +7,7 @@ (rep type-rep) (types abbrev numeric-tower union) rackunit) -(provide contract-tests) +(provide tests) (define-syntax-rule (t e) @@ -48,7 +48,7 @@ -(define contract-tests +(define tests (test-suite "Contract Tests" known-bugs (t (-Number . -> . -Number)) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/infer-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/infer-tests.rkt index 1a23856e..eef31089 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/infer-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/infer-tests.rkt @@ -4,7 +4,7 @@ (types numeric-tower utils abbrev)) -(provide fv-tests) +(provide tests) (define-syntax-rule (fv-t ty elems ...) (let ([ty* ty]) @@ -13,7 +13,7 @@ (fv ty*) (list (quote elems) ...)))) -(define fv-tests +(define tests (test-suite "Tests for fv" (fv-t -Number) [fv-t (-v a) a] diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/interactive-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/interactive-tests.rkt index 3da6fd5e..9fbf79f5 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/interactive-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/interactive-tests.rkt @@ -10,7 +10,7 @@ racket/format syntax/parse)) -(provide interactive-tests) +(provide tests) (define promised-ns (delay @@ -42,7 +42,7 @@ ,(syntax->datum #'form)) (force promised-ns)))))))])) ;; Add 'only at the toplevel tests' -(define interactive-tests +(define tests (test-suite "Interactive tests" (test-form #rx"" diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/keyword-expansion-test.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/keyword-expansion-test.rkt index dbae2751..b465c518 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/keyword-expansion-test.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/keyword-expansion-test.rkt @@ -5,7 +5,7 @@ (types utils kw-types abbrev numeric-tower) racket/match racket/set rackunit) -(provide keyword-tests) +(provide tests) (define-syntax-rule (t arg expected) (begin @@ -37,7 +37,7 @@ (define three (-val 'three)) (define four (-val 'four)) -(define keyword-tests +(define tests (test-suite "Tests for keyword expansion" [t (-> result) (-> result)] diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/parse-type-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/parse-type-tests.rkt index 8aff4e23..16929879 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/parse-type-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/parse-type-tests.rkt @@ -12,7 +12,7 @@ rackunit racket/dict) -(provide parse-type-tests) +(provide tests) ;; HORRIBLE HACK! ;; We are solving the following problem: @@ -73,7 +73,7 @@ (define B -Boolean) (define Sym -Symbol) -(define parse-type-tests +(define tests (pt-tests "parse-type tests" [FAIL UNBOUND] diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/remove-intersect-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/remove-intersect-tests.rkt index f99847d2..71dbaa35 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/remove-intersect-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/remove-intersect-tests.rkt @@ -4,6 +4,7 @@ (r:infer infer) (types abbrev numeric-tower subtype union remove-intersect) rackunit) +(provide tests) (define-syntax (over-tests stx) (syntax-case stx () @@ -66,5 +67,8 @@ [(-pair -Number (-v a)) (-pair Univ Univ) (Un)] )) -(provide remove-tests restrict-tests overlap-tests) - +(define tests + (test-suite "Remove Intersect" + remove-tests + restrict-tests + overlap-tests)) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt index 0b49b6c0..d65d7a34 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/special-env-typecheck-tests.rkt @@ -22,7 +22,7 @@ typed-racket/base-env/prims typed-racket/base-env/base-types (for-syntax typed-racket/standard-inits)) -(provide typecheck-special-tests) +(provide tests) (begin-for-syntax (do-standard-inits)) @@ -41,7 +41,7 @@ (check-tc-result-equal? (format "~a ~a" (quote-line-number id) 'a) res1 res2)))])) -(define typecheck-special-tests +(define tests (test-suite "Special Typechecker tests" ;; should work but don't -- need expected type diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subst-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subst-tests.rkt index 909d6398..dd61a69f 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subst-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subst-tests.rkt @@ -4,6 +4,7 @@ (rep type-rep) (types utils abbrev numeric-tower substitute) rackunit) +(provide tests) (define-syntax-rule (s img var tgt result) (test-eq? "test" (substitute img 'var tgt) result)) @@ -11,7 +12,7 @@ (define-syntax-rule (s... imgs var tgt result) (test-eq? "test" (substitute-dots (list . imgs) #f 'var tgt) result)) -(define subst-tests +(define tests (test-suite "Tests for substitution" (s -Number a (-v a) -Number) (s... (-Number -Boolean) a (make-Function (list (make-arr-dots null -Number (-v a) 'a))) (-Number -Boolean . -> . -Number)) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subtype-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subtype-tests.rkt index f0738d44..3f581469 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subtype-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/subtype-tests.rkt @@ -7,7 +7,7 @@ rackunit (for-syntax scheme/base)) -(provide subtype-tests) +(provide tests) (define-syntax (subtyping-tests stx) (define (single-test stx) @@ -26,7 +26,7 @@ (define t1 (-mu T (-lst (Un (-v a) T)))) (define t2 (unfold t1)) -(define subtype-tests +(define tests (subtyping-tests ;; trivial examples (Univ Univ) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/type-equal-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/type-equal-tests.rkt index 28624a3c..96ba0bd5 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/type-equal-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/type-equal-tests.rkt @@ -5,7 +5,7 @@ (types abbrev numeric-tower union) rackunit) -(provide type-equal-tests) +(provide tests) (define (-base x) (make-Base x #'dummy values #f)) @@ -26,7 +26,7 @@ (define (fld* t) (make-fld t (datum->syntax #'here 'values) #f)) -(define type-equal-tests +(define tests (te-tests [-Number -Number] [(Un -Number) -Number] diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt index 898600ff..b96c5884 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt @@ -60,7 +60,7 @@ syntax/parse 'tester)) -(provide typecheck-tests) +(provide tests) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -180,7 +180,7 @@ (make-Path p var)))) -(define typecheck-tests +(define tests (test-suite "Typechecker tests" #reader typed-racket/typed-reader