tests/test-empty-group
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Tue, 23 May 2006 10:44:40 +0200
changeset 2339 11422943cf72
child 3853 c0b449154a90
permissions -rwxr-xr-x
document and fix findincoming - add documentation about what the function does, notably the fact that it updates 'base' - transform the workflow to a more simple 'if elif elif else' - do not call remote.branches if not necessary - some nodes where missing in 'base' (from what I understand, if the root of a branch is missing but one parent is present, the parent should be in 'base') - add a testcase for an incorrect outgoing that is fixed by this cset - add a testcase for an empty group bug, it needs fixing
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2339
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     1
#!/bin/sh
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     2
#
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     3
#  A          B    
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     4
#  
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     5
#  3  4       3    
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     6
#  |\/|       |\   
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     7
#  |/\|       | \  
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     8
#  1  2       1  2 
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
     9
#  \ /        \ /  
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    10
#   0          0
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    11
#
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    12
# if the result of the merge of 1 and 2
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    13
# is the same in 3 and 4, no new manifest
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    14
# will be created and the manifest group
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    15
# will be empty during the pull
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    16
#
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    17
# (plus we test a failure where outgoing
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    18
# wrongly reported the number of csets)
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    19
#
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    20
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    21
hg init a
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    22
cd a
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    23
touch init
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    24
hg ci -A -m 0 -d "1000000 0"
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    25
touch x y
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    26
hg ci -A -m 1 -d "1000000 0"
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    27
hg update 0
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    28
touch x y
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    29
hg ci -A -m 2 -d "1000000 0"
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    30
hg merge 1
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    31
hg ci -A -m m1 -d "1000000 0"
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    32
#hg log
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    33
#hg debugindex .hg/00manifest.i
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    34
hg update -C 1
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    35
hg merge 2
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    36
hg ci -A -m m2 -d "1000000 0"
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    37
#hg log
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    38
#hg debugindex .hg/00manifest.i
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    39
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    40
cd ..
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    41
hg clone -r 3 a b
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    42
hg clone -r 4 a c
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    43
hg -R a outgoing b
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    44
hg -R a outgoing c
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    45
hg -R b outgoing c
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    46
hg -R c outgoing b
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    47
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    48
hg -R b pull a
11422943cf72 document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff changeset
    49
hg -R c pull a