Mercurial > evolve
view tests/test-corrupt.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 | ab3581bc0637 |
children | f555039d1a08 a1dad44fe3da |
line wrap: on
line source
$ cat >> $HGRCPATH <<EOF > [defaults] > amend=-d "0 0" > [web] > push_ssl = false > allow_push = * > [phases] > publish = False > [alias] > qlog = log --template='{rev} - {node|short} {desc} ({phase})\n' > [diff] > git = 1 > unified = 0 > [extensions] > EOF $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH $ mkcommit() { > echo "$1" >> "$1" > hg add "$1" > hg ci -m "add $1" > } $ hg init local $ hg init other $ cd local $ touch 1 2 3 4 5 6 7 8 9 0 $ hg add 1 2 3 4 5 6 7 8 9 0 $ mkcommit A $ mkcommit B $ mkcommit C $ hg log -G @ changeset: 2:829b19580856 | tag: tip | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add C | o changeset: 1:97b8f02ab29e | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add B | o changeset: 0:5d8dabd3961b user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add A $ hg push ../other pushing to ../other searching for changes adding changesets adding manifests adding file changes added 3 changesets with 13 changes to 13 files $ hg -R ../other verify checking changesets checking manifests crosschecking files in changesets and manifests checking files checked 3 changesets with 13 changes to 13 files $ mkcommit D $ mkcommit E $ hg up -q .^^ $ hg revert -r tip -a -q $ hg ci -m 'coin' -q $ hg log -G @ changeset: 5:8313a6afebbb | tag: tip | parent: 2:829b19580856 | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: coin | | o changeset: 4:076ec8ade1ac | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 | | summary: add E | | | o changeset: 3:824d9bb109f6 |/ user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add D | o changeset: 2:829b19580856 | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add C | o changeset: 1:97b8f02ab29e | user: test | date: Thu Jan 01 00:00:00 1970 +0000 | summary: add B | o changeset: 0:5d8dabd3961b user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: add A $ hg prune --fold -n -1 -- -2 -3 2 changesets pruned $ hg push ../other pushing to ../other searching for changes adding changesets adding manifests adding file changes added 1 changesets with 2 changes to 2 files 2 new obsolescence markers $ hg -R ../other verify checking changesets checking manifests crosschecking files in changesets and manifests checking files checked 4 changesets with 15 changes to 15 files