Mercurial > hg
view tests/test-clone @ 11715:4f9dfb54c8b5 stable
qpush --move: move the right patch even with comment lines
88fc876a4833 caused that we find the index of the moving patch in self.series
but look it up in self.full_series. The difference between these is that
full_series also contains comment lines, and we thus moved the wrong patch.
Use back self.full_series to find the moving patch, but take care of striping
the patch guard markers before comparing the patch name. Test cases have been
added for comments and empty lines in self.full_series, and for the case of
guarded patches.
Original patch contributed by Mads Kiilerich <mads@kiilerich.com>
author | Gilles Moris <gilles.moris@free.fr> |
---|---|
date | Sat, 10 Jul 2010 21:23:00 +0200 |
parents | be5e86c80628 |
children | b1ae33b813cb |
line wrap: on
line source
#!/bin/sh echo echo % prepare repo a mkdir a cd a hg init echo a > a hg add a hg commit -m test echo first line > b hg add b # create a non-inlined filelog python -c 'for x in range(10000): print x' >> data1 for j in 0 1 2 3 4 5 6 7 8 9; do cat data1 >> b hg commit -m test done echo % "list files in store/data (should show a 'b.d')" for i in .hg/store/data/*; do echo $i done echo echo % default operation hg clone . ../b cd ../b cat a hg verify echo echo % no update, with debug option hg --debug clone -U . ../c cd ../c cat a 2>/dev/null || echo "a not present" hg verify echo echo % default destination mkdir ../d cd ../d hg clone ../a cd a hg cat a echo echo % "check that we drop the file: from the path before" echo % "writing the .hgrc" cd ../.. hg clone file:a e grep 'file:' e/.hg/hgrc echo echo % check that path aliases are expanded hg clone -q -U --config 'paths.foobar=a#0' foobar f hg -R f showconfig paths.default | sed -e 's,.*/,,' echo echo % use --pull hg clone --pull a g hg -R g verify echo echo % clone to '.' mkdir h cd h hg clone ../a . cd .. echo echo echo % "*** tests for option -u ***" echo echo echo % "adding some more history to repo a" cd a echo % "tag ref1" hg tag ref1 echo the quick brown fox >a hg ci -m "hacked default" echo % "updating back to ref1" hg up ref1 echo echo % "add branch 'stable' to repo a for later tests" hg branch stable echo some text >a hg ci -m "starting branch stable" echo % "tag ref2" hg tag ref2 echo some more text >a hg ci -m "another change for branch stable" echo echo % "updating back to ref2" hg up ref2 echo echo % "parents of repo a" hg parents echo echo % "repo a has two heads" hg heads cd .. echo echo % "testing clone -U -u 1 a ua (must abort)" hg clone -U -u 1 a ua echo echo % "testing clone -u . a ua" hg clone -u . a ua echo echo % "repo ua has both heads" hg -R ua heads echo echo % "same revision checked out in repo a and ua" hg -R a parents --template "{node|short}\n" hg -R ua parents --template "{node|short}\n" rm -r ua echo echo % "testing clone --pull -u . a ua" hg clone --pull -u . a ua echo echo % "repo ua has both heads" hg -R ua heads echo echo % "same revision checked out in repo a and ua" hg -R a parents --template "{node|short}\n" hg -R ua parents --template "{node|short}\n" rm -r ua echo echo % "testing clone -u stable a ua" hg clone -u stable a ua echo echo % "repo ua has both heads" hg -R ua heads echo echo % "branch stable is checked out" hg -R ua parents rm -r ua echo echo % "testing clone a ua" hg clone a ua echo echo % "repo ua has both heads" hg -R ua heads echo echo % "branch default is checked out" hg -R ua parents rm -r ua echo echo % "testing clone -u . a#stable ua" hg clone -u . a#stable ua echo echo % "repo ua has only branch stable" hg -R ua heads echo echo % "same revision checked out in repo a and ua" hg -R a parents --template "{node|short}\n" hg -R ua parents --template "{node|short}\n" rm -r ua echo echo % "testing clone -u . -r stable a ua" hg clone -u . -r stable a ua echo echo % "repo ua has only branch stable" hg -R ua heads echo echo % "same revision checked out in repo a and ua" hg -R a parents --template "{node|short}\n" hg -R ua parents --template "{node|short}\n" rm -r ua echo echo % "testing clone -r stable a ua" hg clone -r stable a ua echo echo % "repo ua has only branch stable" hg -R ua heads echo echo % "branch stable is checked out" hg -R ua parents rm -r ua echo echo % "testing clone -u . -r stable -r default a ua" hg clone -u . -r stable -r default a ua echo echo % "repo ua has two heads" hg -R ua heads echo echo % "same revision checked out in repo a and ua" hg -R a parents --template "{node|short}\n" hg -R ua parents --template "{node|short}\n" rm -r ua cat <<EOF > simpleclone.py from mercurial import ui, hg myui = ui.ui() repo = hg.repository(myui, 'a') hg.clone(myui, repo, dest="ua") EOF python simpleclone.py rm -r ua exit 0