git-p4: add failing test for name-rev rather than symbolic-ref

Using name-rev to find the current git branch means that git-p4 does not correctly get the current branch name if there are multiple branches pointing at HEAD, or a tag. This change adds a test case which demonstrates the problem. Configuring which branches are allowed to be submitted from goes wrong, as git-p4 gets confused about which branch is in use. This appears to be the only place that git-p4 actually cares about the current branch. Signed-off-by: Luke Diamand <luke@diamand.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Luke Diamand committed Apr 15, 2017 at 11:36 UTC 3d553cceb57a09e997ae403dbcd69ddb570e6f08
1 file changed +16
t/t9807-git-p4-submit.sh
+16
@@ -139,6 +139,22 @@ test_expect_success 'submit with master branch name from argv' '
139 )
140 '
141
142 +test_expect_failure 'allow submit from branch with same revision but different name' '
143 + test_when_finished cleanup_git &&
144 + git p4 clone --dest="$git" //depot &&
145 + (
146 + cd "$git" &&
147 + test_commit "file8" &&
148 + git checkout -b branch1 &&
149 + git checkout -b branch2 &&
150 + git config git-p4.skipSubmitEdit true &&
151 + git config git-p4.allowSubmit "branch1" &&
152 + test_must_fail git p4 submit &&
153 + git checkout branch1 &&
154 + git p4 submit
155 + )
156 +'
157 +
158 #
159 # Basic submit tests, the five handled cases
160 #