]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t4067: make rename detection test output raw diff
authorJonathan Tan <jonathantanmy@google.com>
Tue, 19 May 2020 18:31:51 +0000 (11:31 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 19 May 2020 23:09:16 +0000 (16:09 -0700)
95acf11a3d ("diff: restrict when prefetching occurs", 2020-04-07) taught
diff to prefetch blobs in a more limited set of situations. These
limited situations include when the output format requires blob data,
and when inexact rename detection is needed.

There is an existing test case that tests inexact rename detection, but
it also uses an output format that requires blob data, resulting in the
inexact-rename-detection-only code not being tested. Update this test to
use the raw output format, which does not require blob data.

Thanks to Derrick Stolee for noticing this lapse in code coverage and
for doing the preliminary analysis [1].

[1] https://lore.kernel.org/git/853759d3-97c3-241f-98e1-990883cd204e@gmail.com/

Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4067-diff-partial-clone.sh

index c1ed1c2fc4a7f36178220f2c9ead05bfb826ee33..ef8e0e9cb01f1aae472c7606e33a5ef7d24a08f4 100755 (executable)
@@ -125,8 +125,8 @@ test_expect_success 'diff with rename detection batches blobs' '
 
        # Ensure that there is exactly 1 negotiation by checking that there is
        # only 1 "done" line sent. ("done" marks the end of negotiation.)
-       GIT_TRACE_PACKET="$(pwd)/trace" git -C client diff -M HEAD^ HEAD >out &&
-       grep "similarity index" out &&
+       GIT_TRACE_PACKET="$(pwd)/trace" git -C client diff --raw -M HEAD^ HEAD >out &&
+       grep ":100644 100644.*R[0-9][0-9][0-9].*b.*c" out &&
        grep "git> done" trace >done_lines &&
        test_line_count = 1 done_lines
 '