(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 --merge --skip tests' span_id:15))} spids: [13] ) ] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(setup)} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:36) (Token id:Id.Lit_Chars val:'\techo hello > hello &&\n' span_id:37) (Token id:Id.Lit_Chars val:'\tgit add hello &&\n' span_id:38) (Token id:Id.Lit_Chars val:'\tgit commit -m "hello" &&\n' span_id:39) (Token id:Id.Lit_Chars val:'\tgit branch skip-reference &&\n' span_id:40) (Token id:Id.Lit_Chars val:'\n' span_id:41) (Token id:Id.Lit_Chars val:'\techo world >> hello &&\n' span_id:42) (Token id:Id.Lit_Chars val:'\tgit commit -a -m "hello world" &&\n' span_id:43) (Token id:Id.Lit_Chars val:'\techo goodbye >> hello &&\n' span_id:44) (Token id:Id.Lit_Chars val:'\tgit commit -a -m "goodbye" &&\n' span_id:45) (Token id:Id.Lit_Chars val:'\n' span_id:46) (Token id:Id.Lit_Chars val:'\tgit checkout -f skip-reference &&\n' span_id:47) (Token id:Id.Lit_Chars val:'\techo moo > hello &&\n' span_id:48) (Token id: Id.Lit_Chars val: '\tgit commit -a -m "we should skip this" &&\n' span_id: 49 ) (Token id:Id.Lit_Chars val:'\techo moo > cow &&\n' span_id:50) (Token id:Id.Lit_Chars val:'\tgit add cow &&\n' span_id:51) (Token id:Id.Lit_Chars val:'\tgit commit -m "this should not be skipped" &&\n' span_id:52) (Token id: Id.Lit_Chars val: '\tgit branch pre-rebase skip-reference &&\n' span_id: 53 ) (Token id:Id.Lit_Chars val:'\tgit branch skip-merge skip-reference\n' span_id:54) (Token id:Id.Lit_Chars val:'\t' span_id:55) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase with git am -3 (default)' span_id:62))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:66) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase master\n' span_id:67) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --skip can not be used with other options' span_id:74))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:78) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase -v --skip &&\n' span_id: 79 ) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase --skip -v\n' span_id:80) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --skip with am -3' span_id:87))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:91) (Token id:Id.Lit_Chars val:'\tgit rebase --skip\n' span_id:92) (Token id:Id.Lit_Chars val:'\t' span_id:93) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase moves back to skip-reference' span_id:100))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:104) (Token id: Id.Lit_Chars val: '\ttest refs/heads/skip-reference = $(git symbolic-ref HEAD) &&\n' span_id: 105 ) (Token id:Id.Lit_Chars val:'\tgit branch post-rebase &&\n' span_id:106) (Token id:Id.Lit_Chars val:'\tgit reset --hard pre-rebase &&\n' span_id:107) (Token id:Id.Lit_Chars val:'\ttest_must_fail git rebase master &&\n' span_id:108) (Token id:Id.Lit_Chars val:'\techo "hello" > hello &&\n' span_id:109) (Token id:Id.Lit_Chars val:'\tgit add hello &&\n' span_id:110) (Token id:Id.Lit_Chars val:'\tgit rebase --continue &&\n' span_id:111) (Token id: Id.Lit_Chars val: '\ttest refs/heads/skip-reference = $(git symbolic-ref HEAD) &&\n' span_id: 112 ) (Token id:Id.Lit_Chars val:'\tgit reset --hard post-rebase\n' span_id:113) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'checkout skip-merge' span_id:120))} {(SQ (Token id:Id.Lit_Chars val:'git checkout -f skip-merge' span_id:124))} ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase with --merge' span_id:131))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:135) (Token id: Id.Lit_Chars val: '\ttest_must_fail git rebase --merge master\n' span_id: 136 ) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'rebase --skip with --merge' span_id:143))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:147) (Token id:Id.Lit_Chars val:'\tgit rebase --skip\n' span_id:148) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'merge and reference trees equal' span_id:155))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:159) (Token id: Id.Lit_Chars val: '\ttest -z "$(git diff-tree skip-merge skip-reference)"\n' span_id: 160 ) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'moved back to branch correctly' span_id:167))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:171) (Token id: Id.Lit_Chars val: '\ttest refs/heads/skip-merge = $(git symbolic-ref HEAD)\n' span_id: 172 ) ) } ) (C {(test_debug)} {(SQ (Token id:Id.Lit_Chars val:'gitk --all & sleep 1' span_id:179))}) (C {(test_done)}) ] )