Mercurial > hg
annotate tests/test-symlink-basic @ 5085:dcfd75502b82
Test symlink handling on platform not supporting them
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Wed, 08 Aug 2007 22:47:18 +0200 |
parents | 25d753efd48e |
children | 396c7010b0cd |
rev | line source |
---|---|
4274
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
1 #!/bin/sh |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
2 |
4882
25d753efd48e
test-symlink-basic: require symlinks availability
Patrick Mezard <pmezard@gmail.com>
parents:
4572
diff
changeset
|
3 "$TESTDIR/hghave" symlink || exit 80 |
25d753efd48e
test-symlink-basic: require symlinks availability
Patrick Mezard <pmezard@gmail.com>
parents:
4572
diff
changeset
|
4 |
4572
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
5 cleanpath() |
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
6 { |
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
7 sed -e "s:/.*\(/test-symlink-basic/.*\):...\1:" |
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
8 } |
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
9 |
4274
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
10 cat >> readlink.py <<EOF |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
11 import os |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
12 import sys |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
13 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
14 for f in sys.argv[1:]: |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
15 print f, '->', os.readlink(f) |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
16 EOF |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
17 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
18 hg init a |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
19 cd a |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
20 ln -s nothing dangling |
4572
6a8e1dd18ba2
commands.commit: symlinks are supported
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4274
diff
changeset
|
21 hg commit -m 'commit symlink without adding' -d '0 0' dangling 2>&1 | cleanpath |
4274
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
22 hg add dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
23 hg commit -m 'add symlink' -d '0 0' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
24 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
25 hg tip -v |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
26 hg manifest --debug |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
27 echo '% rev 0:' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
28 python ../readlink.py dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
29 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
30 rm dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
31 ln -s void dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
32 hg commit -m 'change symlink' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
33 echo '% rev 1:' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
34 python ../readlink.py dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
35 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
36 echo '% modifying link' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
37 rm dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
38 ln -s empty dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
39 python ../readlink.py dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
40 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
41 echo '% reverting to rev 0:' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
42 hg revert -r 0 -a |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
43 python ../readlink.py dangling |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
44 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
45 echo '% backups:' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
46 python ../readlink.py *.orig |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
47 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
48 rm *.orig |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
49 hg up -C |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
50 echo '% copies' |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
51 hg cp -v dangling dangling2 |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
52 hg st -Cmard |
af4f0d52f948
Add some tests for symlink tracking
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
53 python ../readlink.py dangling dangling2 |