]>
Commit | Line | Data |
---|---|---|
e5f85df8 JH |
1 | #!/bin/sh |
2 | # Copyright (c) 2011, Google Inc. | |
3 | ||
4 | test_description='diff --stat-count' | |
5 | . ./test-lib.sh | |
6 | ||
9667ccbc | 7 | test_expect_success 'setup' ' |
e5f85df8 JH |
8 | >a && |
9 | >b && | |
10 | >c && | |
11 | >d && | |
12 | git add a b c d && | |
9667ccbc JH |
13 | git commit -m initial |
14 | ' | |
15 | ||
de909595 | 16 | test_expect_success 'mode-only change show as a 0-line change' ' |
9667ccbc | 17 | git reset --hard && |
de909595 | 18 | test_chmod +x b d && |
e5f85df8 | 19 | echo a >a && |
de909595 | 20 | echo c >c && |
99094a7a | 21 | cat >expect <<-\EOF && |
dc801e71 | 22 | a | 1 + |
de909595 | 23 | b | 0 |
74faaa16 LT |
24 | ... |
25 | 4 files changed, 2 insertions(+) | |
e5f85df8 | 26 | EOF |
de909595 | 27 | git diff --stat --stat-count=2 HEAD >actual && |
fc5877a6 | 28 | test_i18ncmp expect actual |
e5f85df8 JH |
29 | ' |
30 | ||
a20d3c0d | 31 | test_expect_success 'binary changes do not count in lines' ' |
9667ccbc | 32 | git reset --hard && |
9667ccbc | 33 | echo a >a && |
de909595 | 34 | echo c >c && |
9667ccbc | 35 | cat "$TEST_DIRECTORY"/test-binary-1.png >d && |
99094a7a | 36 | cat >expect <<-\EOF && |
9667ccbc | 37 | a | 1 + |
de909595 | 38 | c | 1 + |
9667ccbc | 39 | ... |
de909595 | 40 | 3 files changed, 2 insertions(+) |
9667ccbc JH |
41 | EOF |
42 | git diff --stat --stat-count=2 >actual && | |
43 | test_i18ncmp expect actual | |
44 | ' | |
45 | ||
82dfc2c4 | 46 | test_expect_success 'exclude unmerged entries from total file count' ' |
9667ccbc JH |
47 | git reset --hard && |
48 | echo a >a && | |
49 | echo b >b && | |
50 | git ls-files -s a >x && | |
51 | git rm -f d && | |
52 | for stage in 1 2 3 | |
53 | do | |
54 | sed -e "s/ 0 a/ $stage d/" x | |
55 | done | | |
56 | git update-index --index-info && | |
57 | echo d >d && | |
99094a7a | 58 | cat >expect <<-\EOF && |
9667ccbc JH |
59 | a | 1 + |
60 | b | 1 + | |
61 | ... | |
de909595 | 62 | 3 files changed, 3 insertions(+) |
9667ccbc JH |
63 | EOF |
64 | git diff --stat --stat-count=2 >actual && | |
65 | test_i18ncmp expect actual | |
66 | ' | |
67 | ||
e5f85df8 | 68 | test_done |