Re: [PATCH v5] branch: introduce --show-current display option
From: Eric Sunshine <hidden>
Date: 2018-10-25 19:30:37
On Thu, Oct 25, 2018 at 3:04 PM Daniels Umanovskis [off-list ref] wrote:
quoted hunk ↗ jump to hunk
When called with --show-current, git branch will print the current branch name and terminate. Only the actual name gets printed, without refs/heads. In detached HEAD state, nothing is output. Signed-off-by: Daniels Umanovskis <redacted> ---diff --git a/t/t3203-branch-output.sh b/t/t3203-branch-output.sh@@ -100,6 +100,50 @@ test_expect_success 'git branch -v pattern does not show branch summaries' ' +test_expect_success 'git branch `--show-current` works properly when tag exists' ' + cat >expect <<-\EOF && + branch-and-tag-name + EOF + test_when_finished " + git checkout branch-one + git branch -D branch-and-tag-name + " && + git checkout -b branch-and-tag-name && + test_when_finished "git tag -d branch-and-tag-name" && + git tag branch-and-tag-name &&
If git-tag crashes before actually creating the new tag, then "git tag
-d", passed to test_when_finished(), will error out too, which is
probably undesirable since "cleanup code" isn't expected to error out.
You could fix it this way:
test_when_finished "git tag -d branch-and-tag-name || :" &&
git tag branch-and-tag-name &&
or, even better, just swap the two lines:
git tag branch-and-tag-name &&
test_when_finished "git tag -d branch-and-tag-name" &&
However, do you even need to clean up the tag? Are there tests
following this one which expect a certain set of tags and fail if this
new one is present? If not, a simpler approach might be just to leave
the tag alone (and the branch too if that doesn't need to be cleaned
up).
+ git branch --show-current >actual && + test_cmp expect actual +'