test-convert-darcs
62 lines
| 1.4 KiB
| text/plain
|
TextLexer
/ tests / test-convert-darcs
|
r5413 | #!/bin/sh | ||
"$TESTDIR/hghave" darcs || exit 80 | ||||
echo "[extensions]" >> $HGRCPATH | ||||
echo "convert=" >> $HGRCPATH | ||||
echo 'hgext.graphlog =' >> $HGRCPATH | ||||
DARCS_EMAIL='test@example.org'; export DARCS_EMAIL | ||||
|
r5442 | HOME=do_not_use_HOME_darcs; export HOME | ||
|
r5413 | |||
|
r5520 | # skip if we can't import elementtree | ||
mkdir dummy | ||||
mkdir dummy/_darcs | ||||
if hg convert dummy 2>&1 | grep ElementTree > /dev/null; then | ||||
|
r5685 | echo 'skipped: missing feature: elementtree module' | ||
|
r5520 | exit 80 | ||
fi | ||||
|
r5413 | echo % initialize darcs repo | ||
mkdir darcs-repo | ||||
cd darcs-repo | ||||
darcs init | ||||
echo a > a | ||||
darcs record -a -l -m p0 | ||||
cd .. | ||||
echo % branch and update | ||||
|
r5667 | darcs get darcs-repo darcs-clone >/dev/null | ||
|
r5413 | cd darcs-clone | ||
echo c >> a | ||||
echo c > c | ||||
darcs record -a -l -m p1.1 | ||||
cd .. | ||||
echo % update source | ||||
cd darcs-repo | ||||
echo b >> a | ||||
echo b > b | ||||
darcs record -a -l -m p1.2 | ||||
echo % merge branch | ||||
darcs pull -a ../darcs-clone | ||||
echo e > a | ||||
darcs record -a -l -m p2 | ||||
cd .. | ||||
glog() | ||||
{ | ||||
hg glog --template '#rev# "#desc|firstline#" files: #files#\n' "$@" | ||||
} | ||||
|
r5667 | hg convert darcs-repo darcs-repo-hg 2>&1 | grep -v hGetLine | grep -v '^$' | ||
|
r5413 | # The converter does not currently handle patch conflicts very well. | ||
# When they occur, it reverts *all* changes and moves forward, | ||||
# letting the conflict resolving patch fix collisions. | ||||
# Unfortunately, non-conflicting changes, like the addition of the | ||||
# "c" file in p1.1 patch are reverted too. | ||||
# Just to say that manifest not listing "c" here is a bug. | ||||
glog -R darcs-repo-hg | ||||
|
r6799 | hg up -q -R darcs-repo-hg | ||
|
r5413 | hg -R darcs-repo-hg manifest --debug | ||