tests/run-tests: Improve crash reporting when running on remote targets.
It is very useful to know the actual error when debugging why a test fails.
@@ -143,8 +143,11 @@ def run_micropython(pyb, args, test_file, is_special=False):
pyb.enter_raw_repl()
try:
output_mupy = pyb.execfile(test_file)
- except pyboard.PyboardError:
+ except pyboard.PyboardError as e:
had_crash = True
+ if not is_special and e.args[0] == 'exception':
+ output_mupy = e.args[1] + e.args[2] + b'CRASH'
+ else:
output_mupy = b'CRASH'
# canonical form for all ports/platforms is to use \n for end-of-line
