(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'git-merge with case-changing rename on case-insensitive file system'>)}
          spids: [4]
        )
      ]
    )
    (C {<.>} {<'./test-lib.sh'>})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Pipeline
              children: [(C {<test_have_prereq>} {<CASE_INSENSITIVE_FS>})]
              negated: T
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:skip_all)
                  op: assign_op.Equal
                  rhs: {(SQ <'skipping case insensitive tests - case sensitive file system'>)}
                  spids: [26]
                )
              ]
            )
            (C {<test_done>})
          ]
          spids: [15 23]
        )
      ]
    )
    (C {<test_expect_success>} {(SQ <'merge with case-changing rename'>)} 
      {
        (SQ <'\n'> <'\ttest $(git config core.ignorecase) = true &&\n'> <'\t>TestCase &&\n'> 
          <'\tgit add TestCase &&\n'> <'\tgit commit -m "add TestCase" &&\n'> <'\tgit tag baseline &&\n'> 
          <'\tgit checkout -b with-camel &&\n'> <'\t>foo &&\n'> <'\tgit add foo &&\n'> <'\tgit commit -m "intervening commit" &&\n'> 
          <'\tgit checkout master &&\n'> <'\tgit rm TestCase &&\n'> <'\t>testcase &&\n'> <'\tgit add testcase &&\n'> 
          <'\tgit commit -m "rename to testcase" &&\n'> <'\tgit checkout with-camel &&\n'> <'\tgit merge master -m "merge" &&\n'> 
          <'\ttest_path_is_file testcase\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'merge with case-changing rename on both sides'>)} 
      {
        (SQ <'\n'> <'\tgit checkout master &&\n'> <'\tgit reset --hard baseline &&\n'> 
          <'\tgit branch -D with-camel &&\n'> <'\tgit checkout -b with-camel &&\n'> <'\tgit mv TestCase testcase &&\n'> 
          <'\tgit commit -m "recase on branch" &&\n'> <'\t>foo &&\n'> <'\tgit add foo &&\n'> <'\tgit commit -m "intervening commit" &&\n'> 
          <'\tgit checkout master &&\n'> <'\tgit rm TestCase &&\n'> <'\t>testcase &&\n'> <'\tgit add testcase &&\n'> 
          <'\tgit commit -m "rename to testcase" &&\n'> <'\tgit checkout with-camel &&\n'> <'\tgit merge master -m "merge" &&\n'> 
          <'\ttest_path_is_file testcase\n'>
        )
      }
    )
    (C {<test_done>})
  ]
)