Re: [PATCH 1/3] t/t7004-tag: add regression test for existing behavior
From: Junio C Hamano <hidden>
Date: 2023-05-15 07:00:23
Kristoffer Haugsbakk [off-list ref] writes:
The standard tag message file is unlinked if the tag is created.
Signed-off-by: Kristoffer Haugsbakk <redacted>
---
Notes (series):
`test_when_finished` because this test interferes with the next one
without it.Use of when-finished to remove a tag makes sense. Unlike COMMIT_EDITMSG that is documented in "git commit --help", we do not promise the users that the temporary file that is used for preparing a tag message is "$GIT_DIR/TAG_EDITMSG" in any of our documentation. That needs to be done at the same time, or before, this new test makes such a promise.
quoted hunk ↗ jump to hunk
t/t7004-tag.sh | 9 +++++++++ 1 file changed, 9 insertions(+)diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh index 9aa1660651..550b5b1cce 100755 --- a/t/t7004-tag.sh +++ b/t/t7004-tag.sh@@ -2127,4 +2127,13 @@ test_expect_success 'Does --[no-]contains stop at commits? Yes!' ' test_cmp expected actual ' +test_expect_success 'If tag is created then tag message file is unlinked' ' + test_when_finished "git tag -d foo" && + write_script fakeeditor <<-\EOF && + echo Message >.git/TAG_EDITMSG + EOF + GIT_EDITOR=./fakeeditor git tag -a foo && + ! test -e .git/TAG_EDITMSG
I'd recommend using "test_path_is_missing" instead for better test-debugging experience. Thanks.