From e31bdb1d210ed0f6f87a578bf16c97a94be192c4 Mon Sep 17 00:00:00 2001 From: Tim Newsome Date: Fri, 11 Aug 2017 14:13:41 -0700 Subject: [PATCH 1/1] When make fails to run a test, print out the log. --- debug/Makefile | 3 ++- debug/testlib.py | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/debug/Makefile b/debug/Makefile index d252b55..2d8d367 100644 --- a/debug/Makefile +++ b/debug/Makefile @@ -14,9 +14,10 @@ pylint: spike%: $(GDBSERVER_PY) \ --isolate \ + --print-failures \ $(src_dir)/targets/RISC-V/$@.py \ --sim_cmd $(RISCV)/bin/$(RISCV_SIM) \ - --server_cmd $(RISCV)/bin/openocd \ + --server_cmd $(RISCV)/bin/openocd clean: rm -f *.pyc diff --git a/debug/testlib.py b/debug/testlib.py index 597c69b..ee1364d 100644 --- a/debug/testlib.py +++ b/debug/testlib.py @@ -428,6 +428,8 @@ def run_tests(parsed, target, todo): sys.stdout = real_stdout log_fd.write("Time elapsed: %.2fs\n" % (time.time() - start)) print "%s in %.2fs" % (result, time.time() - start) + if result not in good_results and parsed.print_failures: + sys.stdout.write(file(log_name).read()) sys.stdout.flush() results.setdefault(result, []).append(name) count += 1 @@ -448,11 +450,12 @@ def print_results(results): return result def add_test_run_options(parser): - parser.add_argument("--logs", default="logs", help="Store logs in the specified directory.") parser.add_argument("--fail-fast", "-f", action="store_true", help="Exit as soon as any test fails.") + parser.add_argument("--print-failures", action="store_true", + help="When a test fails, print the log file to stdout.") parser.add_argument("test", nargs='*', help="Run only tests that are named here.") parser.add_argument("--gdb", -- 2.30.2