--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-evolve-topic.t Thu Mar 17 09:39:35 2016 -0700
@@ -0,0 +1,159 @@
+
+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)
+
+