view tests/test-imerge @ 7429:dbc40381620e

tests: Skip tests if they will fail because of outer repo For different reasons these tests will fail if run in a tmpdir which is in a hg repo. The following three tests assumes no .hg in path dirs - I don't know how to work around that: * test-dispatch explicitly tests for no repo and expects "abort: There is no Mercurial repository here (.hg not found)!" * test-extension expects parentui to be None when not cd'ed to a repo dir * test-globalopts tests that implicit -R works correctly - that could perhaps be done from another repo instead of assuming no repo The following two might be worth investigating further: * test-convert-svn-sink fails for unknown reasons, starting with "abort: unresolved merge conflicts (see hg resolve)" * test-glog gets strange failures when testing "from outer space"
author Mads Kiilerich <mads@kiilerich.com>
date Thu, 27 Nov 2008 00:57:31 +0100
parents bbfebf751ac8
children
line wrap: on
line source

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "imerge=" >> $HGRCPATH
HGMERGE=true
export HGMERGE

hg init base
cd base

echo foo > foo
echo bar > bar
hg ci -Am0 -d '0 0'

hg mv foo foo2
echo foo >> foo2
hg ci -m1 -d '1 0'

hg up -C 0
echo bar >> foo
echo bar >> bar
hg ci -m2 -d '2 0'

echo % start imerge
hg imerge

cat foo2
cat bar

echo % status -v
hg -v imerge st

echo % next
hg imerge next

echo % resolve and unresolve
hg imerge resolve foo
hg -v imerge st
hg imerge unresolve foo
hg -v imerge st

echo % merge next
hg --traceback imerge

echo % unresolve
hg imerge unres foo

echo % merge foo
hg imerge merge foo

echo % save
echo foo > foo2
hg imerge save ../savedmerge

echo % merge auto
hg up -C 1
hg --traceback imerge --auto
cat foo2

echo % load
hg up -C 0
hg imerge --traceback load ../savedmerge
cat foo2

hg ci -m'merged' -d '3 0'
hg tip -v

echo % nothing to merge -- tip
hg imerge

hg up 0
echo % nothing to merge
hg imerge

cd ..
hg -q clone -r 0 base clone
cd clone
echo % load unknown parent
hg imerge load ../savedmerge

exit 0