diff --git a/tests/run-tests.py b/tests/run-tests.py index e2e95884ab193..522027c1f3e5d 100755 --- a/tests/run-tests.py +++ b/tests/run-tests.py @@ -15,7 +15,7 @@ import threading import tempfile -# Maximum time to run a PC-based test, in seconds. +# Maximum time to run a single test, in seconds. TEST_TIMEOUT = float(os.environ.get('MICROPY_TEST_TIMEOUT', 30)) # See stackoverflow.com/questions/2632199: __file__ nor sys.argv[0] @@ -333,7 +333,7 @@ def run_script_on_remote_target(pyb, args, test_file, is_special): try: had_crash = False pyb.enter_raw_repl() - output_mupy = pyb.exec_(script) + output_mupy = pyb.exec_(script, timeout=TEST_TIMEOUT) except pyboard.PyboardError as e: had_crash = True if not is_special and e.args[0] == "exception": diff --git a/tools/pyboard.py b/tools/pyboard.py index 50ecd33b7ab24..4099de299b2c3 100755 --- a/tools/pyboard.py +++ b/tools/pyboard.py @@ -530,8 +530,8 @@ def eval(self, expression, parse=False): return ret # In Python3, call as pyboard.exec(), see the setattr call below. - def exec_(self, command, data_consumer=None): - ret, ret_err = self.exec_raw(command, data_consumer=data_consumer) + def exec_(self, command, timeout=10, data_consumer=None): + ret, ret_err = self.exec_raw(command, timeout, data_consumer) if ret_err: raise PyboardError("exception", ret, ret_err) return ret
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: