tests/test-bundle
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 28 Oct 2006 23:37:59 -0300
changeset 3577 7f7425306925
parent 3419 b19360aa21e9
child 3988 9dcf9d45cab8
permissions -rwxr-xr-x
Correct optimization from 3464f5e77f34; add a test. If there are two (or more) heads that point to the same .hgtags node, we can safely skip parsing the file in all but the last head. (In 3464f5e77f34, we were parsing the file in the first head and skipping all the others.)

#!/bin/sh

hg init test
cd test
echo 0 > afile
hg add afile
hg commit -m "0.0" -d "1000000 0"
echo 1 >> afile
hg commit -m "0.1" -d "1000000 0"
echo 2 >> afile
hg commit -m "0.2" -d "1000000 0"
echo 3 >> afile
hg commit -m "0.3" -d "1000000 0"
hg update -C 0
echo 1 >> afile
hg commit -m "1.1" -d "1000000 0"
echo 2 >> afile
hg commit -m "1.2" -d "1000000 0"
echo "a line" > fred
echo 3 >> afile
hg add fred
hg commit -m "1.3" -d "1000000 0"
hg mv afile adifferentfile
hg commit -m "1.3m" -d "1000000 0"
hg update -C 3
hg mv afile anotherfile
hg commit -m "0.3m" -d "1000000 0"
hg verify
cd ..
hg init empty
hg -R test bundle full.hg empty
hg -R test unbundle full.hg
hg -R empty heads
hg -R empty verify

hg --cwd test pull ../full.hg
hg --cwd empty pull ../full.hg
hg -R empty rollback
hg --cwd empty pull ../full.hg

rm -rf empty
hg init empty
cd empty
hg -R bundle://../full.hg log
echo '[hooks]' >> .hg/hgrc
echo 'changegroup = echo changegroup: u=$HG_URL' >> .hg/hgrc
#doesn't work (yet ?)
#hg -R bundle://../full.hg verify
hg pull bundle://../full.hg
cd ..

rm -rf empty
hg init empty
hg clone -r 3 test partial
hg clone partial partial2
cd partial
hg -R bundle://../full.hg log
hg incoming bundle://../full.hg
hg -R bundle://../full.hg outgoing ../partial2
hg -R bundle://../does-not-exist.hg outgoing ../partial2
cd ..