-
Notifications
You must be signed in to change notification settings - Fork 0
/
testing-tests.scm
57 lines (40 loc) · 1.22 KB
/
testing-tests.scm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
(define do-nothing (lambda whatever 'ignored))
(include "testing-macros.scm")
(load "testing")
(add-test-suite 'one do-nothing do-nothing)
(add-eq-test 'one #t (= 1 1) "equal")
(add-eq-test 'one #f (< 2 1) "less")
(add-eq-test 'one 'foo (string->symbol "foo") "eq?")
(add-equal-test 'one "foo" (symbol->string 'foo) "equal?")
(add-test 'one
'expected-to-fail
(/ 7 0)
eq?
"test uncaught exception")
(add-test 'one 37 (+ 36 1) = "addition")
(add-test-suite 'two do-nothing do-nothing)
(add-test 'two 54 (max 32 1 54 7 23 7 21) = "max")
(add-test 'two
'yes
(if (> 2 1) 'yes 'no)
eq?
"if")
(add-test 'two
'always-fails
(if (> 2 1) 'yes 'no)
eq?
"test a failure case")
(ensure-exception-raised 'two
divide-by-zero-exception?
(/ 7 0)
"zero divisor exception")
(ensure-exception-raised 'two
error-exception?
(/ 7 0)
"test exception predicate failure")
(verbose? #t)
(run-all-tests)
(display "Expected Result: 8 Passed, 2 Failed, 1 Excepted.")
(newline)
(newline)
;; EOF ;;