(List (= scope= flags=0 words=[] bindings=[('test_description', {[SQ ]})]) (Com {[LIT_CHARS .]} {[LIT_CHARS ./test-lib.sh]}) (Com {[LIT_CHARS .]} {[DQ [VarSub TEST_DIRECTORY]] [LIT_CHARS /lib-rebase.sh]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (= scope= flags=0 words=[] bindings=[('SHELL', {[SQ ]})]) (= scope= flags=1 words=[{[LIT_CHARS SHELL]}] bindings=[]) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ touch-one\n"> touch-two exec_false exec_>touch-three\n"> \\\"touch-file__name_with_spaces\\\";_>touch-after-semicolon 5\" &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ touch-subdir\" \\\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file1 1\" git rebase -i HEAD^ &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual 2>&1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ">]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "diff --git a/file1 b/file1\n"][LIT_CHARS "index f70f10e..fd79235 100644\n"][LIT_CHARS "--- a/file1\n"][LIT_CHARS "+++ b/file1\n"][LIT_CHARS "@@ -1 +1 @@\n"][LIT_CHARS "-A\n"][LIT_CHARS "+G\n"]]} 0), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect2]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "<<<<<<< HEAD\n"][LIT_CHARS "D\n"][LIT_CHARS "=======\n"][LIT_CHARS "G\n"][LIT_CHARS ">>>>>>> 5d18e54... G\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ output 2>&1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_failure]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ unrelated-file &&\n"> file1 &&\n"> file1 &&\n"> file1 &&\n"> unrelated-file &&\n"> file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ unrelated-file &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file1 &&\n"> output &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ conflict &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ conflict &&\n"> ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect-squash-fixup]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "B\n"][LIT_CHARS "\n"][LIT_CHARS "D\n"][LIT_CHARS "\n"][LIT_CHARS "ONCE\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual-squash-fixup &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ 1 > squash 2 > squash 3 > squash 4 >\" \\\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ conflict &&\n"> conflict &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ conflict &&\n"> conflict &&\n"> conflict &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> error &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ > file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ HEAD &&\n"> BODY &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ \" &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ elif &&\n"> file1 &&\n"> file1 &&\n"> elif &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ elif &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ] [LIT_CHARS s/] [LIT_OTHER "["] [LIT_OTHER "^"] [LIT_CHARS 0-9] [LIT_OTHER "]"] [LIT_CHARS .] [LIT_OTHER "*"] [LIT_OTHER "$"] [LIT_CHARS //] [SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "an earlier note\n"][LIT_CHARS "\n"][LIT_CHARS "a note\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ output &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_tick]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ out &&\n"> out &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ >file1 &&\n"> >file1 &&\n"> >file1 &&\n"> >file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ expect &&\n"> actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ">]} {[SQ actual &&\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ second.txt &&\n"> bis.txt &&\n"> actual\n"> expect\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ invoked_editor\" git rebase --exec \"echo a line >>exec_output\" HEAD~2 2>actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ">]} {[SQ tmp &&\n"> actual &&\n"> expected &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file7 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ expect <<-\\EOF &&\n"> actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ \"$1.tmp\" &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ and specified as :/quuxery">]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ conflict &&\n"> file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ breakpoint &&\n"> conflict &&\n"> file1 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ error &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ todo-list &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file6 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file6 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ file6 &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ seq &&\n"> ]}) (FunctionDef rebase_setup_and_clean [] (AndOr OP_AND_IF (Com {[LIT_CHARS test_when_finished]} {[DQ [LIT_CHARS "\n"][LIT_CHARS "\t\tgit checkout master &&\n"][LIT_CHARS "\t\ttest_might_fail git branch -D "][VarSub 1][LIT_CHARS " &&\n"][LIT_CHARS "\t\ttest_might_fail git rebase --abort\n"][LIT_CHARS "\t"]]}) (Com {[LIT_CHARS git]} {[LIT_CHARS checkout]} {[LIT_CHARS -b]} {[VarSub 1]} {[LIT_CHARS master]}) ) ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "Successfully rebased and updated refs/heads/missing-commit.\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "Warning: some commits may have been dropped accidentally.\n"][LIT_CHARS "Dropped commits (newer to older):\n"][LIT_CHARS " - "][ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS rev-list]} {[LIT_CHARS --pretty] [LIT_OTHER "="] [LIT_CHARS oneline]} {[LIT_CHARS --abbrev-commit]} {[LIT_CHARS -1]} {[LIT_CHARS master]})][LIT_CHARS "\n"][LIT_CHARS "To avoid this message, use "][RIGHT_D_QUOTE "\""][LIT_CHARS drop][RIGHT_D_QUOTE "\""][LIT_CHARS " to explicitly remove a commit.\n"][LIT_CHARS "\n"][LIT_CHARS "Use 'git config rebase.missingCommitsCheck' to change the level of warnings.\n"][LIT_CHARS "The possible behaviours are: ignore, warn, error.\n"][LIT_CHARS "\n"][LIT_CHARS "Successfully rebased and updated refs/heads/missing-commit.\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "Warning: some commits may have been dropped accidentally.\n"][LIT_CHARS "Dropped commits (newer to older):\n"][LIT_CHARS " - "][ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS rev-list]} {[LIT_CHARS --pretty] [LIT_OTHER "="] [LIT_CHARS oneline]} {[LIT_CHARS --abbrev-commit]} {[LIT_CHARS -1]} {[LIT_CHARS master]})][LIT_CHARS "\n"][LIT_CHARS " - "][ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS rev-list]} {[LIT_CHARS --pretty] [LIT_OTHER "="] [LIT_CHARS oneline]} {[LIT_CHARS --abbrev-commit]} {[LIT_CHARS -1]} {[LIT_CHARS master] [LIT_TILDE "~"] [LIT_CHARS 2]})][LIT_CHARS "\n"][LIT_CHARS "To avoid this message, use "][RIGHT_D_QUOTE "\""][LIT_CHARS drop][RIGHT_D_QUOTE "\""][LIT_CHARS " to explicitly remove a commit.\n"][LIT_CHARS "\n"][LIT_CHARS "Use 'git config rebase.missingCommitsCheck' to change the level of warnings.\n"][LIT_CHARS "The possible behaviours are: ignore, warn, error.\n"][LIT_CHARS "\n"][LIT_CHARS "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --continue'.\n"][LIT_CHARS "Or you can abort the rebase with 'git rebase --abort'.\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "Warning: the command isn't recognized in the following line:\n"][LIT_CHARS " - badcmd "][ComSub (Com {[LIT_CHARS git]} {[LIT_CHARS rev-list]} {[LIT_CHARS --oneline]} {[LIT_CHARS -1]} {[LIT_CHARS master] [LIT_TILDE "~"] [LIT_CHARS 1]})][LIT_CHARS "\n"][LIT_CHARS "\n"][LIT_CHARS "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --continue'.\n"][LIT_CHARS "Or you can abort the rebase with 'git rebase --abort'.\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ \"$1.new\"\n"> ]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS expect]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "Warning: the SHA-1 is missing or isn't a commit in the following line:\n"][LIT_CHARS " - edit XXXXXXX False commit\n"][LIT_CHARS "\n"][LIT_CHARS "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --continue'.\n"][LIT_CHARS "Or you can abort the rebase with 'git rebase --abort'.\n"]]} 0), > ) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ actual &&\n"> ]}) (Com {[LIT_CHARS test_expect_success]} {[SQ ]} {[SQ \"$1\".new &&\n"> ]}) (= scope= flags=0 words=[] bindings=[('SQ', {[DQ [LIT_CHARS "'"]]})]) (Com {[LIT_CHARS test_expect_success]} {[SQ ">]} {[SQ out 2>err &&\n"> ]}) (Com {[LIT_CHARS test_done]}) )