view tests/test-verify @ 9954:d6a307719ccb stable

fix bug in prepush logic involving merge changesets When creating new branches and merging them into existing ones, you would sometimes be able to push some changesets (the existing branches) without using --force, even when that creates a new head on the remote. A test which triggers the error has been added.
author Sune Foldager <cryo@cyanite.org>
date Mon, 30 Nov 2009 14:58:52 +0100
parents b33d70849a20
children 581066a319e5
line wrap: on
line source

#!/bin/sh

echo % prepare repo
hg init a
cd a
echo "some text" > FOO.txt
echo "another text" > bar.txt
echo "more text" > QUICK.txt
hg add
hg ci -mtest1

echo
echo % verify
hg verify

echo
echo % verify with journal
touch .hg/store/journal
hg verify
rm .hg/store/journal

echo
echo % introduce some bugs in repo
cd .hg/store/data
mv _f_o_o.txt.i X_f_o_o.txt.i
mv bar.txt.i xbar.txt.i
rm _q_u_i_c_k.txt.i

echo
echo % verify
hg verify

cd ..

echo % test revlog corruption
hg init b
cd b

touch a
hg add a
hg ci -m a

echo 'corrupted' > b
dd if=.hg/store/data/a.i of=start bs=1 count=20 2>/dev/null
cat start b > .hg/store/data/a.i

echo
echo % verify
hg verify

exit 0