tests: add exit codes to unified tests
authorMatt Mackall <mpm@selenic.com>
Thu, 16 Sep 2010 17:51:32 -0500
changeset 12316 4134686b83e1
parent 12315 ca58f6475f1d
child 12318 d643ae555a4d
tests: add exit codes to unified tests
tests/run-tests.py
tests/test-abort-checkin.t
tests/test-add.t
tests/test-addremove-similar.t
tests/test-alias.t
tests/test-archive.t
tests/test-audit-path.t
tests/test-backout.t
tests/test-bad-pull.t
tests/test-bheads.t
tests/test-bisect.t
tests/test-bisect2.t
tests/test-bookmarks-pushpull.t
tests/test-bookmarks.t
tests/test-branch-option.t
tests/test-branches.t
tests/test-bundle-r.t
tests/test-bundle-type.t
tests/test-bundle.t
tests/test-cat.t
tests/test-clone-update-order.t
tests/test-clone.t
tests/test-command-template.t
tests/test-commit-unresolved.t
tests/test-commit.t
tests/test-committer.t
tests/test-conflict.t
tests/test-confused-revert.t
tests/test-copy2.t
tests/test-custom-filters.t
tests/test-debugcomplete.t
tests/test-diff-unified.t
tests/test-diff-upgrade.t
tests/test-diffdir.t
tests/test-dispatch.t
tests/test-dumprevlog.t
tests/test-empty.t
tests/test-extdiff.t
tests/test-extension.t
tests/test-filebranch.t
tests/test-fncache.t
tests/test-git-import.t
tests/test-globalopts.t
tests/test-grep.t
tests/test-help.t
tests/test-hook.t
tests/test-identify.t
tests/test-import-eol.t
tests/test-import.t
tests/test-init.t
tests/test-install.t
tests/test-issue322.t
tests/test-issue433.t
tests/test-issue619.t
tests/test-issue660.t
tests/test-journal-exists.t
tests/test-keyword.t
tests/test-locate.t
tests/test-lock-badness.t
tests/test-log.t
tests/test-manifest.t
tests/test-merge-closedheads.t
tests/test-merge-default.t
tests/test-merge-force.t
tests/test-merge-internal-tools-pattern.t
tests/test-merge-local.t
tests/test-merge-revert2.t
tests/test-merge1.t
tests/test-merge5.t
tests/test-merge7.t
tests/test-merge9.t
tests/test-mq-eol.t
tests/test-mq-guards.t
tests/test-mq-safety.t
tests/test-mq.t
tests/test-nested-repo.t
tests/test-newbranch.t
tests/test-parents.t
tests/test-parse-date.t
tests/test-patchbomb.t
tests/test-paths.t
tests/test-pull-r.t
tests/test-pull.t
tests/test-push-validation.t
tests/test-push-warn.t
tests/test-qrecord.t
tests/test-record.t
tests/test-remove-new.t
tests/test-rename.t
tests/test-requires.t
tests/test-resolve.t
tests/test-revert.t
tests/test-revset.t
tests/test-status-color.t
tests/test-strict.t
tests/test-subrepo-paths.t
tests/test-subrepo-recursion.t
tests/test-subrepo-svn.t
tests/test-subrepo.t
tests/test-symlinks.t
tests/test-tag.t
tests/test-tags.t
tests/test-transplant.t
tests/test-unrelated-pull.t
tests/test-update-issue1456.t
tests/test-update-renames.t
tests/test-username-newline.t
tests/test-verify.t
tests/test-walk.t
--- a/tests/run-tests.py	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/run-tests.py	Thu Sep 16 17:51:32 2010 -0500
@@ -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])
--- a/tests/test-abort-checkin.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-abort-checkin.t	Thu Sep 16 17:51:32 2010 -0500
@@ -24,10 +24,12 @@
   transaction abort!
   rollback completed
   abort: no commits allowed
+  [255]
   $ hg ci -m foo
   error: pretxncommit.nocommits hook failed: no commits allowed
   transaction abort!
   rollback completed
   abort: no commits allowed
+  [255]
 
   $ exit 0
--- a/tests/test-add.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-add.t	Thu Sep 16 17:51:32 2010 -0500
@@ -54,6 +54,7 @@
   merging a failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ hg st
   M a
   ? a.orig
@@ -86,9 +87,11 @@
 
   $ hg add c && echo "unexpected addition of missing file"
   c: No such file or directory
+  [1]
   $ echo c > c
   $ hg add d c && echo "unexpected addition of missing file"
   d: No such file or directory
+  [1]
   $ hg st
   M a
   A c
--- a/tests/test-addremove-similar.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-addremove-similar.t	Thu Sep 16 17:51:32 2010 -0500
@@ -59,10 +59,13 @@
 
   $ hg addremove -s foo
   abort: similarity must be a number
+  [255]
   $ hg addremove -s -1
   abort: similarity must be between 0 and 100
+  [255]
   $ hg addremove -s 1e6
   abort: similarity must be between 0 and 100
+  [255]
 
   $ cd ..
 
--- a/tests/test-alias.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-alias.t	Thu Sep 16 17:51:32 2010 -0500
@@ -197,5 +197,6 @@
       Returns 0 on success.
   
   use "hg -v help rt" to show global options
+  [255]
 
   $ exit 0
--- a/tests/test-archive.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-archive.t	Thu Sep 16 17:51:32 2010 -0500
@@ -164,6 +164,7 @@
 
   $ hg archive -t zip -p /illegal test.zip
   abort: archive prefix contains illegal components
+  [255]
   $ hg archive -t zip -p very/../bad test.zip
 
   $ hg archive --config ui.archivemeta=false -t zip -r 2 test.zip
@@ -205,6 +206,7 @@
 
   $ hg archive -t bogus test.bogus
   abort: unknown archive type 'bogus'
+  [255]
 
 server errors
 
@@ -216,5 +218,6 @@
   $ cd ../empty
   $ hg archive ../test-empty
   abort: no working directory: please specify a revision
+  [255]
 
   $ exit 0
--- a/tests/test-audit-path.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-audit-path.t	Thu Sep 16 17:51:32 2010 -0500
@@ -4,6 +4,7 @@
 
   $ hg add .hg/00changelog.i
   abort: path contains illegal component: .hg/00changelog.i
+  [255]
 
   $ mkdir a
   $ echo a > a/a
@@ -16,6 +17,7 @@
 
   $ hg add b/b
   abort: path 'b/b' traverses symbolic link 'b'
+  [255]
 
 should succeed
 
@@ -25,6 +27,7 @@
 
   $ hg add b/b
   abort: path 'b/b' traverses symbolic link 'b'
+  [255]
 
 unbundle tampered bundle
 
@@ -43,6 +46,7 @@
   .hg/test
   $ hg update -Cr0
   abort: path contains illegal component: .hg/test
+  [255]
 
 attack foo/.hg/test
 
@@ -50,6 +54,7 @@
   foo/.hg/test
   $ hg update -Cr1
   abort: path 'foo/.hg/test' is inside repo 'foo'
+  [255]
 
 attack back/test where back symlinks to ..
 
@@ -58,6 +63,7 @@
   back/test
   $ hg update -Cr2
   abort: path 'back/test' traverses symbolic link 'back'
+  [255]
 
 attack ../test
 
@@ -65,6 +71,7 @@
   ../test
   $ hg update -Cr3
   abort: path contains illegal component: ../test
+  [255]
 
 attack /tmp/test
 
@@ -72,5 +79,6 @@
   /tmp/test
   $ hg update -Cr4
   abort: No such file or directory: .*/test-audit-path.t/target//tmp/test
+  [255]
 
   $ exit 0
--- a/tests/test-backout.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-backout.t	Thu Sep 16 17:51:32 2010 -0500
@@ -7,8 +7,10 @@
 
   $ hg backout
   abort: please specify a revision to backout
+  [255]
   $ hg backout -r 0 0
   abort: please specify just one revision
+  [255]
 
 # basic operation
 
@@ -69,6 +71,7 @@
 
   $ hg backout 1
   abort: cannot backout change on a different branch
+  [255]
   $ echo c > c
   $ hg ci -Am2
   adding c
@@ -78,6 +81,7 @@
 
   $ hg backout 1
   abort: cannot backout change on a different branch
+  [255]
 
 # backout with merge
 
@@ -138,6 +142,7 @@
   $ hg update -C tip
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg locate b
+  [1]
 
   $ cd ..
   $ hg init m
@@ -166,16 +171,19 @@
 
   $ hg backout 4
   abort: cannot backout a merge changeset without --parent
+  [255]
 
 # backout of merge with bad parent should fail
 
   $ hg backout --parent 0 4
   abort: cb9a9f314b8b is not a parent of b2f3bb92043e
+  [255]
 
 # backout of non-merge with parent should fail
 
   $ hg backout --parent 0 3
   abort: cannot use --parent on non-merge changeset
+  [255]
 
 # backout with valid parent should be ok
 
--- a/tests/test-bad-pull.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bad-pull.t	Thu Sep 16 17:51:32 2010 -0500
@@ -1,5 +1,6 @@
   $ hg clone http://localhost:$HGPORT/ copy
   abort: error: Connection refused
+  [255]
 
   $ echo $?
   0
@@ -27,6 +28,7 @@
 
   $ hg clone http://localhost:$HGPORT/foo copy2 2>&1
   abort: HTTP Error 404: .*
+  [255]
 
   $ echo $?
   0
--- a/tests/test-bheads.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bheads.t	Thu Sep 16 17:51:32 2010 -0500
@@ -132,6 +132,7 @@
 
   $ heads -r 3 .
   no open branch heads found on branches c (started at 3)
+  [1]
   $ echo $?
   0
   $ heads -r 2 .
@@ -157,6 +158,7 @@
 -------
   $ heads -r 7 .
   no open branch heads found on branches b (started at 7)
+  [1]
   $ echo $?
   0
 
--- a/tests/test-bisect.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bisect.t	Thu Sep 16 17:51:32 2010 -0500
@@ -386,6 +386,7 @@
   $ hg bisect -r
   $ hg bisect --command 'exit 127'
   abort: failed to execute exit 127
+  [255]
 
 
 test bisecting command
--- a/tests/test-bisect2.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bisect2.t	Thu Sep 16 17:51:32 2010 -0500
@@ -393,6 +393,7 @@
   $ hg bisect -b 7
   $ hg bisect -g 14
   abort: starting revisions are not directly related
+  [255]
   $ hg bisect --reset
 
 end at merge: 17 bad, 11 good (but 9 is first bad)
--- a/tests/test-bookmarks-pushpull.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bookmarks-pushpull.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,6 +60,8 @@
 
   $ hg push -B badname ../a
   bookmark badname does not exist on the local or remote repository!
+  [2]
   $ hg pull -B anotherbadname ../a
   abort: remote bookmark anotherbadname not found!
+  [255]
   $ true
--- a/tests/test-bookmarks.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bookmarks.t	Thu Sep 16 17:51:32 2010 -0500
@@ -89,11 +89,13 @@
 
   $ hg bookmark -m A B
   abort: a bookmark of this name does not exist
+  [255]
 
 rename to existent bookmark
 
   $ hg bookmark -m X Y
   abort: a bookmark of the same name already exists
+  [255]
 
 force rename to existent bookmark
 
@@ -110,16 +112,19 @@
 
   $ hg bookmark -m Y
   abort: new bookmark name required
+  [255]
 
 delete without name
 
   $ hg bookmark -d
   abort: bookmark name required
+  [255]
 
 delete nonexistent bookmark
 
   $ hg bookmark -d A
   abort: a bookmark of this name does not exist
+  [255]
 
 bookmark name with spaces should be stripped
 
@@ -151,11 +156,13 @@
   $ hg bookmark '
   > '
   abort: bookmark name cannot contain newlines
+  [255]
 
 bookmark with existing name
 
   $ hg bookmark Z
   abort: a bookmark of the same name already exists
+  [255]
 
 force bookmark with existing name
 
@@ -173,10 +180,12 @@
 
   $ hg bookmark -r .
   abort: bookmark name required
+  [255]
 
 bookmark name with whitespace only
 
   $ hg bookmark ' '
   abort: bookmark names cannot consist entirely of whitespace
+  [255]
 
   $ true
--- a/tests/test-branch-option.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-branch-option.t	Thu Sep 16 17:51:32 2010 -0500
@@ -57,10 +57,12 @@
 
   $ hg in -qbz
   abort: unknown branch 'z'!
+  [255]
   $ hg in -q ../branch#z
   2:f25d57ab0566
   $ hg out -qbz
   abort: unknown branch 'z'!
+  [255]
 
 in rev c branch a
 
--- a/tests/test-branches.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-branches.t	Thu Sep 16 17:51:32 2010 -0500
@@ -43,10 +43,13 @@
 
   $ hg branch tip
   abort: the name 'tip' is reserved
+  [255]
   $ hg branch null
   abort: the name 'null' is reserved
+  [255]
   $ hg branch .
   abort: the name '.' is reserved
+  [255]
 
   $ echo 'd' >d
   $ hg add d
@@ -235,6 +238,7 @@
   a branch name much longer than the default justification used by branches 7:10ff5895aa57
   $ hg heads b
   no open branch heads found on branches b
+  [1]
   $ hg heads --closed b
   changeset:   12:2da6583810df
   branch:      b
@@ -316,6 +320,7 @@
   
   $ hg heads --active a
   no open branch heads found on branches a
+  [1]
 
 branch b
 
--- a/tests/test-bundle-r.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bundle-r.t	Thu Sep 16 17:51:32 2010 -0500
@@ -207,8 +207,10 @@
 
   $ hg -R test bundle --base 2 -r tip test-bundle-branch1.hg test-3
   abort: --base is incompatible with specifying a destination
+  [255]
   $ hg -R test bundle -r tip test-bundle-branch1.hg
   abort: repository default-push not found!
+  [255]
 
   $ hg -R test bundle --base 2 -r tip test-bundle-branch1.hg
   2 changesets found
@@ -223,6 +225,7 @@
 
   $ hg -R test bundle --base 7 --base 8 test-bundle-empty.hg
   no changes found
+  [1]
 
 issue76 msg2163
 
@@ -248,6 +251,7 @@
   transaction abort!
   rollback completed
   abort: 00changelog.i@eebf5a27f8ca: unknown parent!
+  [255]
 
 revision 2
 
--- a/tests/test-bundle-type.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bundle-type.t	Thu Sep 16 17:51:32 2010 -0500
@@ -88,6 +88,7 @@
   $ cd tgarbage
   $ hg pull ../bgarbage
   abort: ../bgarbage: not a Mercurial bundle
+  [255]
   $ cd ..
 
 test invalid bundle type
@@ -96,4 +97,5 @@
   $ hg bundle -a -t garbage ../bgarbage
   1 changesets found
   abort: unknown bundle type specified with --type
+  [255]
   $ cd ..
--- a/tests/test-bundle.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-bundle.t	Thu Sep 16 17:51:32 2010 -0500
@@ -62,6 +62,7 @@
 Verify empty
 
   $ hg -R empty heads
+  [1]
   $ hg -R empty verify
   checking changesets
   checking manifests
@@ -371,6 +372,7 @@
 
   $ hg -R bundle://../does-not-exist.hg outgoing ../partial2
   abort: No such file or directory: ../does-not-exist.hg
+  [255]
   $ cd ..
 
 Direct clone from bundle (all-history)
@@ -462,11 +464,13 @@
 
   $ hg -R bundle.hg verify
   abort: 00changelog.i@bbd179dfa0a7: unknown parent!
+  [255]
 
 full history bundle, refuses to verify non-local repo
 
   $ hg -R all.hg verify
   abort: cannot verify bundle or remote repos
+  [255]
 
 but, regular verify must continue to work
 
--- a/tests/test-cat.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-cat.t	Thu Sep 16 17:51:32 2010 -0500
@@ -18,5 +18,6 @@
   0
   $ hg cat -r 1 a
   a: no such file in rev 7040230c159c
+  [1]
   $ hg cat -r 1 b
   1
--- a/tests/test-clone-update-order.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-clone-update-order.t	Thu Sep 16 17:51:32 2010 -0500
@@ -21,6 +21,7 @@
 
   $ hg clone -U -u . .#other ../b -r 0 -r 1 -r 2 -b other
   abort: cannot specify both --noupdate and --updaterev
+  [255]
 
   $ hg clone -U .#other ../b -r 0 -r 1 -r 2 -b other
   requesting all changes
--- a/tests/test-clone.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-clone.t	Thu Sep 16 17:51:32 2010 -0500
@@ -74,6 +74,7 @@
   updating to branch default
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ grep 'file:' e/.hg/hgrc
+  [1]
 
 Check that path aliases are expanded:
 
@@ -160,6 +161,7 @@
 
   $ hg clone --noupdate --updaterev 1 a ua
   abort: cannot specify both --noupdate and --updaterev
+  [255]
 
 
 Testing clone -u:
--- a/tests/test-command-template.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-command-template.t	Thu Sep 16 17:51:32 2010 -0500
@@ -437,23 +437,27 @@
   $ chmod 0 q
   $ hg log --style ./q
   abort: Permission denied: ./q
+  [255]
 
 Error if no style:
 
   $ hg log --style notexist
   abort: style not found: notexist
+  [255]
 
 Error if style missing key:
 
   $ echo 'q = q' > t
   $ hg log --style ./t
   abort: ./t: no key named 'changeset'
+  [255]
 
 Error if include fails:
 
   $ echo 'changeset = q' >> t
   $ hg log --style ./t
   abort: template file ./q: Permission denied
+  [255]
 
 Include works:
 
@@ -1192,6 +1196,7 @@
   $ echo 'x = "f' >> t
   $ hg log
   abort: t:3: unmatched quotes
+  [255]
 
   $ cd ..
 
--- a/tests/test-commit-unresolved.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-commit-unresolved.t	Thu Sep 16 17:51:32 2010 -0500
@@ -32,12 +32,14 @@
   merging A failed!
   1 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
 Correct the conflict without marking the file as resolved
 
   $ echo "ABCD" > A
   $ hg commit -m "Merged"
   abort: unresolved merge conflicts (see hg resolve)
+  [255]
 
 Mark the conflict as resolved and commit
 
--- a/tests/test-commit.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-commit.t	Thu Sep 16 17:51:32 2010 -0500
@@ -6,17 +6,22 @@
   $ hg add foo
   $ HGEDITOR=true hg commit -m ""
   abort: empty commit message
+  [255]
   $ hg commit -d '0 0' -m commit-1
   $ echo foo >> foo
   $ hg commit -d '1 4444444' -m commit-3
   abort: impossible time zone offset: 4444444
+  [255]
   $ hg commit -d '1	15.1' -m commit-4
   abort: invalid date: '1\t15.1'
+  [255]
   $ hg commit -d 'foo bar' -m commit-5
   abort: invalid date: 'foo bar'
+  [255]
   $ hg commit -d ' 1 4444' -m commit-6
   $ hg commit -d '111111111111 0' -m commit-7
   abort: date exceeds 32 bits: 111111111111
+  [255]
 
 commit added file that has been deleted
 
@@ -25,8 +30,10 @@
   $ rm bar
   $ hg commit -m commit-8
   nothing changed
+  [1]
   $ hg commit -m commit-8-2 bar
   abort: bar: file not found!
+  [255]
 
   $ hg -q revert -a --no-backup
 
@@ -43,6 +50,7 @@
   adding dir.file
   $ hg commit -m commit-10 dir dir.file
   abort: dir: no match under directory!
+  [255]
 
   $ echo >> dir/file
   $ mkdir bleh
@@ -50,8 +58,10 @@
   $ cd bleh
   $ hg commit -m commit-11 .
   abort: bleh: no match under directory!
+  [255]
   $ hg commit -m commit-12 ../dir ../dir2
   abort: dir2: no match under directory!
+  [255]
   $ hg -v commit -m commit-13 ../dir
   dir/file
   committed changeset 3:1cd62a2d8db5
@@ -59,12 +69,15 @@
 
   $ hg commit -m commit-14 does-not-exist
   abort: does-not-exist: No such file or directory
+  [255]
   $ ln -s foo baz
   $ hg commit -m commit-15 baz
   abort: baz: file not tracked!
+  [255]
   $ touch quux
   $ hg commit -m commit-16 quux
   abort: quux: file not tracked!
+  [255]
   $ echo >> dir/file
   $ hg -v commit -m commit-17 dir/file
   dir/file
@@ -75,6 +88,7 @@
   $ echo foo >> foo
   $ hg commit -d '' -m commit-no-date
   $ hg tip --template '{date|isodate}\n' | grep '1970'
+  [1]
   $ cd ..
 
 
@@ -212,11 +226,13 @@
 
   $ hg ci -mmerge a
   abort: cannot partially commit a merge (do not specify files or patterns)
+  [255]
 
 should fail because we are specifying a pattern
 
   $ hg ci -mmerge -I a
   abort: cannot partially commit a merge (do not specify files or patterns)
+  [255]
 
 should succeed
 
@@ -248,6 +264,7 @@
   HG: changed changed
   HG: removed removed
   abort: empty commit message
+  [255]
   $ cd ..
 
   $ exit 0
--- a/tests/test-committer.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-committer.t	Thu Sep 16 17:51:32 2010 -0500
@@ -50,6 +50,7 @@
   $ echo "username = " >> .hg/hgrc
   $ hg commit -m commit-1
   abort: no username supplied (see "hg help config")
+  [255]
   $ rm .hg/hgrc
   $ hg commit -m commit-1 2>&1
   No username found, using '[^']*' instead
@@ -59,5 +60,6 @@
   transaction abort!
   rollback completed
   abort: empty username!
+  [255]
 
   $ true
--- a/tests/test-conflict.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-conflict.t	Thu Sep 16 17:51:32 2010 -0500
@@ -16,6 +16,7 @@
   merging a failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
   $ hg id
   32e80765d7fe+75234512624c+ tip
--- a/tests/test-confused-revert.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-confused-revert.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,6 +60,7 @@
 
   $ hg revert --all
   abort: uncommitted merge - please provide a specific revision
+  [255]
 
 Revert should be ok now:
 
--- a/tests/test-copy2.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-copy2.t	Thu Sep 16 17:51:32 2010 -0500
@@ -4,6 +4,7 @@
   $ hg mv foo bar
   foo: not copying - file is not managed
   abort: no files to copy
+  [255]
   $ hg st -A
   ? foo
   $ hg add foo
--- a/tests/test-custom-filters.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-custom-filters.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,6 +60,7 @@
   $ hg add morestuff.txt
   $ hg ci -m morestuff
   abort: missing header "Copyright 2046, The Masters" in morestuff.txt
+  [255]
   $ hg stat
   M stuff.txt
   A morestuff.txt
--- a/tests/test-debugcomplete.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-debugcomplete.t	Thu Sep 16 17:51:32 2010 -0500
@@ -173,6 +173,7 @@
   $ hg debugcomplete --options s
   hg: command 's' is ambiguous:
       serve showconfig status summary
+  [255]
 
 Show all commands + options
   $ hg debugcommands
--- a/tests/test-diff-unified.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-diff-unified.t	Thu Sep 16 17:51:32 2010 -0500
@@ -46,6 +46,7 @@
 
   $ hg diff --nodates -U foo
   abort: diff context lines count must be an integer, not 'foo'
+  [255]
 
 
   $ hg diff --nodates -U 2
@@ -86,6 +87,7 @@
 
   $ hg --config diff.unified=foo diff --nodates
   abort: diff context lines count must be an integer, not 'foo'
+  [255]
 
 test off-by-one error with diff -p
 
--- a/tests/test-diff-upgrade.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-diff-upgrade.t	Thu Sep 16 17:51:32 2010 -0500
@@ -244,6 +244,7 @@
 
   $ hg autodiff --git=abort regular setexec
   abort: losing data for setexec
+  [255]
 
 git=abort: succeed on regular file
 
--- a/tests/test-diffdir.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-diffdir.t	Thu Sep 16 17:51:32 2010 -0500
@@ -34,7 +34,9 @@
 
   $ hg diff -r ""
   abort: 00changelog.i@: ambiguous identifier!
+  [255]
   $ hg diff -r tip -r ""
   abort: 00changelog.i@: ambiguous identifier!
+  [255]
 
   $ true
--- a/tests/test-dispatch.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-dispatch.t	Thu Sep 16 17:51:32 2010 -0500
@@ -43,6 +43,7 @@
   [+] marked option can be specified multiple times
   
   use "hg -v help cat" to show global options
+  [255]
 
 [defaults]
 
@@ -54,12 +55,14 @@
   > EOF
   $ hg cat a
   a: no such file in rev 000000000000
+  [1]
 
 No repo:
 
   $ cd $dir
   $ hg cat
   abort: There is no Mercurial repository here (.hg not found)!
+  [255]
 
   $ exit 0
 
--- a/tests/test-dumprevlog.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-dumprevlog.t	Thu Sep 16 17:51:32 2010 -0500
@@ -97,11 +97,13 @@
   comparing with repo-a
   searching for changes
   no changes found
+  [1]
 
   $ hg -R repo-a incoming repo-c
   comparing with repo-c
   searching for changes
   no changes found
+  [1]
 
   $ exit 0
 
--- a/tests/test-empty.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-empty.t	Thu Sep 16 17:51:32 2010 -0500
@@ -7,6 +7,7 @@
 
   $ hg log
   $ hg grep wah
+  [1]
   $ hg manifest
   $ hg verify
   checking changesets
--- a/tests/test-extdiff.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-extdiff.t	Thu Sep 16 17:51:32 2010 -0500
@@ -14,6 +14,7 @@
   $ hg extdiff -o -r $opt
   Only in a: a
   Only in a: b
+  [1]
 
   $ echo "[extdiff]" >> $HGRCPATH
   $ echo "cmd.falabala=echo" >> $HGRCPATH
@@ -21,6 +22,7 @@
 
   $ hg falabala
   diffing a.000000000000 a
+  [1]
 
   $ hg help falabala
   hg falabala [OPTION]... [FILE]...
@@ -56,6 +58,7 @@
 
   $ hg falabala -r 0:1
   diffing a.8a5febb7f867/a a.34eed99112ab/a
+  [1]
 
 Test diff during merge:
 
@@ -72,6 +75,7 @@
 Should diff cloned file against wc file:
 
   $ hg falabala > out
+  [1]
 
 Cleanup the output since the wc is a tmp directory:
 
@@ -83,6 +87,7 @@
   $ hg ci -d '2 0' -mtest3
   $ hg falabala -c 1
   diffing a.8a5febb7f867/a a.34eed99112ab/a
+  [1]
 
 Check diff are made from the first parent:
 
@@ -133,6 +138,7 @@
 # will change to /tmp/extdiff.TMP and populate directories a.TMP and a
 # and start tool
   $ hg extdiff -p "`pwd`/diff tool.py"
+  [1]
 
 Diff in working directory, after:
 
@@ -158,9 +164,11 @@
 
   $ hg extdiff -p echo -o this -c 1
   this a.8a5febb7f867/a a.34eed99112ab/a
+  [1]
 
   $ hg falabala -o this -c 1
   diffing this a.8a5febb7f867/a a.34eed99112ab/a
+  [1]
 
   $ true
 
--- a/tests/test-extension.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-extension.t	Thu Sep 16 17:51:32 2010 -0500
@@ -275,6 +275,7 @@
       mq  manage a stack of patches
   
   use "hg help extensions" for information on enabling extensions
+  [255]
   $ hg churn
   hg: unknown command 'churn'
   'churn' is provided by the following extension:
@@ -282,6 +283,7 @@
       churn  command to display statistics about repository history
   
   use "hg help extensions" for information on enabling extensions
+  [255]
 
 Disabled extensions:
 
@@ -315,6 +317,7 @@
 
   $ hg --config extensions.path=./path.py help foo > /dev/null
   hg: unknown command 'foo'
+  [255]
 
   $ exit 0
 
--- a/tests/test-filebranch.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-filebranch.t	Thu Sep 16 17:51:32 2010 -0500
@@ -41,6 +41,7 @@
 We shouldn't have anything but n state here:
 
   $ hg debugstate --nodates | grep -v "^n"
+  [1]
 
 Merging:
 
--- a/tests/test-fncache.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-fncache.t	Thu Sep 16 17:51:32 2010 -0500
@@ -54,6 +54,7 @@
   3 files, 3 changesets, 3 total revisions
   3 integrity errors encountered!
   (first damaged changeset appears to be 0)
+  [1]
   $ cd ..
 
 Non store repo:
--- a/tests/test-git-import.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-git-import.t	Thu Sep 16 17:51:32 2010 -0500
@@ -192,6 +192,7 @@
   8:c32b0d7e6f44
 
   $ hg locate copy2
+  [1]
   $ hg cat rename2
   a
   a
--- a/tests/test-globalopts.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-globalopts.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,10 +60,13 @@
   0: a
   $ hg ann a/a b/b
   abort: There is no Mercurial repository here (.hg not found)!
+  [255]
   $ hg -R b ann a/a
   abort: a/a not under root
+  [255]
   $ hg log
   abort: There is no Mercurial repository here (.hg not found)!
+  [255]
 
 Abbreviation of long option:
 
@@ -103,16 +106,22 @@
 
   $ hg --confi "foo.bar=baz"
   abort: option --config may not be abbreviated!
+  [255]
   $ hg --cw a tip
   abort: option --cwd may not be abbreviated!
+  [255]
   $ hg --rep a tip
   abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+  [255]
   $ hg --repositor a tip
   abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+  [255]
   $ hg -qR a tip
   abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+  [255]
   $ hg -qRa tip
   abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
+  [255]
 
 Testing --cwd:
 
@@ -179,14 +188,19 @@
   quuxfoo
   $ hg --cwd c --config '' tip -q
   abort: malformed --config option: '' (use --config section.name=value)
+  [255]
   $ hg --cwd c --config a.b tip -q
   abort: malformed --config option: 'a.b' (use --config section.name=value)
+  [255]
   $ hg --cwd c --config a tip -q
   abort: malformed --config option: 'a' (use --config section.name=value)
+  [255]
   $ hg --cwd c --config a.= tip -q
   abort: malformed --config option: 'a.=' (use --config section.name=value)
+  [255]
   $ hg --cwd c --config .b= tip -q
   abort: malformed --config option: '.b=' (use --config section.name=value)
+  [255]
 
 Testing --debug:
 
--- a/tests/test-grep.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-grep.t	Thu Sep 16 17:51:32 2010 -0500
@@ -20,6 +20,7 @@
 
   $ hg grep '**test**'
   grep: invalid match pattern: nothing to repeat
+  [1]
 
 simple
 
@@ -79,7 +80,9 @@
   $ hg init t2
   $ cd t2
   $ hg grep foobar foo
+  [1]
   $ hg grep foobar
+  [1]
   $ echo blue >> color
   $ echo black >> color
   $ hg add color
--- a/tests/test-help.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-help.t	Thu Sep 16 17:51:32 2010 -0500
@@ -400,6 +400,7 @@
   [+] marked option can be specified multiple times
   
   use "hg -v help add" to show global options
+  [255]
 
 Test ambiguous command help
 
@@ -573,6 +574,7 @@
    update     update working directory (or switch revisions)
   
   use "hg help" for the full list of commands or "hg -v" for details
+  [255]
 
   $ hg skjdfks
   hg: unknown command 'skjdfks'
@@ -599,6 +601,7 @@
    update     update working directory (or switch revisions)
   
   use "hg help" for the full list of commands or "hg -v" for details
+  [255]
 
   $ cat > helpext.py <<EOF
   > import os
--- a/tests/test-hook.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-hook.t	Thu Sep 16 17:51:32 2010 -0500
@@ -70,6 +70,7 @@
   $ hg id
   pre-identify hook: HG_ARGS=id HG_OPTS={'tags': None, 'rev': '', 'num': None, 'branch': None, 'id': None} HG_PATS=[] 
   warning: pre-identify hook exited with status 1
+  [1]
   $ hg cat b
   pre-cat hook: HG_ARGS=cat b HG_OPTS={'rev': '', 'decode': None, 'exclude': [], 'output': '', 'include': []} HG_PATS=['b'] 
   post-cat hook: HG_ARGS=cat b HG_OPTS={'rev': '', 'decode': None, 'exclude': [], 'output': '', 'include': []} HG_PATS=['b'] HG_RESULT=0 
@@ -114,10 +115,12 @@
   pretag hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa 
   pretag.forbid hook: HG_LOCAL=0 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fa 
   abort: pretag.forbid hook exited with status 1
+  [255]
   $ hg tag -l fla
   pretag hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla 
   pretag.forbid hook: HG_LOCAL=1 HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 HG_TAG=fla 
   abort: pretag.forbid hook exited with status 1
+  [255]
 
 # pretxncommit hook can see changeset, can roll back txn, changeset
 # no more there after
@@ -137,6 +140,7 @@
   transaction abort!
   rollback completed
   abort: pretxncommit.forbid1 hook exited with status 1
+  [255]
   $ hg -q tip
   4:539e4b31b6dc
 
@@ -147,6 +151,7 @@
   precommit hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 
   precommit.forbid hook: HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10 
   abort: precommit.forbid hook exited with status 1
+  [255]
   $ hg -q tip
   4:539e4b31b6dc
 
@@ -177,6 +182,7 @@
   pulling from ../a
   searching for changes
   abort: prechangegroup.forbid hook exited with status 1
+  [255]
 
 # pretxnchangegroup hook can see incoming changes, can roll back txn,
 # incoming changes no longer there after
@@ -196,6 +202,7 @@
   transaction abort!
   rollback completed
   abort: pretxnchangegroup.forbid1 hook exited with status 1
+  [255]
   $ hg -q tip
   3:07f3376c1e65
 
@@ -227,6 +234,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.forbid hook exited with status 1
+  [255]
 
 # outgoing hooks work for local clones
 
@@ -248,6 +256,7 @@
   preoutgoing hook: HG_SOURCE=clone 
   preoutgoing.forbid hook: HG_SOURCE=clone 
   abort: preoutgoing.forbid hook exited with status 1
+  [255]
   $ cd b
 
   $ cat > hooktests.py <<EOF
@@ -309,6 +318,7 @@
   searching for changes
   error: preoutgoing.abort hook failed: raise abort from hook
   abort: raise abort from hook
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.fail = python:hooktests.failhook' >> ../a/.hg/hgrc
@@ -319,6 +329,7 @@
     hooktype preoutgoing
     source pull
   abort: preoutgoing.fail hook failed
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.uncallable = python:hooktests.uncallable' >> ../a/.hg/hgrc
@@ -326,6 +337,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.uncallable hook is invalid ("hooktests.uncallable" is not callable)
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.nohook = python:hooktests.nohook' >> ../a/.hg/hgrc
@@ -333,6 +345,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.nohook hook is invalid ("hooktests.nohook" is not defined)
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.nomodule = python:nomodule' >> ../a/.hg/hgrc
@@ -340,6 +353,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.nomodule hook is invalid ("nomodule" not in a module)
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.badmodule = python:nomodule.nowhere' >> ../a/.hg/hgrc
@@ -347,6 +361,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.badmodule hook is invalid (import of "nomodule" failed)
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.unreachable = python:hooktests.container.unreachable' >> ../a/.hg/hgrc
@@ -354,6 +369,7 @@
   pulling from ../a
   searching for changes
   abort: preoutgoing.unreachable hook is invalid (import of "hooktests.container" failed)
+  [255]
 
   $ echo '[hooks]' > ../a/.hg/hgrc
   $ echo 'preoutgoing.pass = python:hooktests.passhook' >> ../a/.hg/hgrc
@@ -426,6 +442,7 @@
   $ hg commit -d '0 0'
   hook works
   nothing changed
+  [1]
 
   $ cd ../../b
 
--- a/tests/test-identify.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-identify.t	Thu Sep 16 17:51:32 2010 -0500
@@ -4,6 +4,7 @@
 
   $ hg id
   abort: there is no Mercurial repository here (.hg not found)
+  [255]
 
 create repo
 
@@ -65,5 +66,6 @@
 
   $ hg id -t http://localhost:$HGPORT1/
   abort: can't query remote revision number, branch, or tags
+  [255]
 
   $ true # ends with util.Abort -> returns 255
--- a/tests/test-import-eol.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-import-eol.t	Thu Sep 16 17:51:32 2010 -0500
@@ -37,6 +37,7 @@
   $ hg --config patch.eol='LFCR' import eol.diff
   applying eol.diff
   abort: unsupported line endings type: LFCR
+  [255]
   $ hg revert -a
 
 
--- a/tests/test-import.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-import.t	Thu Sep 16 17:51:32 2010 -0500
@@ -74,6 +74,7 @@
   $ hg --cwd b import ../tip.patch
   applying ../tip.patch
   abort: empty commit message
+  [255]
   $ rm -r b
 
 
@@ -287,6 +288,7 @@
   $ egrep -v '^(Subject|email)' msg.patch | hg --cwd b import -
   applying patch from stdin
   abort: empty commit message
+  [255]
   $ rm -r b
 
 
@@ -605,6 +607,7 @@
   > EOF
   applying patch from stdin
   abort: ../outside/foo not under root
+  [255]
   $ cd ..
 
 
--- a/tests/test-init.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-init.t	Thu Sep 16 17:51:32 2010 -0500
@@ -65,6 +65,7 @@
 
   $ hg init local
   abort: repository local already exists!
+  [255]
 
 init+push to remote2
 
@@ -100,12 +101,14 @@
   $ hg init -e "python ./dummyssh" ssh://user@dummy/remote1
   abort: repository remote1 already exists!
   abort: could not create remote repo!
+  [255]
 
 clone to existing repo
 
   $ hg clone -e "python ./dummyssh" local ssh://user@dummy/remote1
   abort: repository remote1 already exists!
   abort: could not create remote repo!
+  [255]
 
 output of dummyssh
 
--- a/tests/test-install.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-install.t	Thu Sep 16 17:51:32 2010 -0500
@@ -19,5 +19,6 @@
    no username supplied (see "hg help config")
    (specify a username in your configuration file)
   1 problems detected, please check your install!
+  [1]
 
   $ true
--- a/tests/test-issue322.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-issue322.t	Thu Sep 16 17:51:32 2010 -0500
@@ -15,6 +15,7 @@
 
   $ hg add a/a
   abort: file 'a' in dirstate clashes with 'a/a'
+  [255]
 
   $ cd ..
 
@@ -34,6 +35,7 @@
 
   $ hg add a
   abort: directory 'a' already in dirstate
+  [255]
 
   $ cd ..
 
@@ -53,6 +55,7 @@
 
   $ hg add b
   abort: directory 'b' already in dirstate
+  [255]
 
   $ exit 0
 
--- a/tests/test-issue433.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-issue433.t	Thu Sep 16 17:51:32 2010 -0500
@@ -7,6 +7,7 @@
 
   $ hg parents -r 0 doesnotexist
   abort: 'doesnotexist' not found in manifest!
+  [255]
 
   $ true
 
--- a/tests/test-issue619.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-issue619.t	Thu Sep 16 17:51:32 2010 -0500
@@ -25,6 +25,7 @@
 
   $ hg merge b
   abort: merging with a working directory ancestor has no effect
+  [255]
 
   $ true
 
--- a/tests/test-issue660.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-issue660.t	Thu Sep 16 17:51:32 2010 -0500
@@ -18,6 +18,7 @@
 
   $ hg add a/a
   abort: file 'a' in dirstate clashes with 'a/a'
+  [255]
 
 Removing shadow:
 
@@ -36,6 +37,7 @@
 
   $ hg add b
   abort: directory 'b' already in dirstate
+  [255]
 
 Removing shadow:
 
@@ -58,6 +60,7 @@
   $ rm -r a b
   $ hg revert b/b
   abort: file 'b' in dirstate clashes with 'b/b'
+  [255]
 
 Revert all - should succeed:
 
@@ -110,6 +113,7 @@
 
   $ hg add d
   abort: directory 'd' already in dirstate
+  [255]
 
 Removing shadow:
 
--- a/tests/test-journal-exists.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-journal-exists.t	Thu Sep 16 17:51:32 2010 -0500
@@ -10,6 +10,7 @@
   $ echo foo > a
   $ hg ci -Am0
   abort: abandoned transaction found - run hg recover!
+  [255]
 
   $ hg recover
   rolling back interrupted transaction
@@ -27,6 +28,7 @@
   $ hg -R foo unbundle repo.hg
   adding changesets
   abort: Permission denied: .*
+  [255]
 
   $ if test -f foo/.hg/store/journal; then echo 'journal exists :-('; fi
 
--- a/tests/test-keyword.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-keyword.t	Thu Sep 16 17:51:32 2010 -0500
@@ -116,6 +116,7 @@
 
   $ hg --debug commit
   abort: empty commit message
+  [255]
   $ hg status
   A a
   A b
@@ -540,6 +541,7 @@
 
   $ hg commit
   abort: empty commit message
+  [255]
   $ hg status
   M a
   ? c
@@ -689,6 +691,7 @@
 
   $ hg --verbose kwexpand x/a
   abort: outstanding uncommitted changes
+  [255]
   $ cd x
   $ hg --debug commit -m xa -d '3 0' -u 'User Name <user@example.com>'
   x/a
@@ -818,6 +821,7 @@
   merging m failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ cat m
   $Id$
   <<<<<<< local
--- a/tests/test-locate.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-locate.t	Thu Sep 16 17:51:32 2010 -0500
@@ -42,8 +42,11 @@
   $ hg ci -m m
 
   $ hg locate a
+  [1]
   $ hg locate NONEXISTENT
+  [1]
   $ hg locate relpath:NONEXISTENT
+  [1]
   $ hg locate
   b
   dir.h/foo
@@ -54,7 +57,9 @@
   $ hg locate -r 0 a
   a
   $ hg locate -r 0 NONEXISTENT
+  [1]
   $ hg locate -r 0 relpath:NONEXISTENT
+  [1]
   $ hg locate -r 0
   a
   b
--- a/tests/test-lock-badness.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-lock-badness.t	Thu Sep 16 17:51:32 2010 -0500
@@ -16,6 +16,7 @@
   $ hg -R b push a
   pushing to a
   abort: could not lock repository a: Permission denied
+  [255]
 
   $ chmod 700 a/.hg/store
 
--- a/tests/test-log.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-log.t	Thu Sep 16 17:51:32 2010 -0500
@@ -31,6 +31,7 @@
 
   $ hg log -f dir
   abort: cannot follow nonexistent file: "dir"
+  [255]
 
 -f, but no args
 
@@ -495,11 +496,13 @@
 
   $ hg log -r ''
   hg: parse error: empty query
+  [255]
 
 log -r <some unknown node id>
 
   $ hg log -r 1000000000000000000000000000000000000000
   abort: unknown revision '1000000000000000000000000000000000000000'!
+  [255]
 
 log -k r1
 
@@ -658,6 +661,7 @@
 
   $ hg log -b dummy
   abort: unknown revision 'dummy'!
+  [255]
 
 
 log -b .
@@ -899,6 +903,7 @@
   merging foo failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ echo 'merge 1' > foo
   $ hg resolve -m foo
   $ hg ci -m "First merge, related"
@@ -909,6 +914,7 @@
   merging foo failed!
   1 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ echo 'merge 2' > foo
   $ hg resolve -m foo
   $ hg ci -m "Last merge, related"
--- a/tests/test-manifest.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-manifest.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,9 +60,11 @@
 
   $ hg manifest -r 2
   abort: unknown revision '2'!
+  [255]
 
   $ hg manifest -r tip tip
   abort: please specify just one revision
+  [255]
 
 
   $ true
--- a/tests/test-merge-closedheads.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-closedheads.t	Thu Sep 16 17:51:32 2010 -0500
@@ -44,6 +44,7 @@
   $ hg merge
   abort: branch 'default' has 3 heads - please merge with an explicit rev
   (run 'hg heads .' to see heads)
+  [255]
 
 close one of the heads
   $ hg up -C 6
--- a/tests/test-merge-default.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-default.t	Thu Sep 16 17:51:32 2010 -0500
@@ -29,6 +29,7 @@
   $ hg merge
   abort: branch 'default' has 3 heads - please merge with an explicit rev
   (run 'hg heads .' to see heads)
+  [255]
 
   $ hg up
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -39,6 +40,7 @@
   $ hg merge
   abort: branch 'default' has 3 heads - please merge with an explicit rev
   (run 'hg heads .' to see heads)
+  [255]
 
 Should succeed:
 
@@ -65,6 +67,7 @@
 
   $ hg merge
   abort: there is nothing to merge
+  [255]
 
   $ hg up 0
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -73,6 +76,7 @@
 
   $ hg merge
   abort: there is nothing to merge - use "hg update" instead
+  [255]
 
   $ hg up 3
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -87,6 +91,7 @@
   $ hg merge
   abort: branch 'foobranch' has one head - please merge with an explicit rev
   (run 'hg heads' to see all heads)
+  [255]
 
 
 Test for issue2043: ensure that 'merge -P' shows ancestors of 6 that
--- a/tests/test-merge-force.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-force.t	Thu Sep 16 17:51:32 2010 -0500
@@ -20,6 +20,7 @@
 
   $ hg merge
   abort: outstanding uncommitted changes (use 'hg status' to list changes)
+  [255]
 
 Should succeed with --force:
 
--- a/tests/test-merge-internal-tools-pattern.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-internal-tools-pattern.t	Thu Sep 16 17:51:32 2010 -0500
@@ -43,6 +43,7 @@
   $ hg merge
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
   $ cat f
   line 1
--- a/tests/test-merge-local.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-local.t	Thu Sep 16 17:51:32 2010 -0500
@@ -57,6 +57,7 @@
   merging zzz2_merge_bad failed!
   3 files updated, 1 files merged, 2 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ hg co 0
   merging zzz1_merge_ok
@@ -65,6 +66,7 @@
   merging zzz2_merge_bad failed!
   2 files updated, 1 files merged, 3 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ hg diff --nodates | grep "^[+-][^<>]"
   --- a/zzz1_merge_ok
@@ -89,6 +91,7 @@
   merging zzz2_merge_bad failed!
   3 files updated, 1 files merged, 2 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ hg co 0
   merging zzz1_merge_ok
@@ -97,6 +100,7 @@
   merging zzz2_merge_bad failed!
   2 files updated, 1 files merged, 3 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ hg diff --nodates | grep "^[+-][^<>]"
   --- a/zzz1_merge_ok
--- a/tests/test-merge-revert2.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge-revert2.t	Thu Sep 16 17:51:32 2010 -0500
@@ -48,6 +48,7 @@
   merging file1 failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ hg diff --nodates
   diff -r dfab7f3c2efb file1
--- a/tests/test-merge1.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge1.t	Thu Sep 16 17:51:32 2010 -0500
@@ -69,6 +69,7 @@
 merge should fail
   $ hg merge 1
   abort: untracked file in working directory differs from file in requested revision: 'b'
+  [255]
 merge of b expected
   $ hg merge -f 1
   merging for b
@@ -111,6 +112,7 @@
 merge fails
   $ hg merge 2
   abort: outstanding uncommitted changes (use 'hg status' to list changes)
+  [255]
   $ echo %% merge expected!
   %% merge expected!
   $ hg merge -f 2
@@ -148,6 +150,7 @@
 merge of b should fail
   $ hg merge 2
   abort: outstanding uncommitted changes (use 'hg status' to list changes)
+  [255]
 merge of b expected
   $ hg merge -f 2
   merging for b
--- a/tests/test-merge5.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge5.t	Thu Sep 16 17:51:32 2010 -0500
@@ -15,6 +15,7 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg update
   abort: crosses branches (use 'hg merge' or use 'hg update -c')
+  [255]
   $ hg update -c
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ mv a c
@@ -27,6 +28,7 @@
 
   $ hg update -y 1
   abort: crosses branches (use 'hg merge' to merge or use 'hg update -C' to discard changes)
+  [255]
   $ mv c a
 
 Should succeed:
--- a/tests/test-merge7.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge7.t	Thu Sep 16 17:51:32 2010 -0500
@@ -48,6 +48,7 @@
   merging test.txt failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 resolve conflict
   $ cat >test.txt <<"EOF"
   > one
@@ -92,6 +93,7 @@
   merging test.txt failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
   $ cat test.txt
   one
--- a/tests/test-merge9.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-merge9.t	Thu Sep 16 17:51:32 2010 -0500
@@ -31,6 +31,7 @@
   merging foo and baz to baz
   1 files updated, 1 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ hg resolve -l
   U bar
   R baz
@@ -44,6 +45,7 @@
   merging baz and foo to baz
   1 files updated, 1 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
 show unresolved
   $ hg resolve -l
@@ -75,12 +77,14 @@
 resolve all warning
   $ hg resolve
   abort: no files or directories specified; use --all to remerge all files
+  [255]
 
 resolve all
   $ hg resolve -a
   merging bar
   warning: conflicts during merge.
   merging bar failed!
+  [1]
 
 after
   $ hg resolve -l
--- a/tests/test-mq-eol.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-mq-eol.t	Thu Sep 16 17:51:32 2010 -0500
@@ -60,6 +60,7 @@
   patch failed, unable to continue (try -v)
   patch failed, rejects left in working dir
   errors during apply, please fix and refresh eol.diff
+  [2]
   $ hg qpop
   popping eol.diff
   patch queue now empty
@@ -71,6 +72,7 @@
   patch failed, unable to continue (try -v)
   patch failed, rejects left in working dir
   errors during apply, please fix and refresh eol.diff
+  [2]
   $ hg qpop
   popping eol.diff
   patch queue now empty
--- a/tests/test-mq-guards.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-mq-guards.t	Thu Sep 16 17:51:32 2010 -0500
@@ -34,12 +34,14 @@
 
   $ hg qguard does-not-exist.patch +bleh
   abort: no patch named does-not-exist.patch
+  [255]
 
 
 should fail
 
   $ hg qguard +fail
   abort: no patches applied
+  [255]
 
   $ hg qpush
   applying a.patch
@@ -62,6 +64,7 @@
 
   $ hg qpush a.patch
   cannot push 'a.patch' - guarded by ['+a']
+  [1]
 
   $ hg qguard a.patch
   a.patch: +a
@@ -80,6 +83,7 @@
 
   $ hg qselect ""
   abort: guard cannot be an empty string
+  [255]
   $ hg qselect a
   number of unguarded, unapplied patches has changed from 2 to 3
 
--- a/tests/test-mq-safety.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-mq-safety.t	Thu Sep 16 17:51:32 2010 -0500
@@ -23,6 +23,7 @@
   $ echo quux >> foo
   $ hg ci -m 'append quux'
   abort: cannot commit over an applied mq patch
+  [255]
 
 
 cheat a bit...
@@ -36,18 +37,23 @@
 
   $ hg qpop
   abort: popping would remove a revision not managed by this patch queue
+  [255]
   $ hg qpop -n patches
   using patch queue: .*/repo/.hg/patches
   abort: popping would remove a revision not managed by this patch queue
+  [255]
   $ hg qrefresh
   abort: working directory revision is not qtip
+  [255]
 
   $ hg up -C qtip
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg qpop
   abort: popping would remove a revision not managed by this patch queue
+  [255]
   $ hg qrefresh
   abort: cannot refresh a revision with children
+  [255]
   $ hg tip --template '{rev} {desc}\n'
   3 append quux
 
--- a/tests/test-mq.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-mq.t	Thu Sep 16 17:51:32 2010 -0500
@@ -136,6 +136,7 @@
   $ cat .hg/patches/series
   $ hg qinit -c
   abort: repository .* already exists!
+  [255]
   $ cd ..
 
   $ echo '% qinit; <stuff>; qinit -c'
@@ -196,6 +197,7 @@
   $ cd f
   $ hg init --mq
   abort: there is no Mercurial repository here (.hg not found)
+  [255]
   $ cd ..
 
 init --mq with repo path
@@ -209,6 +211,7 @@
 
   $ hg init --mq nonexistentdir
   abort: repository nonexistentdir not found!
+  [255]
 
 
 init --mq with bundle (non "local")
@@ -216,6 +219,7 @@
   $ hg -R a bundle --all a.bundle >/dev/null
   $ hg init --mq a.bundle
   abort: only a local queue repository may be initialized
+  [255]
 
   $ cd a
 
@@ -370,6 +374,7 @@
 
   $ hg qunapp -1
   all patches applied
+  [1]
 
   $ hg qpop
   popping test2.patch
@@ -379,12 +384,14 @@
 
   $ hg commit
   abort: cannot commit over an applied mq patch
+  [255]
 
 push should fail
 
   $ hg push ../../k
   pushing to ../../k
   abort: source has mq patches applied
+  [255]
 
 
 import should fail
@@ -395,6 +402,7 @@
   $ hg revert --no-backup ../a
   $ hg import ../../import.diff
   abort: cannot import over an applied patch
+  [255]
   $ hg st
 
 import --no-commit should succeed
@@ -454,6 +462,7 @@
   $ hg qguard test2.patch -- +posguard
   $ hg qpush --move test2.patch # can't move guarded patch
   cannot push 'test2.patch' - guarded by ['+posguard']
+  [1]
   $ hg qselect posguard
   number of unguarded, unapplied patches has changed from 2 to 3
   $ hg qpush --move test2.patch # move to front
@@ -490,10 +499,13 @@
   now at: test1b.patch
   $ hg qpush --move bogus # nonexistent patch
   abort: patch bogus not in series
+  [255]
   $ hg qpush --move # no patch
   abort: please specify the patch to move
+  [255]
   $ hg qpush --move test.patch # already applied
   abort: cannot push to a previous patch: test.patch
+  [255]
   $ hg qpush
   applying test2.patch
   now at: test2.patch
@@ -520,6 +532,7 @@
 
   $ hg qapplied -1 test.patch
   only one patch applied
+  [1]
 
 qapplied -1 test1b.patch
 
@@ -553,6 +566,7 @@
 
   $ hg qunapplied -1
   all patches applied
+  [1]
 
 qunapplied
 
@@ -582,6 +596,7 @@
 
   $ hg qunapplied -1 test2.patch
   all patches applied
+  [1]
 
 popping -a
 
@@ -598,6 +613,7 @@
 
   $ hg qapplied -1
   no patches applied
+  [1]
   $ hg qpush
   applying test.patch
   now at: test.patch
@@ -760,6 +776,7 @@
   $ hg add y
   $ hg strip tip
   abort: local changes found
+  [255]
 
 --force strip with local changes
 
@@ -835,6 +852,7 @@
   patch failed, unable to continue (try -v)
   patch failed, rejects left in working dir
   errors during apply, please fix and refresh bar
+  [2]
   $ hg st
   ? foo
   ? foo.rej
@@ -865,6 +883,7 @@
   default                        0:cb9a9f314b8b
   $ hg qpop
   no patches applied
+  [1]
 
   $ cat >>$HGRCPATH <<EOF
   > [diff]
@@ -1064,6 +1083,7 @@
   popping addbucephalus
   now at: addalexander
   $ test -f bucephalus && echo % bucephalus should not be there
+  [1]
   $ hg qpush
   applying addbucephalus
   now at: addbucephalus
@@ -1162,6 +1182,7 @@
 
   $ hg qclone qclonesource failure
   abort: versioned patch repository not found (see init --mq)
+  [255]
 
   $ cd qclonesource
   $ hg qinit -c
@@ -1254,6 +1275,7 @@
 
   $ hg qpush
   abort: local changes found, refresh first
+  [255]
 
 
 apply force, should not discard changes with empty patch
@@ -1299,6 +1321,7 @@
 
   $ hg qpush
   abort: local changes found, refresh first
+  [255]
 
 
 apply force, should discard changes in hello, but not bye
--- a/tests/test-nested-repo.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-nested-repo.t	Thu Sep 16 17:51:32 2010 -0500
@@ -12,13 +12,16 @@
 
   $ hg st b/x
   abort: path 'b/x' is inside repo 'b'
+  [255]
   $ hg add b/x
   abort: path 'b/x' is inside repo 'b'
+  [255]
 
 Should fail:
 
   $ hg add b b/x
   abort: path 'b/x' is inside repo 'b'
+  [255]
   $ hg st
 
 Should arguably print nothing:
@@ -32,5 +35,6 @@
 
   $ hg mv a b
   abort: path 'b/a' is inside repo 'b'
+  [255]
   $ hg st
 
--- a/tests/test-newbranch.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-newbranch.t	Thu Sep 16 17:51:32 2010 -0500
@@ -20,6 +20,7 @@
 
   $ hg branch default
   abort: a branch of the same name already exists (use 'hg update' to switch to it)
+  [255]
 
   $ hg branch -f default
   marked working directory as branch default
@@ -186,6 +187,7 @@
 
   $ hg up
   abort: branch foobar not found
+  [255]
 
 Fastforward merge:
 
@@ -292,6 +294,7 @@
   $ hg merge
   abort: branch 'test' has one head - please merge with an explicit rev
   (run 'hg heads' to see all heads)
+  [255]
   $ hg up -C default
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
 
@@ -300,6 +303,7 @@
   $ hg merge
   abort: branch 'default' has 3 heads - please merge with an explicit rev
   (run 'hg heads .' to see heads)
+  [255]
 
 3 branch heads, explicit merge required:
 
--- a/tests/test-parents.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-parents.t	Thu Sep 16 17:51:32 2010 -0500
@@ -54,6 +54,7 @@
 
   $ hg parents -r 3 c
   abort: 'c' not found in manifest!
+  [255]
 
   $ hg parents -r 2
   changeset:   1:d786049f033a
@@ -71,6 +72,7 @@
 
   $ hg parents -r 2 ../a
   abort: ../a not under root
+  [255]
 
 
 cd dir; hg parents -r 2 ../a
@@ -93,6 +95,7 @@
 
   $ hg parents -r 2 glob:a
   abort: can only specify an explicit filename
+  [255]
 
 
 merge working dir with 2 parents, hg parents c
--- a/tests/test-parse-date.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-parse-date.t	Thu Sep 16 17:51:32 2010 -0500
@@ -18,10 +18,13 @@
   $ echo "fail" >> a
   $ hg ci -d "should fail" -m "fail"
   abort: invalid date: 'should fail'
+  [255]
   $ hg ci -d "100000000000000000 1400" -m "fail"
   abort: date exceeds 32 bits: 100000000000000000
+  [255]
   $ hg ci -d "100000 1400000" -m "fail"
   abort: impossible time zone offset: 1400000
+  [255]
 
 Check with local timezone other than GMT and with DST
 
--- a/tests/test-patchbomb.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-patchbomb.t	Thu Sep 16 17:51:32 2010 -0500
@@ -62,6 +62,7 @@
    1 files changed, 1 insertions(+), 0 deletions(-)
   
   are you sure you want to send (yn)? abort: patchbomb canceled
+  [255]
 
   $ echo b > b
   $ hg commit -Amb -d '2 0'
@@ -1447,6 +1448,7 @@
   This patch series consists of 2 patches.
   
   abort: Subject: [PATCH 0 of 2] Please enter a valid value
+  [255]
 
   $ hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \
   >  -s test -r 0:1 | fixheaders
--- a/tests/test-paths.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-paths.t	Thu Sep 16 17:51:32 2010 -0500
@@ -8,8 +8,10 @@
   $ hg in dupe
   comparing with .*/test-paths.t/b
   no changes found
+  [1]
   $ cd ..
   $ hg -R a in dupe
   comparing with .*/test-paths.t/b
   no changes found
+  [1]
   $ true
--- a/tests/test-pull-r.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-pull-r.t	Thu Sep 16 17:51:32 2010 -0500
@@ -34,6 +34,7 @@
 
   $ hg pull -qr missing ../repo
   abort: unknown revision 'missing'!
+  [255]
 
 Pull multiple revisions with update:
 
--- a/tests/test-pull.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-pull.t	Thu Sep 16 17:51:32 2010 -0500
@@ -69,6 +69,7 @@
 
   $ hg pull -q file://../test-doesnt-exist
   abort: repository /test-doesnt-exist not found!
+  [255]
 
   $ hg pull -q file:../test
 
--- a/tests/test-push-validation.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-push-validation.t	Thu Sep 16 17:51:32 2010 -0500
@@ -35,6 +35,7 @@
   2 files, 2 changesets, 2 total revisions
   1 integrity errors encountered!
   (first damaged changeset appears to be 1)
+  [1]
 
 Expected to fail:
 
@@ -47,6 +48,7 @@
   transaction abort!
   rollback completed
   abort: missing file data for beta:dddc47b3ba30e54484720ce0f4f768a0f4b6efb9 - run hg verify
+  [255]
 
   $ true
 
--- a/tests/test-push-warn.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-push-warn.t	Thu Sep 16 17:51:32 2010 -0500
@@ -28,6 +28,7 @@
   searching for changes
   abort: push creates new remote heads on branch 'default'!
   (you should pull and merge or use push -f to force)
+  [255]
 
   $ hg pull ../a
   pulling from ../a
@@ -43,6 +44,7 @@
   searching for changes
   abort: push creates new remote heads on branch 'default'!
   (did you forget to merge? use push -f to force)
+  [255]
 
   $ hg merge
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -139,6 +141,7 @@
   comparing with ../c
   searching for changes
   no changes found
+  [1]
 
 
 Issue 450:
@@ -315,6 +318,7 @@
 
   $ echo 12 > foo
   $ hg -q ci -m 12a
+  [1]
   $ hg -q up 11
   $ echo 13 > foo
   $ hg -q branch e
@@ -372,6 +376,7 @@
   searching for changes
   abort: push creates new remote heads on branch 'default'!
   (you should pull and merge or use push -f to force)
+  [255]
 
 
 Check prepush logic with merged branches:
@@ -405,6 +410,7 @@
   searching for changes
   abort: push creates new remote branches: b!
   (use 'hg push --new-branch' to create new remote branches)
+  [255]
 
 
 Prepush -r should not allow you to sneak in new heads:
@@ -440,6 +446,7 @@
   searching for changes
   abort: push creates new remote heads on branch 'a'!
   (did you forget to merge? use push -f to force)
+  [255]
 
   $ cd ..
 
@@ -685,17 +692,20 @@
   searching for changes
   abort: push creates new remote heads on branch 'A'!
   (did you forget to merge? use push -f to force)
+  [255]
 
   $ hg push inner -r4 -r5
   pushing to inner
   searching for changes
   abort: push creates new remote heads on branch 'A'!
   (did you forget to merge? use push -f to force)
+  [255]
 
   $ hg in inner
   comparing with inner
   searching for changes
   no changes found
+  [1]
 
   $ cd ..
 
--- a/tests/test-qrecord.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-qrecord.t	Thu Sep 16 17:51:32 2010 -0500
@@ -32,6 +32,7 @@
    update     update working directory (or switch revisions)
   
   use "hg help" for the full list of commands or "hg -v" for details
+  [255]
 
 help (mq present)
 
--- a/tests/test-record.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-record.t	Thu Sep 16 17:51:32 2010 -0500
@@ -86,6 +86,7 @@
   new file mode 100644
   examine changes to 'empty-rw'? [Ynsfdaq?] 
   abort: empty commit message
+  [255]
 
   $ hg tip -p
   changeset:   -1:000000000000
@@ -698,6 +699,7 @@
   ? - display help
   examine changes to 'subdir/f1'? [Ynsfdaq?] 
   abort: user quit
+  [255]
 
 Skip
 
@@ -710,6 +712,7 @@
   diff --git a/subdir/f2 b/subdir/f2
   1 hunks, 1 lines changed
   examine changes to 'subdir/f2'? [Ynsfdaq?] abort: response expected
+  [255]
 
 No
 
@@ -722,6 +725,7 @@
   diff --git a/subdir/f2 b/subdir/f2
   1 hunks, 1 lines changed
   examine changes to 'subdir/f2'? [Ynsfdaq?] abort: response expected
+  [255]
 
 f, quit
 
@@ -736,6 +740,7 @@
   1 hunks, 1 lines changed
   examine changes to 'subdir/f2'? [Ynsfdaq?] 
   abort: user quit
+  [255]
 
 s, all
 
@@ -926,6 +931,7 @@
 
   $ hg record -m'will abort'
   abort: cannot partially commit a merge (use hg commit instead)
+  [255]
 
   $ hg up -C
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-remove-new.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-remove-new.t	Thu Sep 16 17:51:32 2010 -0500
@@ -10,4 +10,5 @@
   $ hg commit -A -m"comment #1"
   removing b
   nothing changed
+  [1]
   $ exit 0
--- a/tests/test-rename.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-rename.t	Thu Sep 16 17:51:32 2010 -0500
@@ -268,6 +268,7 @@
   @@ -1 +1 @@
   -d1/b
   +d2/b
+  [1]
   $ hg update -C
   3 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ rm d2/a d2/ba d2/d11/a1
@@ -276,6 +277,7 @@
 
   $ hg rename d1/a dx/
   abort: destination dx/ is not a directory
+  [255]
   $ hg status -C
   $ hg update -C
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -284,6 +286,7 @@
 
   $ hg rename 'glob:d1/**' dx
   abort: with multiple sources, destination must be an existing directory
+  [255]
 
 move every file under d1 to d2/d21 (glob)
 
@@ -560,14 +563,17 @@
 
   $ hg rename d1/d11/a1 .hg/foo
   abort: path contains illegal component: .hg/foo
+  [255]
   $ hg status -C
   $ hg rename d1/d11/a1 ../foo
   abort: ../foo not under root
+  [255]
   $ hg status -C
 
   $ mv d1/d11/a1 .hg/foo
   $ hg rename --after d1/d11/a1 .hg/foo
   abort: path contains illegal component: .hg/foo
+  [255]
   $ hg status -C
   ! d1/d11/a1
   $ hg update -C
@@ -576,14 +582,17 @@
 
   $ hg rename d1/d11/a1 .hg
   abort: path contains illegal component: .hg/a1
+  [255]
   $ hg status -C
   $ hg rename d1/d11/a1 ..
   abort: ../a1 not under root
+  [255]
   $ hg status -C
 
   $ mv d1/d11/a1 .hg
   $ hg rename --after d1/d11/a1 .hg
   abort: path contains illegal component: .hg/a1
+  [255]
   $ hg status -C
   ! d1/d11/a1
   $ hg update -C
@@ -592,8 +601,10 @@
 
   $ (cd d1/d11; hg rename ../../d2/b ../../.hg/foo)
   abort: path contains illegal component: .hg/foo
+  [255]
   $ hg status -C
   $ (cd d1/d11; hg rename ../../d2/b ../../../foo)
   abort: ../../../foo not under root
+  [255]
   $ hg status -C
 
--- a/tests/test-requires.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-requires.t	Thu Sep 16 17:51:32 2010 -0500
@@ -7,8 +7,10 @@
   $ rm .hg/requires
   $ hg tip
   abort: index 00changelog.i unknown format 2!
+  [255]
   $ echo indoor-pool > .hg/requires
   $ hg tip
   abort: requirement 'indoor-pool' not supported!
+  [255]
 
   $ true
--- a/tests/test-resolve.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-resolve.t	Thu Sep 16 17:51:32 2010 -0500
@@ -24,6 +24,7 @@
   $ HGMERGE=internal:fail hg merge
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
 
   $ echo resolved > file
   $ hg resolve -m file
--- a/tests/test-revert.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-revert.t	Thu Sep 16 17:51:32 2010 -0500
@@ -186,6 +186,7 @@
 
   $ hg revert -rtip
   abort: no files or directories specified; use --all to revert the whole repo
+  [255]
 
 should succeed
 
--- a/tests/test-revset.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-revset.t	Thu Sep 16 17:51:32 2010 -0500
@@ -61,6 +61,7 @@
   marked working directory as branch all
   $ hg ci --close-branch -Aqm8
   abort: can only close branch heads
+  [255]
 
   $ hg co 4
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -97,11 +98,13 @@
   7
   $ try -- '-a-b-c-' # complains
   hg: parse error at 7: not a prefix: end
+  [255]
   $ log -a-b-c- # succeeds with fallback
   4
   $ try -- -a-b-c--a # complains
   ('minus', ('minus', ('minus', ('negate', ('symbol', 'a')), ('symbol', 'b')), ('symbol', 'c')), ('negate', ('symbol', 'a')))
   abort: unknown revision '-a'!
+  [255]
   $ try é
   ('symbol', '\xc3\xa9')
   9
@@ -143,21 +146,28 @@
   4
   $ log 'date(this is a test)'
   hg: parse error at 10: unexpected token: symbol
+  [255]
   $ log 'date()'
   hg: parse error: date wants a string
+  [255]
   $ log 'date'
   hg: parse error: can't use date here
+  [255]
   $ log 'date('
   hg: parse error at 5: not a prefix: end
+  [255]
   $ log 'date(tip)'
   abort: invalid date: 'tip'
+  [255]
   $ log '"date"'
   abort: unknown revision 'date'!
+  [255]
   $ log 'date(2005) and 1::'
   4
 
   $ log 'ancestor(1)'
   hg: parse error: ancestor wants two arguments
+  [255]
   $ log 'ancestor(4,5)'
   1
   $ log 'ancestor(4,5) and 4'
--- a/tests/test-status-color.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-status-color.t	Thu Sep 16 17:51:32 2010 -0500
@@ -268,6 +268,7 @@
   merging b failed!
   0 files updated, 0 files merged, 0 files removed, 2 files unresolved
   use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+  [1]
   $ hg resolve -m b
 
 hg resolve with one unresolved, one resolved:
--- a/tests/test-strict.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-strict.t	Thu Sep 16 17:51:32 2010 -0500
@@ -35,6 +35,7 @@
    update     update working directory (or switch revisions)
   
   use "hg help" for the full list of commands or "hg -v" for details
+  [255]
   $ hg annotate a
   0: a
 
--- a/tests/test-subrepo-paths.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-subrepo-paths.t	Thu Sep 16 17:51:32 2010 -0500
@@ -29,5 +29,6 @@
   > EOF
   $ hg debugsub
   abort: bad subrepository pattern in .*/test-subrepo-paths.t/outer/.hg/hgrc:2: invalid group reference
+  [255]
 
   $ exit 0
--- a/tests/test-subrepo-recursion.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-subrepo-recursion.t	Thu Sep 16 17:51:32 2010 -0500
@@ -253,6 +253,7 @@
   comparing with .*/test-subrepo-recursion.t/repo/foo
   searching for changes
   no changes found
+  [1]
   $ echo $?
   0
 
@@ -315,6 +316,7 @@
   
   $ hg incoming -S --bundle incoming.hg
   abort: cannot combine --bundle and --subrepos
+  [255]
 
 Test missing subrepo:
 
--- a/tests/test-subrepo-svn.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-subrepo-svn.t	Thu Sep 16 17:51:32 2010 -0500
@@ -153,6 +153,7 @@
   $ hg ci -m 'amend externals from hg'
   committing subrepository s
   abort: cannot commit svn externals
+  [255]
   $ hg diff --subrepos -r 1:2 | grep -v diff
   --- a/.hgsubstate	Thu Jan 01 00:00:00 1970 +0000
   +++ b/.hgsubstate	Thu Jan 01 00:00:00 1970 +0000
@@ -173,6 +174,7 @@
   $ hg ci -m 'amend externals from hg'
   committing subrepository s
   abort: cannot commit svn externals
+  [255]
   $ svn revert -q s/externals/other
 
 clone
--- a/tests/test-subrepo.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-subrepo.t	Thu Sep 16 17:51:32 2010 -0500
@@ -21,6 +21,7 @@
 
   $ hg ci -mbad s
   abort: can't commit subrepos without .hgsub
+  [255]
 
   $ hg -R s ci -Ams0
   adding a
@@ -302,6 +303,7 @@
   searching for changes
   abort: push creates new remote heads on branch 'default'!
   (did you forget to merge? use push -f to force)
+  [255]
   $ hg push -f
   pushing .*sub/t
   pushing .*sub/t/s/ss
@@ -361,6 +363,7 @@
   $ echo 'bogus=[boguspath' >> .hgsub
   $ hg ci -m 'bogus subrepo path'
   abort: missing ] in subrepo source
+  [255]
 
 issue 1986
 
@@ -577,6 +580,7 @@
   $ hg -q -R repo2 push
   abort: push creates new remote heads on branch 'default'!
   (did you forget to merge? use push -f to force)
+  [255]
   $ hg -R repo update
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ rm -rf repo2 repo
--- a/tests/test-symlinks.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-symlinks.t	Thu Sep 16 17:51:32 2010 -0500
@@ -178,6 +178,7 @@
   $ ln -s nothing dangling
   $ hg commit -m 'commit symlink without adding' dangling
   abort: dangling: file not tracked!
+  [255]
   $ hg add dangling
   $ hg commit -m 'add symlink'
 
--- a/tests/test-tag.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-tag.t	Thu Sep 16 17:51:32 2010 -0500
@@ -14,6 +14,7 @@
 
   $ hg tag ' '
   abort: tag names cannot consist entirely of whitespace
+  [255]
 
   $ hg tag "bleah"
   $ hg history
@@ -88,8 +89,10 @@
   $ hg tag -l 'xx
   > newline'
   abort: '\n' cannot be used in a tag name
+  [255]
   $ hg tag -l 'xx:xx'
   abort: ':' cannot be used in a tag name
+  [255]
 
 cloning local tags
 
--- a/tests/test-tags.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-tags.t	Thu Sep 16 17:51:32 2010 -0500
@@ -242,6 +242,7 @@
 
   $ hg tag --remove foobar
   abort: tag 'foobar' does not exist
+  [255]
   $ hg tip
   changeset:   5:5f6e8655b1c7
   tag:         tip
@@ -290,6 +291,7 @@
 
   $ hg tag -r 3 bar
   abort: tag 'bar' already exists (use -f to force)
+  [255]
   $ hg tags
   tip                                6:735c3ca72986
   bar                                0:bbd179dfa0a7
@@ -356,10 +358,12 @@
   $ hg tag -r 0 -l localtag
   $ hg tag --remove localtag
   abort: tag 'localtag' is not a global tag
+  [255]
   $ 
   $ hg tag -r 0 globaltag
   $ hg tag --remove -l globaltag
   abort: tag 'globaltag' is not a local tag
+  [255]
   $ hg tags -v
   tip                                1:a0b6fe111088
   localtag                           0:bbd179dfa0a7 local
--- a/tests/test-transplant.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-transplant.t	Thu Sep 16 17:51:32 2010 -0500
@@ -207,6 +207,7 @@
   1 out of 1 hunks FAILED -- saving rejects to file foo.rej
   patch failed to apply
   abort: fix up the merge and run hg transplant --continue
+  [255]
 
 transplant -c shouldn't use an old changeset
 
@@ -220,6 +221,7 @@
   1 out of 1 hunks FAILED -- saving rejects to file foo.rej
   patch failed to apply
   abort: fix up the merge and run hg transplant --continue
+  [255]
   $ hg transplant --continue
   a1e30dd1b8e7 transplanted as f1563cf27039
   $ hg transplant 1:3
@@ -320,6 +322,7 @@
   1 out of 1 hunks FAILED -- saving rejects to file b1.rej
   patch failed to apply
   abort: fix up the merge and run hg transplant --continue
+  [255]
   $ cd ..
 
 
@@ -345,6 +348,7 @@
   $ python -c "file('b', 'wb').write('b\r\nb\r\n')"
   $ hg ci -m addb
   nothing changed
+  [1]
   $ hg transplant -s ../twin1 tip
   applying 2e849d776c17
   2e849d776c17 transplanted to 589cea8ba85b
--- a/tests/test-unrelated-pull.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-unrelated-pull.t	Thu Sep 16 17:51:32 2010 -0500
@@ -17,6 +17,7 @@
   pulling from ../a
   searching for changes
   abort: repository is unrelated
+  [255]
 
   $ hg pull -f ../a
   pulling from ../a
--- a/tests/test-update-issue1456.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-update-issue1456.t	Thu Sep 16 17:51:32 2010 -0500
@@ -10,6 +10,7 @@
   $ echo dirty > foo
   $ hg up -c
   abort: uncommitted local changes
+  [255]
   $ hg up -q
   $ cat foo
   dirty
@@ -23,6 +24,7 @@
   $ chmod -x foo
   $ hg ci -m removeexec
   nothing changed
+  [1]
   $ hg up -C 0
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg up
--- a/tests/test-update-renames.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-update-renames.t	Thu Sep 16 17:51:32 2010 -0500
@@ -24,6 +24,7 @@
   merging b failed!
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
   use 'hg resolve' to retry unresolved file merges
+  [1]
 
   $ cd ..
 
--- a/tests/test-username-newline.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-username-newline.t	Thu Sep 16 17:51:32 2010 -0500
@@ -10,15 +10,18 @@
   adding a
   abort: username 'foo\nbar1' contains a newline
   
+  [255]
   $ rm .hg/hgrc
 
   $ HGUSER=`(echo foo; echo bar2)` hg ci -Am m
   abort: username 'foo\nbar2' contains a newline
   
+  [255]
   $ hg ci -Am m -u "`(echo foo; echo bar3)`"
   transaction abort!
   rollback completed
   abort: username 'foo\nbar3' contains a newline!
+  [255]
 
   $ true
 
--- a/tests/test-verify.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-verify.t	Thu Sep 16 17:51:32 2010 -0500
@@ -56,6 +56,7 @@
   3 files, 1 changesets, 0 total revisions
   9 integrity errors encountered!
   (first damaged changeset appears to be 0)
+  [1]
 
   $ cd ..
 
@@ -83,6 +84,7 @@
   1 warnings encountered!
   1 integrity errors encountered!
   (first damaged changeset appears to be 0)
+  [1]
 
   $ cd ..
 
--- a/tests/test-walk.t	Thu Sep 16 16:12:26 2010 -0500
+++ b/tests/test-walk.t	Thu Sep 16 17:51:32 2010 -0500
@@ -160,8 +160,10 @@
   f  mammals/skunk                   skunk
   $ hg debugwalk .hg
   abort: path 'mammals/.hg' is inside repo 'mammals'
+  [255]
   $ hg debugwalk ../.hg
   abort: path contains illegal component: .hg
+  [255]
   $ cd ..
 
   $ hg debugwalk -Ibeans
@@ -187,16 +189,22 @@
   f  mammals/skunk                   mammals/skunk
   $ hg debugwalk ..
   abort: .. not under root
+  [255]
   $ hg debugwalk beans/../..
   abort: beans/../.. not under root
+  [255]
   $ hg debugwalk .hg
   abort: path contains illegal component: .hg
+  [255]
   $ hg debugwalk beans/../.hg
   abort: path contains illegal component: .hg
+  [255]
   $ hg debugwalk beans/../.hg/data
   abort: path contains illegal component: .hg/data
+  [255]
   $ hg debugwalk beans/.hg
   abort: path 'beans/.hg' is inside repo 'beans'
+  [255]
 
 Test absolute paths:
 
@@ -209,6 +217,7 @@
   f  beans/turtle    beans/turtle
   $ hg debugwalk `pwd`/..
   abort: .*/.. not under root
+  [255]
 
 Test patterns: