diff options
Diffstat (limited to 'tests/test-rebase-bookmarks.t')
-rw-r--r-- | tests/test-rebase-bookmarks.t | 113 |
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 .. |