aboutsummaryrefslogtreecommitdiff
path: root/t/t3800-mktag.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2008-01-04 22:45:08 -0800
committerJunio C Hamano <gitster@pobox.com>2008-01-05 00:07:57 -0800
commite9b20943b7713ed7c051621f97e12713ccf98e1f (patch)
tree5b739c6c0e35b116f4653ab447a64f463f4b7855 /t/t3800-mktag.sh
parent0feb4d1c99ef4188123ff38d702bcbdd483c3702 (diff)
downloadgit-e9b20943b7713ed7c051621f97e12713ccf98e1f.tar.gz
git-e9b20943b7713ed7c051621f97e12713ccf98e1f.tar.xz
t/t3800: do not use a temporary file to hold expected result.
It is a good practice to write program output to a temporary file during the test, as it would allow easier postmortem when the tested program does break. But there is no benefit in writing the expected output out to the temporary. This actually fixes a bug in check_verify_failure() routine. The intention of the test seems to make sure the "git mktag" command fails, and it spits out the expected error message. But if the command did not fail as expected, the shell function as originally written would not have detected the failure. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t3800-mktag.sh')
-rwxr-xr-xt/t3800-mktag.sh89
1 files changed, 25 insertions, 64 deletions
diff --git a/t/t3800-mktag.sh b/t/t3800-mktag.sh
index e5f3073f8..f2803206f 100755
--- a/t/t3800-mktag.sh
+++ b/t/t3800-mktag.sh
@@ -12,10 +12,11 @@ test_description='git-mktag: tag object verify test'
# given in the expect.pat file.
check_verify_failure () {
- test_expect_success \
- "$1" \
- 'git-mktag <tag.sig 2>message ||
- grep -q -f expect.pat message'
+ expect="$2"
+ test_expect_success "$1" '
+ ( ! git-mktag <tag.sig 2>message ) &&
+ grep -q "$expect" message
+ '
}
###########################################################
@@ -33,11 +34,8 @@ cat >tag.sig <<EOF
too short for a tag
EOF
-cat >expect.pat <<EOF
-^error: .*size wrong.*$
-EOF
-
-check_verify_failure 'Tag object length check'
+check_verify_failure 'Tag object length check' \
+ '^error: .*size wrong.*$'
############################################################
# 2. object line label check
@@ -48,11 +46,7 @@ type tag
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char0: .*"object "$
-EOF
-
-check_verify_failure '"object" line label check'
+check_verify_failure '"object" line label check' '^error: char0: .*"object "$'
############################################################
# 3. object line SHA1 check
@@ -63,11 +57,7 @@ type tag
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char7: .*SHA1 hash$
-EOF
-
-check_verify_failure '"object" line SHA1 check'
+check_verify_failure '"object" line SHA1 check' '^error: char7: .*SHA1 hash$'
############################################################
# 4. type line label check
@@ -78,11 +68,7 @@ xxxx tag
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char47: .*"[\]ntype "$
-EOF
-
-check_verify_failure '"type" line label check'
+check_verify_failure '"type" line label check' '^error: char47: .*"\\ntype "$'
############################################################
# 5. type line eol check
@@ -90,11 +76,7 @@ check_verify_failure '"type" line label check'
echo "object 779e9b33986b1c2670fff52c5067603117b3e895" >tag.sig
printf "type tagsssssssssssssssssssssssssssssss" >>tag.sig
-cat >expect.pat <<EOF
-^error: char48: .*"[\]n"$
-EOF
-
-check_verify_failure '"type" line eol check'
+check_verify_failure '"type" line eol check' '^error: char48: .*"\\n"$'
############################################################
# 6. tag line label check #1
@@ -105,11 +87,8 @@ type tag
xxx mytag
EOF
-cat >expect.pat <<EOF
-^error: char57: no "tag " found$
-EOF
-
-check_verify_failure '"tag" line label check #1'
+check_verify_failure '"tag" line label check #1' \
+ '^error: char57: no "tag " found$'
############################################################
# 7. tag line label check #2
@@ -120,11 +99,8 @@ type taggggggggggggggggggggggggggggggg
tag
EOF
-cat >expect.pat <<EOF
-^error: char87: no "tag " found$
-EOF
-
-check_verify_failure '"tag" line label check #2'
+check_verify_failure '"tag" line label check #2' \
+ '^error: char87: no "tag " found$'
############################################################
# 8. type line type-name length check
@@ -135,11 +111,8 @@ type taggggggggggggggggggggggggggggggg
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char53: type too long$
-EOF
-
-check_verify_failure '"type" line type-name length check'
+check_verify_failure '"type" line type-name length check' \
+ '^error: char53: type too long$'
############################################################
# 9. verify object (SHA1/type) check
@@ -150,11 +123,8 @@ type tagggg
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char7: could not verify object.*$
-EOF
-
-check_verify_failure 'verify object (SHA1/type) check'
+check_verify_failure 'verify object (SHA1/type) check' \
+ '^error: char7: could not verify object.*$'
############################################################
# 10. verify tag-name check
@@ -165,11 +135,8 @@ type commit
tag my tag
EOF
-cat >expect.pat <<EOF
-^error: char67: could not verify tag name$
-EOF
-
-check_verify_failure 'verify tag-name check'
+check_verify_failure 'verify tag-name check' \
+ '^error: char67: could not verify tag name$'
############################################################
# 11. tagger line label check #1
@@ -180,11 +147,8 @@ type commit
tag mytag
EOF
-cat >expect.pat <<EOF
-^error: char70: could not find "tagger"$
-EOF
-
-check_verify_failure '"tagger" line label check #1'
+check_verify_failure '"tagger" line label check #1' \
+ '^error: char70: could not find "tagger"$'
############################################################
# 12. tagger line label check #2
@@ -196,11 +160,8 @@ tag mytag
tagger
EOF
-cat >expect.pat <<EOF
-^error: char70: could not find "tagger"$
-EOF
-
-check_verify_failure '"tagger" line label check #2'
+check_verify_failure '"tagger" line label check #2' \
+ '^error: char70: could not find "tagger"$'
############################################################
# 13. create valid tag