Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-symlinks @ 2569:2264b2b077a1
run-tests.py: make tests use same python interpreter as test harness.
this is wanted because some tests run python interpreter directly.
must use same python interpreter in tests as in main harness or problems
will happen because of e.g. different python abi if run-tests.py run
with python 2.5 but system python is 2.4.
fix is to see if system python is used and is named python. if no,
put symlink called python at front of shell search path.
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Thu, 06 Jul 2006 10:09:24 -0700 |
parents | fd77b7ee4aac |
children | 0f550b87deb8 |
rev | line source |
---|---|
1408 | 1 #!/bin/sh |
2 #Test bug regarding symlinks that showed up in hg 0.7 | |
3 #Author: Matthew Elder <sseses@gmail.com> | |
4 | |
5 #make and initialize repo | |
6 hg init test; cd test; | |
7 | |
8 #make a file and a symlink | |
9 touch foo; ln -s foo bar; | |
10 | |
11 #import with addremove -- symlink walking should _not_ screwup. | |
12 hg addremove | |
13 | |
14 #commit -- the symlink should _not_ appear added to dir state | |
15 hg commit -m 'initial' | |
16 | |
17 #add a new file so hg will let me commit again | |
18 touch bomb | |
19 | |
20 #again, symlink should _not_ show up on dir state | |
21 hg addremove | |
22 | |
23 #Assert screamed here before, should go by without consequence | |
24 hg commit -m 'is there a bug?' | |
1487
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
25 |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
26 cd .. ; rm -rf test |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
27 hg init test; cd test; |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
28 |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
29 mkdir dir |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
30 touch a.c dir/a.o dir/b.o |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
31 # test what happens if we want to trick hg |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
32 hg commit -A -m 0 |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
33 echo "relglob:*.o" > .hgignore |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
34 rm a.c |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
35 rm dir/a.o |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
36 rm dir/b.o |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
37 mkdir dir/a.o |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
38 ln -sf nonexist dir/b.o |
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
39 mkfifo a.c |
1620
6c61646fee5e
Adjusted all but one test output for the new behaviour of localrepo.changes()
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1527
diff
changeset
|
40 # it should show a.c, dir/a.o and dir/b.o deleted |
1487
2bc6cd62a29c
fix handling of files of unsupported type in the walk code
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1408
diff
changeset
|
41 hg status |
1527
c13fce7167c2
don't print anything about file of unsupported type unless
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1487
diff
changeset
|
42 hg status a.c |
2115
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
43 |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
44 echo '# test absolute path through symlink outside repo' |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
45 cd .. |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
46 p=`pwd` |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
47 hg init x |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
48 ln -s x y |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
49 cd x |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
50 touch f |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
51 hg add f |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
52 hg status $p/y/f |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
53 |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
54 echo '# try symlink outside repo to file inside' |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
55 ln -s x/f ../z |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
56 # this should fail |
fd77b7ee4aac
Fix issue 165: `hg status' with abs path containing a symlink-to-dir fails
Jim Meyering <list+hg@meyering.net>
parents:
1620
diff
changeset
|
57 hg status ../z && { echo hg mistakenly exited with status 0; exit 1; } || : |