Mercurial > evolve
changeset 2767:ab80ef8d0cfa
test: extract most fold testing into a test-fold module
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 23 Jul 2017 16:39:21 +0200 |
parents | 83ad13719e26 |
children | 85e5a56db776 |
files | tests/test-evolve.t tests/test-fold.t |
diffstat | 2 files changed, 208 insertions(+), 44 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-evolve.t Sun Jul 23 06:25:30 2017 +0200 +++ b/tests/test-evolve.t Sun Jul 23 16:39:21 2017 +0200 @@ -683,48 +683,13 @@ Test fold +(most of the testing have been moved to test-fold $ rm *.orig - $ hg fold - abort: no revisions specified - [255] - $ hg fold --from - abort: no revisions specified - [255] - $ hg fold . - abort: must specify either --from or --exact - [255] - $ hg fold --from . --exact - abort: cannot use both --from and --exact - [255] - $ hg fold --from . - single revision specified, nothing to fold - [1] - $ hg fold 0::10 --rev 1 --exact - abort: cannot fold non-linear revisions (multiple heads given) - [255] - $ hg fold -r 4 -r 6 --exact - abort: cannot fold non-linear revisions (multiple roots given) - [255] - $ hg fold --from 10 1 - abort: cannot fold non-linear revisions - (given revisions are unrelated to parent of working directory) - [255] - $ hg fold --exact -r "4 and not 4" - abort: specified revisions evaluate to an empty set - (use different revision arguments) - [255] $ hg phase --public 0 - $ hg fold --from -r 0 - abort: cannot fold public revisions - [255] $ hg fold --from -r 5 3 changesets folded 1 files updated, 0 files merged, 0 files removed, 0 files unresolved - $ hg fold --from 6 # want to run hg fold 6 - abort: hidden revision '6'! - (use --hidden to access hidden revisions; successor: af636757ce3b) - [255] $ hg log -r 11 --template '{desc}\n' add 3 @@ -1363,6 +1328,9 @@ ~ Check that fold respects the allowunstable option + +(most of this has been moved to test-fold.t) + $ hg up edc3c9de504e 0 files updated, 0 files merged, 2 files removed, 0 files unresolved $ mkcommit unstableifparentisfolded @@ -1380,14 +1348,6 @@ | ~ - $ hg fold --exact "19 + 18" - abort: cannot fold chain not ending with a head or with branching - (new unstable changesets are not allowed) - [255] - $ hg fold --exact "18::29" - abort: cannot fold chain not ending with a head or with branching - (new unstable changesets are not allowed) - [255] $ hg fold --exact "19::" 2 changesets folded
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-fold.t Sun Jul 23 16:39:21 2017 +0200 @@ -0,0 +1,204 @@ + $ . $TESTDIR/testlib/common.sh + +setup + + $ cat >> $HGRCPATH <<EOF + > [defaults] + > fold=-d "0 0" + > [extensions] + > evolve= + > [ui] + > logtemplate = '{rev} - {node|short} {desc|firstline} [{author}] ({phase})\n' + > EOF + + $ hg init fold-tests + $ cd fold-tests/ + $ hg debugbuilddag .+3:branchpoint+4*branchpoint+2 + $ hg up 'desc("r7")' + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg log -G + o 10 - a8407f9a3dc1 r10 [debugbuilddag] (draft) + | + o 9 - 529dfc5bb875 r9 [debugbuilddag] (draft) + | + o 8 - abf57d94268b r8 [debugbuilddag] (draft) + | + | @ 7 - 4de32a90b66c r7 [debugbuilddag] (draft) + | | + | o 6 - f69452c5b1af r6 [debugbuilddag] (draft) + | | + | o 5 - c8d03c1b5e94 r5 [debugbuilddag] (draft) + | | + | o 4 - bebd167eb94d r4 [debugbuilddag] (draft) + |/ + o 3 - 2dc09a01254d r3 [debugbuilddag] (draft) + | + o 2 - 01241442b3c2 r2 [debugbuilddag] (draft) + | + o 1 - 66f7d451a68b r1 [debugbuilddag] (draft) + | + o 0 - 1ea73414a91b r0 [debugbuilddag] (draft) + + +Test various error case + + $ hg fold + abort: no revisions specified + [255] + $ hg fold --from + abort: no revisions specified + [255] + $ hg fold . + abort: must specify either --from or --exact + [255] + $ hg fold --from . --exact + abort: cannot use both --from and --exact + [255] + $ hg fold --from . + single revision specified, nothing to fold + [1] + $ hg fold '0::(7+10)' --exact + abort: cannot fold non-linear revisions (multiple heads given) + [255] + $ hg fold -r 4 -r 6 --exact + abort: cannot fold non-linear revisions (multiple roots given) + [255] + $ hg fold --from 10 1 + abort: cannot fold non-linear revisions + (given revisions are unrelated to parent of working directory) + [255] + $ hg fold --exact -r "4 and not 4" + abort: specified revisions evaluate to an empty set + (use different revision arguments) + [255] + $ hg phase --public 0 + $ hg fold --from -r 0 + abort: cannot fold public revisions + [255] + +Test actual folding + + $ hg fold --from -r 'desc("r5")' + 3 changesets folded + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + +(test inherited from test-evolve.t) + + $ hg fold --from 6 # want to run hg fold 6 + abort: hidden revision '6'! + (use --hidden to access hidden revisions; successor: 198b5c405d01) + [255] + + $ hg log -G + @ 11 - 198b5c405d01 r5 [debugbuilddag] (draft) + | + | o 10 - a8407f9a3dc1 r10 [debugbuilddag] (draft) + | | + | o 9 - 529dfc5bb875 r9 [debugbuilddag] (draft) + | | + | o 8 - abf57d94268b r8 [debugbuilddag] (draft) + | | + o | 4 - bebd167eb94d r4 [debugbuilddag] (draft) + |/ + o 3 - 2dc09a01254d r3 [debugbuilddag] (draft) + | + o 2 - 01241442b3c2 r2 [debugbuilddag] (draft) + | + o 1 - 66f7d451a68b r1 [debugbuilddag] (draft) + | + o 0 - 1ea73414a91b r0 [debugbuilddag] (public) + + +test fold --exact + + $ hg fold --exact 'desc("r8") + desc("r10")' + abort: cannot fold non-linear revisions (multiple roots given) + [255] + $ hg fold --exact 'desc("r8")::desc("r10")' + 3 changesets folded + $ hg log -G + o 12 - b568edbee6e0 r8 [debugbuilddag] (draft) + | + | @ 11 - 198b5c405d01 r5 [debugbuilddag] (draft) + | | + | o 4 - bebd167eb94d r4 [debugbuilddag] (draft) + |/ + o 3 - 2dc09a01254d r3 [debugbuilddag] (draft) + | + o 2 - 01241442b3c2 r2 [debugbuilddag] (draft) + | + o 1 - 66f7d451a68b r1 [debugbuilddag] (draft) + | + o 0 - 1ea73414a91b r0 [debugbuilddag] (public) + + +Test allow unstable + + $ echo a > a + $ hg add a + $ hg commit '-m r11' + $ hg up '.^' + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + $ hg log -G + o 13 - 14d0e0da8e91 r11 [test] (draft) + | + | o 12 - b568edbee6e0 r8 [debugbuilddag] (draft) + | | + @ | 11 - 198b5c405d01 r5 [debugbuilddag] (draft) + | | + o | 4 - bebd167eb94d r4 [debugbuilddag] (draft) + |/ + o 3 - 2dc09a01254d r3 [debugbuilddag] (draft) + | + o 2 - 01241442b3c2 r2 [debugbuilddag] (draft) + | + o 1 - 66f7d451a68b r1 [debugbuilddag] (draft) + | + o 0 - 1ea73414a91b r0 [debugbuilddag] (public) + + + $ cat << EOF >> .hg/hgrc + > [experimental] + > evolution = createmarkers, allnewcommands + > EOF + $ hg fold --from 'desc("r4")' + abort: cannot fold chain not ending with a head or with branching + (new unstable changesets are not allowed) + [255] + $ hg fold --from 'desc("r3")::desc("r11")' + abort: cannot fold chain not ending with a head or with branching + (new unstable changesets are not allowed) + [255] + +test --user variant + + $ cat << EOF >> .hg/hgrc + > [experimental] + > evolution = createmarkers, allnewcommands + > EOF + $ cat << EOF >> .hg/hgrc + > [experimental] + > evolution = all + > EOF + + $ hg fold --exact 'desc("r5") + desc("r11")' --user 'Victor Rataxes <victor@rhino.savannah>' + 2 changesets folded + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg log -G + @ 14 - 29b470a33594 r5 [Victor Rataxes <victor@rhino.savannah>] (draft) + | + | o 12 - b568edbee6e0 r8 [debugbuilddag] (draft) + | | + o | 4 - bebd167eb94d r4 [debugbuilddag] (draft) + |/ + o 3 - 2dc09a01254d r3 [debugbuilddag] (draft) + | + o 2 - 01241442b3c2 r2 [debugbuilddag] (draft) + | + o 1 - 66f7d451a68b r1 [debugbuilddag] (draft) + | + o 0 - 1ea73414a91b r0 [debugbuilddag] (public) + + + $ cd .. +