t3800: make hash-size independent

Replace references to several hard-coded object IDs with a variable
referring to the generated commit.  Avoid matching on exact character
positions, which will be different depending on the hash in use.  In the
test for a valid object ID, use an obviously invalid one from the lookup
table.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
brian m. carlson 2019-08-18 19:16:42 +00:00 committed by Junio C Hamano
parent ca6ba94200
commit acb49d1cc8

View file

@ -23,6 +23,7 @@ check_verify_failure () {
# first create a commit, so we have a valid object/type # first create a commit, so we have a valid object/type
# for the tag. # for the tag.
test_expect_success 'setup' ' test_expect_success 'setup' '
test_oid_init &&
echo Hello >A && echo Hello >A &&
git update-index --add A && git update-index --add A &&
git commit -m "Initial commit" && git commit -m "Initial commit" &&
@ -69,28 +70,28 @@ check_verify_failure '"object" line SHA1 check' '^error: char7: .*SHA1 hash$'
# 4. type line label check # 4. type line label check
cat >tag.sig <<EOF cat >tag.sig <<EOF
object 779e9b33986b1c2670fff52c5067603117b3e895 object $head
xxxx tag xxxx tag
tag mytag tag mytag
tagger . <> 0 +0000 tagger . <> 0 +0000
EOF EOF
check_verify_failure '"type" line label check' '^error: char47: .*"\\ntype "$' check_verify_failure '"type" line label check' '^error: char.*: .*"\\ntype "$'
############################################################ ############################################################
# 5. type line eol check # 5. type line eol check
echo "object 779e9b33986b1c2670fff52c5067603117b3e895" >tag.sig echo "object $head" >tag.sig
printf "type tagsssssssssssssssssssssssssssssss" >>tag.sig printf "type tagsssssssssssssssssssssssssssssss" >>tag.sig
check_verify_failure '"type" line eol check' '^error: char48: .*"\\n"$' check_verify_failure '"type" line eol check' '^error: char.*: .*"\\n"$'
############################################################ ############################################################
# 6. tag line label check #1 # 6. tag line label check #1
cat >tag.sig <<EOF cat >tag.sig <<EOF
object 779e9b33986b1c2670fff52c5067603117b3e895 object $head
type tag type tag
xxx mytag xxx mytag
tagger . <> 0 +0000 tagger . <> 0 +0000
@ -98,37 +99,37 @@ tagger . <> 0 +0000
EOF EOF
check_verify_failure '"tag" line label check #1' \ check_verify_failure '"tag" line label check #1' \
'^error: char57: no "tag " found$' '^error: char.*: no "tag " found$'
############################################################ ############################################################
# 7. tag line label check #2 # 7. tag line label check #2
cat >tag.sig <<EOF cat >tag.sig <<EOF
object 779e9b33986b1c2670fff52c5067603117b3e895 object $head
type taggggggggggggggggggggggggggggggg type taggggggggggggggggggggggggggggggg
tag tag
EOF EOF
check_verify_failure '"tag" line label check #2' \ check_verify_failure '"tag" line label check #2' \
'^error: char87: no "tag " found$' '^error: char.*: no "tag " found$'
############################################################ ############################################################
# 8. type line type-name length check # 8. type line type-name length check
cat >tag.sig <<EOF cat >tag.sig <<EOF
object 779e9b33986b1c2670fff52c5067603117b3e895 object $head
type taggggggggggggggggggggggggggggggg type taggggggggggggggggggggggggggggggg
tag mytag tag mytag
EOF EOF
check_verify_failure '"type" line type-name length check' \ check_verify_failure '"type" line type-name length check' \
'^error: char53: type too long$' '^error: char.*: type too long$'
############################################################ ############################################################
# 9. verify object (SHA1/type) check # 9. verify object (SHA1/type) check
cat >tag.sig <<EOF cat >tag.sig <<EOF
object 779e9b33986b1c2670fff52c5067603117b3e895 object $(test_oid deadbeef)
type tagggg type tagggg
tag mytag tag mytag
tagger . <> 0 +0000 tagger . <> 0 +0000
@ -150,7 +151,7 @@ tagger . <> 0 +0000
EOF EOF
check_verify_failure 'verify tag-name check' \ check_verify_failure 'verify tag-name check' \
'^error: char67: could not verify tag name$' '^error: char.*: could not verify tag name$'
############################################################ ############################################################
# 11. tagger line label check #1 # 11. tagger line label check #1
@ -164,7 +165,7 @@ This is filler
EOF EOF
check_verify_failure '"tagger" line label check #1' \ check_verify_failure '"tagger" line label check #1' \
'^error: char70: could not find "tagger "$' '^error: char.*: could not find "tagger "$'
############################################################ ############################################################
# 12. tagger line label check #2 # 12. tagger line label check #2
@ -179,7 +180,7 @@ This is filler
EOF EOF
check_verify_failure '"tagger" line label check #2' \ check_verify_failure '"tagger" line label check #2' \
'^error: char70: could not find "tagger "$' '^error: char.*: could not find "tagger "$'
############################################################ ############################################################
# 13. disallow missing tag author name # 13. disallow missing tag author name
@ -194,7 +195,7 @@ This is filler
EOF EOF
check_verify_failure 'disallow missing tag author name' \ check_verify_failure 'disallow missing tag author name' \
'^error: char77: missing tagger name$' '^error: char.*: missing tagger name$'
############################################################ ############################################################
# 14. disallow missing tag author name # 14. disallow missing tag author name
@ -209,7 +210,7 @@ tagger T A Gger <
EOF EOF
check_verify_failure 'disallow malformed tagger' \ check_verify_failure 'disallow malformed tagger' \
'^error: char77: malformed tagger field$' '^error: char.*: malformed tagger field$'
############################################################ ############################################################
# 15. allow empty tag email # 15. allow empty tag email
@ -238,7 +239,7 @@ tagger T A Gger <tag ger@example.com> 0 +0000
EOF EOF
check_verify_failure 'disallow spaces in tag email' \ check_verify_failure 'disallow spaces in tag email' \
'^error: char77: malformed tagger field$' '^error: char.*: malformed tagger field$'
############################################################ ############################################################
# 17. disallow missing tag timestamp # 17. disallow missing tag timestamp
@ -252,7 +253,7 @@ tagger T A Gger <tagger@example.com>__
EOF EOF
check_verify_failure 'disallow missing tag timestamp' \ check_verify_failure 'disallow missing tag timestamp' \
'^error: char107: missing tag timestamp$' '^error: char.*: missing tag timestamp$'
############################################################ ############################################################
# 18. detect invalid tag timestamp1 # 18. detect invalid tag timestamp1
@ -266,7 +267,7 @@ tagger T A Gger <tagger@example.com> Tue Mar 25 15:47:44 2008
EOF EOF
check_verify_failure 'detect invalid tag timestamp1' \ check_verify_failure 'detect invalid tag timestamp1' \
'^error: char107: missing tag timestamp$' '^error: char.*: missing tag timestamp$'
############################################################ ############################################################
# 19. detect invalid tag timestamp2 # 19. detect invalid tag timestamp2
@ -280,7 +281,7 @@ tagger T A Gger <tagger@example.com> 2008-03-31T12:20:15-0500
EOF EOF
check_verify_failure 'detect invalid tag timestamp2' \ check_verify_failure 'detect invalid tag timestamp2' \
'^error: char111: malformed tag timestamp$' '^error: char.*: malformed tag timestamp$'
############################################################ ############################################################
# 20. detect invalid tag timezone1 # 20. detect invalid tag timezone1
@ -294,7 +295,7 @@ tagger T A Gger <tagger@example.com> 1206478233 GMT
EOF EOF
check_verify_failure 'detect invalid tag timezone1' \ check_verify_failure 'detect invalid tag timezone1' \
'^error: char118: malformed tag timezone$' '^error: char.*: malformed tag timezone$'
############################################################ ############################################################
# 21. detect invalid tag timezone2 # 21. detect invalid tag timezone2
@ -308,7 +309,7 @@ tagger T A Gger <tagger@example.com> 1206478233 + 30
EOF EOF
check_verify_failure 'detect invalid tag timezone2' \ check_verify_failure 'detect invalid tag timezone2' \
'^error: char118: malformed tag timezone$' '^error: char.*: malformed tag timezone$'
############################################################ ############################################################
# 22. detect invalid tag timezone3 # 22. detect invalid tag timezone3
@ -322,7 +323,7 @@ tagger T A Gger <tagger@example.com> 1206478233 -1430
EOF EOF
check_verify_failure 'detect invalid tag timezone3' \ check_verify_failure 'detect invalid tag timezone3' \
'^error: char118: malformed tag timezone$' '^error: char.*: malformed tag timezone$'
############################################################ ############################################################
# 23. detect invalid header entry # 23. detect invalid header entry
@ -337,7 +338,7 @@ this line should not be here
EOF EOF
check_verify_failure 'detect invalid header entry' \ check_verify_failure 'detect invalid header entry' \
'^error: char124: trailing garbage in tag header$' '^error: char.*: trailing garbage in tag header$'
############################################################ ############################################################
# 24. create valid tag # 24. create valid tag