(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'tests for git clone -c key=value'>)}
          spids: [4]
        )
      ]
    )
    (C {<.>} {<'./test-lib.sh'>})
    (C {<test_expect_success>} {(SQ <'clone -c sets config in cloned repo'>)} 
      {
        (SQ <'\n'> <'\trm -rf child &&\n'> <'\tgit clone -c core.foo=bar . child &&\n'> 
          <'\techo bar >expect &&\n'> <'\tgit --git-dir=child/.git config core.foo >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'clone -c can set multi-keys'>)} 
      {
        (SQ <'\n'> <'\trm -rf child &&\n'> <'\tgit clone -c core.foo=bar -c core.foo=baz . child &&\n'> 
          <'\t{ echo bar; echo baz; } >expect &&\n'> <'\tgit --git-dir=child/.git config --get-all core.foo >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'clone -c without a value is boolean true'>)} 
      {
        (SQ <'\n'> <'\trm -rf child &&\n'> <'\tgit clone -c core.foo . child &&\n'> 
          <'\techo true >expect &&\n'> <'\tgit --git-dir=child/.git config --bool core.foo >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'clone -c config is available during clone'>)} 
      {
        (SQ <'\n'> <'\techo content >file &&\n'> <'\tgit add file &&\n'> <'\tgit commit -m one &&\n'> 
          <'\trm -rf child &&\n'> <'\tgit clone -c core.autocrlf . child &&\n'> <'\tprintf "content\\\\r\\\\n" >expect &&\n'> 
          <'\ttest_cmp expect child/file\n'>
        )
      }
    )
    (command.ShFunction
      name: is_hidden
      body: 
        (BraceGroup
          children: [
            (command.Case
              to_match: 
                {
                  (DQ 
                    (command_sub
                      left_token: <Id.Left_DollarParen '$('>
                      child: (C {<attrib>} {(DQ ($ Id.VSub_Number '$1'))})
                    )
                  )
                }
              arms: [
                (case_arm
                  pat_list: [
                    {<Id.Lit_Star '*'> <H> <Id.Lit_Star '*'> <Id.Lit_QMark '?'> <Id.Lit_Colon ':'> 
                      <Id.Lit_Star '*'>
                    }
                  ]
                  action: [(command.ControlFlow token:<Id.ControlFlow_Return return> arg_word:{<0>})]
                  spids: [109 115 120 -1]
                )
              ]
            )
            (command.ControlFlow token:<Id.ControlFlow_Return return> arg_word:{<1>})
          ]
        )
    )
    (C {<test_expect_success>} {<MINGW>} {(SQ <'clone -c core.hideDotFiles'>)} 
      {
        (SQ <'\n'> <'\ttest_commit attributes .gitattributes "" &&\n'> <'\trm -rf child &&\n'> 
          <'\tgit clone -c core.hideDotFiles=false . child &&\n'> <'\t! is_hidden child/.gitattributes &&\n'> <'\trm -rf child &&\n'> 
          <'\tgit clone -c core.hideDotFiles=dotGitOnly . child &&\n'> <'\t! is_hidden child/.gitattributes &&\n'> <'\trm -rf child &&\n'> 
          <'\tgit clone -c core.hideDotFiles=true . child &&\n'> <'\tis_hidden child/.gitattributes\n'>
        )
      }
    )
    (C {<test_done>})
  ]
)