tests/test.min
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 58 59 60 61 62 63 64 65 66 67 68 |
"." :ok
(
symbol padding
(==>)
(" " print!)
) ::
(
symbol describe
('sym :name ==> quot :out)
(
"Testing: [" print! name print! "]" puts!
padding
() @out
)
) ::
(
symbol assert
(quot :results quot :check ==> quot :out)
(
(
(
(check -> true ==)
(format-error puts! false)
) try
)
(
ok results append @results
"." print!
)
(
check results append @results
"x" print!
)
if
results @out
)
) ::
(
symbol report
(quot :results ==>)
(
newline
0 :total
0 :failed
results (
total succ @total
(ok !=) (failed succ @failed) () if
) map
"$# tests executed - $# failed." (total failed) =% puts!
(
:result
result
(ok !=)
(
('failures defined-symbol?) (failures succ @failures) () if
padding "FAILED: " print! result puts!
)
()
if
)
map
pop ;Remove results accomulator from get-stack
)
) ::
|