t7502: narrow checks for author/committer name in template
authorJeff King <peff@peff.net>
Thu, 26 Jul 2012 20:30:29 +0000 (16:30 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Jul 2012 21:23:35 +0000 (14:23 -0700)
t7502.20 and t7502.21 check that the author and committer
name are mentioned in the commit message template under
certain circumstances. However, they end up checking a much
larger and unnecessary portion of the template. Let's narrow
their checks to the specific lines.

While we're at it, let's give these tests more descriptive
names, so their purposes are more obvious.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t7502-commit.sh
index 3f9fb55a48494f0096d9fd464dcf93009e523156..efecb060f32b6aca1204bee63ddc023ffa0f9f86 100755 (executable)
@@ -235,24 +235,15 @@ test_expect_success 'cleanup commit messages (strip,-F,-e): output' '
        test_i18ncmp expect actual
 '
 
-echo "#
-# Author:    $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL>
-#" >> expect
-
-test_expect_success 'author different from committer' '
+test_expect_success 'message shows author when it is not equal to committer' '
        echo >>negative &&
        test_might_fail git commit -e -m "sample" &&
-       head -n 7 .git/COMMIT_EDITMSG >actual &&
-       test_i18ncmp expect actual
+       test_i18ngrep \
+         "^# Author: *A U Thor <author@example.com>\$" \
+         .git/COMMIT_EDITMSG
 '
 
-mv expect expect.tmp
-sed '$d' < expect.tmp > expect
-rm -f expect.tmp
-echo "# Committer:
-#" >> expect
-
-test_expect_success 'committer is automatic' '
+test_expect_success 'message shows committer when it is automatic' '
 
        echo >>negative &&
        (
@@ -261,9 +252,9 @@ test_expect_success 'committer is automatic' '
                # must fail because there is no change
                test_must_fail git commit -e -m "sample"
        ) &&
-       head -n 8 .git/COMMIT_EDITMSG | \
-       sed "s/^# Committer: .*/# Committer:/" >actual
-       test_i18ncmp expect actual
+       # the ident is calculated from the system, so we cannot
+       # check the actual value, only that it is there
+       test_i18ngrep "^# Committer: " .git/COMMIT_EDITMSG
 '
 
 write_script .git/FAKE_EDITOR <<EOF