]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | # | |
3 | # Copyright (c) 2005 Junio C Hamano | |
4 | # | |
5 | ||
6 | test_description='git update-index nonsense-path test. | |
7 | ||
8 | This test creates the following structure in the cache: | |
9 | ||
10 | path0 - a file | |
11 | path1 - a symlink | |
12 | path2/file2 - a file in a directory | |
13 | path3/file3 - a file in a directory | |
14 | ||
15 | and tries to git update-index --add the following: | |
16 | ||
17 | path0/file0 - a file in a directory | |
18 | path1/file1 - a file in a directory | |
19 | path2 - a file | |
20 | path3 - a symlink | |
21 | ||
22 | All of the attempts should fail. | |
23 | ' | |
24 | ||
25 | . ./test-lib.sh | |
26 | ||
27 | mkdir path2 path3 | |
28 | date >path0 | |
29 | if test_have_prereq SYMLINKS | |
30 | then | |
31 | ln -s xyzzy path1 | |
32 | else | |
33 | date > path1 | |
34 | fi | |
35 | date >path2/file2 | |
36 | date >path3/file3 | |
37 | ||
38 | test_expect_success \ | |
39 | 'git update-index --add to add various paths.' \ | |
40 | 'git update-index --add -- path0 path1 path2/file2 path3/file3' | |
41 | ||
42 | rm -fr path? | |
43 | ||
44 | mkdir path0 path1 | |
45 | date >path2 | |
46 | if test_have_prereq SYMLINKS | |
47 | then | |
48 | ln -s frotz path3 | |
49 | else | |
50 | date > path3 | |
51 | fi | |
52 | date >path0/file0 | |
53 | date >path1/file1 | |
54 | ||
55 | for p in path0/file0 path1/file1 path2 path3 | |
56 | do | |
57 | test_expect_success \ | |
58 | "git update-index to add conflicting path $p should fail." \ | |
59 | "test_must_fail git update-index --add -- $p" | |
60 | done | |
61 | test_done |