summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2011-05-31 12:00:02 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2011-05-31 12:00:02 -0700
commitb3c89315a33fbded4a8c5d533ca8ddc6087e4c23 (patch)
tree804bd0c440bcbd6c365460e5d60163b44cd8c200 /t
parentMerge branch 'rr/doc-content-type' into maint (diff)
parentdiffcore-rename: fall back to -C when -C -C busts the rename limit (diff)
downloadtgif-b3c89315a33fbded4a8c5d533ca8ddc6087e4c23.tar.xz
Merge branch 'jc/rename-degrade-cc-to-c' into maint
* jc/rename-degrade-cc-to-c: diffcore-rename: fall back to -C when -C -C busts the rename limit diffcore-rename: record filepair for rename src diffcore-rename: refactor "too many candidates" logic builtin/diff.c: remove duplicated call to diff_result_code()
Diffstat (limited to 't')
-rwxr-xr-xt/t4001-diff-rename.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/t/t4001-diff-rename.sh b/t/t4001-diff-rename.sh
index cad85450b7..3dadf9b316 100755
--- a/t/t4001-diff-rename.sh
+++ b/t/t4001-diff-rename.sh
@@ -77,4 +77,29 @@ test_expect_success C_LOCALE_OUTPUT 'favour same basenames even with minor diff
git show HEAD:path1 | sed "s/15/16/" > subdir/path1 &&
git status | grep "renamed: .*path1 -> subdir/path1"'
+test_expect_success 'setup for many rename source candidates' '
+ git reset --hard &&
+ for i in 0 1 2 3 4 5 6 7 8 9;
+ do
+ for j in 0 1 2 3 4 5 6 7 8 9;
+ do
+ echo "$i$j" >"path$i$j"
+ done
+ done &&
+ git add "path??" &&
+ test_tick &&
+ git commit -m "hundred" &&
+ (cat path1; echo new) >new-path &&
+ echo old >>path1 &&
+ git add new-path path1 &&
+ git diff -l 4 -C -C --cached --name-status >actual 2>actual.err &&
+ sed -e "s/^\([CM]\)[0-9]* /\1 /" actual >actual.munged &&
+ cat >expect <<-EOF &&
+ C path1 new-path
+ M path1
+ EOF
+ test_cmp expect actual.munged &&
+ grep warning actual.err
+'
+
test_done