(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 svn merge detection'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./lib-git-svn.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'svn_ver='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'svn_ver='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'svn_ver='> name:svn_ver)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (CommandSub
                  left_token: <Id.Left_DollarParen '$('>
                  child: 
                    (command.Simple
                      blame_tok: <svn>
                      more_env: []
                      words: [{<svn>} {<--version>} {<--quiet>}]
                      redirects: []
                      do_fork: T
                    )
                  right: <Id.Eof_RParen _>
                )
              )
            }
        )
      ]
      redirects: []
    )
    (command.Case
      case_kw: <Id.KW_Case case>
      to_match: (case_arg.Word w:{($ Id.VSub_DollarName svn_ver)})
      arms_start: <Id.KW_In in>
      arms: [
        (CaseArm
          left: <0.>
          pattern: 
            (pat.Words
              words: [
                {<0.> <Id.Lit_Star '*'>}
                {<1.> <Id.Lit_LBracket '['> <0-4> <Id.Lit_RBracket ']'> <.> <Id.Lit_Star '*'>}
              ]
            )
          middle: <Id.Right_CasePat _>
          action: [
            (command.ShAssignment
              left: <Id.Lit_VarLike 'skip_all='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'skip_all='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'skip_all='> name:skip_all)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ <'skipping git-svn test - SVN too old ('> ($ Id.VSub_DollarName svn_ver) 
                        <')'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <test_done>
              more_env: []
              words: [{<test_done>}]
              redirects: []
              do_fork: T
            )
          ]
          right: <Id.Op_DSemi _>
        )
      ]
      arms_end: <Id.KW_Esac esac>
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'initialize source svn repo'>)}
        {
          (SQ <'\n'> <'\tsvn_cmd mkdir -m x "$svnrepo"/trunk &&\n'> 
            <'\tsvn_cmd mkdir -m x "$svnrepo"/branches &&\n'> <'\tsvn_cmd co "$svnrepo"/trunk "$SVN_TREE" &&\n'> <'\t(\n'> <'\t\tcd "$SVN_TREE" &&\n'> 
            <'\t\ttouch foo &&\n'> <'\t\tsvn_cmd add foo &&\n'> <'\t\tsvn_cmd commit -m "initial commit" &&\n'> 
            <'\t\tsvn_cmd cp -m branch "$svnrepo"/trunk "$svnrepo"/branches/branch1 &&\n'> <'\t\tsvn_cmd switch "$svnrepo"/branches/branch1 &&\n'> <'\t\ttouch bar &&\n'> 
            <'\t\tsvn_cmd add bar &&\n'> <'\t\tsvn_cmd commit -m branch1 &&\n'> 
            <
'\t\tsvn_cmd cp -m branch "$svnrepo"/branches/branch1 "$svnrepo"/branches/branch2 &&\n'
            > <'\t\tsvn_cmd switch "$svnrepo"/branches/branch2 &&\n'> <'\t\ttouch baz &&\n'> 
            <'\t\tsvn_cmd add baz &&\n'> <'\t\tsvn_cmd commit -m branch2 &&\n'> <'\t\tsvn_cmd switch "$svnrepo"/trunk &&\n'> 
            <'\t\tsvn_cmd merge --reintegrate "$svnrepo"/branches/branch2 &&\n'> <'\t\tsvn_cmd commit -m "merge branch2"\n'> <'\t) &&\n'> <'\trm -rf "$SVN_TREE"\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'clone svn repo'>)}
        {(SQ <'\n'> <'\tgit svn init -s "$svnrepo" &&\n'> <'\tgit svn fetch\n'>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'verify merge commit'>)}
        {
          (SQ <'x=$(git rev-parse HEAD^2) &&\n'> <'\ty=$(git rev-parse origin/branch2) &&\n'> 
            <'\ttest "x$x" = "x$y"\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)