Mercurial > evolve
annotate tests/test-evolve-split.t @ 6703:cc49139f580f
evolve: drop cmdutil.STATES compatibility for hg 5.0
The diff is not looking great, but actually the change is pretty
straightforward. What was at some point living inside mercurial.cmdutil, now
lives in mercurial.state and has slightly more sophisticated API.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Thu, 11 Jan 2024 13:21:08 -0300 |
parents | d919851981d4 |
children |
rev | line source |
---|---|
5960
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
1 Check that evolve can handle split commits |
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
2 ------------------------------------------ |
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
3 |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
4 $ cat >> $HGRCPATH <<EOF |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
5 > [ui] |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
6 > logtemplate = {rev}:{node|short}@{branch}({phase}) {desc|firstline}\n |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
7 > [extensions] |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
8 > EOF |
1806
9f42f819267b
evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1481
diff
changeset
|
9 $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
10 $ mkcommit() { |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
11 > echo "$1" > "$1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
12 > hg add "$1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
13 > hg ci -m "add $1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
14 > } |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
15 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
16 $ hg init split |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
17 $ cd split |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
18 $ mkcommit aa |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
19 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
20 Create a split commit |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
21 $ printf "oo" > oo; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
22 $ printf "pp" > pp; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
23 $ hg add oo pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
24 $ hg commit -m "oo+pp" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
25 $ mkcommit uu |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
26 $ hg up 0 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
27 0 files updated, 0 files merged, 3 files removed, 0 files unresolved |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
28 $ printf "oo" > oo; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
29 $ hg add oo |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
30 $ hg commit -m "_oo" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
31 created new head |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
32 $ printf "pp" > pp; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
33 $ hg add pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
34 $ hg commit -m "_pp" |
4763
184c64c81528
prune: spell --successor flag without any unnecessary shortcuts
Anton Shestakov <av6@dwimlabs.net>
parents:
4577
diff
changeset
|
35 $ hg prune --successor "desc(_oo) + desc(_pp)" -r "desc('oo+pp')" --split |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
36 1 changesets pruned |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
37 1 new orphan changesets |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
38 $ hg log -G |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
39 @ 4:d0dcf24cddd3@default(draft) _pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
40 | |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
41 o 3:a7fdfda64c08@default(draft) _oo |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
42 | |
3417
d3a17c67f85c
branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3411
diff
changeset
|
43 | * 2:f52200b086ca@default(draft) add uu |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
44 | | |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
45 | x 1:d55647aaa0c6@default(draft) oo+pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
46 |/ |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
47 o 0:58663bb03074@default(draft) add aa |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
48 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
49 $ hg evolve --rev "0::" |
1481
3c0aebe73482
evolve: handle split commit for instability
Laurent Charignon <lcharignon@fb.com>
parents:
1471
diff
changeset
|
50 move:[2] add uu |
3c0aebe73482
evolve: handle split commit for instability
Laurent Charignon <lcharignon@fb.com>
parents:
1471
diff
changeset
|
51 atop:[4] _pp |
5206
dc3571a37b56
evolve: support ancestor of orphan split with unrelated changeset in between
Manuel Jacob <me@manueljacob.de>
parents:
4763
diff
changeset
|
52 |
5207
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
53 $ cd .. |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
54 $ hg init split-merged |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
55 $ cd split-merged |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
56 $ mkcommit aa |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
57 |
5208
e0885e2abf59
tests: merge two tests about split changesets
Manuel Jacob <me@manueljacob.de>
parents:
5207
diff
changeset
|
58 Split the changeset such that the successors don't have a single root and there's an unrelated changeset in between |
5207
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
59 $ printf "oo" > oo; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
60 $ printf "pp" > pp; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
61 $ printf "qq" > qq; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
62 $ hg add oo pp qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
63 $ hg commit -m "oo+pp+qq" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
64 $ mkcommit uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
65 $ hg up 0 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
66 0 files updated, 0 files merged, 4 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
67 $ printf "oo" > oo; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
68 $ hg add oo |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
69 $ hg commit -m "_oo" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
70 created new head |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
71 $ hg up 0 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
72 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
73 $ printf "pp" > pp; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
74 $ hg add pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
75 $ hg commit -m "_pp" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
76 created new head |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
77 $ hg merge 3 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
78 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
79 (branch merge, don't forget to commit) |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
80 $ hg ci -m 'merge oo and pp' |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
81 $ printf "qq" > qq; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
82 $ hg add qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
83 $ hg commit -m "_qq" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
84 $ hg prune --successor "desc(_oo) + desc(_pp) + desc(_qq)" -r "desc('oo+pp+qq')" --split |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
85 1 changesets pruned |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
86 1 new orphan changesets |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
87 $ hg log -G |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
88 @ 6:ea5b1e180c04@default(draft) _qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
89 | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
90 o 5:bf7c32161b4b@default(draft) merge oo and pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
91 |\ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
92 | o 4:ece0aaa22eb7@default(draft) _pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
93 | | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
94 o | 3:a7fdfda64c08@default(draft) _oo |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
95 |/ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
96 | * 2:cc56c47d84b3@default(draft) add uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
97 | | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
98 | x 1:575a7380a87d@default(draft) oo+pp+qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
99 |/ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
100 o 0:58663bb03074@default(draft) add aa |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
101 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
102 $ hg evolve --rev "0::" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
103 move:[2] add uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
104 atop:[6] _qq |