diff options
author | Jeff King <peff@peff.net> | 2018-10-30 19:18:51 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-10-31 12:53:44 +0900 |
commit | 5632baf238c09b2556c92897bcf0d1fc236499ba (patch) | |
tree | 66d4d3084abd0eb202c0e9d02c76b0d53d82830b | |
parent | Git 2.12.5 (diff) | |
download | tgif-5632baf238c09b2556c92897bcf0d1fc236499ba.tar.xz |
t1450: check large blob in trailing-garbage test
Commit cce044df7f (fsck: detect trailing garbage in all
object types, 2017-01-13) added two tests of trailing
garbage in a loose object file: one with a commit and one
with a blob. The point of having two is that blobs would
follow a different code path that streamed the contents,
instead of loading it into a buffer as usual.
At the time, merely being a blob was enough to trigger the
streaming code path. But since 7ac4f3a007 (fsck: actually
fsck blob data, 2018-05-02), we now only stream blobs that
are actually large. So since then, the streaming code path
is not tested at all for this case.
We can restore the original intent of the test by tweaking
core.bigFileThreshold to make our small blob seem large.
There's no easy way to externally verify that we followed
the streaming code path, but I did check before/after using
a temporary debug statement.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t1450-fsck.sh | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh index 33a51c9a67..770d68e44e 100755 --- a/t/t1450-fsck.sh +++ b/t/t1450-fsck.sh @@ -636,13 +636,13 @@ test_expect_success 'fsck detects trailing loose garbage (commit)' ' test_i18ngrep "garbage.*$commit" out ' -test_expect_success 'fsck detects trailing loose garbage (blob)' ' +test_expect_success 'fsck detects trailing loose garbage (large blob)' ' blob=$(echo trailing | git hash-object -w --stdin) && file=$(sha1_file $blob) && test_when_finished "remove_object $blob" && chmod +w "$file" && echo garbage >>"$file" && - test_must_fail git fsck 2>out && + test_must_fail git -c core.bigfilethreshold=5 fsck 2>out && test_i18ngrep "garbage.*$blob" out ' |