view tests/test-bundle-r @ 6066:f3a8b5360100

Strip filter name from command before passing to filter function. The new registration of in-process data filters (introduced in f8ad3b76e923 & 11af38a592ae) failed to correctly strip the filter name from its arguments before passing the "command" to the filter function. Thus a registration such as [decode] *.gz = compress: -9 would result in the associated filter function being called with the argument 'compress: -9' rather than just '-9' as expected.
author Jesse Glick <jesse.glick@sun.com>
date Sat, 09 Feb 2008 12:27:58 -0500
parents c0b449154a90
children bb508b312359
line wrap: on
line source

#!/bin/sh

hg init test
cd test
cat >>afile <<EOF
0
EOF
hg add afile
hg commit -m "0.0" -d "1000000 0"
cat >>afile <<EOF
1
EOF
hg commit -m "0.1" -d "1000000 0"
cat >>afile <<EOF
2
EOF
hg commit -m "0.2" -d "1000000 0"
cat >>afile <<EOF
3
EOF
hg commit -m "0.3" -d "1000000 0"
hg update -C 0
cat >>afile <<EOF
1
EOF
hg commit -m "1.1" -d "1000000 0"
cat >>afile <<EOF
2
EOF
hg commit -m "1.2" -d "1000000 0"
cat >fred <<EOF
a line
EOF
cat >>afile <<EOF
3
EOF
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 debugindex .hg/store/data/afile.i
hg debugindex .hg/store/data/adifferentfile.i
hg debugindex .hg/store/data/anotherfile.i
hg debugindex .hg/store/data/fred.i
hg debugindex .hg/store/00manifest.i
hg verify
cd ..
for i in 0 1 2 3 4 5 6 7 8; do
   mkdir test-"$i"
   hg --cwd test-"$i" init
   hg -R test bundle -r "$i" test-"$i".hg test-"$i"
   cd test-"$i"
   hg unbundle ../test-"$i".hg
   hg verify
   hg tip -q
   cd ..
done
cd test-8
hg pull ../test-7
hg verify
hg rollback
cd ..

echo % should fail
hg -R test bundle --base 2 -r tip test-bundle-branch1.hg test-3
hg -R test bundle -r tip test-bundle-branch1.hg

hg -R test bundle --base 2 -r tip test-bundle-branch1.hg
hg -R test bundle --base 2 -r 7 test-bundle-branch2.hg
hg -R test bundle --base 2 test-bundle-all.hg
hg -R test bundle --base 3 -r tip test-bundle-should-fail.hg

# issue76 msg2163
hg -R test bundle --base 3 -r 3 -r 3 test-bundle-cset-3.hg

hg clone test-2 test-9
cd test-9
echo % 2
hg tip -q
hg unbundle ../test-bundle-should-fail.hg
echo % 2
hg tip -q
hg unbundle ../test-bundle-all.hg
echo % 8
hg tip -q
hg verify
hg rollback
echo % 2
hg tip -q
hg unbundle ../test-bundle-branch1.hg
echo % 4
hg tip -q
hg verify
hg rollback
hg unbundle ../test-bundle-branch2.hg
echo % 6
hg tip -q
hg verify

cd ../test
hg merge 7
hg ci -m merge -d "1000000 0"
cd ..
hg -R test bundle --base 2 test-bundle-head.hg
hg clone test-2 test-10
cd test-10
hg unbundle ../test-bundle-head.hg
echo % 9
hg tip -q
hg verify