36 hg clone -q pushdest main |
36 hg clone -q pushdest main |
37 echo - pushdest |
37 echo - pushdest |
38 hg clone -q main pulldest |
38 hg clone -q main pulldest |
39 echo 'cd into `main` and proceed with env setup' |
39 echo 'cd into `main` and proceed with env setup' |
40 } |
40 } |
|
41 |
|
42 dotest() { |
|
43 # dotest TESTNAME [TARGETNODE] |
|
44 |
|
45 testcase=$1 |
|
46 target="$2" |
|
47 targetnode="" |
|
48 desccall="" |
|
49 cd $testcase |
|
50 echo "## Running testcase $testcase" |
|
51 if [ -n "$target" ]; then |
|
52 desccall="desc("\'"$target"\'")" |
|
53 targetnode="`hg -R main id -qr \"$desccall\"`" |
|
54 echo "# testing echange of \"$target\" ($targetnode)" |
|
55 fi |
|
56 echo "## initial state" |
|
57 echo "# obstore: main" |
|
58 hg -R main debugobsolete |
|
59 echo "# obstore: pushdest" |
|
60 hg -R pushdest debugobsolete |
|
61 echo "# obstore: pulldest" |
|
62 hg -R pulldest debugobsolete |
|
63 |
|
64 if [ -n "$target" ]; then |
|
65 echo "## pushing \"$target\"" from main to pushdest |
|
66 hg -R main push -r "$desccall" pushdest |
|
67 else |
|
68 echo "## pushing from main to pushdest" |
|
69 hg -R main push pushdest |
|
70 fi |
|
71 echo "## post push state" |
|
72 echo "# obstore: main" |
|
73 hg -R main debugobsolete |
|
74 echo "# obstore: pushdest" |
|
75 hg -R pushdest debugobsolete |
|
76 echo "# obstore: pulldest" |
|
77 hg -R pulldest debugobsolete |
|
78 if [ -n "$target" ]; then |
|
79 echo "## pulling \"$targetnode\"" from main into pulldest |
|
80 hg -R pulldest pull -r $targetnode main |
|
81 else |
|
82 echo "## pulling from main into pulldest" |
|
83 hg -R pulldest pull main |
|
84 fi |
|
85 echo "## post pull state" |
|
86 echo "# obstore: main" |
|
87 hg -R main debugobsolete |
|
88 echo "# obstore: pushdest" |
|
89 hg -R pushdest debugobsolete |
|
90 echo "# obstore: pulldest" |
|
91 hg -R pulldest debugobsolete |
|
92 |
|
93 cd .. |
|
94 |
|
95 } |