sw:vec: Fix ctest test runner script for handle exception Add termination string set to include exception, otherwise ctest timesout in this failure case. Change-Id: I5e127994735bd8296a507bd9ed2445fe98c3b9d7
diff --git a/scripts/test_runner.py b/scripts/test_runner.py index d655a41..983de9c 100755 --- a/scripts/test_runner.py +++ b/scripts/test_runner.py
@@ -30,12 +30,13 @@ self.simulator_cmd = simulator_cmd self.buffer = io.StringIO() self.child = None + self.termination_strings = ["main returned", "Exception occurred"] def run(self, timeout=1000): """ Run the simulation command and quit the simulation.""" self.child = pexpect.spawn(self.simulator_cmd, encoding='utf-8') self.child.logfile = self.buffer - self.child.expect("main returned", timeout=timeout) + self.child.expect(self.termination_strings, timeout=timeout) self.child.send("\nq\n") self.child.expect(pexpect.EOF, timeout=timeout) self.child.close() @@ -116,7 +117,8 @@ simulator = simulator_class(simulator_path, args.elf) output = simulator.run(timeout=args.timeout) print(output) - if "FAILED" in output: + failure_strings = ["FAILED", "Exception occurred"] + if any(x in output for x in failure_strings): sys.exit(1)