tests/run-tests.py
changeset 794 12eadf33cce1
parent 793 9cc90e2c826f
child 795 234c4314c6a4
--- a/tests/run-tests.py	Fri Sep 10 16:58:13 2010 +0200
+++ b/tests/run-tests.py	Fri Sep 17 20:53:56 2010 +0200
@@ -474,7 +474,7 @@
             after.setdefault(pos, []).append(l)
             prepos = pos
             pos = n
-            script.append('echo %s %s\n' % (salt, n))
+            script.append('echo %s %s $?\n' % (salt, n))
             script.append(l[4:])
         elif l.startswith('  > '): # continuations
             after.setdefault(prepos, []).append(l)
@@ -486,6 +486,8 @@
             # non-command/result - queue up for merged output
             after.setdefault(pos, []).append(l)
 
+    script.append('echo %s %s $?\n' % (salt, n + 1))
+
     fd, name = tempfile.mkstemp(suffix='hg-tst')
 
     try:
@@ -508,8 +510,13 @@
 
     pos = -1
     postout = []
+    ret = 0
     for n, l in enumerate(output):
         if l.startswith(salt):
+            # add on last return code
+            ret = int(l.split()[2])
+            if ret != 0:
+                postout.append("  [%s]\n" % ret)
             if pos in after:
                 postout += after.pop(pos)
             pos = int(l.split()[1])