summaryrefslogtreecommitdiff
path: root/t/t4019-diff-wserror.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-11-02 17:46:55 -0700
committerJunio C Hamano <gitster@pobox.com>2007-11-02 17:58:09 -0700
commit49e703afda0e4e67050fcc8e05b175987c83391c (patch)
tree3dafef5da7c4aa5cb9cae1b69e382e1c3bfd2034 /t/t4019-diff-wserror.sh
parent459fa6d0fe6a45b8b120463b56a68e943e3a8101 (diff)
downloadgit-49e703afda0e4e67050fcc8e05b175987c83391c.tar.gz
core.whitespace: add test for diff whitespace error highlighting
This tests seletive enabling/disabling of whitespace error highlighting done by colored diff output. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4019-diff-wserror.sh')
-rwxr-xr-xt/t4019-diff-wserror.sh76
1 files changed, 76 insertions, 0 deletions
diff --git a/t/t4019-diff-wserror.sh b/t/t4019-diff-wserror.sh
new file mode 100755
index 0000000000..dbc895b9b7
--- /dev/null
+++ b/t/t4019-diff-wserror.sh
@@ -0,0 +1,76 @@
+#!/bin/sh
+
+test_description='diff whitespace error detection'
+
+. ./test-lib.sh
+
+test_expect_success setup '
+
+ git config diff.color.whitespace "blue reverse" &&
+ >F &&
+ git add F &&
+ echo " Eight SP indent" >>F &&
+ echo " HT and SP indent" >>F &&
+ echo "With trailing SP " >>F &&
+ echo "No problem" >>F
+
+'
+
+blue_grep='7;34m' ;# ESC [ 7 ; 3 4 m
+
+test_expect_success default '
+
+ git diff --color >output
+ grep "$blue_grep" output >error
+ grep -v "$blue_grep" output >normal
+
+ grep Eight normal >/dev/null &&
+ grep HT error >/dev/null &&
+ grep With error >/dev/null &&
+ grep No normal >/dev/null
+
+'
+
+test_expect_success 'without -trail' '
+
+ git config core.whitespace -trail
+ git diff --color >output
+ grep "$blue_grep" output >error
+ grep -v "$blue_grep" output >normal
+
+ grep Eight normal >/dev/null &&
+ grep HT error >/dev/null &&
+ grep With normal >/dev/null &&
+ grep No normal >/dev/null
+
+'
+
+test_expect_success 'without -space' '
+
+ git config core.whitespace -space
+ git diff --color >output
+ grep "$blue_grep" output >error
+ grep -v "$blue_grep" output >normal
+
+ grep Eight normal >/dev/null &&
+ grep HT normal >/dev/null &&
+ grep With error >/dev/null &&
+ grep No normal >/dev/null
+
+'
+
+test_expect_success 'with indent-non-tab only' '
+
+ git config core.whitespace indent,-trailing,-space
+ git diff --color >output
+ grep "$blue_grep" output >error
+ grep -v "$blue_grep" output >normal
+
+ grep Eight error >/dev/null &&
+ grep HT normal >/dev/null &&
+ grep With normal >/dev/null &&
+ grep No normal >/dev/null
+
+'
+
+test_done