Line | |
---|
1 | (import simple-tests) |
---|
2 | |
---|
3 | ;;; old interface |
---|
4 | |
---|
5 | (define-test (bar n) |
---|
6 | (positive? n) |
---|
7 | (even? n)) |
---|
8 | |
---|
9 | (define-test (foo x y) |
---|
10 | (< x y) |
---|
11 | "COMMENT" |
---|
12 | (bar 4) |
---|
13 | (odd? 3) |
---|
14 | (positive? 3)) |
---|
15 | |
---|
16 | (define-test (++) |
---|
17 | (= (+ 1 2) 3) |
---|
18 | (= (+ 1 2 3) 6)) |
---|
19 | |
---|
20 | (define-test (**) |
---|
21 | (= (* 1 2) 2) |
---|
22 | (= (* 1 2 3) 6)) |
---|
23 | |
---|
24 | (define-test (arithmetic) |
---|
25 | (++) |
---|
26 | (**)) |
---|
27 | |
---|
28 | (define-test (baz) |
---|
29 | (and? #t #t #t) |
---|
30 | (and?) |
---|
31 | (not (and? #t #f #t))) |
---|
32 | |
---|
33 | |
---|
34 | ;(compound-test (simple-tests) |
---|
35 | ; (baz) |
---|
36 | ; (arithmetic?) |
---|
37 | ; (foo 1 2) |
---|
38 | ; ) |
---|
39 | |
---|
40 | ;;; new interface |
---|
41 | ;;; define-checks is an alias to do-checks |
---|
42 | |
---|
43 | (check ((lst '(0 1 2 3))) |
---|
44 | lst |
---|
45 | '(0 1 2 3) |
---|
46 | (car lst) |
---|
47 | 0 |
---|
48 | (cadr lst) |
---|
49 | 1 |
---|
50 | (cddr lst) |
---|
51 | '(2 3) |
---|
52 | ) |
---|
53 | |
---|
54 | (do-checks (bar? verbose? n 5) |
---|
55 | (positive? n) #t |
---|
56 | (even? n) #f) |
---|
57 | |
---|
58 | (define-checks (+? verbose?) |
---|
59 | (+ 1 2) 3 |
---|
60 | (+ 1 2 3) 6) |
---|
61 | |
---|
62 | (define-checks (*? verbose?) |
---|
63 | (* 1 2) 2 |
---|
64 | (* 1 2 3) 6) |
---|
65 | |
---|
66 | (define-checks (arithmetic? verbose?) |
---|
67 | (+? #f) #t |
---|
68 | (*? #f) #t) |
---|
69 | |
---|
70 | (do-checks (baz? verbose?) |
---|
71 | (and? #t #t #t) #t |
---|
72 | (and?) #t |
---|
73 | (and? #t #f #t) #f) |
---|
74 | |
---|
75 | (define-checks (qux? verbose?) |
---|
76 | ((== "x") "y") #f |
---|
77 | ((== "x") "x") #t |
---|
78 | ((== baz?) baz?) #t |
---|
79 | ((== baz?) bar) #f |
---|
80 | ((== '()) '()) #t |
---|
81 | ((== 'x) 'y) #f |
---|
82 | ((== 'x) 'x) #t |
---|
83 | ((== #(0 1 2)) #(0 1 2)) #t |
---|
84 | ((== #(0 1 2)) '(0 1 2)) #f |
---|
85 | ) |
---|
86 | |
---|
87 | (define counter |
---|
88 | (let ((n 0)) |
---|
89 | (lambda () |
---|
90 | (set! n (add1 n)) |
---|
91 | n))) |
---|
92 | |
---|
93 | (define-checks (counter? verbose?) |
---|
94 | (counter) 1 |
---|
95 | (counter) 2 |
---|
96 | (counter) 3 |
---|
97 | (counter) 4 |
---|
98 | ) |
---|
99 | |
---|
100 | |
---|
101 | (check-all SIMPLE (bar?) (*?) (+?) (arithmetic?) (baz?) (qux?) |
---|
102 | (counter?)) |
---|
Note: See
TracBrowser
for help on using the repository browser.