(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 --onto A...B' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (C {(.)} {(DQ ($ Id.VSub_DollarName '$TEST_DIRECTORY') (/lib-rebase.sh))}) (C {(test_expect_success)} {(setup)} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:64) (Token id:Id.Lit_Chars val:'\ttest_commit A &&\n' span_id:65) (Token id:Id.Lit_Chars val:'\ttest_commit B &&\n' span_id:66) (Token id:Id.Lit_Chars val:'\tgit branch side &&\n' span_id:67) (Token id:Id.Lit_Chars val:'\ttest_commit C &&\n' span_id:68) (Token id:Id.Lit_Chars val:'\tgit branch topic &&\n' span_id:69) (Token id:Id.Lit_Chars val:'\tgit checkout side &&\n' span_id:70) (Token id:Id.Lit_Chars val:'\ttest_commit H &&\n' span_id:71) (Token id:Id.Lit_Chars val:'\tgit checkout master &&\n' span_id:72) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:73) (Token id:Id.Lit_Chars val:'\tgit merge H &&\n' span_id:74) (Token id:Id.Lit_Chars val:'\tgit tag D &&\n' span_id:75) (Token id:Id.Lit_Chars val:'\ttest_commit E &&\n' span_id:76) (Token id:Id.Lit_Chars val:'\tgit checkout topic &&\n' span_id:77) (Token id:Id.Lit_Chars val:'\ttest_commit F &&\n' span_id:78) (Token id:Id.Lit_Chars val:'\ttest_commit G &&\n' span_id:79) (Token id:Id.Lit_Chars val:'\tgit checkout side &&\n' span_id:80) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:81) (Token id:Id.Lit_Chars val:'\tgit merge C &&\n' span_id:82) (Token id:Id.Lit_Chars val:'\tgit tag I &&\n' span_id:83) (Token id:Id.Lit_Chars val:'\ttest_commit J &&\n' span_id:84) (Token id:Id.Lit_Chars val:'\ttest_commit K\n' span_id:85) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --onto master...topic' span_id:92))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:96) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:97) (Token id:Id.Lit_Chars val:'\tgit checkout topic &&\n' span_id:98) (Token id:Id.Lit_Chars val:'\tgit reset --hard G &&\n' span_id:99) (Token id:Id.Lit_Chars val:'\n' span_id:100) (Token id: Id.Lit_Chars val: '\tgit rebase --onto master...topic F &&\n' span_id: 101 ) (Token id:Id.Lit_Chars val:'\tgit rev-parse HEAD^1 >actual &&\n' span_id:102) (Token id:Id.Lit_Chars val:'\tgit rev-parse C^0 >expect &&\n' span_id:103) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:104) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --onto master...' span_id:111))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:115) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:116) (Token id:Id.Lit_Chars val:'\tgit checkout topic &&\n' span_id:117) (Token id:Id.Lit_Chars val:'\tgit reset --hard G &&\n' span_id:118) (Token id:Id.Lit_Chars val:'\n' span_id:119) (Token id:Id.Lit_Chars val:'\tgit rebase --onto master... F &&\n' span_id:120) (Token id:Id.Lit_Chars val:'\tgit rev-parse HEAD^1 >actual &&\n' span_id:121) (Token id:Id.Lit_Chars val:'\tgit rev-parse C^0 >expect &&\n' span_id:122) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:123) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --onto master...side' span_id:130))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:134) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:135) (Token id:Id.Lit_Chars val:'\tgit checkout side &&\n' span_id:136) (Token id:Id.Lit_Chars val:'\tgit reset --hard K &&\n' span_id:137) (Token id:Id.Lit_Chars val:'\n' span_id:138) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase --onto master...side J\n' span_id: 139 ) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase -i --onto master...topic' span_id:146))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:150) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:151) (Token id:Id.Lit_Chars val:'\tgit checkout topic &&\n' span_id:152) (Token id:Id.Lit_Chars val:'\tgit reset --hard G &&\n' span_id:153) (Token id:Id.Lit_Chars val:'\tset_fake_editor &&\n' span_id:154) (Token id: Id.Lit_Chars val: '\tEXPECT_COUNT=1 git rebase -i --onto master...topic F &&\n' span_id: 155 ) (Token id:Id.Lit_Chars val:'\tgit rev-parse HEAD^1 >actual &&\n' span_id:156) (Token id:Id.Lit_Chars val:'\tgit rev-parse C^0 >expect &&\n' span_id:157) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:158) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase -i --onto master...' span_id:165))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:169) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:170) (Token id:Id.Lit_Chars val:'\tgit checkout topic &&\n' span_id:171) (Token id:Id.Lit_Chars val:'\tgit reset --hard G &&\n' span_id:172) (Token id:Id.Lit_Chars val:'\tset_fake_editor &&\n' span_id:173) (Token id: Id.Lit_Chars val: '\tEXPECT_COUNT=1 git rebase -i --onto master... F &&\n' span_id: 174 ) (Token id:Id.Lit_Chars val:'\tgit rev-parse HEAD^1 >actual &&\n' span_id:175) (Token id:Id.Lit_Chars val:'\tgit rev-parse C^0 >expect &&\n' span_id:176) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:177) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase -i --onto master...side' span_id:184))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:188) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:189) (Token id:Id.Lit_Chars val:'\tgit checkout side &&\n' span_id:190) (Token id:Id.Lit_Chars val:'\tgit reset --hard K &&\n' span_id:191) (Token id:Id.Lit_Chars val:'\n' span_id:192) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase -i --onto master...side J\n' span_id: 193 ) ) } ) (C {(test_done)}) ] )