tests: better output on timeouts stable
authorMatt Mackall <mpm@selenic.com>
Sat, 09 Apr 2011 15:52:19 -0500
branchstable
changeset 899 97ec5d659039
parent 897 2ffafb688274
child 900 2357dbe7fabf
child 901 3d47747bf5b3
tests: better output on timeouts Formerly, timeouts would generate huge scrollback-destroying diffs and weird -15 return codes in the summary. Now we simply report "timed out". [ original upstream message ]
tests/run-tests.py
--- a/tests/run-tests.py	Tue Apr 05 11:07:25 2011 +0200
+++ b/tests/run-tests.py	Sat Apr 09 15:52:19 2011 -0500
@@ -620,7 +620,8 @@
                 ret = os.WEXITSTATUS(ret)
         except Timeout:
             vlog('# Process %d timed out - killing it' % proc.pid)
-            ret = cleanup()
+            cleanup()
+            ret = 'timeout'
             output += ("\n### Abort: timeout after %d seconds.\n"
                        % options.timeout)
         except KeyboardInterrupt:
@@ -752,11 +753,13 @@
             skip(missing[-1])
     elif out != refout:
         mark = '!'
-        if ret:
+        if ret == 'timeout':
+            fail("timed out")
+        elif ret:
             fail("output changed and returned error code %d" % ret)
         else:
             fail("output changed")
-        if not options.nodiff:
+        if ret != 'timeout' and not options.nodiff:
             if options.view:
                 os.system("%s %s %s" % (options.view, ref, err))
             else: