[PATCH] Demonstrate a bug in --word-diff where diff.*.wordregex is "sticky"
From: Johannes Sixt <hidden>
Date: 2016-06-15 22:53:18
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Johannes Sixt <redacted> The test case applies a custom wordRegex to one file in a diff, and expects that the default word splitting applies to the second file in the diff. But the custom wordRegex is also incorrectly used for the second file. Signed-off-by: Johannes Sixt <redacted> --- What's going on here? t/t4034-diff-words.sh | 33 +++++++++++++++++++++++++++++++++ 1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/t/t4034-diff-words.sh b/t/t4034-diff-words.sh
index 5c20121..1ad7ab5 100755
--- a/t/t4034-diff-words.sh
+++ b/t/t4034-diff-words.sh@@ -348,4 +348,37 @@ test_expect_success 'word-diff with no newline at EOF' ' word_diff --word-diff=plain ' +test_expect_success 'setup history with two files' ' + echo "a b; c" >a && + echo "a b; c" >z && + git add a z && + git commit -minitial && + + # modify both + echo "a bx; c" >a && + echo "a bx; c" >z && + git commit -mmodified -a +' + +test_expect_failure 'wordRegex for the first file does not apply to the second' ' + echo "a diff=tex" >.gitattributes && + git config diff.tex.wordRegex "[a-z]+|." && + cat >expect <<-\EOF && + diff --git a/a b/a + index 9823d38..b09f967 100644 + --- a/a + +++ b/a + @@ -1 +1 @@ + a [-b-]{+bx+}; c + diff --git a/z b/z + index 9823d38..b09f967 100644 + --- a/z + +++ b/z + @@ -1 +1 @@ + a [-b;-]{+bx;+} c + EOF + git diff --word-diff HEAD~ >actual + test_cmp expect actual +' + test_done
--
1.7.9.rc2.96.g8a78a