aboutsummaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-03-21 14:02:51 -0700
committerJunio C Hamano <gitster@pobox.com>2013-03-21 14:02:51 -0700
commit42e129f47af19c7623bac39f20c74b4d349a81f9 (patch)
treeff5eef5175833d31be8b917b648bb2f610a52ff5 /t
parent6d7e0c522eba6eb020192eb56ad8a01dc430197e (diff)
parent8efb8899cfe866dddb3659b9e0a94232161db65e (diff)
downloadgit-42e129f47af19c7623bac39f20c74b4d349a81f9.tar.gz
git-42e129f47af19c7623bac39f20c74b4d349a81f9.tar.xz
Merge branch 'nd/branch-error-cases'
"git branch" had more cases where it did not bother to check nonsense command line parameters. * nd/branch-error-cases: branch: segfault fixes and validation
Diffstat (limited to 't')
-rwxr-xr-xt/t3200-branch.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh
index f3e0e4a38..12f1e4a63 100755
--- a/t/t3200-branch.sh
+++ b/t/t3200-branch.sh
@@ -42,6 +42,10 @@ test_expect_success \
'git branch a/b/c should create a branch' \
'git branch a/b/c && test_path_is_file .git/refs/heads/a/b/c'
+test_expect_success \
+ 'git branch HEAD should fail' \
+ 'test_must_fail git branch HEAD'
+
cat >expect <<EOF
$_z40 $HEAD $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> 1117150200 +0000 branch: Created from master
EOF
@@ -388,6 +392,14 @@ test_expect_success \
'git tag foobar &&
test_must_fail git branch --track my11 foobar'
+test_expect_success '--set-upstream-to fails on multiple branches' \
+ 'test_must_fail git branch --set-upstream-to master a b c'
+
+test_expect_success '--set-upstream-to fails on detached HEAD' \
+ 'git checkout HEAD^{} &&
+ test_must_fail git branch --set-upstream-to master &&
+ git checkout -'
+
test_expect_success 'use --set-upstream-to modify HEAD' \
'test_config branch.master.remote foo &&
test_config branch.master.merge foo &&
@@ -417,6 +429,15 @@ test_expect_success 'test --unset-upstream on HEAD' \
test_must_fail git branch --unset-upstream
'
+test_expect_success '--unset-upstream should fail on multiple branches' \
+ 'test_must_fail git branch --unset-upstream a b c'
+
+test_expect_success '--unset-upstream should fail on detached HEAD' \
+ 'git checkout HEAD^{} &&
+ test_must_fail git branch --unset-upstream &&
+ git checkout -
+'
+
test_expect_success 'test --unset-upstream on a particular branch' \
'git branch my15
git branch --set-upstream-to master my14 &&