view tests/test-children @ 9693:c40a1ee20aa5

transaction: always remove empty journal on abort When transactions without entries were aborted, the journal (of size 0) was not unlinked, which prevents subsequent operations until hg recover is run on the repository. We also make sure the journal is unlinked when committing, even if the provided hook doesn't do so.
author Sune Foldager <cryo@cyanite.org>
date Mon, 02 Nov 2009 10:19:14 +0100
parents 8b90d763ea90
children bb5ea66789e3
line wrap: on
line source

#!/bin/sh
# test children command

cat <<EOF >> $HGRCPATH
[extensions]
hgext.children=
EOF

echo "% init"
hg init t
cd t

echo "% no working directory"
hg children

echo % setup
echo 0 > file0
hg ci -qAm 0 -d '0 0'

echo 1 > file1
hg ci -qAm 1 -d '1 0'

echo 2 >> file0
hg ci -qAm 2 -d '2 0'

hg co null
echo 3 > file3
hg ci -qAm 3 -d '3 0'

echo "% hg children at revision 3 (tip)"
hg children

hg co null
echo "% hg children at nullrev (should be 0 and 3)"
hg children

hg co 1
echo "% hg children at revision 1 (should be 2)"
hg children

hg co 2
echo "% hg children at revision 2 (other head)"
hg children

for i in null 0 1 2 3; do
  echo "% hg children -r $i"
  hg children -r $i
done

echo "% hg children -r 0 file0 (should be 2)"
hg children -r 0 file0

echo "% hg children -r 1 file0 (should be 2)"
hg children -r 1 file0

hg co 0
echo "% hg children file0 at revision 0 (should be 2)"
hg children file0