changeset 12072:010025717202

tests: unify test-bheads
author Adrian Buehlmann <adrian@cadifra.com>
date Fri, 27 Aug 2010 00:27:40 +0200
parents 45ff6dcf82ea
children adfff89e6058
files tests/test-bheads tests/test-bheads.out tests/test-bheads.t
diffstat 3 files changed, 377 insertions(+), 395 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test-bheads	Thu Aug 26 12:41:00 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,186 +0,0 @@
-#!/bin/sh
-
-heads()
-{
-    hg heads --template '{rev}: {desc|firstline|strip} ({branches})\n' "$@"
-}
-
-hg init a
-cd a
-echo 'root' >root
-hg add root
-hg commit -m "Adding root node"
-heads
-echo '-------'
-heads .
-
-echo '======='
-echo 'a' >a
-hg add a
-hg branch a
-hg commit -m "Adding a branch"
-heads
-echo '-------'
-heads .
-
-echo '======='
-hg update -C 0
-echo 'b' >b
-hg add b
-hg branch b
-hg commit -m "Adding b branch"
-heads
-echo '-------'
-heads .
-
-echo '======='
-echo 'bh1' >bh1
-hg add bh1
-hg commit -m "Adding b branch head 1"
-heads
-echo '-------'
-heads .
-
-echo '======='
-hg update -C 2
-echo 'bh2' >bh2
-hg add bh2
-hg commit -m "Adding b branch head 2"
-heads
-echo '-------'
-heads .
-
-echo '======='
-hg update -C 2
-echo 'bh3' >bh3
-hg add bh3
-hg commit -m "Adding b branch head 3"
-heads
-echo '-------'
-heads .
-
-echo '======='
-hg merge 4
-hg commit -m "Merging b branch head 2 and b branch head 3"
-heads
-echo '-------'
-heads .
-
-echo '======='
-echo 'c' >c
-hg add c
-hg branch c
-hg commit -m "Adding c branch"
-heads
-echo '-------'
-heads .
-
-echo '======='
-heads -r 3 .
-echo $?
-echo '-------'
-heads -r 2 .
-echo $?
-echo '-------'
-hg update -C 4
-echo $?
-echo '-------'
-heads -r 3 .
-echo $?
-echo '-------'
-heads -r 2 .
-echo $?
-echo '-------'
-heads -r 7 .
-echo $?
-
-echo '======='
-for i in 0 1 2 3 4 5 6 7; do
-    hg update -C "$i"
-    heads
-    echo '-------'
-    heads .
-    echo '-------'
-done
-
-echo '======='
-for i in a b c z; do
-    heads "$i"
-    echo '-------'
-done
-
-echo '======='
-heads 0 1 2 3 4 5 6 7
-
-echo '% topological heads'
-heads -t
-
-echo '______________'
-cd ..
-
-hg init newheadmsg
-cd newheadmsg
-
-echo '% created new head message'
-echo '% init: no msg'
-echo 1 > a
-hg ci -Am "a0: Initial root"
-echo 2 >> a
-hg ci -m "a1 (HN)"
-
-hg branch b
-echo 1 > b
-hg ci -Am "b2: Initial root for branch b"
-echo 2 >> b
-hg ci -m "b3 (HN)"
-
-echo '% case NN: msg'
-hg up -q null
-hg branch -f b
-echo 1 > bb
-hg ci -Am "b4 (NN): new topo root for branch b"
-
-echo '% case HN: no msg'
-echo 2 >> bb
-hg ci -m "b5 (HN)"
-
-echo '% case BN: msg'
-hg branch -f default
-echo 1 > aa
-hg ci -Am "a6 (BN): new branch root"
-
-echo '% case CN: msg'
-hg up -q 4
-echo 3 >> bbb
-hg ci -Am "b7 (CN): regular new head"
-
-echo '% case BB: msg'
-hg up -q 4
-hg merge -q 3
-hg branch -f default
-hg ci -m "a8 (BB): weird new branch root"
-
-echo '% case CB: msg'
-hg up -q 4
-hg merge -q 1
-hg ci -m "b9 (CB): new head from branch merge"
-
-echo '% case HB: no msg'
-hg up -q 7
-hg merge -q 6
-hg ci -m "b10 (HB): continuing head from branch merge"
-
-echo '% case CC: msg'
-hg up -q 4
-hg merge -q 2
-hg ci -m "b11 (CC): new head from merge"
-
-echo '% case CH: no msg'
-hg up -q 2
-hg merge -q 10
-hg ci -m "b12 (CH): continuing head from merge"
-
-echo '% case HH: no msg'
-hg merge -q 3
-hg ci -m "b12 (HH): merging two heads"
-
--- a/tests/test-bheads.out	Thu Aug 26 12:41:00 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,209 +0,0 @@
-0: Adding root node ()
--------
-0: Adding root node ()
-=======
-marked working directory as branch a
-1: Adding a branch (a)
-0: Adding root node ()
--------
-1: Adding a branch (a)
-=======
-0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-marked working directory as branch b
-2: Adding b branch (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-2: Adding b branch (b)
-=======
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-3: Adding b branch head 1 (b)
-=======
-0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-created new head
-4: Adding b branch head 2 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-4: Adding b branch head 2 (b)
-3: Adding b branch head 1 (b)
-=======
-0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-created new head
-5: Adding b branch head 3 (b)
-4: Adding b branch head 2 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-5: Adding b branch head 3 (b)
-4: Adding b branch head 2 (b)
-3: Adding b branch head 1 (b)
-=======
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-(branch merge, don't forget to commit)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-=======
-marked working directory as branch c
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-7: Adding c branch (c)
-=======
-no open branch heads found on branches c (started at 3)
-1
--------
-7: Adding c branch (c)
-0
--------
-0 files updated, 0 files merged, 2 files removed, 0 files unresolved
-0
--------
-3: Adding b branch head 1 (b)
-0
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-0
--------
-no open branch heads found on branches b (started at 7)
-1
-=======
-0 files updated, 0 files merged, 2 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-0: Adding root node ()
--------
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-1: Adding a branch (a)
--------
-1 files updated, 0 files merged, 1 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-1 files updated, 0 files merged, 1 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-1 files updated, 0 files merged, 1 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
--------
-7: Adding c branch (c)
--------
-=======
-1: Adding a branch (a)
--------
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
--------
-7: Adding c branch (c)
--------
-abort: unknown revision 'z'!
--------
-=======
-7: Adding c branch (c)
-6: Merging b branch head 2 and b branch head 3 (b)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-0: Adding root node ()
-% topological heads
-7: Adding c branch (c)
-3: Adding b branch head 1 (b)
-1: Adding a branch (a)
-______________
-% created new head message
-% init: no msg
-adding a
-marked working directory as branch b
-adding b
-% case NN: msg
-marked working directory as branch b
-adding bb
-created new head
-% case HN: no msg
-% case BN: msg
-marked working directory as branch default
-adding aa
-created new head
-% case CN: msg
-adding bbb
-created new head
-% case BB: msg
-marked working directory as branch default
-created new head
-% case CB: msg
-created new head
-% case HB: no msg
-% case CC: msg
-created new head
-% case CH: no msg
-% case HH: no msg
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-bheads.t	Fri Aug 27 00:27:40 2010 +0200
@@ -0,0 +1,377 @@
+  $ heads()
+  > {
+  >    hg heads --template '{rev}: {desc|firstline|strip} ({branches})\n' "$@"
+  > }
+
+  $ hg init a
+  $ cd a
+  $ echo 'root' >root
+  $ hg add root
+  $ hg commit -m "Adding root node"
+  $ heads
+  0: Adding root node ()
+-------
+  $ heads .
+  0: Adding root node ()
+
+=======
+
+  $ echo 'a' >a
+  $ hg add a
+  $ hg branch a
+  marked working directory as branch a
+  $ hg commit -m "Adding a branch"
+  $ heads
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  1: Adding a branch (a)
+
+=======
+
+  $ hg update -C 0
+  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  $ echo 'b' >b
+  $ hg add b
+  $ hg branch b
+  marked working directory as branch b
+  $ hg commit -m "Adding b branch"
+  $ heads
+  2: Adding b branch (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  2: Adding b branch (b)
+
+=======
+
+  $ echo 'bh1' >bh1
+  $ hg add bh1
+  $ hg commit -m "Adding b branch head 1"
+  $ heads
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  3: Adding b branch head 1 (b)
+
+=======
+
+  $ hg update -C 2
+  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  $ echo 'bh2' >bh2
+  $ hg add bh2
+  $ hg commit -m "Adding b branch head 2"
+  created new head
+  $ heads
+  4: Adding b branch head 2 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  $ heads .
+  4: Adding b branch head 2 (b)
+  3: Adding b branch head 1 (b)
+
+=======
+
+  $ hg update -C 2
+  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  $ echo 'bh3' >bh3
+  $ hg add bh3
+  $ hg commit -m "Adding b branch head 3"
+  created new head
+  $ heads
+  5: Adding b branch head 3 (b)
+  4: Adding b branch head 2 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  5: Adding b branch head 3 (b)
+  4: Adding b branch head 2 (b)
+  3: Adding b branch head 1 (b)
+
+=======
+
+  $ hg merge 4
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ hg commit -m "Merging b branch head 2 and b branch head 3"
+  $ heads
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+
+=======
+
+  $ echo 'c' >c
+  $ hg add c
+  $ hg branch c
+  marked working directory as branch c
+  $ hg commit -m "Adding c branch"
+  $ heads
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+-------
+  $ heads .
+  7: Adding c branch (c)
+
+=======
+
+  $ heads -r 3 .
+  no open branch heads found on branches c (started at 3)
+  $ echo $?
+  0
+  $ heads -r 2 .
+  7: Adding c branch (c)
+  $ echo $?
+  0
+-------
+  $ hg update -C 4
+  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
+  $ echo $?
+  0
+-------
+  $ heads -r 3 .
+  3: Adding b branch head 1 (b)
+  $ echo $?
+  0
+-------
+  $ heads -r 2 .
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  $ echo $?
+  0
+-------
+  $ heads -r 7 .
+  no open branch heads found on branches b (started at 7)
+  $ echo $?
+  0
+
+=======
+
+  $ for i in 0 1 2 3 4 5 6 7; do
+  >     hg update -C "$i"
+  >     heads
+  >     echo '-------'
+  >     heads .
+  >     echo '-------'
+  > done
+  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  0: Adding root node ()
+  -------
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  1: Adding a branch (a)
+  -------
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+  -------
+  7: Adding c branch (c)
+  -------
+
+=======
+
+  $ for i in a b c z; do
+  >     heads "$i"
+  >     echo '-------'
+  > done
+  1: Adding a branch (a)
+  -------
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  -------
+  7: Adding c branch (c)
+  -------
+  abort: unknown revision 'z'!
+  -------
+
+=======
+
+  $ heads 0 1 2 3 4 5 6 7
+  7: Adding c branch (c)
+  6: Merging b branch head 2 and b branch head 3 (b)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+  0: Adding root node ()
+
+Topological heads:
+
+  $ heads -t
+  7: Adding c branch (c)
+  3: Adding b branch head 1 (b)
+  1: Adding a branch (a)
+
+  $ cd ..
+______________
+
+"created new head" message tests
+
+  $ hg init newheadmsg
+  $ cd newheadmsg
+
+Init: no msg
+
+  $ echo 1 > a
+  $ hg ci -Am "a0: Initial root"
+  adding a
+  $ echo 2 >> a
+  $ hg ci -m "a1 (HN)"
+
+  $ hg branch b
+  marked working directory as branch b
+  $ echo 1 > b
+  $ hg ci -Am "b2: Initial root for branch b"
+  adding b
+  $ echo 2 >> b
+  $ hg ci -m "b3 (HN)"
+
+Case NN: msg
+
+  $ hg up -q null
+  $ hg branch -f b
+  marked working directory as branch b
+  $ echo 1 > bb
+  $ hg ci -Am "b4 (NN): new topo root for branch b"
+  adding bb
+  created new head
+
+Case HN: no msg
+
+  $ echo 2 >> bb
+  $ hg ci -m "b5 (HN)"
+
+Case BN: msg
+
+  $ hg branch -f default
+  marked working directory as branch default
+  $ echo 1 > aa
+  $ hg ci -Am "a6 (BN): new branch root"
+  adding aa
+  created new head
+
+Case CN: msg
+
+  $ hg up -q 4
+  $ echo 3 >> bbb
+  $ hg ci -Am "b7 (CN): regular new head"
+  adding bbb
+  created new head
+
+Case BB: msg
+
+  $ hg up -q 4
+  $ hg merge -q 3
+  $ hg branch -f default
+  marked working directory as branch default
+  $ hg ci -m "a8 (BB): weird new branch root"
+  created new head
+
+Case CB: msg
+
+  $ hg up -q 4
+  $ hg merge -q 1
+  $ hg ci -m "b9 (CB): new head from branch merge"
+  created new head
+
+Case HB: no msg
+
+  $ hg up -q 7
+  $ hg merge -q 6
+  $ hg ci -m "b10 (HB): continuing head from branch merge"
+
+Case CC: msg
+
+  $ hg up -q 4
+  $ hg merge -q 2
+  $ hg ci -m "b11 (CC): new head from merge"
+  created new head
+
+Case CH: no msg
+
+  $ hg up -q 2
+  $ hg merge -q 10
+  $ hg ci -m "b12 (CH): continuing head from merge"
+
+Case HH: no msg
+
+  $ hg merge -q 3
+  $ hg ci -m "b12 (HH): merging two heads"
+