tests/testlib/exchange-obsmarker-util.sh
author Pierre-Yves David <pierre-yves.david@octobus.net>
Sun, 21 May 2017 15:35:21 +0200
changeset 32509 e5e31b0fc924
parent 32007 f12b6185d435
child 32652 71eb6a098315
permissions -rwxr-xr-x
hidden: use _domainancestors to compute revs revealed by dynamic blocker The complexity of computing the revealed changesets is now 'O(revealed)'. This massively speeds up the computation on large repository. Moving it to the millisecond range. Below are timing from two Mozilla repositories with different contents: 1) mozilla repository with: * 400667 changesets * 35 hidden changesets (first rev-268334) * 288 visible drafts * obsolete working copy (dynamicblockers), Before: ! visible ! wall 0.030247 comb 0.030000 user 0.030000 sys 0.000000 (best of 100) After: ! visible ! wall 0.000585 comb 0.000000 user 0.000000 sys 0.000000 (best of 4221) The timing above include the computation of obsolete changeset: ! obsolete ! wall 0.000396 comb 0.000000 user 0.000000 sys 0.000000 (best of 6816) So adjusted time give 30ms before versus 0.2ms after. A 150x speedup. 2) mozilla repository with: * 405645 changesets * 4312 hidden changesets (first rev-326004) * 264 visible drafts * obsolete working copy (dynamicblockers), Before: ! visible ! wall 0.168658 comb 0.170000 user 0.170000 sys 0.000000 (best of 48) After ! visible ! wall 0.008612 comb 0.010000 user 0.010000 sys 0.000000 (best of 325) The timing above include the computation of obsolete changeset: ! obsolete ! wall 0.006408 comb 0.010000 user 0.010000 sys 0.000000 (best of 404) So adjusted time give 160ms before versus 2ms after. A 75x speedup.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31905
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     1
#!/bin/sh
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     2
# setup config and various utility to test obsolescence marker exchanges tests
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     3
32007
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     4
cat >> $TESTTMP/prune.sh << EOF
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     5
rev=\`hg log --hidden --template '{node}\n' --rev "\$3"\`
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     6
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     7
hg debugobsolete --record-parents \$1 "\$2" \$rev \
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     8
   && hg up --quiet 'max((::.) - obsolete())'
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
     9
EOF
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
    10
31905
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    11
cat >> $HGRCPATH <<EOF
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    12
[web]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    13
# We test http pull and push, drop authentication requirement
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    14
push_ssl = false
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    15
allow_push = *
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    16
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    17
[ui]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    18
# simpler log output
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    19
logtemplate ="{node|short} ({phase}): {desc}\n"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    20
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    21
[phases]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
# non publishing server
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    23
publish=False
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    24
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    25
[experimental]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    26
# reduce output changes
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    27
bundle2-output-capture=True
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    28
# enable evolution
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    29
evolution=all
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    30
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    31
[extensions]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    32
# we need to strip some changeset for some test cases
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    33
hgext.strip=
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    34
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    35
[alias]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    36
# fix date used to create obsolete markers.
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    37
debugobsolete=debugobsolete -d '0 0'
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    38
# poor man substiture to the evolve 'hg prune'. using prune makes the test clearer and 
32007
f12b6185d435 testlib: move the prune alias into a shell script for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 31905
diff changeset
    39
prune = !sh $TESTTMP/prune.sh \$1 "\$2" "\$3"
31905
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    40
EOF
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    41
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    42
mkcommit() {
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    43
   echo "$1" > "$1"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    44
   hg add "$1"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    45
   hg ci -m "$1"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    46
}
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    47
getid() {
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    48
   hg log --hidden --template '{node}\n' --rev "$1"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    49
}
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    50
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    51
setuprepos() {
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    52
    echo creating test repo for test case $1
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    53
    mkdir $1
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    54
    cd $1
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    55
    echo - pulldest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    56
    hg init pushdest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    57
    cd pushdest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    58
    mkcommit O
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    59
    hg phase --public .
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    60
    cd ..
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    61
    echo - main
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    62
    hg clone -q pushdest main
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    63
    echo - pushdest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    64
    hg clone -q main pulldest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    65
    echo 'cd into `main` and proceed with env setup'
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    66
}
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    67
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    68
inspect_obsmarkers (){
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    69
    # This exist as its own function to help the evolve extension reuse the tests as is.
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    70
    # The evolve extensions version will includes more advances query (eg:
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    71
    # related to obsmarkers discovery) to this.
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    72
    echo 'obsstore content'
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    73
    echo '================'
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    74
    hg debugobsolete
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    75
}
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    76
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    77
dotest() {
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    78
    # dotest TESTNAME [TARGETNODE] [PUSHFLAGS+]
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    79
    #
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    80
    # test exchange for the given test case.
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    81
    #
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    82
    # This function performs push and pull in all directions through all
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    83
    # protocols and display the resulting obsolescence markers on all sides.
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    84
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    85
    testcase=$1
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    86
    shift
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    87
    target="$1"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    88
    if [ $# -gt 0 ]; then
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    89
        shift
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    90
    fi
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    91
    targetnode=""
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    92
    desccall=""
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    93
    cd $testcase
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    94
    echo "## Running testcase $testcase"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    95
    if [ -n "$target" ]; then
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    96
        desccall="desc("\'"$target"\'")"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    97
        targetnode="`hg -R main id -qr \"$desccall\"`"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    98
        echo "# testing echange of \"$target\" ($targetnode)"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    99
    fi
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   100
    echo "## initial state"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   101
    echo "# obstore: main"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   102
    hg -R main     debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   103
    echo "# obstore: pushdest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   104
    hg -R pushdest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   105
    echo "# obstore: pulldest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   106
    hg -R pulldest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   107
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   108
    if [ -n "$target" ]; then
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   109
        echo "## pushing \"$target\"" from main to pushdest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   110
        hg -R main push -r "$desccall" $@ pushdest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   111
    else
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   112
        echo "## pushing from main to pushdest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   113
        hg -R main push pushdest $@
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   114
    fi
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   115
    echo "## post push state"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   116
    echo "# obstore: main"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   117
    hg -R main     debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   118
    echo "# obstore: pushdest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   119
    hg -R pushdest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   120
    echo "# obstore: pulldest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   121
    hg -R pulldest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   122
    if [ -n "$target" ]; then
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   123
        echo "## pulling \"$targetnode\"" from main into pulldest
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   124
        hg -R pulldest pull -r $targetnode $@ main
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   125
    else
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   126
        echo "## pulling from main into pulldest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   127
        hg -R pulldest pull main $@
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   128
    fi
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   129
    echo "## post pull state"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   130
    echo "# obstore: main"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   131
    hg -R main     debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   132
    echo "# obstore: pushdest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   133
    hg -R pushdest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   134
    echo "# obstore: pulldest"
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   135
    hg -R pulldest debugobsolete | sort
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   136
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   137
    cd ..
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   138
00f5d27dd553 obsolescence: add setup script for obsolescence markers exchange tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   139
}