summaryrefslogtreecommitdiff
path: root/t/t8006-blame-textconv.sh
diff options
context:
space:
mode:
authorKirill Smelkov <kirr@landau.phys.spbu.ru>2010-12-18 14:54:11 (GMT)
committerJunio C Hamano <gitster@pobox.com>2010-12-20 02:17:00 (GMT)
commitb1b14ec3f14edfc5f76643aaaac6548fc94fb47e (patch)
treee1f0e96f6d3c373c63a1d623abca81ce6c1b3e02 /t/t8006-blame-textconv.sh
parent05bb5a2584ca0e1c87a2135a83c5573b9337d06f (diff)
downloadgit-b1b14ec3f14edfc5f76643aaaac6548fc94fb47e.zip
git-b1b14ec3f14edfc5f76643aaaac6548fc94fb47e.tar.gz
git-b1b14ec3f14edfc5f76643aaaac6548fc94fb47e.tar.bz2
t/t8006: Demonstrate blame is broken when cachetextconv is on
I have a git repository with lots of .doc and .pdf files. There diff works ok, but blaming is painfully slow without textconv cache, and with textconv cache, blame says lots of lines are 'Not Yet Committed' which is wrong. Here is a test that demonstrates the problem. Cc: Axel Bonnet <axel.bonnet@ensimag.imag.fr> Cc: Clément Poulain <clement.poulain@ensimag.imag.fr> Cc: Diane Gasselin <diane.gasselin@ensimag.imag.fr> Cc: Jeff King <peff@peff.net> Signed-off-by: Kirill Smelkov <kirr@landau.phys.spbu.ru> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t8006-blame-textconv.sh')
-rwxr-xr-xt/t8006-blame-textconv.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/t/t8006-blame-textconv.sh b/t/t8006-blame-textconv.sh
index dbf623b..fe90541 100755
--- a/t/t8006-blame-textconv.sh
+++ b/t/t8006-blame-textconv.sh
@@ -73,6 +73,28 @@ test_expect_success 'blame --textconv going through revisions' '
test_cmp expected result
'
+test_expect_success 'setup +cachetextconv' '
+ git config diff.test.cachetextconv true
+'
+
+cat >expected_one <<EOF
+(Number2 2010-01-01 20:00:00 +0000 1) converted: test 1 version 2
+EOF
+
+# one.bin is blamed as 'Not Committed yet'
+test_expect_failure 'blame --textconv works with textconvcache' '
+ git blame --textconv two.bin >blame &&
+ find_blame <blame >result &&
+ test_cmp expected result &&
+ git blame --textconv one.bin >blame &&
+ find_blame <blame >result &&
+ test_cmp expected_one result
+'
+
+test_expect_success 'setup -cachetextconv' '
+ git config diff.test.cachetextconv false
+'
+
test_expect_success 'make a new commit' '
echo "bin: test number 2 version 3" >>two.bin &&
GIT_AUTHOR_NAME=Number3 git commit -a -m Third --date="2010-01-01 22:00:00"