Mercurial > hg
annotate tests/test-clone-failure @ 12269:877236cdd437
add: move main part to cmdutil to make it easier to reuse
author | Martin Geisler <mg@lazybytes.net> |
---|---|
date | Mon, 13 Sep 2010 13:09:11 +0200 |
parents | 567648eab1dd |
children |
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 | 2 |
3 # No local source | |
4 hg clone a b | |
5 echo $? | |
6 | |
7 # No remote source | |
8 hg clone http://127.0.0.1:3121/a b | |
9 echo $? | |
10 rm -rf b # work around bug with http clone | |
11 | |
12 # Inaccessible source | |
13 mkdir a | |
14 chmod 000 a | |
15 hg clone a b | |
16 echo $? | |
17 | |
18 # Inaccessible destination | |
19 mkdir b | |
20 cd b | |
21 hg init | |
22 hg clone . ../a | |
23 echo $? | |
24 cd .. | |
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 | 27 |
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 | 38 |
39 # Default destination, same directory | |
40 mkdir q | |
41 cd q | |
42 hg init | |
43 cd .. | |
44 hg clone q | |
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 | 68 true |