Re: [PATCH v4 06/20] mktag tests: improve verify_object() test coverage
From: Junio C Hamano <hidden>
Date: 2020-12-23 02:05:41
Ævar Arnfjörð Bjarmason [off-list ref] writes:
cat >tag.sig <<EOF object $(test_oid deadbeef) +type tag +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- correct type, nonexisting object' \ + '^error: char7: could not verify object.*$' +
OK.
+cat >tag.sig <<EOF +object $head type tagggg tag mytag tagger . <> 0 +0000 EOF -check_verify_failure 'verify object (SHA1/type) check' \ +check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \ + '^fatal: invalid object type'
tagggg is "made-up type". Where did we grab head from? it is head=$(git rev-parse --verify HEAD) at the very beginning. Is that really a nonexisting object?
+cat >tag.sig <<EOF +object $(test_oid deadbeef) +type tagggg +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \ '^error: char7: could not verify object.*$'
This is the "made-up type, nonexisting object", and previous one is "made-up type, valid object", no?
+cat >tag.sig <<EOF +object $head +type tree +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \ + '^error: char7: could not verify object'
And this is correct. "type tree" is not a made-up type, and $head is a valid object but it is not of "type tree". Somehow I feel as if this patch is trying to see if reviewers are paying attention to ;-) Thanks.