diff --git a/tests/test-mq-qpush-fail.out b/tests/test-mq-qpush-fail.out deleted file mode 100644 --- a/tests/test-mq-qpush-fail.out +++ /dev/null @@ -1,38 +0,0 @@ -adding foo -% test qpush on empty series -no patches in series -popping bad-patch -popping patch2 -popping patch1 -patch queue now empty -applying patch1 -applying patch2 -applying bad-patch -transaction abort! -rollback completed -cleaning up working directory...done -abort: decoding near 'é': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)! -changeset: 0:bbd179dfa0a7 -tag: tip -user: test -date: Thu Jan 01 00:00:00 1970 +0000 -summary: add foo - -% bar should be gone; other unknown/ignored files should still be around -? untracked-file -I .hgignore -C foo -% preparing qpush of a missing patch -no patches applied -applying patch1 -now at: patch1 -% now we expect the push to fail, but it should NOT complain about patch1 -applying patch2 -unable to read patch2 -now at: patch1 -% preparing qpush of missing patch with no patch applied -popping patch1 -patch queue now empty -% qpush should fail the same way as below -applying patch1 -unable to read patch1 diff --git a/tests/test-mq-qpush-fail b/tests/test-mq-qpush-fail.t old mode 100755 new mode 100644 rename from tests/test-mq-qpush-fail rename to tests/test-mq-qpush-fail.t --- a/tests/test-mq-qpush-fail +++ b/tests/test-mq-qpush-fail.t @@ -1,62 +1,90 @@ -#!/bin/sh - -# Test that qpush cleans things up if it doesn't complete - -echo "[extensions]" >> $HGRCPATH -echo "mq=" >> $HGRCPATH - -hg init repo -cd repo - -echo foo > foo -hg ci -Am 'add foo' +Test that qpush cleans things up if it doesn't complete -touch untracked-file -echo 'syntax: glob' > .hgignore -echo '.hgignore' >> .hgignore - -hg qinit - -echo '% test qpush on empty series' -hg qpush + $ echo "[extensions]" >> $HGRCPATH + $ echo "mq=" >> $HGRCPATH + $ hg init repo + $ cd repo + $ echo foo > foo + $ hg ci -Am 'add foo' + adding foo + $ touch untracked-file + $ echo 'syntax: glob' > .hgignore + $ echo '.hgignore' >> .hgignore + $ hg qinit -hg qnew patch1 -echo >> foo -hg qrefresh -m 'patch 1' - -hg qnew patch2 -echo bar > bar -hg add bar -hg qrefresh -m 'patch 2' +test qpush on empty series -hg qnew --config 'mq.plain=true' bad-patch -echo >> foo -hg qrefresh - -hg qpop -a - -python -c 'print "\xe9"' > message -cat .hg/patches/bad-patch >> message -mv message .hg/patches/bad-patch - -hg qpush -a && echo 'qpush succeded?!' - -hg parents + $ hg qpush + no patches in series + $ hg qnew patch1 + $ echo >> foo + $ hg qrefresh -m 'patch 1' + $ hg qnew patch2 + $ echo bar > bar + $ hg add bar + $ hg qrefresh -m 'patch 2' + $ hg qnew --config 'mq.plain=true' bad-patch + $ echo >> foo + $ hg qrefresh + $ hg qpop -a + popping bad-patch + popping patch2 + popping patch1 + patch queue now empty + $ python -c 'print "\xe9"' > message + $ cat .hg/patches/bad-patch >> message + $ mv message .hg/patches/bad-patch + $ hg qpush -a && echo 'qpush succeded?!' + applying patch1 + applying patch2 + applying bad-patch + transaction abort! + rollback completed + cleaning up working directory...done + abort: decoding near 'é': 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)! + [255] + $ hg parents + changeset: 0:bbd179dfa0a7 + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: add foo + -echo '% bar should be gone; other unknown/ignored files should still be around' -hg status -A +bar should be gone; other unknown/ignored files should still be around + + $ hg status -A + ? untracked-file + I .hgignore + C foo + +preparing qpush of a missing patch + + $ hg qpop -a + no patches applied + $ hg qpush + applying patch1 + now at: patch1 + $ rm .hg/patches/patch2 + +now we expect the push to fail, but it should NOT complain about patch1 -echo '% preparing qpush of a missing patch' -hg qpop -a -hg qpush -rm .hg/patches/patch2 -echo '% now we expect the push to fail, but it should NOT complain about patch1' -hg qpush + $ hg qpush + applying patch2 + unable to read patch2 + now at: patch1 + [1] + +preparing qpush of missing patch with no patch applied -echo '% preparing qpush of missing patch with no patch applied' -hg qpop -a -rm .hg/patches/patch1 -echo '% qpush should fail the same way as below' -hg qpush + $ hg qpop -a + popping patch1 + patch queue now empty + $ rm .hg/patches/patch1 -true # happy ending +qpush should fail the same way as below + + $ hg qpush + applying patch1 + unable to read patch1 + [1]