Add a test to check 'diff --stat' output with a text file after chmod, and the same for a binary file. This demonstrates that text and binary files are treated differently, which can be misleading. While at it, duplicate the tests to check --shortstat output too. Reported-by: Martin Mareš <mj@xxxxxx> Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@xxxxxxxxx> --- t/t4006-diff-mode.sh | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/t/t4006-diff-mode.sh b/t/t4006-diff-mode.sh index c8f5180..a81c095 100755 --- a/t/t4006-diff-mode.sh +++ b/t/t4006-diff-mode.sh @@ -25,4 +25,41 @@ test_expect_success 'chmod' ' test_cmp expected check ' +test_expect_success 'prepare binary file' ' + git commit -m rezrov && + dd if=/dev/zero of=binbin bs=1024 count=1 && + git add binbin && + git commit -m binbin +' + +test_expect_success '--stat output after text chmod' ' + test_chmod -x rezrov && + echo " 0 files changed" >expect && + git diff HEAD --stat >actual && + test_cmp expect actual +' + +test_expect_success '--shortstat output after text chmod' ' + git diff HEAD --shortstat >actual && + test_cmp expect actual +' + +test_expect_success '--stat output after binary chmod' ' + test_chmod +x binbin && + cat >expect <<-EOF && + binbin | Bin 1024 -> 1024 bytes + 1 file changed, 0 insertions(+), 0 deletions(-) + EOF + git diff HEAD --stat >actual && + test_cmp expect actual +' + +test_expect_success '--shortstat output after binary chmod' ' + cat >expect <<-EOF && + 1 file changed, 0 insertions(+), 0 deletions(-) + EOF + git diff HEAD --shortstat >actual && + test_cmp expect actual +' + test_done -- 1.7.10.539.g288dd -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html