tests/test-rollback
author Sune Foldager <cryo@cyanite.org>
Wed, 14 Apr 2010 19:43:19 +0200
changeset 10910 78db9b7d9f65
parent 10775 c52057614c72
child 12156 4c94b6d0fb1c
permissions -rwxr-xr-x
prepush: backed out refactoring It has some problems in corner cases and will fail on a test recently introduced on stable. Will maybe be reintroduced later, in a better version.

#!/bin/sh

mkdir t
cd t
hg init
echo a > a
hg add a
hg commit -m "test" -d "1000000 0"
hg verify
hg parents
hg status
hg rollback
hg verify
hg parents
hg status

echo % Test issue 902
hg commit -m "test2"
hg branch test
hg rollback
hg branch

echo '% Test issue 1635 (commit message saved)'
echo '.hg/last-message.txt:'
cat .hg/last-message.txt ; echo

echo % Test rollback of hg before issue 902 was fixed
hg commit -m "test3"
hg branch test
rm .hg/undo.branch
hg rollback
hg branch

echo '% rollback by pretxncommit saves commit message (issue 1635)'
echo a >> a
hg --config hooks.pretxncommit=false commit -m"precious commit message" 2>&1 | sed 's,exited with status .*,exited ...,g'
echo '.hg/last-message.txt:'
cat .hg/last-message.txt ; echo

echo '% same thing, but run $EDITOR'
cat > $HGTMP/editor <<'__EOF__'
#!/bin/sh
echo "another precious commit message" > "$1"
__EOF__
chmod +x "$HGTMP"/editor
HGEDITOR="'$HGTMP'"/editor hg --config hooks.pretxncommit=false commit 2>&1 | sed 's,exited with status .*,exited ...,g'
echo '.hg/last-message.txt:'
cat .hg/last-message.txt