tests/test-topic-stack-data.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 22 Jun 2017 10:13:29 +0200
changeset 2653 13313d0cab71
parent 2045 db617700d318
child 2712 f19b314d8475
permissions -rw-r--r--
topicmap: massive rework Massively rework the way we build and use topicmap. This bring massive performance benefit. Topic map use to be a fully independant thing that we would switch on and off globaly. The caching on disk was broken so the performance were atrocious. Intead, now the topic are inherited from the 'immutable' map. We gave up on storing them on disk for now since the mutable set is usually small enough. The activation is done by hacking new "filter" on the repository and detection when they are one. This is hacky but core is hard to wrap here. Overall this whole wrapping is really scary and we should massage core API to help it.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     1
Setup
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     2
=====
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     3
2045
db617700d318 tests: move "test setup" script into a 'testlib' directory
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1998
diff changeset
     4
  $ . "$TESTDIR/testlib/topic_setup.sh"
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     5
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     6
  $ hg init test-list
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     7
  $ cd test-list
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     8
  $ cat <<EOF >> .hg/hgrc
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     9
  > [phases]
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    10
  > publish=false
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    11
  > EOF
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    12
  $ cat <<EOF >> $HGRCPATH
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    13
  > [experimental]
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    14
  > # disable the new graph style until we drop 3.7 support
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    15
  > graphstyle.missing = |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    16
  > # turn evolution on
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    17
  > evolution=all
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    18
  > EOF
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    19
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    20
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    21
  $ mkcommit() {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
  >    echo "$1" > "$1"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    23
  >    hg add "$1"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    24
  >    hg ci -m "add $1"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    25
  > }
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    26
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    27
Build some basic graph
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    28
----------------------
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    29
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    30
  $ for x in base_a base_b base_c base_d base_e ; do
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    31
  >   mkcommit $x
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    32
  > done
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    33
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    34
Add another branch with two heads
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    35
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    36
  $ hg up 'desc(base_a)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    37
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    38
  $ hg branch lake
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    39
  marked working directory as branch lake
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    40
  (branches are permanent and global, did you want a bookmark?)
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    41
  $ mkcommit lake_a
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    42
  $ mkcommit lake_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    43
  $ hg up 'desc(lake_a)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    44
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    45
  $ mkcommit lake_c
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    46
  created new head
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    47
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    48
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    49
Add some topics
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    50
---------------
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    51
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    52
A simple topic that need rebasing
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    53
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    54
  $ hg up 'desc(base_c)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    55
  2 files updated, 0 files merged, 2 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    56
  $ hg topic baz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    57
  $ mkcommit baz_a
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    58
  $ mkcommit baz_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    59
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    60
A simple topic with unstability
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    61
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    62
  $ hg up 'desc(base_d)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    63
  1 files updated, 0 files merged, 2 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    64
  $ hg topic fuz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    65
  $ mkcommit fuz_a
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    66
  $ mkcommit fuz_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    67
  $ mkcommit fuz_c
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    68
  $ hg up 'desc(fuz_a)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    69
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    70
  $ hg commit --amend --message 'fuz1_a'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    71
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    72
A topic with multiple heads
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    73
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    74
  $ hg up 'desc(base_e)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    75
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    76
  $ hg topic bar
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    77
  $ mkcommit bar_a
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    78
  $ mkcommit bar_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    79
  $ mkcommit bar_c
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    80
  $ hg up 'desc(bar_b)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    81
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    82
  $ mkcommit bar_d
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    83
  $ mkcommit bar_e
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    84
  $ hg up 'desc(bar_d)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    85
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    86
  $ hg commit --amend --message 'bar1_d'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    87
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    88
topic 'foo' on the multi headed branch
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    89
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    90
  $ hg up 'desc(lake_a)'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    91
  1 files updated, 0 files merged, 7 files removed, 0 files unresolved
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    92
  $ hg topic foo
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    93
  $ mkcommit foo_a
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    94
  $ mkcommit foo_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    95
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    96
Summary
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    97
-------
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    98
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    99
  $ hg summary
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   100
  parent: 21:3e54b49a3113 tip
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   101
   add foo_b
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   102
  branch: lake
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   103
  commit: (clean)
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   104
  update: 2 new changesets (update)
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   105
  phases: 22 draft
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   106
  unstable: 3 changesets
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   107
  topic:  foo
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   108
  $ hg log --graph -T '{desc} ({branch}) [{topic}]'
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   109
  @  add foo_b (lake) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   110
  |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   111
  o  add foo_a (lake) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   112
  |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   113
  | o  bar1_d (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   114
  | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   115
  | | o  add bar_e (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   116
  | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   117
  | | x  add bar_d (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   118
  | |/
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   119
  | | o  add bar_c (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   120
  | |/
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   121
  | o  add bar_b (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   122
  | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   123
  | o  add bar_a (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   124
  | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   125
  | | o  fuz1_a (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   126
  | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   127
  | | | o  add fuz_c (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   128
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   129
  | | | o  add fuz_b (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   130
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   131
  | | | x  add fuz_a (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   132
  | | |/
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   133
  | | | o  add baz_b (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   134
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   135
  | | | o  add baz_a (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   136
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   137
  +-------o  add lake_c (lake) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   138
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   139
  +-------o  add lake_b (lake) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   140
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   141
  o | | |  add lake_a (lake) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   142
  | | | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   143
  | o | |  add base_e (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   144
  | |/ /
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   145
  | o /  add base_d (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   146
  | |/
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   147
  | o  add base_c (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   148
  | |
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   149
  | o  add base_b (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   150
  |/
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   151
  o  add base_a (default) []
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   152
  
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   153
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   154
Actual Testing
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   155
==============
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   156
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   157
basic output
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   158
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   159
  $ hg topic
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   160
     bar
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   161
     baz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   162
   * foo
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   163
     fuz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   164
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   165
quiet version
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   166
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   167
  $ hg topic --quiet
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   168
  bar
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   169
  baz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   170
  foo
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   171
  fuz
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   172
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   173
verbose
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   174
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   175
  $ hg topic --verbose
1988
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   176
     bar (on branch: default, 5 changesets, 1 troubled, 2 heads)
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   177
     baz (on branch: default, 2 changesets, 2 behind)
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   178
   * foo (on branch: lake, 2 changesets, ambiguous destination)
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   179
     fuz (on branch: default, 3 changesets, 2 troubled, 1 behind)
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   180
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   181
json
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   182
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   183
  $ hg topic -T json
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   184
  [
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   185
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   186
    "active": false,
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   187
    "topic": "bar"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   188
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   189
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   190
    "active": false,
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   191
    "topic": "baz"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   192
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   193
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   194
    "active": true,
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   195
    "topic": "foo"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   196
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   197
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   198
    "active": false,
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   199
    "topic": "fuz"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   200
   }
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   201
  ]
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   202
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   203
json --verbose
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   204
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   205
  $ hg topic -T json --verbose
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   206
  [
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   207
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   208
    "active": false,
1988
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   209
    "branches+": "default",
1977
137f8b04901e topic: list the number of changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1975
diff changeset
   210
    "changesetcount": 5,
1979
bee7a1ef8ba8 topic: list the number of head when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1978
diff changeset
   211
    "headcount": 2,
1978
e42dd4523c0d topic: list the number of troubled changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1977
diff changeset
   212
    "topic": "bar",
e42dd4523c0d topic: list the number of troubled changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1977
diff changeset
   213
    "troubledcount": 1
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   214
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   215
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   216
    "active": false,
1985
03d6b685c16a topic: list the number of 'behind' changeset when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1979
diff changeset
   217
    "behindcount": 2,
1988
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   218
    "branches+": "default",
1977
137f8b04901e topic: list the number of changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1975
diff changeset
   219
    "changesetcount": 2,
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   220
    "topic": "baz"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   221
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   222
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   223
    "active": true,
1985
03d6b685c16a topic: list the number of 'behind' changeset when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1979
diff changeset
   224
    "behinderror": "ambiguous destination",
1988
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   225
    "branches+": "lake",
1977
137f8b04901e topic: list the number of changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1975
diff changeset
   226
    "changesetcount": 2,
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   227
    "topic": "foo"
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   228
   },
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   229
   {
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   230
    "active": false,
1985
03d6b685c16a topic: list the number of 'behind' changeset when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1979
diff changeset
   231
    "behindcount": 1,
1988
9a5d797d25be topic: list the branches this topic belong to when verbose
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1987
diff changeset
   232
    "branches+": "default",
1977
137f8b04901e topic: list the number of changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1975
diff changeset
   233
    "changesetcount": 3,
1978
e42dd4523c0d topic: list the number of troubled changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1977
diff changeset
   234
    "topic": "fuz",
e42dd4523c0d topic: list the number of troubled changesets when --verbose is used
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1977
diff changeset
   235
    "troubledcount": 2
1975
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   236
   }
acbbf7f0751e topic: add formatter support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   237
  ]
1994
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   238
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   239
Also test this situation with 'hg stack'
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   240
=======================================
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   241
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   242
  $ hg stack bar
1998
302be26a3fd8 stack: add warning about multiple heads
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1997
diff changeset
   243
  ### topic: bar (2 heads)
1996
5c40dd2cf131 stack: add some basic branch information
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1995
diff changeset
   244
  ### branch: default
1994
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   245
  t5: add bar_c
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   246
  t2^ add bar_b (base)
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   247
  t4$ add bar_e (unstable)
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   248
  t3: bar1_d
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   249
  t2: add bar_b
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   250
  t1: add bar_a
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   251
    ^ add base_e
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   252
  $ hg stack baz
1995
54d6dff699f0 stack: add some header with the topic name
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1994
diff changeset
   253
  ### topic: baz
1997
ce86f7bb4b7b stack: add some behind information
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1996
diff changeset
   254
  ### branch: default, 2 behind
1994
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   255
  t2: add baz_b
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   256
  t1: add baz_a
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   257
    ^ add base_c
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   258
  $ hg stack foo
1995
54d6dff699f0 stack: add some header with the topic name
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1994
diff changeset
   259
  ### topic: foo
1997
ce86f7bb4b7b stack: add some behind information
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1996
diff changeset
   260
  ### branch: lake, ambigious rebase destination
1994
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   261
  t2@ add foo_b (current)
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   262
  t1: add foo_a
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   263
    ^ add lake_a
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   264
  $ hg stack fuz
1995
54d6dff699f0 stack: add some header with the topic name
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1994
diff changeset
   265
  ### topic: fuz
1997
ce86f7bb4b7b stack: add some behind information
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1996
diff changeset
   266
  ### branch: default, 1 behind
1994
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   267
  t3$ add fuz_c (unstable)
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   268
  t2$ add fuz_b (unstable)
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   269
  t1: fuz1_a
10d10563e2a8 test: add testing of stack output in 'stack-data' test.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1993
diff changeset
   270
    ^ add base_d