tests/test-rollback
author Adrian Buehlmann <adrian@cadifra.com>
Fri, 28 May 2010 17:28:34 +0200
changeset 11232 97f6d2a02c1f
parent 10775 c52057614c72
child 12156 4c94b6d0fb1c
permissions -rwxr-xr-x
util.copyfiles: don't try os_link() again if it failed before If the os_link() call on the first file in the directory fails [1], we switch mode to using shutil.copy() for all remaining files. [1] happens for example on Windows for every file when cloning from a UNC path without specifying --pull.

#!/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