Mercurial > evolve
view tests/test-evolve-issue5967.t @ 4843:d6e2820dac1f stable
tests: add some more actions to test-issue-6028, describe what's being done
This patch does two things: it explains what's happening in the test file so
it's easier to understand, and also it adds checks that make sure something
like swapping merge parents is not accidentally breaking anything.
The primary reason to touch this test file was that it was broken by a change
in core's merge.graft() that erroneously swapped merge parents. Since only
evolve uses merge.graft() for merge commits and there aren't any tests in core
for it, let's test it here. Plus, this test case is pretty simple and these
additional checks don't make it too complicated.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Thu, 19 Sep 2019 11:46:16 +0700 |
parents | de194ed973ba |
children | 591a0afd2ef3 |
line wrap: on
line source
hg evolve --continue and obsmarkers after conflict resolution with no changes to commit (issue5967) https://bz.mercurial-scm.org/show_bug.cgi?id=5967 $ . $TESTDIR/testlib/common.sh $ hg init issue5967 $ cd issue5967 $ cat > .hg/hgrc << EOF > [alias] > glog = log -GT "{rev}: {desc}" > [extensions] > evolve= > EOF $ echo apple > a $ hg ci -qAm 'apple' $ echo banana > a $ hg ci -m 'banana' Amending revision 0 in a way that causes conflicts $ hg prev 1 files updated, 0 files merged, 0 files removed, 0 files unresolved [0] apple $ echo apricot > a $ hg amend -m 'apricot' 1 new orphan changesets $ hg glog @ 2: apricot * 1: banana | x 0: apple Trying to evolve, then manually discarding changes from revision 1 $ hg evolve move:[1] banana atop:[2] apricot merging a warning: conflicts while merging a! (edit, then use 'hg resolve --mark') unresolved merge conflicts (see 'hg help evolve.interrupted') [1] $ echo apricot > a $ hg resolve --mark a (no more unresolved files) continue: hg evolve --continue This will correctly notice that revision 1 can be dropped $ hg evolve --continue evolving 1:dd9b5dd30cd6 "banana" evolution of 1:dd9b5dd30cd6 created no changes to commit working directory is now at 4d6fec23dcc4 $ hg glog @ 2: apricot This is important: 1 should not have a successor (especially not revision 2) $ hg olog --all @ 4d6fec23dcc4 (2) apricot | x 3ba7db0ce860 (0) apple rewritten(description, content) as 4d6fec23dcc4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) $ hg olog --hidden --all 1 x dd9b5dd30cd6 (1) banana pruned using evolve by test (Thu Jan 01 00:00:00 1970 +0000)