Merge branch 'nd/index-pack-threaded-fixes'
[gitweb.git] / t / t3200-branch.sh
index 74fbba1a561f1c01b6df0411a8158c0abbc1ed64..b08c9f22951bf447cc769c043a165d087fa5e38d 100755 (executable)
@@ -40,6 +40,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
@@ -395,6 +399,16 @@ test_expect_success 'branch from tag w/--track causes failure' '
        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 &&
@@ -427,6 +441,16 @@ 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 &&