tests/test-mq-qqueue
author Thomas Arendsen Hein <thomas@intevation.de>
Sun, 05 Sep 2010 22:32:11 +0200
branchstable
changeset 12170 581066a319e5
parent 11272 e8a66a40474d
child 11767 9b771b4ce2f3
permissions -rwxr-xr-x
verify: fix "missing revlog!" errors for revlog format v0 and add test With revlog format v0 the .d files are empty if the only revision stored is an empty file. Since Mercurial can no longer create format v0 repositories, but still use it, add a script which creates a repository with a single empty file. This can be used in other tests if wanted.

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH

hg init foo
cd foo
echo a > a
hg ci -qAm a

echo %% default queue
hg qqueue

echo b > a
hg qnew -fgDU somestuff

echo %% applied patches in default queue
hg qap

echo %% try to change patch \(create succeeds, switch fails\)
hg qqueue foo --create
hg qqueue

echo %% empty default queue
hg qpop

echo %% switch queue
hg qqueue foo
hg qqueue

echo %% fail creating queue with already existing name
hg qqueue --create foo
hg qqueue

echo %% unapplied patches
hg qun
echo c > a
hg qnew -fgDU otherstuff

echo %% fail switching back
hg qqueue patches

echo %% fail deleting current
hg qqueue foo --delete

echo %% switch back and delete foo
hg qpop -a
hg qqueue patches
hg qqueue foo --delete
hg qqueue

echo %% tricky cases
hg qqueue store --create
hg qnew journal
hg qqueue
hg qpop -a
hg qqueue patches
hg qun

echo %% invalid names
hg qqueue test/../../bar --create
hg qqueue . --create

cd ..