annotate tests/test-merge-halt.t @ 50330:eb07591825fa stable

rhg: show a bug in the rust implementation of path_encode introduced recently In commit 96d31efd21f7 I did a refactoring where I dropped a chunk of code by accident, thus introducing a bug. This commit adds a test demonstrating that bug.
author Arseniy Alekseyev <aalekseyev@janestreet.com>
date Fri, 24 Mar 2023 19:01:03 +0000
parents f64bbba2ee59
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
1 $ cat >> $HGRCPATH <<EOF
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
2 > [extensions]
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
3 > rebase=
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
4 > [phases]
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
5 > publish=False
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
6 > [merge]
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
7 > EOF
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
8
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
9 $ hg init repo
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
10 $ cd repo
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
11 $ echo a > a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
12 $ echo b > b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
13 $ hg commit -qAm ab
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
14 $ echo c >> a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
15 $ echo c >> b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
16 $ hg commit -qAm c
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
17 $ hg up -q ".^"
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
18 $ echo d >> a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
19 $ echo d >> b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
20 $ hg commit -qAm d
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
21
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
22 Testing on-failure=continue
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
23 $ echo on-failure=continue >> $HGRCPATH
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
24 $ hg rebase -s 1 -d 2 --tool false
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
25 rebasing 1:1f28a51c3c9b "c"
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
26 merging a
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 48271
diff changeset
27 merging a failed!
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
28 merging b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
29 merging b failed!
45150
dc5e5577af39 error: unify the error message formats for 'rebase' and 'unshelve'
Daniel Ploch <dploch@google.com>
parents: 34884
diff changeset
30 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
31 [240]
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
32
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
33 $ hg resolve --list
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
34 U a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
35 U b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
36
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
37 $ hg rebase --abort
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
38 rebase aborted
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
39
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
40 Testing on-failure=halt
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
41 $ echo on-failure=halt >> $HGRCPATH
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
42 $ hg rebase -s 1 -d 2 --tool false
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
43 rebasing 1:1f28a51c3c9b "c"
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
44 merging a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
45 merging a failed!
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
46 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
47 [240]
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
48
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
49 $ hg resolve --list
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
50 U a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
51 U b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
52
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
53 $ hg rebase --abort
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
54 rebase aborted
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
55
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
56 Testing on-failure=prompt
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
57 $ cat <<EOS >> $HGRCPATH
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
58 > [merge]
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
59 > on-failure=prompt
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
60 > [ui]
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
61 > interactive=1
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
62 > EOS
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
63 $ cat <<EOS | hg rebase -s 1 -d 2 --tool false
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
64 > y
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
65 > n
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
66 > EOS
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
67 rebasing 1:1f28a51c3c9b "c"
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
68 merging a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
69 merging a failed!
34797
284fa44f7f39 merge: allow user to halt merge on merge-tool failures
Ryan McElroy <rmcelroy@fb.com>
parents: 34679
diff changeset
70 continue merge operation (yn)? y
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 48271
diff changeset
71 merging b
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
72 merging b failed!
34797
284fa44f7f39 merge: allow user to halt merge on merge-tool failures
Ryan McElroy <rmcelroy@fb.com>
parents: 34679
diff changeset
73 continue merge operation (yn)? n
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
74 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
75 [240]
34679
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
76
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
77 $ hg resolve --list
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
78 U a
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
79 U b
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
80
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
81 $ hg rebase --abort
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
82 rebase aborted
143337bcec9b merge: add tests to show current behavior on failed filemerges
Ryan McElroy <rmcelroy@fb.com>
parents:
diff changeset
83
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
84 Check that successful tool with failed post-check halts the merge
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
85 $ cat <<EOS >> $HGRCPATH
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
86 > [merge-tools]
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
87 > true.check=changed
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
88 > EOS
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
89 $ cat <<EOS | hg rebase -s 1 -d 2 --tool true
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
90 > y
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
91 > n
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
92 > n
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
93 > EOS
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
94 rebasing 1:1f28a51c3c9b "c"
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
95 merging a
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
96 output file a appears unchanged
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
97 was merge successful (yn)? y
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 48271
diff changeset
98 merging b
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
99 output file b appears unchanged
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
100 was merge successful (yn)? n
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
101 merging b failed!
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
102 continue merge operation (yn)? n
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
103 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
104 [240]
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
105
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
106 $ hg resolve --list
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
107 R a
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
108 U b
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
109
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
110 $ hg rebase --abort
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
111 rebase aborted
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
112
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
113 Check that conflicts with conflict check also halts the merge
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
114 $ cat <<EOS >> $HGRCPATH
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
115 > [merge-tools]
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
116 > true.check=conflicts
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
117 > true.premerge=keep
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
118 > [merge]
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
119 > on-failure=halt
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
120 > EOS
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
121 $ hg rebase -s 1 -d 2 --tool true
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
122 rebasing 1:1f28a51c3c9b "c"
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
123 merging a
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
124 merging a failed!
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
125 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
126 [240]
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
127
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
128 $ hg resolve --list
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
129 U a
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
130 U b
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
131
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
132 $ hg rebase --abort
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
133 rebase aborted
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
134
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
135 Check that always-prompt also can halt the merge
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
136 $ cat <<EOS | hg rebase -s 1 -d 2 --tool true --config merge-tools.true.check=prompt
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
137 > y
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
138 > n
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
139 > EOS
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
140 rebasing 1:1f28a51c3c9b "c"
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
141 merging a
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 48271
diff changeset
142 was merge of 'a' successful (yn)? y
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
143 merging b
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
144 was merge of 'b' successful (yn)? n
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
145 merging b failed!
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
146 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45150
diff changeset
147 [240]
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
148
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
149 $ hg resolve --list
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
150 R a
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
151 U b
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
152
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
153 $ hg rebase --abort
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
154 rebase aborted
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
155
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
156 Check that successful tool otherwise allows the merge to continue
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
157 $ hg rebase -s 1 -d 2 --tool echo --keep --config merge-tools.echo.premerge=keep
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
158 rebasing 1:1f28a51c3c9b "c"
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
159 merging a
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 48271
diff changeset
160 $TESTTMP/repo/a *a~base* *a~other* (glob)
34884
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
161 merging b
05535d0dea68 merge: additional test cases to show merge-halting behavior
Ryan McElroy <rmcelroy@fb.com>
parents: 34797
diff changeset
162 $TESTTMP/repo/b *b~base* *b~other* (glob)
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
163
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
164 Check that unshelve isn't broken by halting the merge
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
165 $ cat <<EOS >> $HGRCPATH
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
166 > [extensions]
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
167 > shelve =
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
168 > [merge-tools]
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
169 > false.check=conflicts
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
170 > false.premerge=false
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
171 > EOS
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
172 $ echo foo > shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
173 $ echo foo > shelve_file2
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
174 $ hg ci -qAm foo
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
175 $ echo bar >> shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
176 $ echo bar >> shelve_file2
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
177 $ hg shelve --list
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
178 $ hg shelve
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
179 shelved as default
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
180 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
181 $ echo baz >> shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
182 $ echo baz >> shelve_file2
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
183 $ hg ci -m baz
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
184 $ hg unshelve --tool false --config merge-tools.false.premerge=keep
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
185 unshelving change 'default'
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
186 rebasing shelved changes
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
187 merging shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
188 merging shelve_file1 failed!
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
189 unresolved conflicts (see 'hg resolve', then 'hg unshelve --continue')
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
190 [240]
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
191 $ hg status --config commands.status.verbose=True
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
192 M shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
193 M shelve_file2
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
194 ? shelve_file1.orig
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
195 # The repository is in an unfinished *unshelve* state.
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
196
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
197 # Unresolved merge conflicts:
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
198 #
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
199 # shelve_file1
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
200 # shelve_file2
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
201 #
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
202 # To mark files as resolved: hg resolve --mark FILE
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
203
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
204 # To continue: hg unshelve --continue
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
205 # To abort: hg unshelve --abort
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
206
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
207 $ hg resolve --tool false --all --re-merge
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
208 merging shelve_file1
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
209 merging shelve_file1 failed!
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
210 merge halted after failed merge (see hg resolve)
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
211 [240]
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
212 $ hg shelve --list
48969
f64bbba2ee59 tests: fix glob pattern for dynamic timer alignment
pacien <pacien.trangirard@pacien.net>
parents: 48427
diff changeset
213 default (*s ago) * changes to: foo (glob)
48270
3e66e4517744 merge-halt: demonstrate unshelve issue with merge.on-failure=halt
Kyle Lippincott <spectral@google.com>
parents: 45826
diff changeset
214 $ hg unshelve --abort
48271
5228a6dc212b merge-halt: fix issue with merge.on-failure=halt breaking unshelve
Kyle Lippincott <spectral@google.com>
parents: 48270
diff changeset
215 unshelve of 'default' aborted