@matheusbsbs / matheus-bagliano / commits / b75aea8f5b
Fork 0

tests for "git add ignored-dir/file" without -f

Signed-off-by: Junio C Hamano <gitster@pobox.com>

Junio C Hamano committed Feb 28, 2010 at 19:12 UTC b75aea8f5bea614f802256c436b06733486a2088
1 file changed +79
t/t2204-add-ignored.sh new
+79
@@ -0,0 +1,79 @@
1 +#!/bin/sh
2 +
3 +test_description='giving ignored paths to git add'
4 +
5 +. ./test-lib.sh
6 +
7 +test_expect_success setup '
8 + mkdir sub dir dir/sub &&
9 + echo sub >.gitignore &&
10 + echo ign >>.gitignore &&
11 + for p in . sub dir dir/sub
12 + do
13 + >"$p/ign" &&
14 + >"$p/file" || exit 1
15 + done
16 +'
17 +
18 +for i in file dir/file dir 'd*'
19 +do
20 + test_expect_success "no complaints for unignored $i" '
21 + rm -f .git/index &&
22 + git add "$i" &&
23 + git ls-files "$i" >out &&
24 + test -s out
25 + '
26 +done
27 +
28 +for i in ign dir/ign dir/sub dir/sub/*ign sub/file sub sub/*
29 +do
30 + test_expect_success "complaints for ignored $i" '
31 + rm -f .git/index &&
32 + test_must_fail git add "$i" 2>err &&
33 + git ls-files "$i" >out &&
34 + ! test -s out &&
35 + grep -e "Use -f if" err &&
36 + cat err
37 + '
38 +
39 + test_expect_success "complaints for ignored $i with unignored file" '
40 + rm -f .git/index &&
41 + test_must_fail git add "$i" file 2>err &&
42 + git ls-files "$i" >out &&
43 + ! test -s out &&
44 + grep -e "Use -f if" err &&
45 + cat err
46 + '
47 +done
48 +
49 +for i in sub sub/*
50 +do
51 + test_expect_success "complaints for ignored $i in dir" '
52 + rm -f .git/index &&
53 + (
54 + cd dir &&
55 + test_must_fail git add "$i" 2>err &&
56 + git ls-files "$i" >out &&
57 + ! test -s out &&
58 + grep -e "Use -f if" err &&
59 + cat err
60 + )
61 + '
62 +done
63 +
64 +for i in ign file
65 +do
66 + test_expect_success "complaints for ignored $i in sub" '
67 + rm -f .git/index &&
68 + (
69 + cd sub &&
70 + test_must_fail git add "$i" 2>err &&
71 + git ls-files "$i" >out &&
72 + ! test -s out &&
73 + grep -e "Use -f if" err &&
74 + cat err
75 + )
76 + '
77 +done
78 +
79 +test_done