tests: demonstrate loss of changeset copy metadata on rebase
authorMartin von Zweigbergk <martinvonz@google.com>
Fri, 10 May 2019 10:23:46 -0700
changeset 42289 83b225fbd788
parent 42288 cdcebc897529
child 42290 e79aeb518aa1
tests: demonstrate loss of changeset copy metadata on rebase Differential Revision: https://phab.mercurial-scm.org/D6360
tests/test-copies-in-changeset.t
--- a/tests/test-copies-in-changeset.t	Fri May 10 11:03:54 2019 -0700
+++ b/tests/test-copies-in-changeset.t	Fri May 10 10:23:46 2019 -0700
@@ -7,6 +7,8 @@
   > changesetcopies = log -r . -T 'files: {files}
   >   {extras % "{ifcontains("copies", key, "{key}: {value}\n")}"}'
   > showcopies = log -r . -T '{file_copies % "{source} -> {name}\n"}'
+  > [extensions]
+  > rebase =
   > EOF
 
 Check that copies are recorded correctly
@@ -133,3 +135,24 @@
   a -> k
 
   $ cd ..
+
+Test rebasing a commit with copy information
+
+  $ hg init rebase-rename
+  $ cd rebase-rename
+  $ echo a > a
+  $ hg ci -Aqm 'add a'
+  $ echo a2 > a
+  $ hg ci -m 'modify a'
+  $ hg co -q 0
+  $ hg mv a b
+  $ hg ci -qm 'rename a to b'
+  $ hg rebase -d 1 --config rebase.experimental.inmemory=yes
+  rebasing 2:55d0b405c1b2 "rename a to b" (tip)
+  merging a and b to b
+  saved backup bundle to $TESTTMP/rebase-rename/.hg/strip-backup/55d0b405c1b2-78df867e-rebase.hg
+BROKEN: should show the rename
+  $ hg st --change . --copies
+  A b
+  R a
+  $ cd ..