]> git.ipfire.org Git - thirdparty/git.git/blame - t/t4049-diff-stat-count.sh
path.c: don't call the match function without value in trie_find()
[thirdparty/git.git] / t / t4049-diff-stat-count.sh
CommitLineData
e5f85df8
JH
1#!/bin/sh
2# Copyright (c) 2011, Google Inc.
3
4test_description='diff --stat-count'
5. ./test-lib.sh
6
9667ccbc 7test_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 16test_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 31test_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 46test_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 68test_done