--- a/tests/test-histedit-fold-non-commute.t Tue Aug 12 09:39:14 2014 -0700
+++ b/tests/test-histedit-fold-non-commute.t Wed Aug 06 16:51:41 2014 -0400
@@ -183,3 +183,165 @@
f
$ cd ..
+
+Repeat test using "roll", not "fold". "roll" folds in changes but drops message
+
+ $ initrepo r2
+ $ cd r2
+
+Initial generation of the command files
+
+ $ EDITED="$TESTTMP/editedhistory.2"
+ $ hg log --template 'pick {node|short} {rev} {desc}\n' -r 3 >> $EDITED
+ $ hg log --template 'pick {node|short} {rev} {desc}\n' -r 4 >> $EDITED
+ $ hg log --template 'roll {node|short} {rev} {desc}\n' -r 7 >> $EDITED
+ $ hg log --template 'pick {node|short} {rev} {desc}\n' -r 5 >> $EDITED
+ $ hg log --template 'pick {node|short} {rev} {desc}\n' -r 6 >> $EDITED
+ $ cat $EDITED
+ pick 65a9a84f33fd 3 c
+ pick 00f1c5383965 4 d
+ roll 39522b764e3d 7 does not commute with e
+ pick 7b4e2f4b7bcd 5 e
+ pick 500cac37a696 6 f
+
+log before edit
+ $ hg log --graph
+ @ changeset: 7:39522b764e3d
+ | tag: tip
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: does not commute with e
+ |
+ o changeset: 6:500cac37a696
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: f
+ |
+ o changeset: 5:7b4e2f4b7bcd
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: e
+ |
+ o changeset: 4:00f1c5383965
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: d
+ |
+ o changeset: 3:65a9a84f33fd
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: c
+ |
+ o changeset: 2:da6535b52e45
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: b
+ |
+ o changeset: 1:c1f09da44841
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: a
+ |
+ o changeset: 0:1715188a53c7
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ summary: Initial commit
+
+
+edit the history
+ $ hg histedit 3 --commands $EDITED 2>&1 | fixbundle
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ merging e
+ warning: conflicts during merge.
+ merging e incomplete! (edit conflicts, then use 'hg resolve --mark')
+ Fix up the change and run hg histedit --continue
+
+fix up
+ $ echo 'I can haz no commute' > e
+ $ hg resolve --mark e
+ (no more unresolved files)
+ $ hg histedit --continue 2>&1 | fixbundle | grep -v '2 files removed'
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ merging e
+ warning: conflicts during merge.
+ merging e incomplete! (edit conflicts, then use 'hg resolve --mark')
+ Fix up the change and run hg histedit --continue
+
+just continue this time
+ $ hg revert -r 'p1()' e
+ $ hg resolve --mark e
+ (no more unresolved files)
+ $ hg histedit --continue 2>&1 | fixbundle
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+log after edit
+ $ hg log --graph
+ @ changeset: 5:e7c4f5d4eb75
+ | tag: tip
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: f
+ |
+ o changeset: 4:803d1bb561fc
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: d
+ |
+ o changeset: 3:65a9a84f33fd
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: c
+ |
+ o changeset: 2:da6535b52e45
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: b
+ |
+ o changeset: 1:c1f09da44841
+ | user: test
+ | date: Thu Jan 01 00:00:00 1970 +0000
+ | summary: a
+ |
+ o changeset: 0:1715188a53c7
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ summary: Initial commit
+
+
+contents of e
+ $ hg cat e
+ I can haz no commute
+
+manifest
+ $ hg manifest
+ a
+ b
+ c
+ d
+ e
+ f
+
+description is taken from rollup target commit
+
+ $ hg log --debug --rev 4
+ changeset: 4:803d1bb561fceac3129ec778db9da249a3106fc3
+ phase: draft
+ parent: 3:65a9a84f33fdeb1ad5679b3941ec885d2b24027b
+ parent: -1:0000000000000000000000000000000000000000
+ manifest: 4:b068a323d969f22af1296ec6a5ea9384cef437ac
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ files: d e
+ extra: branch=default
+ extra: histedit_source=00f1c53839651fa5c76d423606811ea5455a79d0,39522b764e3d26103f08bd1fa2ccd3e3d7dbcf4e
+ description:
+ d
+
+
+
+done with repo r2
+
+ $ cd ..