annotate tests/test-clone-failure @ 9827:4fe9ca519637

mdiff: fix diff -b/B/w on mixed whitespace hunks (issue127) Previous code was computing hunks then checking if these hunks could be ignored when taking whitespace/blank-lines options in accounts. This approach is simple but fails with hunks containing both whitespace and non-whitespace changes, the whole hunk is emitted while it can be mostly made of whitespace. The new version normalize the whitespaces before hunk generation, and test for blank-lines afterwards.
author Patrick Mezard <pmezard@gmail.com>
date Wed, 11 Nov 2009 18:31:42 +0100
parents 567648eab1dd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
834
78a9f95766dc Use sh instead of bash in tests.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
1 #!/bin/sh
550
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
2
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
3 # No local source
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
4 hg clone a b
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
5 echo $?
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
6
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
7 # No remote source
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
8 hg clone http://127.0.0.1:3121/a b
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
9 echo $?
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
10 rm -rf b # work around bug with http clone
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
11
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
12 # Inaccessible source
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
13 mkdir a
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
14 chmod 000 a
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
15 hg clone a b
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
16 echo $?
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
17
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
18 # Inaccessible destination
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
19 mkdir b
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
20 cd b
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
21 hg init
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
22 hg clone . ../a
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
23 echo $?
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
24 cd ..
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
25 chmod 700 a
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: 839
diff changeset
26 rm -r a b
550
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
27
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
28 # Source of wrong type
5071
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
29 if "$TESTDIR/hghave" -q fifo; then
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
30 mkfifo a
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
31 hg clone a b
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
32 echo $?
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
33 rm a
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
34 else
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
35 echo "abort: repository a not found!"
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
36 echo 255
1b970cdab695 test-clone-failure: fake output upon fifo unavailabity
Patrick Mezard <pmezard@gmail.com>
parents: 3988
diff changeset
37 fi
550
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
38
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
39 # Default destination, same directory
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
40 mkdir q
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
41 cd q
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
42 hg init
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
43 cd ..
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
44 hg clone q
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
45
7927
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
46 # destination directory not empty
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
47 mkdir a
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
48 echo stuff > a/a
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
49 hg clone q a
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
50 echo $?
a218ba5f60df allow clone into existing but empty directories
Steve Borho <steve@borho.org>
parents: 5071
diff changeset
51
7935
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
52 # leave existing directory in place after clone failure
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
53 hg init c
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
54 cd c
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
55 echo c > c
8167
6c82beaaa11a tests: removed redundant "-d '0 0'" from test scripts
Martin Geisler <mg@lazybytes.net>
parents: 7935
diff changeset
56 hg commit -A -m test
7935
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
57 chmod -rx .hg/store/data
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
58 cd ..
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
59 mkdir d
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
60 hg clone c d 2> err
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
61 echo $?
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
62 test -d d && echo "dir is still here" || echo "dir is gone"
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
63 test -d d/.hg && echo "repo is still here" || echo "repo is gone"
39566bb99a9c on clone failure, only remove directories we created
Steve Borho <steve@borho.org>
parents: 7927
diff changeset
64
9329
567648eab1dd test-clone-failure: reenable perm to allow deletion
Simon Heimberg <simohe@besonet.ch>
parents: 8167
diff changeset
65 # reenable perm to allow deletion
567648eab1dd test-clone-failure: reenable perm to allow deletion
Simon Heimberg <simohe@besonet.ch>
parents: 8167
diff changeset
66 chmod +rx c/.hg/store/data
567648eab1dd test-clone-failure: reenable perm to allow deletion
Simon Heimberg <simohe@besonet.ch>
parents: 8167
diff changeset
67
550
96ff7dae94f7 [PATCH] Tests for clone command
mpm@selenic.com
parents:
diff changeset
68 true