Commit 5cd0b222 authored by Damien George's avatar Damien George
Browse files

tests: Split out those tests requiring float and import.

Tests in basics (which should probably be renamed to core) should not
rely on float, or import any non-built-in files.  This way these tests
can be run when those features are not available.

All test in basics now pass on the pyboard using stmhal port, except for
string-repr which has some issues with character hex printing.
parent d7a4b690
...@@ -29,7 +29,8 @@ failed_tests = [] ...@@ -29,7 +29,8 @@ failed_tests = []
tests = [] tests = []
if not sys.argv[1:]: if not sys.argv[1:]:
tests = sorted(glob('basics/*.py') + glob('io/*.py') + glob('misc/*.py')) test_dirs = ('basics', 'float', 'import', 'io', 'misc')
tests = sorted(test_file for test_files in (glob('{}/*.py'.format(dir)) for dir in test_dirs) for test_file in test_files)
else: else:
tests = sys.argv[1:] tests = sys.argv[1:]
...@@ -56,13 +57,9 @@ for test_file in tests: ...@@ -56,13 +57,9 @@ for test_file in tests:
if test_on_pyboard: if test_on_pyboard:
pyb.enter_raw_repl() pyb.enter_raw_repl()
try: try:
if test_file == 'basics/': output_mupy = pyb.execfile(test_file).replace(b'\r\n', b'\n')
# this test crashes the pyboard
output_mupy = b'CRASH'
output_mupy = pyb.execfile(test_file).replace(b'\r\n', b'\n')
except pyboard.PyboardError: except pyboard.PyboardError:
output_mupy = b'CRASH\n' + output_mupy output_mupy = b'CRASH'
else: else:
try: try:
output_mupy = subprocess.check_output([MP_PY, '-X', 'emit=bytecode', test_file]) output_mupy = subprocess.check_output([MP_PY, '-X', 'emit=bytecode', test_file])
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment