t7502: test early quit from commit with bad ident

In commit f20f387, "git commit" notices and dies much
earlier when we have a bogus commit identity. That commit
did not add a test because we cannot do so reliably (namely,
we can only trigger the behavior on a system where the
automatically generated identity is bogus). However, now
that we have a prerequisite check for this feature, we can
add a test that will at least run on systems that produce
such a bogus identity.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2012-07-26 16:32:50 -04:00 committed by Junio C Hamano
parent 1d7dc26498
commit 8c8b3bc3f4

View File

@ -248,6 +248,8 @@ test_expect_success 'setup auto-ident prerequisite' '
sane_unset GIT_COMMITTER_NAME &&
git var GIT_COMMITTER_IDENT); then
test_set_prereq AUTOIDENT
else
test_set_prereq NOAUTOIDENT
fi
'
@ -269,6 +271,21 @@ echo editor started > "$(pwd)/.git/result"
exit 0
EOF
test_expect_success NOAUTOIDENT 'do not fire editor when committer is bogus' '
>.git/result
>expect &&
echo >>negative &&
(
sane_unset GIT_COMMITTER_EMAIL &&
sane_unset GIT_COMMITTER_NAME &&
GIT_EDITOR="\"$(pwd)/.git/FAKE_EDITOR\"" &&
export GIT_EDITOR &&
test_must_fail git commit -e -m sample -a
) &&
test_cmp expect .git/result
'
test_expect_success 'do not fire editor in the presence of conflicts' '
git clean -f &&