t1450: make sure fsck detects a malformed tagger line
With "hash-object --literally", write a tag object that is not supposed to pass one of the new checks added to "fsck", and make sure that the new check catches the breakage. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
40e94ca19a
commit
b659605da6
@ -213,6 +213,25 @@ test_expect_success 'tag with incorrect tag name & missing tagger' '
|
|||||||
grep "expected .tagger. line" out
|
grep "expected .tagger. line" out
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'tag with bad tagger' '
|
||||||
|
sha=$(git rev-parse HEAD) &&
|
||||||
|
cat >wrong-tag <<-EOF &&
|
||||||
|
object $sha
|
||||||
|
type commit
|
||||||
|
tag not-quite-wrong
|
||||||
|
tagger Bad Tagger Name
|
||||||
|
|
||||||
|
This is an invalid tag.
|
||||||
|
EOF
|
||||||
|
|
||||||
|
tag=$(git hash-object --literally -t tag -w --stdin <wrong-tag) &&
|
||||||
|
test_when_finished "remove_object $tag" &&
|
||||||
|
echo $tag >.git/refs/tags/wrong &&
|
||||||
|
test_when_finished "git update-ref -d refs/tags/wrong" &&
|
||||||
|
test_must_fail git fsck --tags 2>out &&
|
||||||
|
grep "error in tag .*: invalid author/committer" out
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'cleaned up' '
|
test_expect_success 'cleaned up' '
|
||||||
git fsck >actual 2>&1 &&
|
git fsck >actual 2>&1 &&
|
||||||
test_cmp empty actual
|
test_cmp empty actual
|
||||||
|
Loading…
Reference in New Issue
Block a user