diff options
Diffstat (limited to 'tests/run-natmodtests.py')
-rwxr-xr-x | tests/run-natmodtests.py | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/tests/run-natmodtests.py b/tests/run-natmodtests.py index 55adb6049..50e8d1272 100755 --- a/tests/run-natmodtests.py +++ b/tests/run-natmodtests.py @@ -11,9 +11,6 @@ import argparse run_tests_module = __import__("run-tests") -sys.path.append("../tools") -import pyboard - # Paths for host executables CPYTHON3 = os.getenv("MICROPY_CPYTHON3", "python3") MICROPYTHON = os.getenv("MICROPY_MICROPYTHON", "../ports/unix/build-coverage/micropython") @@ -112,7 +109,7 @@ class TargetPyboard: output = self.pyb.exec_(script) output = output.replace(b"\r\n", b"\n") return output, None - except pyboard.PyboardError as er: + except run_tests_module.pyboard.PyboardError as er: return b"", er @@ -227,14 +224,16 @@ def run_tests(target_truth, target, args, resolved_arch): def main(): cmd_parser = argparse.ArgumentParser( - description="Run dynamic-native-module tests under MicroPython" - ) - cmd_parser.add_argument( - "-p", "--pyboard", action="store_true", help="run tests via pyboard.py" + description="Run dynamic-native-module tests under MicroPython", + epilog=run_tests_module.test_instance_epilog, + formatter_class=argparse.RawDescriptionHelpFormatter, ) cmd_parser.add_argument( - "-d", "--device", default="/dev/ttyACM0", help="the device for pyboard.py" + "-t", "--test-instance", default="unix", help="the MicroPython instance to test" ) + cmd_parser.add_argument("--baudrate", default=115200, help="baud rate of the serial device") + cmd_parser.add_argument("--user", default="micro", help="telnet login username") + cmd_parser.add_argument("--password", default="python", help="telnet login password") cmd_parser.add_argument( "-a", "--arch", choices=AVAILABLE_ARCHS, help="override native architecture of the target" ) @@ -256,10 +255,15 @@ def main(): target_truth = TargetSubprocess([CPYTHON3]) - if args.pyboard: - target = TargetPyboard(pyboard.Pyboard(args.device)) - else: + target = run_tests_module.get_test_instance( + args.test_instance, args.baudrate, args.user, args.password + ) + if target is None: + # Use the unix port of MicroPython. target = TargetSubprocess([MICROPYTHON]) + else: + # Use a remote target. + target = TargetPyboard(target) if hasattr(args, "arch") and args.arch is not None: target_arch = args.arch |