From fecf611ca8b66cade027fe1df12c19684ee07dea Mon Sep 17 00:00:00 2001 From: Santiago Gimeno Date: Sun, 24 Jul 2016 08:24:48 +0200 Subject: [PATCH] tools,test: show signal code when test crashes On every platform but `Windows`. Also, print the crash information when using the tap reporter. PR-URL: https://github.com/nodejs/node/pull/7859 Reviewed-By: Ben Noordhuis --- tools/test.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/tools/test.py b/tools/test.py index c6b67e2e1e..2613ad59d7 100755 --- a/tools/test.py +++ b/tools/test.py @@ -196,7 +196,7 @@ class SimpleProgressIndicator(ProgressIndicator): print failed.output.stdout.strip() print "Command: %s" % EscapeCommand(failed.command) if failed.HasCrashed(): - print "--- CRASHED ---" + print "--- %s ---" % PrintCrashed(failed.output.exit_code) if failed.HasTimedOut(): print "--- TIMEOUT ---" if len(self.failed) == 0: @@ -285,6 +285,9 @@ class TapProgressIndicator(SimpleProgressIndicator): logger.info(status_line) self._printDiagnostic("\n".join(output.diagnostic)) + if output.HasCrashed(): + self._printDiagnostic(PrintCrashed(output.output.exit_code)) + if output.HasTimedOut(): self._printDiagnostic('TIMEOUT') @@ -347,7 +350,7 @@ class CompactProgressIndicator(ProgressIndicator): print self.templates['stderr'] % stderr print "Command: %s" % EscapeCommand(output.command) if output.HasCrashed(): - print "--- CRASHED ---" + print "--- %s ---" % PrintCrashed(output.output.exit_code) if output.HasTimedOut(): print "--- TIMEOUT ---" @@ -1476,6 +1479,13 @@ def FormatTime(d): return time.strftime("%M:%S.", time.gmtime(d)) + ("%03i" % millis) +def PrintCrashed(code): + if utils.IsWindows(): + return "CRASHED" + else: + return "CRASHED (Signal: %d)" % -code + + def Main(): parser = BuildOptions() (options, args) = parser.parse_args()