annotate tests/fish-merge @ 2435:ff2bac730b99

http client: support persistent connections. uses keepalive module from urlgrabber package. tested against "hg serve", cgi server, and through http proxy. used ethereal to verify that only one tcp connection used during entire "hg pull" sequence. if server supports keepalive, this makes latency of "hg pull" much lower.
author Vadim Gelfer <vadim.gelfer@gmail.com>
date Thu, 15 Jun 2006 12:57:59 -0700
parents 0902ffece4b4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
544
3d4d5f2aba9a Remove bashisms and use /bin/sh instead of /bin/bash.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 28
diff changeset
1 #!/bin/sh
3d4d5f2aba9a Remove bashisms and use /bin/sh instead of /bin/bash.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 28
diff changeset
2
28
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
3 set -e
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
4 set -x
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
5
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
6 # skip commit logs
797
95c258ee5264 Remove "export FOO=bar" bashism.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 547
diff changeset
7 HGMERGE=tkmerge; export HGMERGE
95c258ee5264 Remove "export FOO=bar" bashism.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 547
diff changeset
8 EDITOR=true; export EDITOR
28
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
9
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
10 rm -rf m m1 m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
11 mkdir m
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
12 cd m
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
13
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
14 echo "m this that"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
15 echo "this" > a
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
16 echo "that" > b
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
17 hg init
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
18 hg addremove
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
19 hg commit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
20 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
21 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
22
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
23 cd ..
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
24 echo "m2 this that "
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
25 mkdir m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
26 cd m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
27 hg branch ../m
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
28 hg checkout
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
29 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
30 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
31
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
32 cd ../m
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
33 echo "m this1 that "
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
34 echo "this1" > a
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
35 hg commit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
36 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
37 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
38
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
39 cd ..
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
40 echo "m1 this1 that "
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
41 mkdir m1
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
42 cd m1
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
43 hg branch ../m
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
44 hg checkout
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
45 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
46 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
47
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
48 cd ../m1
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
49 echo "m1 this1 that1"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
50 echo "that1" > b
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
51 hg commit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
52 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
53 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
54
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
55 cd ../m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
56 echo "m2 this that2"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
57 echo "that2" > b
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
58 hg commit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
59 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
60 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
61
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
62 cd ../m1
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
63 echo "m1:m2 this1 that1 that2"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
64 hg merge ../m2 # b should conflict, a should be fine
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
65 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
66 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
67
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
68 cd ../m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
69 echo "m2 this2 that2"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
70 echo "this2" > a
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
71 hg commit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
72 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
73 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
74
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
75 cd ../m2
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
76 echo "m2:m this12 that2"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
77 hg merge ../m # a should conflict, b should be fine
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
78 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
79 echo
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
80
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
81 # now here's the interesting bit
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
82 # if we choose ancestor by file, no conflicts
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
83 # otherwise we've got two equally close ancestors, each with a conflict
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
84 # if we go back to the root, we'll have both conflicts again
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
85 echo "m2:m1 this12 that12"
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
86 hg merge ../m1 # should be clean
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
87 echo "a:" `hg dump a` "b:" `hg dump b`
9f64ee817199 Add some tests to the repo
mpm@selenic.com
parents:
diff changeset
88 echo