t7500: make each piece more independent

These tests prepare the working tree & index state to have something
to be committed, and try a sequence of "test_must_fail git commit".
If an earlier one did not fail by a bug, a later one will fail for
a wrong reason (namely, "nothing to commit").

Give them "--allow-empty" to make sure that they would work even
when there is nothing to commit by accident.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: D. Ben Knoble <ben.knoble+github@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
seen
Junio C Hamano 2025-09-28 17:29:14 -04:00
parent c44beea485
commit 666b29b58f
1 changed files with 8 additions and 8 deletions

View File

@ -42,7 +42,7 @@ test_expect_success 'nonexistent template file in config should return error' '
(
GIT_EDITOR="echo hello >\"\$1\"" &&
export GIT_EDITOR &&
test_must_fail git commit
test_must_fail git commit --allow-empty
)
'

@ -50,33 +50,33 @@ test_expect_success 'nonexistent template file in config should return error' '
TEMPLATE="$PWD"/template

test_expect_success 'unedited template should not commit' '
echo "template line" > "$TEMPLATE" &&
test_must_fail git commit --template "$TEMPLATE"
echo "template line" >"$TEMPLATE" &&
test_must_fail git commit --allow-empty --template "$TEMPLATE"
'

test_expect_success 'unedited template with comments should not commit' '
echo "# comment in template" >> "$TEMPLATE" &&
test_must_fail git commit --template "$TEMPLATE"
echo "# comment in template" >>"$TEMPLATE" &&
test_must_fail git commit --allow-empty --template "$TEMPLATE"
'

test_expect_success 'a Signed-off-by line by itself should not commit' '
(
test_set_editor "$TEST_DIRECTORY"/t7500/add-signed-off &&
test_must_fail git commit --template "$TEMPLATE"
test_must_fail git commit --allow-empty --template "$TEMPLATE"
)
'

test_expect_success 'adding comments to a template should not commit' '
(
test_set_editor "$TEST_DIRECTORY"/t7500/add-comments &&
test_must_fail git commit --template "$TEMPLATE"
test_must_fail git commit --allow-empty --template "$TEMPLATE"
)
'

test_expect_success 'adding real content to a template should commit' '
(
test_set_editor "$TEST_DIRECTORY"/t7500/add-content &&
git commit --template "$TEMPLATE"
git commit --allow-empty --template "$TEMPLATE"
) &&
commit_msg_is "template linecommit message"
'