view tests/test-evolve-topic.t @ 1673:8e879d59b20e

tests: change quoting pattern to match core's conventions This patch modifies two tests to match new quoting patterns used in core: (use "hg config --edit" to set your username) becomes (use 'hg config --edit' to set your username) and (use hg resolve and hg graft --continue) becomes (use 'hg resolve' and 'hg graft --continue')
author Laurent Charignon <lcharignon@fb.com>
date Tue, 19 Apr 2016 14:29:40 -0700
parents 548195454683
children 52cda77949f5
line wrap: on
line source


Check we can find the topic extensions

  $ [ -e $TOPICROOT/hgext3rd/topic/__init__.py ] || exit 80
  $ cat >> $HGRCPATH <<EOF
  > [defaults]
  > amend=-d "0 0"
  > fold=-d "0 0"
  > [phases]
  > publish = False
  > [ui]
  > logtemplate = {rev} - \{{get(namespaces, "topics")}} {node|short} {desc} ({phase})\n
  > [diff]
  > git = 1
  > unified = 0
  > [extensions]
  > rebase = 
  > topic = $TOPICROOT/hgext3rd/topic/
  > EOF
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH

  $ mkcommit() {
  >    echo "$1" > "$1"
  >    hg add "$1"
  >    hg ci -m "add $1"
  > }

Create a simple setup

  $ hg init repoa
  $ cd repoa
  $ mkcommit aaa
  $ mkcommit bbb
  $ hg topic foo
  $ mkcommit ccc
  $ mkcommit ddd
  created new head
  $ mkcommit eee
  created new head
  $ mkcommit fff
  created new head
  $ hg topic bar
  $ mkcommit ggg
  created new head
  $ mkcommit hhh
  created new head
  $ mkcommit iii
  created new head
  $ mkcommit jjj
  created new head

  $ hg log -G
  @  9 - {bar} 1d964213b023 add jjj (draft)
  |
  o  8 - {bar} fcab990f3261 add iii (draft)
  |
  o  7 - {bar} b0c2554835ac add hhh (draft)
  |
  o  6 - {bar} c748293f1c1a add ggg (draft)
  |
  o  5 - {foo} 6a6b7365c751 add fff (draft)
  |
  o  4 - {foo} 3969ab847d9c add eee (draft)
  |
  o  3 - {foo} 4e3a154f38c7 add ddd (draft)
  |
  o  2 - {foo} cced9bac76e3 add ccc (draft)
  |
  o  1 - {} a4dbed0837ea add bbb (draft)
  |
  o  0 - {} 199cc73e9a0b add aaa (draft)
  

Test that evolve --all evolve the current topic
-----------------------------------------------

make a mess

  $ hg up foo
  switching to topic foo
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
  $ hg topic -l 
    _ add bbb
  t0: add ccc
  t1: add ddd
  t2: add eee
  t3@ add fff (current)
  $ hg up 'desc(ddd)'
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
  $ echo ddd >> ddd
  $ hg amend
  6 new unstable changesets
  $ hg up 'desc(fff)'
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
  $ echo fff >> fff
  $ hg amend

  $ hg log -G
  @  13 - {foo} e104f49bab28 add fff (draft)
  |
  | o  11 - {foo} d9cacd156ffc add ddd (draft)
  | |
  | | o  9 - {bar} 1d964213b023 add jjj (draft)
  | | |
  | | o  8 - {bar} fcab990f3261 add iii (draft)
  | | |
  | | o  7 - {bar} b0c2554835ac add hhh (draft)
  | | |
  | | o  6 - {bar} c748293f1c1a add ggg (draft)
  | | |
  +---x  5 - {foo} 6a6b7365c751 add fff (draft)
  | |
  o |  4 - {foo} 3969ab847d9c add eee (draft)
  | |
  x |  3 - {foo} 4e3a154f38c7 add ddd (draft)
  |/
  o  2 - {foo} cced9bac76e3 add ccc (draft)
  |
  o  1 - {} a4dbed0837ea add bbb (draft)
  |
  o  0 - {} 199cc73e9a0b add aaa (draft)
  

Run evolve --all

  $ hg evolve --all
  move:[4] add eee
  atop:[11] add ddd
  move:[13] add fff
  atop:[14] add eee
  working directory is now at 070c5573d8f9
  $ hg log -G
  @  15 - {foo} 070c5573d8f9 add fff (draft)
  |
  o  14 - {foo} 42b49017ff90 add eee (draft)
  |
  o  11 - {foo} d9cacd156ffc add ddd (draft)
  |
  | o  9 - {bar} 1d964213b023 add jjj (draft)
  | |
  | o  8 - {bar} fcab990f3261 add iii (draft)
  | |
  | o  7 - {bar} b0c2554835ac add hhh (draft)
  | |
  | o  6 - {bar} c748293f1c1a add ggg (draft)
  | |
  | x  5 - {foo} 6a6b7365c751 add fff (draft)
  | |
  | x  4 - {foo} 3969ab847d9c add eee (draft)
  | |
  | x  3 - {foo} 4e3a154f38c7 add ddd (draft)
  |/
  o  2 - {foo} cced9bac76e3 add ccc (draft)
  |
  o  1 - {} a4dbed0837ea add bbb (draft)
  |
  o  0 - {} 199cc73e9a0b add aaa (draft)
  

Test that evolve does not loose topic information
-------------------------------------------------

  $ hg evolve --rev 'topic(bar)'
  move:[6] add ggg
  atop:[15] add fff
  move:[7] add hhh
  atop:[16] add ggg
  move:[8] add iii
  atop:[17] add hhh
  move:[9] add jjj
  atop:[18] add iii
  working directory is now at 9bf430c106b7
  $ hg log -G
  @  19 - {bar} 9bf430c106b7 add jjj (draft)
  |
  o  18 - {bar} d2dc89c57700 add iii (draft)
  |
  o  17 - {bar} 20bc4d02aa62 add hhh (draft)
  |
  o  16 - {bar} 16d6f664b17c add ggg (draft)
  |
  o  15 - {foo} 070c5573d8f9 add fff (draft)
  |
  o  14 - {foo} 42b49017ff90 add eee (draft)
  |
  o  11 - {foo} d9cacd156ffc add ddd (draft)
  |
  o  2 - {foo} cced9bac76e3 add ccc (draft)
  |
  o  1 - {} a4dbed0837ea add bbb (draft)
  |
  o  0 - {} 199cc73e9a0b add aaa (draft)
  

Tests next and prev behavior
============================

Basic move are restricted to the current topic

  $ hg up foo
  switching to topic foo
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
  $ hg prev
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  [14] add eee
  $ hg next
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  [15] add fff
  $ hg next
  no children on topic "foo"
  do you want --no-topic
  [1]
  $ hg next --no-topic
  switching to topic bar
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  [16] add ggg
  $ hg prev
  no parent in topic "bar"
  (do you want --no-topic)
  $ hg prev --no-topic
  switching to topic foo
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  [15] add fff