tests/test-topic-stack.t
branchmercurial-3.9
changeset 2433 fd24f1c7accd
parent 2432 765b2561fa90
parent 2319 ee321b87c548
child 2434 37deace44b36
child 2468 8fadd87da07e
--- a/tests/test-topic-stack.t	Thu May 18 23:35:16 2017 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,323 +0,0 @@
-  $ . "$TESTDIR/testlib/topic_setup.sh"
-
-Initial setup
-
-
-  $ cat << EOF >> $HGRCPATH
-  > [extensions]
-  > color =
-  > [ui]
-  > logtemplate = {rev} {branch} \{{get(namespaces, "topics")}} {phase} {desc|firstline}\n
-  > [experimental]
-  > evolution=createmarkers,exchange,allowunstable
-  > EOF
-
-  $ hg init main
-  $ cd main
-  $ hg topic other
-  $ echo aaa > aaa
-  $ hg add aaa
-  $ hg commit -m c_a
-  $ echo aaa > bbb
-  $ hg add bbb
-  $ hg commit -m c_b
-  $ hg topic foo
-  $ echo aaa > ccc
-  $ hg add ccc
-  $ hg commit -m c_c
-  $ echo aaa > ddd
-  $ hg add ddd
-  $ hg commit -m c_d
-  $ echo aaa > eee
-  $ hg add eee
-  $ hg commit -m c_e
-  $ echo aaa > fff
-  $ hg add fff
-  $ hg commit -m c_f
-  $ hg log -G
-  @  5 default {foo} draft c_f
-  |
-  o  4 default {foo} draft c_e
-  |
-  o  3 default {foo} draft c_d
-  |
-  o  2 default {foo} draft c_c
-  |
-  o  1 default {other} draft c_b
-  |
-  o  0 default {other} draft c_a
-  
-
-Check that topic without any parent does not crash --list
----------------------------------------------------------
-
-  $ hg up other
-  switching to topic other
-  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
-  $ hg topic --list
-  ### topic: other
-  ### branch: default
-  t2@ c_b (current)
-  t1: c_a
-  $ hg phase --public 'topic("other")'
-  $ hg up foo
-  switching to topic foo
-  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
-
-Simple test
------------
-
-'hg stack' list all changeset in the topic
-
-  $ hg topic
-   * foo
-  $ hg stack
-  ### topic: foo
-  ### branch: default
-  t4@ c_f (current)
-  t3: c_e
-  t2: c_d
-  t1: c_c
-    ^ c_b
-  $ hg stack -Tjson | python -m json.tool
-  [
-      {
-          "isentry": true,
-          "topic.stack.desc": "c_f",
-          "topic.stack.index": 4,
-          "topic.stack.state": [
-              "current"
-          ],
-          "topic.stack.state.symbol": "@"
-      },
-      {
-          "isentry": true,
-          "topic.stack.desc": "c_e",
-          "topic.stack.index": 3,
-          "topic.stack.state": [
-              "clean"
-          ],
-          "topic.stack.state.symbol": ":"
-      },
-      {
-          "isentry": true,
-          "topic.stack.desc": "c_d",
-          "topic.stack.index": 2,
-          "topic.stack.state": [
-              "clean"
-          ],
-          "topic.stack.state.symbol": ":"
-      },
-      {
-          "isentry": true,
-          "topic.stack.desc": "c_c",
-          "topic.stack.index": 1,
-          "topic.stack.state": [
-              "clean"
-          ],
-          "topic.stack.state.symbol": ":"
-      },
-      {
-          "isentry": false,
-          "topic.stack.desc": "c_b",
-          "topic.stack.state": [
-              "base"
-          ],
-          "topic.stack.state.symbol": "^"
-      }
-  ]
-
-error case, nothing to list
-
-  $ hg topic --clear
-  $ hg stack
-  abort: no active topic to list
-  [255]
-
-Test "t#" reference
--------------------
-
-
-  $ hg up t2
-  abort: cannot resolve "t2": no active topic
-  [255]
-  $ hg topic foo
-  $ hg up t42
-  abort: cannot resolve "t42": topic "foo" has only 4 changesets
-  [255]
-  $ hg up t2
-  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
-  $ hg summary
-  parent: 3:e629654d7050 
-   c_d
-  branch: default
-  commit: (clean)
-  update: (current)
-  phases: 4 draft
-  topic:  foo
-
-Case with some of the topic unstable
-------------------------------------
-
-  $ echo bbb > ddd
-  $ hg commit --amend
-  $ hg log -G
-  @  7 default {foo} draft c_d
-  |
-  | o  5 default {foo} draft c_f
-  | |
-  | o  4 default {foo} draft c_e
-  | |
-  | x  3 default {foo} draft c_d
-  |/
-  o  2 default {foo} draft c_c
-  |
-  o  1 default {} public c_b
-  |
-  o  0 default {} public c_a
-  
-  $ hg topic --list
-  ### topic: foo
-  ### branch: default
-  t4$ c_f (unstable)
-  t3$ c_e (unstable)
-  t2@ c_d (current)
-  t1: c_c
-    ^ c_b
-  $ hg up t3
-  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ hg topic --list
-  ### topic: foo
-  ### branch: default
-  t4$ c_f (unstable)
-  t3@ c_e (current)
-  t2: c_d
-  t1: c_c
-    ^ c_b
-  $ hg topic --list --color=debug
-  [topic.stack.summary.topic|### topic: [topic.active|foo]]
-  [topic.stack.summary.branches|### branch: default]
-  [topic.stack.index topic.stack.index.unstable|t4][topic.stack.state topic.stack.state.unstable|$] [topic.stack.desc topic.stack.desc.unstable|c_f][topic.stack.state topic.stack.state.unstable| (unstable)]
-  [topic.stack.index topic.stack.index.current|t3][topic.stack.state topic.stack.state.current|@] [topic.stack.desc topic.stack.desc.current|c_e][topic.stack.state topic.stack.state.current| (current)]
-  [topic.stack.index topic.stack.index.clean|t2][topic.stack.state topic.stack.state.clean|:] [topic.stack.desc topic.stack.desc.clean|c_d]
-  [topic.stack.index topic.stack.index.clean|t1][topic.stack.state topic.stack.state.clean|:] [topic.stack.desc topic.stack.desc.clean|c_c]
-    [topic.stack.state topic.stack.state.base|^] [topic.stack.desc topic.stack.desc.base|c_b]
-  $ hg up t2
-  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
-
-Also test the revset:
-
-  $ hg log -r 'stack()'
-  2 default {foo} draft c_c
-  7 default {foo} draft c_d
-  4 default {foo} draft c_e
-  5 default {foo} draft c_f
-
-Case with multiple heads on the topic
--------------------------------------
-
-Make things linear again
-
-  $ hg rebase -s 'desc(c_e)' -d 'desc(c_d) - obsolete()'
-  rebasing 4:0f9ac936c87d "c_e"
-  rebasing 5:6559e6d93aea "c_f"
-  $ hg log -G
-  o  9 default {foo} draft c_f
-  |
-  o  8 default {foo} draft c_e
-  |
-  @  7 default {foo} draft c_d
-  |
-  o  2 default {foo} draft c_c
-  |
-  o  1 default {} public c_b
-  |
-  o  0 default {} public c_a
-  
-
-
-Create the second branch
-
-  $ hg up 'desc(c_d)'
-  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ echo aaa > ggg
-  $ hg add ggg
-  $ hg commit -m c_g
-  $ echo aaa > hhh
-  $ hg add hhh
-  $ hg commit -m c_h
-  $ hg log -G
-  @  11 default {foo} draft c_h
-  |
-  o  10 default {foo} draft c_g
-  |
-  | o  9 default {foo} draft c_f
-  | |
-  | o  8 default {foo} draft c_e
-  |/
-  o  7 default {foo} draft c_d
-  |
-  o  2 default {foo} draft c_c
-  |
-  o  1 default {} public c_b
-  |
-  o  0 default {} public c_a
-  
-
-Test output
-
-  $ hg top -l
-  ### topic: foo (2 heads)
-  ### branch: default
-  t6: c_f
-  t5: c_e
-  t2^ c_d (base)
-  t4@ c_h (current)
-  t3: c_g
-  t2: c_d
-  t1: c_c
-    ^ c_b
-
-Case with multiple heads on the topic with unstability involved
----------------------------------------------------------------
-
-We amend the message to make sure the display base pick the right changeset
-
-  $ hg up 'desc(c_d)'
-  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
-  $ echo ccc > ddd
-  $ hg commit --amend -m 'c_D' 
-  $ hg rebase -d . -s 'desc(c_g)'
-  rebasing 10:81264ae8a36a "c_g"
-  rebasing 11:fde5f5941642 "c_h"
-  $ hg log -G
-  o  15 default {foo} draft c_h
-  |
-  o  14 default {foo} draft c_g
-  |
-  @  13 default {foo} draft c_D
-  |
-  | o  9 default {foo} draft c_f
-  | |
-  | o  8 default {foo} draft c_e
-  | |
-  | x  7 default {foo} draft c_d
-  |/
-  o  2 default {foo} draft c_c
-  |
-  o  1 default {} public c_b
-  |
-  o  0 default {} public c_a
-  
-
-  $ hg topic --list
-  ### topic: foo (2 heads)
-  ### branch: default
-  t6$ c_f (unstable)
-  t5$ c_e (unstable)
-  t2^ c_D (base)
-  t4: c_h
-  t3: c_g
-  t2@ c_D (current)
-  t1: c_c
-    ^ c_b