git-am: Mention --abort in usage string part of OPTIONS_SPEC
[gitweb.git] / t / t3403-rebase-skip.sh
index 9e11ed295d02f760f01a5b4fcb371b17a5b710cf..0d33c71daa557e68268dfb2279a02fe2afca1ed7 100755 (executable)
@@ -31,25 +31,42 @@ test_expect_success setup '
        git branch skip-merge skip-reference
        '
 
-test_expect_failure 'rebase with git am -3 (default)' '
-       git rebase master
+test_expect_success 'rebase with git am -3 (default)' '
+       test_must_fail git rebase master
 '
 
 test_expect_success 'rebase --skip with am -3' '
-       git reset --hard HEAD &&
        git rebase --skip
        '
+
+test_expect_success 'rebase moves back to skip-reference' '
+       test refs/heads/skip-reference = $(git symbolic-ref HEAD) &&
+       git branch post-rebase &&
+       git reset --hard pre-rebase &&
+       test_must_fail git rebase master &&
+       echo "hello" > hello &&
+       git add hello &&
+       git rebase --continue &&
+       test refs/heads/skip-reference = $(git symbolic-ref HEAD) &&
+       git reset --hard post-rebase
+'
+
 test_expect_success 'checkout skip-merge' 'git checkout -f skip-merge'
 
-test_expect_failure 'rebase with --merge' 'git rebase --merge master'
+test_expect_success 'rebase with --merge' '
+       test_must_fail git rebase --merge master
+'
 
 test_expect_success 'rebase --skip with --merge' '
-       git reset --hard HEAD &&
        git rebase --skip
        '
 
 test_expect_success 'merge and reference trees equal' \
-       'test -z "`git-diff-tree skip-merge skip-reference`"'
+       'test -z "`git diff-tree skip-merge skip-reference`"'
+
+test_expect_success 'moved back to branch correctly' '
+       test refs/heads/skip-merge = $(git symbolic-ref HEAD)
+'
 
 test_debug 'gitk --all & sleep 1'