diff tests/test-graft.t @ 44785:e5043679bfcc stable

graft-state: save --base in graft's state, fixing bug with graft --continue Without this change, running graft --continue after grafting a merge commit using --base (and encountering conflicts) will output "skipping ungraftable merge revision" even though we specified a base in the initial graft command. Graft's improve behaviour is reflected in test-graft.t. Differential Revision: https://phab.mercurial-scm.org/D8578
author Charles Chamberlain <cchamberlain@janestreet.com>
date Tue, 26 May 2020 11:14:07 -0400
parents 16c361152133
children c4f14db3da1d
line wrap: on
line diff
--- a/tests/test-graft.t	Fri May 15 00:53:37 2020 +0200
+++ b/tests/test-graft.t	Tue May 26 11:14:07 2020 -0400
@@ -853,6 +853,26 @@
   $ cat a
   abc
 
+graft --continue after --base with conflits
+
+  $ echo base > d
+  $ hg ci -m _
+  $ hg graft -r 6
+  skipping ungraftable merge revision 6
+  [255]
+  $ hg graft -r 6 --base 5
+  grafting 6:25a2b029d3ae "6"
+  merging d
+  merging e
+  warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
+  abort: unresolved conflicts, can't continue
+  (use 'hg resolve' and 'hg graft --continue')
+  [1]
+  $ echo a > d && hg resolve -qm
+  continue: hg graft --continue
+  $ hg graft --continue
+  grafting 6:25a2b029d3ae "6"
+
 Continue testing same origin policy, using revision numbers from test above
 but do some destructive editing of the repo: