##// END OF EJS Templates
run-tests: give each child its own tmp dir (issue1911)...
run-tests: give each child its own tmp dir (issue1911) Fixes bug introduced by f8b4df4b033d (issue1911: --tmpdir plus parallel mode = fail), and also fixes the long-standing quirk that parallel mode created multiple /tmp/hgtests.XXXXXX directories. Now there is only one /tmp/hgtests.XXXXXX, with child0, child1, etc. under it.

File last commit:

r9121:a85a3d39 default
r9899:be574a37 stable
Show More
test-fetch
202 lines | 4.7 KiB | text/plain | TextLexer
Vadim Gelfer
fetch: fix breakage from mpm....
r2822 #!/bin/sh
Thomas Arendsen Hein
adjust test-fetch output to non-default HGPORT, e.g. with run-tests.py -j
r6246 # adjust to non-default HGPORT, e.g. with run-tests.py -j
hideport() { sed "s/localhost:$HGPORT/localhost:20059/"; }
hidehash() { sed "s/changeset 3:............ merges/changeset 3:... merges/"; }
Thomas Arendsen Hein
Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc...
r2990 echo "[extensions]" >> $HGRCPATH
echo "fetch=" >> $HGRCPATH
Vadim Gelfer
fetch: fix breakage from mpm....
r2822
Sune Foldager
fetch: added support for named branches...
r7007 echo % test fetch with default branches only
Vadim Gelfer
fetch: fix breakage from mpm....
r2822 hg init a
echo a > a/a
hg --cwd a commit -d '1 0' -Ama
hg clone a b
hg clone a c
echo b > a/b
hg --cwd a commit -d '2 0' -Amb
hg --cwd a parents -q
echo % should pull one change
hg --cwd b fetch ../a
hg --cwd b parents -q
echo c > c/c
hg --cwd c commit -d '3 0' -Amc
Bryan O'Sullivan
fetch: hide authentication details
r5798
hg clone c d
hg clone c e
Bryan O'Sullivan
fetch: make test reproducible, tiny code cleanup
r6207 # We cannot use the default commit message if fetching from a local
# repo, because the path of the repo will be included in the commit
# message, making every commit appear different.
Bryan O'Sullivan
fetch: switch the default parent used for a merge...
r6206 echo % should merge c into a
Vadim Gelfer
test-fetch: make output stable
r2823 hg --cwd c fetch -d '4 0' -m 'automated merge' ../a
Vadim Gelfer
fetch: fix breakage from mpm....
r2822 ls c
Bryan O'Sullivan
fetch: hide authentication details
r5798
Matt Mackall
tests: add killdaemons helper script
r7344 netstat -tnap 2>/dev/null | grep $HGPORT | grep LISTEN
Bryan O'Sullivan
fetch: hide authentication details
r5798 hg --cwd a serve -a localhost -p $HGPORT -d --pid-file=hg.pid
cat a/hg.pid >> "$DAEMON_PIDS"
echo '% fetch over http, no auth'
Thomas Arendsen Hein
adjust test-fetch output to non-default HGPORT, e.g. with run-tests.py -j
r6246 hg --cwd d fetch -d '5 0' http://localhost:$HGPORT/ | hideport | hidehash
hg --cwd d tip --template '{desc}\n' | hideport
Bryan O'Sullivan
fetch: hide authentication details
r5798
echo '% fetch over http with auth (should be hidden in desc)'
Thomas Arendsen Hein
adjust test-fetch output to non-default HGPORT, e.g. with run-tests.py -j
r6246 hg --cwd e fetch -d '5 0' http://user:password@localhost:$HGPORT/ | hideport | hidehash
hg --cwd e tip --template '{desc}\n' | hideport
Bryan O'Sullivan
fetch: switch the default parent used for a merge...
r6206
hg clone a f
hg clone a g
echo f > f/f
hg --cwd f ci -d '6 0' -Amf
echo g > g/g
hg --cwd g ci -d '6 0' -Amg
Bryan O'Sullivan
fetch: don't proceed if working directory is missing files (issue988)
r6226 hg clone -q f h
hg clone -q g i
Bryan O'Sullivan
fetch: switch the default parent used for a merge...
r6206 echo % should merge f into g
Bryan O'Sullivan
fetch: make test reproducible, tiny code cleanup
r6207 hg --cwd g fetch -d '7 0' --switch -m 'automated merge' ../f
Bryan O'Sullivan
fetch: don't proceed if working directory is missing files (issue988)
r6226
rm i/g
echo % should abort, because i is modified
hg --cwd i fetch ../h
Thomas Arendsen Hein
test-fetch failed due to non-zero exit code
r6235
Sune Foldager
fetch: added support for named branches...
r7007
echo % test fetch with named branches
hg init nbase
echo base > nbase/a
hg -R nbase ci -d '1 0' -Am base
hg -R nbase branch a
echo a > nbase/a
hg -R nbase ci -d '2 0' -m a
hg -R nbase up -C 0
hg -R nbase branch b
echo b > nbase/b
hg -R nbase ci -Ad '3 0' -m b
echo
echo % pull in change on foreign branch
hg clone nbase n1
hg clone nbase n2
hg -R n1 up -C a
echo aa > n1/a
hg -R n1 ci -d '4 0' -m a1
hg -R n2 up -C b
hg -R n2 fetch -d '9 0' -m 'merge' n1
echo '% parent should be 2 (no automatic update)'
hg -R n2 parents --template '{rev}\n'
rm -fr n1 n2
echo
echo % pull in changes on both foreign and local branches
hg clone nbase n1
hg clone nbase n2
hg -R n1 up -C a
echo aa > n1/a
hg -R n1 ci -d '4 0' -m a1
hg -R n1 up -C b
echo bb > n1/b
hg -R n1 ci -d '5 0' -m b1
hg -R n2 up -C b
hg -R n2 fetch -d '9 0' -m 'merge' n1
echo '% parent should be 4 (fast forward)'
hg -R n2 parents --template '{rev}\n'
rm -fr n1 n2
echo
echo '% pull changes on foreign (2 new heads) and local (1 new head) branches'
echo % with a local change
hg clone nbase n1
hg clone nbase n2
hg -R n1 up -C a
echo a1 > n1/a
hg -R n1 ci -d '4 0' -m a1
hg -R n1 up -C b
echo bb > n1/b
hg -R n1 ci -d '5 0' -m b1
hg -R n1 up -C 1
echo a2 > n1/a
hg -R n1 ci -d '6 0' -m a2
hg -R n2 up -C b
echo change >> n2/c
hg -R n2 ci -Ad '7 0' -m local
hg -R n2 fetch -d '9 0' -m 'merge' n1
echo '% parent should be 7 (new merge changeset)'
hg -R n2 parents --template '{rev}\n'
rm -fr n1 n2
echo '% pull in changes on foreign (merge of local branch) and local (2 new'
echo '% heads) with a local change'
hg clone nbase n1
hg clone nbase n2
hg -R n1 up -C a
hg -R n1 merge b
hg -R n1 ci -d '4 0' -m merge
hg -R n1 up -C 2
echo c > n1/a
hg -R n1 ci -d '5 0' -m c
hg -R n1 up -C 2
echo cc > n1/a
hg -R n1 ci -d '6 0' -m cc
hg -R n2 up -C b
echo change >> n2/b
hg -R n2 ci -Ad '7 0' -m local
hg -R n2 fetch -d '9 0' -m 'merge' n1
echo '% parent should be 3 (fetch did not merge anything)'
hg -R n2 parents --template '{rev}\n'
rm -fr n1 n2
Sune Foldager
fetch: use dirstate branch instead of first parents
r7049 echo % pull in change on different branch than dirstate
hg init n1
echo a > n1/a
hg -R n1 ci -Am initial
hg clone n1 n2
echo b > n1/a
hg -R n1 ci -m next
hg -R n2 branch topic
hg -R n2 fetch -d '0 0' -m merge n1
echo '% parent should be 0 (fetch did not update or merge anything)'
hg -R n2 parents --template '{rev}\n'
rm -fr n1 n2
Benjamin Pollack
regression test for issue1552...
r7855 echo % test fetch with inactive branches
hg init ib1
echo a > ib1/a
hg --cwd ib1 ci -Am base
hg --cwd ib1 branch second
echo b > ib1/b
hg --cwd ib1 ci -Am onsecond
hg --cwd ib1 branch -f default
echo c > ib1/c
hg --cwd ib1 ci -Am newdefault
hg clone ib1 ib2
echo % fetch should succeed
hg --cwd ib2 fetch ../ib1
rm -fr ib1 ib2
Henrik Stuart
branch heads: fix regression introduced in e67e5b60e55f (issue1726)...
r9093 echo % test issue1726
hg init i1726r1
echo a > i1726r1/a
hg --cwd i1726r1 ci -Am base
hg clone i1726r1 i1726r2
echo b > i1726r1/a
hg --cwd i1726r1 ci -m second
echo c > i1726r2/a
hg --cwd i1726r2 ci -m third
Greg Ward
test-fetch: fix non-portable sed regex....
r9121 HGMERGE=true hg --cwd i1726r2 fetch ../i1726r1 | sed 's/new changeset 3:[0-9a-zA-Z]* /new changeset 3 /'
Henrik Stuart
branch heads: fix regression introduced in e67e5b60e55f (issue1726)...
r9093 hg --cwd i1726r2 heads default --template '{rev}\n'
Matt Mackall
tests: add killdaemons helper script
r7344 "$TESTDIR/killdaemons.py"
Thomas Arendsen Hein
test-fetch failed due to non-zero exit code
r6235 true