(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'git rebase --continue tests' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (C {(.)} {(DQ ($ Id.VSub_DollarName '$TEST_DIRECTORY')) (/lib-rebase.sh)}) (C {(set_fake_editor)}) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:setup span_id:29))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:33) (Token id: Id.Lit_Chars val: '\ttest_commit "commit-new-file-F1" F1 1 &&\n' span_id: 34 ) (Token id:Id.Lit_Chars val:'\ttest_commit "commit-new-file-F2" F2 2 &&\n' span_id:35) (Token id:Id.Lit_Chars val:'\n' span_id:36) (Token id:Id.Lit_Chars val:'\tgit checkout -b topic HEAD^ &&\n' span_id:37) (Token id: Id.Lit_Chars val: '\ttest_commit "commit-new-file-F2-on-topic-branch" F2 22 &&\n' span_id: 38 ) (Token id:Id.Lit_Chars val:'\n' span_id:39) (Token id:Id.Lit_Chars val:'\tgit checkout master\n' span_id:40) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: 'interactive rebase --continue works with touched file' span_id: 47 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:51) (Token id:Id.Lit_Chars val:'\trm -fr .git/rebase-* &&\n' span_id:52) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:53) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:54) (Token id:Id.Lit_Chars val:'\n' span_id:55) (Token id: Id.Lit_Chars val: '\tFAKE_LINES="edit 1" git rebase -i HEAD^ &&\n' span_id: 56 ) (Token id:Id.Lit_Chars val:'\ttest-chmtime =-60 F1 &&\n' span_id:57) (Token id:Id.Lit_Chars val:'\tgit rebase --continue\n' span_id:58) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: 'non-interactive rebase --continue works with touched file' span_id: 65 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:69) (Token id:Id.Lit_Chars val:'\trm -fr .git/rebase-* &&\n' span_id:70) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:71) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:72) (Token id:Id.Lit_Chars val:'\n' span_id:73) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase --onto master master topic &&\n' span_id: 74 ) (Token id:Id.Lit_Chars val:'\techo "Resolved" >F2 &&\n' span_id:75) (Token id:Id.Lit_Chars val:'\tgit add F2 &&\n' span_id:76) (Token id:Id.Lit_Chars val:'\ttest-chmtime =-60 F1 &&\n' span_id:77) (Token id:Id.Lit_Chars val:'\tgit rebase --continue\n' span_id:78) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: 'non-interactive rebase --continue with rerere enabled' span_id: 85 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:89) (Token id:Id.Lit_Chars val:'\ttest_config rerere.enabled true &&\n' span_id:90) (Token id: Id.Lit_Chars val: '\ttest_when_finished "test_might_fail git rebase --abort" &&\n' span_id: 91 ) (Token id:Id.Lit_Chars val:'\tgit reset --hard commit-new-file-F2-on-topic-branch &&\n' span_id:92) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:93) (Token id:Id.Lit_Chars val:'\trm -fr .git/rebase-* &&\n' span_id:94) (Token id:Id.Lit_Chars val:'\n' span_id:95) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase --onto master master topic &&\n' span_id:96) (Token id:Id.Lit_Chars val:'\techo "Resolved" >F2 &&\n' span_id:97) (Token id:Id.Lit_Chars val:'\tgit add F2 &&\n' span_id:98) (Token id:Id.Lit_Chars val:'\tcp F2 F2.expected &&\n' span_id:99) (Token id:Id.Lit_Chars val:'\tgit rebase --continue &&\n' span_id:100) (Token id:Id.Lit_Chars val:'\n' span_id:101) (Token id:Id.Lit_Chars val:'\tgit reset --hard commit-new-file-F2-on-topic-branch &&\n' span_id:102) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:103) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase --onto master master topic &&\n' span_id:104) (Token id:Id.Lit_Chars val:'\ttest_cmp F2.expected F2\n' span_id:105) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: 'rebase --continue can not be used with other options' span_id: 112 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:116) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase -v --continue &&\n' span_id: 117 ) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase --continue -v\n' span_id:118) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: 'rebase --continue remembers merge strategy and options' span_id: 125 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:129) (Token id:Id.Lit_Chars val:'\trm -fr .git/rebase-* &&\n' span_id:130) (Token id:Id.Lit_Chars val:'\tgit reset --hard commit-new-file-F2-on-topic-branch &&\n' span_id:131) (Token id: Id.Lit_Chars val: '\ttest_commit "commit-new-file-F3-on-topic-branch" F3 32 &&\n' span_id: 132 ) (Token id:Id.Lit_Chars val:'\ttest_when_finished "rm -fr test-bin funny.was.run" &&\n' span_id:133) (Token id:Id.Lit_Chars val:'\tmkdir test-bin &&\n' span_id:134) (Token id:Id.Lit_Chars val:'\tcat >test-bin/git-merge-funny <<-EOF &&\n' span_id:135) (Token id:Id.Lit_Chars val:'\t#!$SHELL_PATH\n' span_id:136) (Token id:Id.Lit_Chars val:'\tcase "\\$1" in --opt) ;; *) exit 2 ;; esac\n' span_id:137) (Token id:Id.Lit_Chars val:'\tshift &&\n' span_id:138) (Token id:Id.Lit_Chars val:'\t>funny.was.run &&\n' span_id:139) (Token id:Id.Lit_Chars val:'\texec git merge-recursive "\\$@"\n' span_id:140) (Token id:Id.Lit_Chars val:'\tEOF\n' span_id:141) (Token id: Id.Lit_Chars val: '\tchmod +x test-bin/git-merge-funny &&\n' span_id: 142 ) (Token id:Id.Lit_Chars val:'\t(\n' span_id:143) (Token id:Id.Lit_Chars val:'\t\tPATH=./test-bin:$PATH\n' span_id:144) (Token id:Id.Lit_Chars val:'\t\ttest_must_fail git rebase -s funny -Xopt master topic\n' span_id:145) (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:146) (Token id:Id.Lit_Chars val:'\ttest -f funny.was.run &&\n' span_id:147) (Token id:Id.Lit_Chars val:'\trm funny.was.run &&\n' span_id:148) (Token id:Id.Lit_Chars val:'\techo "Resolved" >F2 &&\n' span_id:149) (Token id:Id.Lit_Chars val:'\tgit add F2 &&\n' span_id:150) (Token id:Id.Lit_Chars val:'\t(\n' span_id:151) (Token id:Id.Lit_Chars val:'\t\tPATH=./test-bin:$PATH\n' span_id:152) (Token id:Id.Lit_Chars val:'\t\tgit rebase --continue\n' span_id:153) (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:154) (Token id:Id.Lit_Chars val:'\ttest -f funny.was.run\n' span_id:155) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --continue remembers --rerere-autoupdate' span_id:162))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:166) (Token id:Id.Lit_Chars val:'\trm -fr .git/rebase-* &&\n' span_id:167) (Token id:Id.Lit_Chars val:'\tgit reset --hard commit-new-file-F3-on-topic-branch &&\n' span_id:168) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:169) (Token id:Id.Lit_Chars val:'\ttest_commit "commit-new-file-F3" F3 3 &&\n' span_id:170) (Token id:Id.Lit_Chars val:'\tgit config rerere.enabled true &&\n' span_id:171) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase -m master topic &&\n' span_id:172) (Token id:Id.Lit_Chars val:'\techo "Resolved" >F2 &&\n' span_id:173) (Token id:Id.Lit_Chars val:'\tgit add F2 &&\n' span_id:174) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase --continue &&\n' span_id: 175 ) (Token id:Id.Lit_Chars val:'\techo "Resolved" >F3 &&\n' span_id:176) (Token id:Id.Lit_Chars val:'\tgit add F3 &&\n' span_id:177) (Token id:Id.Lit_Chars val:'\tgit rebase --continue &&\n' span_id:178) (Token id:Id.Lit_Chars val:'\tgit reset --hard topic@{1} &&\n' span_id:179) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase -m --rerere-autoupdate master &&\n' span_id: 180 ) (Token id:Id.Lit_Chars val:'\ttest "$(cat F2)" = "Resolved" &&\n' span_id:181) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase --continue &&\n' span_id: 182 ) (Token id:Id.Lit_Chars val:'\ttest "$(cat F3)" = "Resolved" &&\n' span_id:183) (Token id:Id.Lit_Chars val:'\tgit rebase --continue\n' span_id:184) ) } ) (C {(test_done)}) ] )