source: project/release/5/simple-tests/trunk/tests/run.scm @ 38693

Last change on this file since 38693 was 38693, checked in by juergen, 8 months ago

simple-tests 2.3 with checks

File size: 1.4 KB
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.