-
Notifications
You must be signed in to change notification settings - Fork 5
/
t3
53 lines (41 loc) · 1.07 KB
/
t3
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
/* rexx unit test framework
concatenate these files:
t1 test-script t2 rexx-file-to-test t3 > t.rexx
then execute t.rexx
this file is t3
*/
/* functions for the test framework */
context:
parse arg desc
contextdesc = desc
return ''
check:
count = count + 1
checkresult.0 = count
parse arg description, assertion
checkresult.count = count || '. ' || assertion || ' ' || description
return ''
expect:
parse arg actual, op, expected
if op == 'to be' then return report(actual, op, expected, actual == expected)
if op == 'not to be' then return report(actual, op, expected, actual \== expected)
report:
parse arg actual, op, expected, res
lineout = ''
select
when res == 0 then do
failed = failed + 1
lineout = '*** FAILED: Expected ' || expected || ' but got ' || actual
end
when res == 1 then do
passed = passed + 1
lineout = ' PASSED:'
end
end
return lineout
counts:
text.0 = 3
text.1 = count ' checks were executed'
text.2 = passed ' checks passed'
text.3 = failed ' checks failed'
return text