Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-rename-merge2 @ 4489:afa1f57ae484
Add sending date to notify message.
When using SMTP, no date field was set into the message, which causes it to be
displayed as being send on 1st january 1970 on most MUA.
author | Mathieu Clabaut <mathieu.clabaut@gmail.com> |
---|---|
date | Thu, 24 May 2007 16:32:38 +0200 |
parents | 9dcf9d45cab8 |
children | c2c8491a30d6 |
rev | line source |
---|---|
3280 | 1 #!/bin/sh |
2 | |
3 mkdir -p t | |
4 cd t | |
5 | |
6 cat <<'EOF' > merge | |
7 #!/bin/sh | |
3288
438b0638dbf5
Fix undetected change bug in rename tests
Matt Mackall <mpm@selenic.com>
parents:
3280
diff
changeset
|
8 echo merge $1 $2 $3 > $1 |
3280 | 9 EOF |
10 chmod +x merge | |
11 | |
12 # perform a test merge with possible renaming | |
13 # | |
14 # args: | |
15 # $1 = action in local branch | |
16 # $2 = action in remote branch | |
17 # $3 = action in working dir | |
18 # $4 = expected result | |
19 tm() | |
20 { | |
21 mkdir t | |
22 cd t | |
23 hg init | |
24 echo "[merge]" >> .hg/hgrc | |
25 echo "followcopies = 1" >> .hg/hgrc | |
26 | |
27 # base | |
28 echo base > a | |
29 echo base > rev # used to force commits | |
30 hg add a rev | |
31 hg ci -m "base" -d "0 0" | |
32 | |
33 # remote | |
34 echo remote > rev | |
35 if [ "$2" != "" ] ; then $2 ; fi | |
36 hg ci -m "remote" -d "0 0" | |
37 | |
38 # local | |
39 hg co -q 0 | |
40 echo local > rev | |
41 if [ "$1" != "" ] ; then $1 ; fi | |
42 hg ci -m "local" -d "0 0" | |
43 | |
44 # working dir | |
45 echo local > rev | |
46 if [ "$3" != "" ] ; then $3 ; fi | |
47 | |
48 # merge | |
49 echo "--------------" | |
50 echo "test L:$1 R:$2 W:$3 - $4" | |
51 echo "--------------" | |
52 env HGMERGE=../merge hg merge -y --debug --traceback | |
53 | |
54 echo "--------------" | |
55 hg status -camC -X rev | |
56 | |
57 hg ci -m "merge" -d "0 0" | |
58 | |
59 echo "--------------" | |
60 echo | |
61 | |
62 cd .. | |
3988
9dcf9d45cab8
Don't use -f for rm in tests where not needed. Drop /bin/ from /bin/rm.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3288
diff
changeset
|
63 rm -r t |
3280 | 64 } |
65 | |
66 up() { | |
67 cp rev $1 | |
68 hg add $1 2> /dev/null | |
69 if [ "$2" != "" ] ; then | |
70 cp rev $2 | |
71 hg add $2 2> /dev/null | |
72 fi | |
73 } | |
74 | |
75 uc() { up $1; hg cp $1 $2; } # update + copy | |
76 um() { up $1; hg mv $1 $2; } | |
77 nc() { hg cp $1 $2; } # just copy | |
78 nm() { hg mv $1 $2; } # just move | |
79 | |
80 tm "up a " "nc a b" " " "1 get local a to b" | |
81 tm "nc a b" "up a " " " "2 get rem change to a and b" | |
82 tm "up a " "nm a b" " " "3 get local a change to b, remove a" | |
83 tm "nm a b" "up a " " " "4 get remote change to b" | |
84 tm " " "nc a b" " " "5 get b" | |
85 tm "nc a b" " " " " "6 nothing" | |
86 tm " " "nm a b" " " "7 get b" | |
87 tm "nm a b" " " " " "8 nothing" | |
88 tm "um a b" "um a b" " " "9 do merge with ancestor in a" | |
89 #tm "um a c" "um x c" " " "10 do merge with no ancestor" | |
90 tm "nm a b" "nm a c" " " "11 get c, keep b" | |
91 tm "nc a b" "up b " " " "12 merge b no ancestor" | |
92 tm "up b " "nm a b" " " "13 merge b no ancestor" | |
93 tm "nc a b" "up a b" " " "14 merge b no ancestor" | |
94 tm "up b " "nm a b" " " "15 merge b no ancestor, remove a" | |
95 tm "nc a b" "up a b" " " "16 get a, merge b no ancestor" | |
96 tm "up a b" "nc a b" " " "17 keep a, merge b no ancestor" | |
97 tm "nm a b" "up a b" " " "18 merge b no ancestor" | |
98 tm "up a b" "nm a b" " " "19 merge b no ancestor, prompt remove a" | |
99 tm "up a " "um a b" " " "20 merge a and b to b, remove a" | |
100 tm "um a b" "up a " " " "21 merge a and b to b" | |
101 #tm "nm a b" "um x a" " " "22 get a, keep b" | |
102 tm "nm a b" "up a c" " " "23 get c, keep b" |