(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: 'detect some push errors early (before contacting remote)' span_id: 6 ) ) } spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'setup commits' span_id:17))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:21) (Token id:Id.Lit_Chars val:'\ttest_commit one\n' span_id:22) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'setup remote' span_id:29))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:33) (Token id:Id.Lit_Chars val:'\tgit init --bare remote.git &&\n' span_id:34) (Token id:Id.Lit_Chars val:'\tgit remote add origin remote.git\n' span_id:35) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'setup fake receive-pack' span_id:42))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:46) (Token id:Id.Lit_Chars val:'\tFAKE_RP_ROOT=$(pwd) &&\n' span_id:47) (Token id:Id.Lit_Chars val:'\texport FAKE_RP_ROOT &&\n' span_id:48) (Token id:Id.Lit_Chars val:'\twrite_script fake-rp <<-\\EOF &&\n' span_id:49) (Token id:Id.Lit_Chars val:'\techo yes >"$FAKE_RP_ROOT"/rp-ran\n' span_id:50) (Token id:Id.Lit_Chars val:'\texit 1\n' span_id:51) (Token id:Id.Lit_Chars val:'\tEOF\n' span_id:52) (Token id: Id.Lit_Chars val: '\tgit config remote.origin.receivepack "\\"\\$FAKE_RP_ROOT/fake-rp\\""\n' span_id: 53 ) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'detect missing branches early' span_id:60))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:64) (Token id:Id.Lit_Chars val:'\techo no >rp-ran &&\n' span_id:65) (Token id:Id.Lit_Chars val:'\techo no >expect &&\n' span_id:66) (Token id: Id.Lit_Chars val: '\ttest_must_fail git push origin missing &&\n' span_id: 67 ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect rp-ran\n' span_id:68) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'detect missing sha1 expressions early' span_id:75))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:79) (Token id:Id.Lit_Chars val:'\techo no >rp-ran &&\n' span_id:80) (Token id:Id.Lit_Chars val:'\techo no >expect &&\n' span_id:81) (Token id: Id.Lit_Chars val: '\ttest_must_fail git push origin master~2:master &&\n' span_id: 82 ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect rp-ran\n' span_id:83) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'detect ambiguous refs early' span_id:90))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:94) (Token id:Id.Lit_Chars val:'\tgit branch foo &&\n' span_id:95) (Token id:Id.Lit_Chars val:'\tgit tag foo &&\n' span_id:96) (Token id:Id.Lit_Chars val:'\techo no >rp-ran &&\n' span_id:97) (Token id:Id.Lit_Chars val:'\techo no >expect &&\n' span_id:98) (Token id: Id.Lit_Chars val: '\ttest_must_fail git push origin foo &&\n' span_id: 99 ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect rp-ran\n' span_id:100) ) } ) (C {(test_done)}) ] )