3 test_description
='test rebase --autostash'
8 'Setup a multi-commit branch and fork an stgit stack' \
17 stg branch --create stack &&
19 git notes add -m note &&
24 test_expect_success
'dirty workdir aborts rebase' \
27 command_error stg rebase master 2>err &&
28 grep -e "Worktree not clean." err
31 test_expect_success
'dirty workdir works with --autostash' \
33 stg rebase master --autostash &&
34 test $(stg series --applied -c) = 1 &&
40 'dirty workdir works with stgit.autostash config' \
42 test_config stgit.autostash "yes" &&
43 stg rebase master~1 &&
44 test $(stg series --applied -c) = 1 &&
51 write_script fake-editor <<-\EOF
56 'rebase --autostash throws helpful error message in conflict' \
58 test_set_editor "$(pwd)/fake-editor" &&
59 test_when_finished test_set_editor false &&
60 git checkout --force &&
63 command_error stg rebase master~1 --interactive --autostash 2>err &&
64 grep -e "Merge conflict raised when popping stash after rebase" err