diff options
Diffstat (limited to 'tests/run-internalbench.py')
-rwxr-xr-x | tests/run-internalbench.py | 42 |
1 files changed, 26 insertions, 16 deletions
diff --git a/tests/run-internalbench.py b/tests/run-internalbench.py index f6294572f..63392814a 100755 --- a/tests/run-internalbench.py +++ b/tests/run-internalbench.py @@ -11,12 +11,13 @@ from collections import defaultdict # Tests require at least CPython 3.3. If your default python3 executable # is of lower version, you can point MICROPY_CPYTHON3 environment var # to the correct executable. -if os.name == 'nt': - CPYTHON3 = os.getenv('MICROPY_CPYTHON3', 'python3.exe') - MICROPYTHON = os.getenv('MICROPY_MICROPYTHON', '../ports/windows/micropython.exe') +if os.name == "nt": + CPYTHON3 = os.getenv("MICROPY_CPYTHON3", "python3.exe") + MICROPYTHON = os.getenv("MICROPY_MICROPYTHON", "../ports/windows/micropython.exe") else: - CPYTHON3 = os.getenv('MICROPY_CPYTHON3', 'python3') - MICROPYTHON = os.getenv('MICROPY_MICROPYTHON', '../ports/unix/micropython') + CPYTHON3 = os.getenv("MICROPY_CPYTHON3", "python3") + MICROPYTHON = os.getenv("MICROPY_MICROPYTHON", "../ports/unix/micropython") + def run_tests(pyb, test_dict): test_count = 0 @@ -30,16 +31,18 @@ def run_tests(pyb, test_dict): if pyb is None: # run on PC try: - output_mupy = subprocess.check_output([MICROPYTHON, '-X', 'emit=bytecode', test_file[0]]) + output_mupy = subprocess.check_output( + [MICROPYTHON, "-X", "emit=bytecode", test_file[0]] + ) except subprocess.CalledProcessError: - output_mupy = b'CRASH' + output_mupy = b"CRASH" else: # run on pyboard pyb.enter_raw_repl() try: - output_mupy = pyb.execfile(test_file).replace(b'\r\n', b'\n') + output_mupy = pyb.execfile(test_file).replace(b"\r\n", b"\n") except pyboard.PyboardError: - output_mupy = b'CRASH' + output_mupy = b"CRASH" output_mupy = float(output_mupy.strip()) test_file[1] = output_mupy @@ -57,16 +60,18 @@ def run_tests(pyb, test_dict): # all tests succeeded return True + def main(): - cmd_parser = argparse.ArgumentParser(description='Run tests for MicroPython.') - cmd_parser.add_argument('--pyboard', action='store_true', help='run the tests on the pyboard') - cmd_parser.add_argument('files', nargs='*', help='input test files') + cmd_parser = argparse.ArgumentParser(description="Run tests for MicroPython.") + cmd_parser.add_argument("--pyboard", action="store_true", help="run the tests on the pyboard") + cmd_parser.add_argument("files", nargs="*", help="input test files") args = cmd_parser.parse_args() # Note pyboard support is copied over from run-tests, not testes, and likely needs revamping if args.pyboard: import pyboard - pyb = pyboard.Pyboard('/dev/ttyACM0') + + pyb = pyboard.Pyboard("/dev/ttyACM0") pyb.enter_raw_repl() else: pyb = None @@ -74,11 +79,15 @@ def main(): if len(args.files) == 0: if pyb is None: # run PC tests - test_dirs = ('internal_bench',) + test_dirs = ("internal_bench",) else: # run pyboard tests - test_dirs = ('basics', 'float', 'pyb') - tests = sorted(test_file for test_files in (glob('{}/*.py'.format(dir)) for dir in test_dirs) for test_file in test_files) + test_dirs = ("basics", "float", "pyb") + tests = sorted( + test_file + for test_files in (glob("{}/*.py".format(dir)) for dir in test_dirs) + for test_file in test_files + ) else: # tests explicitly given tests = sorted(args.files) @@ -93,5 +102,6 @@ def main(): if not run_tests(pyb, test_dict): sys.exit(1) + if __name__ == "__main__": main() |