tests/test-evolve-topic.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Wed, 30 Aug 2017 18:35:04 +0200
changeset 2894 31aa9d097d29
parent 2854 66796d7b5415
child 2929 06844693bb21
permissions -rw-r--r--
doc: record all the missings and strange bit we know We know the doc is not as fresh as it could be. We make sure the reader is aware too.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1626
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     1
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     2
Check we can find the topic extensions
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     3
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     4
  $ cat >> $HGRCPATH <<EOF
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     5
  > [defaults]
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     6
  > amend=-d "0 0"
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     7
  > fold=-d "0 0"
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     8
  > [phases]
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     9
  > publish = False
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    10
  > [ui]
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    11
  > logtemplate = {rev} - \{{get(namespaces, "topics")}} {node|short} {desc} ({phase})\n
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    12
  > [diff]
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    13
  > git = 1
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    14
  > unified = 0
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    15
  > [extensions]
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    16
  > rebase = 
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    17
  > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1723
diff changeset
    18
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1806
diff changeset
    19
  $ echo "topic=$(echo $(dirname $TESTDIR))/hgext3rd/topic/" >> $HGRCPATH
1626
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    20
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    21
  $ mkcommit() {
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    22
  >    echo "$1" > "$1"
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    23
  >    hg add "$1"
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    24
  >    hg ci -m "add $1"
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    25
  > }
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    26
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    27
Create a simple setup
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    28
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    29
  $ hg init repoa
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    30
  $ cd repoa
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    31
  $ mkcommit aaa
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    32
  $ mkcommit bbb
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    33
  $ hg topic foo
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    34
  $ mkcommit ccc
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    35
  $ mkcommit ddd
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    36
  $ mkcommit eee
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    37
  $ mkcommit fff
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    38
  $ hg topic bar
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    39
  $ mkcommit ggg
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    40
  $ mkcommit hhh
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    41
  $ mkcommit iii
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    42
  $ mkcommit jjj
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    43
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    44
  $ hg log -G
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    45
  @  9 - {bar} 1d964213b023 add jjj (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    46
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    47
  o  8 - {bar} fcab990f3261 add iii (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    48
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    49
  o  7 - {bar} b0c2554835ac add hhh (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    50
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    51
  o  6 - {bar} c748293f1c1a add ggg (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    52
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    53
  o  5 - {foo} 6a6b7365c751 add fff (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    54
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    55
  o  4 - {foo} 3969ab847d9c add eee (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    56
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    57
  o  3 - {foo} 4e3a154f38c7 add ddd (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    58
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    59
  o  2 - {foo} cced9bac76e3 add ccc (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    60
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    61
  o  1 - {} a4dbed0837ea add bbb (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    62
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    63
  o  0 - {} 199cc73e9a0b add aaa (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    64
  
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    65
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    66
Test that evolve --all evolve the current topic
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    67
-----------------------------------------------
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    68
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    69
make a mess
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    70
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    71
  $ hg up foo
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    72
  switching to topic foo
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    73
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    74
  $ hg topic -l 
1723
2672f36d668e test: adapt to topic changes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1694
diff changeset
    75
  ### topic: foo (?)
2672f36d668e test: adapt to topic changes
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1694
diff changeset
    76
  ### branch: default (?)
1693
73acbc623830 test: update topic test output for order change
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1692
diff changeset
    77
  t4@ add fff (current)
73acbc623830 test: update topic test output for order change
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1692
diff changeset
    78
  t3: add eee
1692
2f328bcb27a8 test: update topic test output for indexing change
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1691
diff changeset
    79
  t2: add ddd
1693
73acbc623830 test: update topic test output for order change
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1692
diff changeset
    80
  t1: add ccc
2712
f19b314d8475 topics: add t0 and b0 to the stack
Pulkit Goyal <7895pulkit@gmail.com>
parents: 2020
diff changeset
    81
  t0^ add bbb (base)
1626
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    82
  $ hg up 'desc(ddd)'
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    83
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    84
  $ echo ddd >> ddd
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    85
  $ hg amend
2854
66796d7b5415 warning: rename unstable warning message
Boris Feld <boris.feld@octobus.net>
parents: 2745
diff changeset
    86
  6 new orphan changesets
1626
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    87
  $ hg up 'desc(fff)'
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    88
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    89
  $ echo fff >> fff
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    90
  $ hg amend
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    91
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    92
  $ hg log -G
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    93
  @  13 - {foo} e104f49bab28 add fff (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    94
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    95
  | o  11 - {foo} d9cacd156ffc add ddd (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    96
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    97
  | | o  9 - {bar} 1d964213b023 add jjj (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    98
  | | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    99
  | | o  8 - {bar} fcab990f3261 add iii (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   100
  | | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   101
  | | o  7 - {bar} b0c2554835ac add hhh (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   102
  | | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   103
  | | o  6 - {bar} c748293f1c1a add ggg (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   104
  | | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   105
  +---x  5 - {foo} 6a6b7365c751 add fff (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   106
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   107
  o |  4 - {foo} 3969ab847d9c add eee (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   108
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   109
  x |  3 - {foo} 4e3a154f38c7 add ddd (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   110
  |/
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   111
  o  2 - {foo} cced9bac76e3 add ccc (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   112
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   113
  o  1 - {} a4dbed0837ea add bbb (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   114
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   115
  o  0 - {} 199cc73e9a0b add aaa (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   116
  
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   117
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   118
Run evolve --all
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   119
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   120
  $ hg evolve --all
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   121
  move:[4] add eee
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   122
  atop:[11] add ddd
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   123
  move:[13] add fff
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   124
  atop:[14] add eee
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   125
  working directory is now at 070c5573d8f9
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   126
  $ hg log -G
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   127
  @  15 - {foo} 070c5573d8f9 add fff (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   128
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   129
  o  14 - {foo} 42b49017ff90 add eee (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   130
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   131
  o  11 - {foo} d9cacd156ffc add ddd (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   132
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   133
  | o  9 - {bar} 1d964213b023 add jjj (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   134
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   135
  | o  8 - {bar} fcab990f3261 add iii (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   136
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   137
  | o  7 - {bar} b0c2554835ac add hhh (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   138
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   139
  | o  6 - {bar} c748293f1c1a add ggg (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   140
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   141
  | x  5 - {foo} 6a6b7365c751 add fff (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   142
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   143
  | x  4 - {foo} 3969ab847d9c add eee (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   144
  | |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   145
  | x  3 - {foo} 4e3a154f38c7 add ddd (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   146
  |/
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   147
  o  2 - {foo} cced9bac76e3 add ccc (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   148
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   149
  o  1 - {} a4dbed0837ea add bbb (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   150
  |
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   151
  o  0 - {} 199cc73e9a0b add aaa (draft)
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   152
  
0edb545503fe topic: 'hg evolve --all' pick all trouble within current topic
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   153
1627
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   154
Test that evolve does not loose topic information
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   155
-------------------------------------------------
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   156
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   157
  $ hg evolve --rev 'topic(bar)'
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   158
  move:[6] add ggg
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   159
  atop:[15] add fff
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   160
  move:[7] add hhh
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   161
  atop:[16] add ggg
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   162
  move:[8] add iii
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   163
  atop:[17] add hhh
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   164
  move:[9] add jjj
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   165
  atop:[18] add iii
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   166
  working directory is now at 9bf430c106b7
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   167
  $ hg log -G
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   168
  @  19 - {bar} 9bf430c106b7 add jjj (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   169
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   170
  o  18 - {bar} d2dc89c57700 add iii (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   171
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   172
  o  17 - {bar} 20bc4d02aa62 add hhh (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   173
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   174
  o  16 - {bar} 16d6f664b17c add ggg (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   175
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   176
  o  15 - {foo} 070c5573d8f9 add fff (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   177
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   178
  o  14 - {foo} 42b49017ff90 add eee (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   179
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   180
  o  11 - {foo} d9cacd156ffc add ddd (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   181
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   182
  o  2 - {foo} cced9bac76e3 add ccc (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   183
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   184
  o  1 - {} a4dbed0837ea add bbb (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   185
  |
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   186
  o  0 - {} 199cc73e9a0b add aaa (draft)
a91115687a7e topic: preserve topic during evolve
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1626
diff changeset
   187
  
1628
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   188
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   189
Tests next and prev behavior
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   190
============================
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   191
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   192
Basic move are restricted to the current topic
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   193
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   194
  $ hg up foo
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   195
  switching to topic foo
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   196
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   197
  $ hg prev
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   198
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   199
  [14] add eee
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   200
  $ hg next
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   201
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   202
  [15] add fff
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   203
  $ hg next
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   204
  no children on topic "foo"
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   205
  do you want --no-topic
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   206
  [1]
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   207
  $ hg next --no-topic
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   208
  switching to topic bar
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   209
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
db19b1dc5c45 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1627
diff changeset
   210
  [16] add ggg
1629
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   211
  $ hg prev
2745
b38112b43a27 prev: allow to update to 't0' from 't1'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2739
diff changeset
   212
  preserving the current topic 'bar'
b38112b43a27 prev: allow to update to 't0' from 't1'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2739
diff changeset
   213
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
b38112b43a27 prev: allow to update to 't0' from 't1'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2739
diff changeset
   214
  [15] add fff
b38112b43a27 prev: allow to update to 't0' from 't1'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2739
diff changeset
   215
  $ hg prev
1629
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   216
  no parent in topic "bar"
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   217
  (do you want --no-topic)
2739
7d86594cb829 prev: extract the code computing the destination
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2712
diff changeset
   218
  [1]
1629
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   219
  $ hg prev --no-topic
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   220
  switching to topic foo
548195454683 topic: restrict 'hg prev' to current topic unless --no-topic is passed
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1628
diff changeset
   221
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
2745
b38112b43a27 prev: allow to update to 't0' from 't1'
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2739
diff changeset
   222
  [14] add eee