summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar Brandon Casey <casey@nrlssc.navy.mil>2008-03-31 18:25:23 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2008-03-31 22:43:34 -0700
commitba26ab99d4c6c6a8f939f44cf2f2c47f6fd4f0a1 (patch)
treec26a719dd5185db40ab4e99fa7a2a25c333eeb2f /t
parentmktag.c: improve verification of tagger field and tests (diff)
downloadtgif-ba26ab99d4c6c6a8f939f44cf2f2c47f6fd4f0a1.tar.xz
mktag.c: tweak validation of tagger field and adjust test script
Update the verify_tag() function to remove an unnecessary test, and add additional check for angle brackets in the name and email field, and spaces in the email field. The timestamp and timezone sections are made more straight forward by using strspn(). Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-xt/t3800-mktag.sh88
1 files changed, 72 insertions, 16 deletions
diff --git a/t/t3800-mktag.sh b/t/t3800-mktag.sh
index 8a27400754..df1fd6f86f 100755
--- a/t/t3800-mktag.sh
+++ b/t/t3800-mktag.sh
@@ -180,7 +180,7 @@ check_verify_failure '"tagger" line label check #2' \
'^error: char70: could not find "tagger "$'
############################################################
-# 13. detect missing tag author name
+# 13. disallow missing tag author name
cat >tag.sig <<EOF
object $head
@@ -191,11 +191,11 @@ tagger <> 0 +0000
This is filler
EOF
-check_verify_failure 'detect missing tag author name' \
+check_verify_failure 'disallow missing tag author name' \
'^error: char77: missing tagger name$'
############################################################
-# 14. detect missing tag author name
+# 14. disallow missing tag author name
cat >tag.sig <<EOF
object $head
@@ -206,8 +206,8 @@ tagger T A Gger <
EOF
-check_verify_failure 'detect malformed tagger' \
- '^error: char77: malformed tagger$'
+check_verify_failure 'disallow malformed tagger' \
+ '^error: char77: malformed tagger field$'
############################################################
# 15. allow empty tag email
@@ -225,7 +225,21 @@ test_expect_success \
'git-mktag <tag.sig >.git/refs/tags/mytag 2>message'
############################################################
-# 16. detect missing tag timestamp
+# 16. disallow spaces in tag email
+
+cat >tag.sig <<EOF
+object $head
+type commit
+tag mytag
+tagger T A Gger <tag ger@example.com> 0 +0000
+
+EOF
+
+check_verify_failure 'disallow spaces in tag email' \
+ '^error: char77: malformed tagger field$'
+
+############################################################
+# 17. disallow missing tag timestamp
cat >tag.sig <<EOF
object $head
@@ -235,11 +249,11 @@ tagger T A Gger <tagger@example.com>
EOF
-check_verify_failure 'detect missing tag timestamp' \
- '^error: char107: malformed tag timestamp$'
+check_verify_failure 'disallow missing tag timestamp' \
+ '^error: char107: missing tag timestamp$'
############################################################
-# 17. detect invalid tag timestamp
+# 18. detect invalid tag timestamp1
cat >tag.sig <<EOF
object $head
@@ -249,11 +263,25 @@ tagger T A Gger <tagger@example.com> Tue Mar 25 15:47:44 2008
EOF
-check_verify_failure 'detect invalid tag timestamp' \
- '^error: char108: malformed tag timestamp$'
+check_verify_failure 'detect invalid tag timestamp1' \
+ '^error: char107: missing tag timestamp$'
############################################################
-# 18. detect invalid tag timezone
+# 19. detect invalid tag timestamp2
+
+cat >tag.sig <<EOF
+object $head
+type commit
+tag mytag
+tagger T A Gger <tagger@example.com> 2008-03-31T12:20:15-0500
+
+EOF
+
+check_verify_failure 'detect invalid tag timestamp2' \
+ '^error: char111: malformed tag timestamp$'
+
+############################################################
+# 20. detect invalid tag timezone1
cat >tag.sig <<EOF
object $head
@@ -263,11 +291,39 @@ tagger T A Gger <tagger@example.com> 1206478233 GMT
EOF
-check_verify_failure 'detect invalid tag timezone' \
+check_verify_failure 'detect invalid tag timezone1' \
+ '^error: char118: malformed tag timezone$'
+
+############################################################
+# 21. detect invalid tag timezone2
+
+cat >tag.sig <<EOF
+object $head
+type commit
+tag mytag
+tagger T A Gger <tagger@example.com> 1206478233 + 30
+
+EOF
+
+check_verify_failure 'detect invalid tag timezone2' \
+ '^error: char118: malformed tag timezone$'
+
+############################################################
+# 22. detect invalid tag timezone3
+
+cat >tag.sig <<EOF
+object $head
+type commit
+tag mytag
+tagger T A Gger <tagger@example.com> 1206478233 -1430
+
+EOF
+
+check_verify_failure 'detect invalid tag timezone3' \
'^error: char118: malformed tag timezone$'
############################################################
-# 19. detect invalid header entry
+# 23. detect invalid header entry
cat >tag.sig <<EOF
object $head
@@ -282,7 +338,7 @@ check_verify_failure 'detect invalid header entry' \
'^error: char124: trailing garbage in tag header$'
############################################################
-# 20. create valid tag
+# 24. create valid tag
cat >tag.sig <<EOF
object $head
@@ -297,7 +353,7 @@ test_expect_success \
'git-mktag <tag.sig >.git/refs/tags/mytag 2>message'
############################################################
-# 21. check mytag
+# 25. check mytag
test_expect_success \
'check mytag' \