Code

bisect: move argument parsing before state modification.
[git.git] / t / t6030-bisect-porcelain.sh
index b5063b6fe6c37f4b41a89b71c6d52ac0b5c07127..b3d1b1430bad60ab0dae1896cc646a5c4f2fdfbd 100755 (executable)
@@ -138,15 +138,23 @@ test_expect_success 'bisect start: back in good branch' '
        grep "* other" branch.output > /dev/null
 '
 
-test_expect_success 'bisect start: no ".git/BISECT_START" if junk rev' '
-       git bisect start $HASH4 $HASH1 -- &&
-       git bisect good &&
+test_expect_success 'bisect start: no ".git/BISECT_START" created if junk rev' '
+       git bisect reset &&
        test_must_fail git bisect start $HASH4 foo -- &&
        git branch > branch.output &&
        grep "* other" branch.output > /dev/null &&
        test_must_fail test -e .git/BISECT_START
 '
 
+test_expect_success 'bisect start: existing ".git/BISECT_START" not modified if junk rev' '
+       git bisect start $HASH4 $HASH1 -- &&
+       git bisect good &&
+       cp .git/BISECT_START saved &&
+       test_must_fail git bisect start $HASH4 foo -- &&
+       git branch > branch.output &&
+       grep "* (no branch)" branch.output > /dev/null &&
+       test_cmp saved .git/BISECT_START
+'
 test_expect_success 'bisect start: no ".git/BISECT_START" if mistaken rev' '
        git bisect start $HASH4 $HASH1 -- &&
        git bisect good &&