(command.CommandList
  children: [
    (command.ShAssignment
      left: <Id.Lit_VarLike 'test_description='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'test_description='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description)
          op: assign_op.Equal
          rhs: 
            {
              (SQ <'git ls-files test (--others should pick up symlinks).\n'> <'\n'> 
                <'This test runs git ls-files --others with the following on the\n'> <'filesystem.\n'> <'\n'> <'    path0       - a file\n'> <'    path1\t- a symlink\n'> 
                <'    path2/file2 - a file in a directory\n'> <'    path3-junk  - a file to confuse things\n'> <'    path3/file3 - a file in a directory\n'> 
                <'    path4       - an empty directory\n'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./test-lib.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup '>)}
        {
          (SQ <'\n'> <'\tdate >path0 &&\n'> <'\tif test_have_prereq SYMLINKS\n'> <'\tthen\n'> 
            <'\t\tln -s xyzzy path1\n'> <'\telse\n'> <'\t\tdate >path1\n'> <'\tfi &&\n'> <'\tmkdir path2 path3 path4 &&\n'> 
            <'\tdate >path2/file2 &&\n'> <'\tdate >path2-junk &&\n'> <'\tdate >path3/file3 &&\n'> <'\tdate >path3-junk &&\n'> 
            <'\tgit update-index --add path3-junk path3/file3\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup: expected output'>)}
        {
          (SQ <'\n'> <'\tcat >expected1 <<-\\EOF &&\n'> <'\texpected1\n'> <'\texpected2\n'> 
            <'\texpected3\n'> <'\toutput\n'> <'\tpath0\n'> <'\tpath1\n'> <'\tpath2-junk\n'> <'\tpath2/file2\n'> <'\tEOF\n'> <'\n'> 
            <'\tsed -e "s|path2/file2|path2/|" <expected1 >expected2 &&\n'> <'\tcp expected2 expected3 &&\n'> <'\techo path4/ >>expected2\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'ls-files --others'>)}
        {(SQ <'\n'> <'\tgit ls-files --others >output &&\n'> <'\ttest_cmp expected1 output\n'>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'ls-files --others --directory'>)}
        {
          (SQ <'\n'> <'\tgit ls-files --others --directory >output &&\n'> 
            <'\ttest_cmp expected2 output\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'--no-empty-directory hides empty directory'>)}
        {
          (SQ <'\n'> <'\tgit ls-files --others --directory --no-empty-directory >output &&\n'> 
            <'\ttest_cmp expected3 output\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'ls-files --others handles non-submodule .git'>)}
        {
          (SQ <'\n'> <'\tmkdir not-a-submodule &&\n'> <'\techo foo >not-a-submodule/.git &&\n'> 
            <'\tgit ls-files -o >output &&\n'> <'\ttest_cmp expected1 output\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {<SYMLINKS>}
        {(SQ <'ls-files --others with symlinked submodule'>)}
        {
          (SQ <'\n'> <'\tgit init super &&\n'> <'\tgit init sub &&\n'> <'\t(\n'> <'\t\tcd sub &&\n'> 
            <'\t\t>a &&\n'> <'\t\tgit add a &&\n'> <'\t\tgit commit -m sub &&\n'> <'\t\tgit pack-refs --all\n'> <'\t) &&\n'> 
            <'\t(\n'> <'\t\tcd super &&\n'> 
            <'\t\t"$SHELL_PATH" "$TEST_DIRECTORY/../contrib/workdir/git-new-workdir" ../sub sub\n'> <'\t\tgit ls-files --others --exclude-standard >../actual\n'> <'\t) &&\n'> <'\techo sub/ >expect &&\n'> 
            <'\ttest_cmp expect actual\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)