(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:'magic pathspec tests using git-log' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:setup span_id:18))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:22) (Token id:Id.Lit_Chars val:'\ttest_commit initial &&\n' span_id:23) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:24) (Token id:Id.Lit_Chars val:'\tgit commit --allow-empty -m empty &&\n' span_id:25) (Token id:Id.Lit_Chars val:'\tmkdir sub\n' span_id:26) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'"git log :/" should not be ambiguous' span_id:33))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:37) (Token id:Id.Lit_Chars val:'\tgit log :/\n' span_id:38) ) } ) (C {(test_expect_success)} { (SQ (Token id: Id.Lit_Chars val: '"git log :/a" should be ambiguous (applied both rev and worktree)' span_id: 45 ) ) } { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:49) (Token id:Id.Lit_Chars val:'\t: >a &&\n' span_id:50) (Token id:Id.Lit_Chars val:'\ttest_must_fail git log :/a 2>error &&\n' span_id:51) (Token id:Id.Lit_Chars val:'\ttest_i18ngrep ambiguous error\n' span_id:52) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'"git log :/a -- " should not be ambiguous' span_id:59))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:63) (Token id:Id.Lit_Chars val:'\tgit log :/a --\n' span_id:64) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'"git log -- :/a" should not be ambiguous' span_id:71))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:75) (Token id:Id.Lit_Chars val:'\tgit log -- :/a\n' span_id:76) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'"git log :" should be ambiguous' span_id:83))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:87) (Token id:Id.Lit_Chars val:'\ttest_must_fail git log : 2>error &&\n' span_id:88) (Token id:Id.Lit_Chars val:'\ttest_i18ngrep ambiguous error\n' span_id:89) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'git log -- :' span_id:96))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:100) (Token id:Id.Lit_Chars val:'\tgit log -- :\n' span_id:101) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'git log HEAD -- :/' span_id:108))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:112) (Token id:Id.Lit_Chars val:'\tcat >expected <<-EOF &&\n' span_id:113) (Token id:Id.Lit_Chars val:'\t24b24cf initial\n' span_id:114) (Token id:Id.Lit_Chars val:'\tEOF\n' span_id:115) (Token id:Id.Lit_Chars val:'\t(cd sub && git log --oneline HEAD -- :/ >../actual) &&\n' span_id:116) (Token id:Id.Lit_Chars val:'\ttest_cmp expected actual\n' span_id:117) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'command line pathspec parsing for "git log"' span_id:124))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:128) (Token id:Id.Lit_Chars val:'\tgit reset --hard &&\n' span_id:129) (Token id:Id.Lit_Chars val:'\t>a &&\n' span_id:130) (Token id:Id.Lit_Chars val:'\tgit add a &&\n' span_id:131) (Token id:Id.Lit_Chars val:'\tgit commit -m "add an empty a" --allow-empty &&\n' span_id:132) (Token id:Id.Lit_Chars val:'\techo 1 >a &&\n' span_id:133) (Token id:Id.Lit_Chars val:'\tgit commit -a -m "update a to 1" &&\n' span_id:134) (Token id:Id.Lit_Chars val:'\tgit checkout HEAD^ &&\n' span_id:135) (Token id:Id.Lit_Chars val:'\techo 2 >a &&\n' span_id:136) (Token id:Id.Lit_Chars val:'\tgit commit -a -m "update a to 2" &&\n' span_id:137) (Token id:Id.Lit_Chars val:'\ttest_must_fail git merge master &&\n' span_id:138) (Token id:Id.Lit_Chars val:'\tgit add a &&\n' span_id:139) (Token id:Id.Lit_Chars val:'\tgit log --merge -- a\n' span_id:140) ) } ) (C {(test_done)}) ] )