tests/test-backout
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Tue, 23 May 2006 10:44:40 +0200
changeset 2339 11422943cf72
parent 2186 1092533fd11c
child 2492 2f4addf56715
permissions -rwxr-xr-x
document and fix findincoming - add documentation about what the function does, notably the fact that it updates 'base' - transform the workflow to a more simple 'if elif elif else' - do not call remote.branches if not necessary - some nodes where missing in 'base' (from what I understand, if the root of a branch is missing but one parent is present, the parent should be in 'base') - add a testcase for an incorrect outgoing that is fixed by this cset - add a testcase for an empty group bug, it needs fixing

#!/bin/sh

echo '# basic operation'
hg init basic
cd basic
echo a > a
hg commit -d '0 0' -A -m a
echo b >> a
hg commit -d '1 0' -m b

hg backout -d '2 0' tip
cat a

echo '# file that was removed is recreated'
cd ..
hg init remove
cd remove

echo content > a
hg commit -d '0 0' -A -m a

hg rm a
hg commit -d '1 0' -m b

hg backout -d '2 0' --merge tip
cat a

echo '# backout of backout is as if nothing happened'

hg backout -d '3 0' --merge tip
cat a 2>/dev/null || echo cat: a: No such file or directory

echo '# backout with merge'
cd ..
hg init merge
cd merge

echo line 1 > a
hg commit -d '0 0' -A -m a

echo line 2 >> a
hg commit -d '1 0' -m b

echo line 3 >> a
hg commit -d '2 0' -m c

hg backout --merge -d '3 0' 1
hg commit -d '4 0' -m d
cat a

exit 0