MCPcopy Index your code
hub / github.com/fluentpython/example-code-2e / test

Function test

18-with-match/lispy/original/lispytest.py:101–115  ·  view source on GitHub ↗

For each (exp, expected) test case, see if eval(parse(exp)) == expected.

(tests, name='')

Source from the content-addressed store, hash-verified

99 ]
100
101def test(tests, name=''):
102 "For each (exp, expected) test case, see if eval(parse(exp)) == expected."
103 fails = 0
104 for (x, expected) in tests:
105 try:
106 result = eval(parse(x))
107 print(x, '=>', lispstr(result))
108 ok = (result == expected)
109 except Exception as e:
110 print(x, '=raises=>', type(e).__name__, e)
111 ok = isinstance(expected, type) and issubclass(expected, Exception) and isinstance(e, expected)
112 if not ok:
113 fails += 1
114 print('FAIL!!! Expected', expected)
115 print('%s %s: %d out of %d tests fail.' % ('*'*45, name, fails, len(tests)))
116
117if __name__ == '__main__':
118 from lis import *

Callers 1

lispytest.pyFile · 0.70

Calls 3

evalFunction · 0.70
parseFunction · 0.70
lispstrFunction · 0.70

Tested by

no test coverage detected