summaryrefslogtreecommitdiff
path: root/tests/test-rebase-bookmarks.t
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-rebase-bookmarks.t')
-rw-r--r--tests/test-rebase-bookmarks.t113
1 files changed, 113 insertions, 0 deletions
diff --git a/tests/test-rebase-bookmarks.t b/tests/test-rebase-bookmarks.t
new file mode 100644
index 0000000..fe5a251
--- /dev/null
+++ b/tests/test-rebase-bookmarks.t
@@ -0,0 +1,113 @@
+ $ cat >> $HGRCPATH <<EOF
+ > [extensions]
+ > graphlog=
+ > rebase=
+ >
+ > [phases]
+ > publish=False
+ >
+ > [alias]
+ > tglog = log -G --template "{rev}: '{desc}' bookmarks: {bookmarks}\n"
+ > EOF
+
+Create a repo with several bookmarks
+ $ hg init a
+ $ cd a
+
+ $ echo a > a
+ $ hg ci -Am A
+ adding a
+
+ $ echo b > b
+ $ hg ci -Am B
+ adding b
+ $ hg book 'X'
+ $ hg book 'Y'
+
+ $ echo c > c
+ $ hg ci -Am C
+ adding c
+ $ hg book 'Z'
+
+ $ hg up -q 0
+
+ $ echo d > d
+ $ hg ci -Am D
+ adding d
+ created new head
+
+ $ hg book W
+
+ $ hg tglog
+ @ 3: 'D' bookmarks: W
+ |
+ | o 2: 'C' bookmarks: Y Z
+ | |
+ | o 1: 'B' bookmarks: X
+ |/
+ o 0: 'A' bookmarks:
+
+
+Move only rebased bookmarks
+
+ $ cd ..
+ $ hg clone -q a a1
+
+ $ cd a1
+ $ hg up -q Z
+
+ $ hg rebase -s Y -d 3
+ saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob)
+
+ $ hg tglog
+ @ 3: 'C' bookmarks: Y Z
+ |
+ o 2: 'D' bookmarks: W
+ |
+ | o 1: 'B' bookmarks: X
+ |/
+ o 0: 'A' bookmarks:
+
+Keep bookmarks to the correct rebased changeset
+
+ $ cd ..
+ $ hg clone -q a a2
+
+ $ cd a2
+ $ hg up -q Z
+
+ $ hg rebase -s 1 -d 3
+ saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob)
+
+ $ hg tglog
+ @ 3: 'C' bookmarks: Y Z
+ |
+ o 2: 'B' bookmarks: X
+ |
+ o 1: 'D' bookmarks: W
+ |
+ o 0: 'A' bookmarks:
+
+
+Keep active bookmark on the correct changeset
+
+ $ cd ..
+ $ hg clone -q a a3
+
+ $ cd a3
+ $ hg up -q X
+
+ $ hg rebase -d W
+ saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob)
+
+ $ hg tglog
+ @ 3: 'C' bookmarks: Y Z
+ |
+ o 2: 'B' bookmarks: X
+ |
+ o 1: 'D' bookmarks: W
+ |
+ o 0: 'A' bookmarks:
+
+
+ $ cd ..