summaryrefslogtreecommitdiff
path: root/tests/run-internalbench.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run-internalbench.py')
-rwxr-xr-xtests/run-internalbench.py42
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()