(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description) op: assign_op.Equal rhs: {(SQ <'test case insensitive pathspec limiting'>)} spids: [4] ) ] redirects: [] ) (C {<.>} {<'./test-lib.sh'>}) (command.If arms: [ (if_arm cond: (condition.Shell commands:[(C {<test_have_prereq>} {<CASE_INSENSITIVE_FS>})]) action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'skip_all='> name:skip_all) op: assign_op.Equal rhs: {(SQ <'skipping case sensitive tests - case insensitive file system'>)} spids: [23] ) ] redirects: [] ) (C {<test_done>}) ] spids: [14 20] ) ] else_action: [] redirects: [] ) (C {<test_expect_success>} {(SQ <'create commits with glob characters'>)} { (SQ <'\n'> <'\ttest_commit bar bar &&\n'> <'\ttest_commit bAr bAr &&\n'> <'\ttest_commit BAR BAR &&\n'> <'\tmkdir foo &&\n'> <'\ttest_commit foo/bar foo/bar &&\n'> <'\ttest_commit foo/bAr foo/bAr &&\n'> <'\ttest_commit foo/BAR foo/BAR &&\n'> <'\tmkdir fOo &&\n'> <'\ttest_commit fOo/bar fOo/bar &&\n'> <'\ttest_commit fOo/bAr fOo/bAr &&\n'> <'\ttest_commit fOo/BAR fOo/BAR &&\n'> <'\tmkdir FOO &&\n'> <'\ttest_commit FOO/bar FOO/bar &&\n'> <'\ttest_commit FOO/bAr FOO/bAr &&\n'> <'\ttest_commit FOO/BAR FOO/BAR\n'> ) } ) (C {<test_expect_success>} {(SQ <'tree_entry_interesting matches bar'>)} { (SQ <'\n'> <'\techo bar >expect &&\n'> <'\tgit log --format=%s -- "bar" >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'tree_entry_interesting matches :(icase)bar'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tBAR\n'> <'\tbAr\n'> <'\tbar\n'> <'\tEOF\n'> <'\tgit log --format=%s -- ":(icase)bar" >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'tree_entry_interesting matches :(icase)bar with prefix'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tfOo/BAR\n'> <'\tfOo/bAr\n'> <'\tfOo/bar\n'> <'\tEOF\n'> <'\t( cd fOo && git log --format=%s -- ":(icase)bar" ) >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'tree_entry_interesting matches :(icase)bar with empty prefix'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tFOO/BAR\n'> <'\tFOO/bAr\n'> <'\tFOO/bar\n'> <'\tfOo/BAR\n'> <'\tfOo/bAr\n'> <'\tfOo/bar\n'> <'\tfoo/BAR\n'> <'\tfoo/bAr\n'> <'\tfoo/bar\n'> <'\tEOF\n'> <'\t( cd fOo && git log --format=%s -- ":(icase)../foo/bar" ) >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'match_pathspec matches :(icase)bar'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tBAR\n'> <'\tbAr\n'> <'\tbar\n'> <'\tEOF\n'> <'\tgit ls-files ":(icase)bar" >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'match_pathspec matches :(icase)bar with prefix'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tfOo/BAR\n'> <'\tfOo/bAr\n'> <'\tfOo/bar\n'> <'\tEOF\n'> <'\t( cd fOo && git ls-files --full-name ":(icase)bar" ) >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'match_pathspec matches :(icase)bar with empty prefix'>)} { (SQ <'\n'> <'\tcat <<-EOF >expect &&\n'> <'\tbar\n'> <'\tfOo/BAR\n'> <'\tfOo/bAr\n'> <'\tfOo/bar\n'> <'\tEOF\n'> <'\t( cd fOo && git ls-files --full-name ":(icase)bar" ../bar ) >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_expect_success>} {(SQ <'"git diff" can take magic :(icase) pathspec'>)} { (SQ <'\n'> <'\techo FOO/BAR >expect &&\n'> <'\tgit diff --name-only HEAD^ HEAD -- ":(icase)foo/bar" >actual &&\n'> <'\ttest_cmp expect actual\n'> ) } ) (C {<test_done>}) ] )