(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <"tests remote-svn">)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MARKSPATH)
          op: Equal
          rhs: {(.git/info/fast-import/remote-svn)}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (If
      arms: [
        (if_arm
          cond: [(Pipeline children:[(C {(test_have_prereq)} {(PYTHON)})] negated:True)]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:skip_all)
                  op: Equal
                  rhs: {(SQ <"skipping remote-svn tests, python not available">)}
                  spids: [30]
                )
              ]
              spids: [30]
            )
            (C {(test_done)})
          ]
          spids: [-1 27]
        )
      ]
      spids: [-1 38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PATH)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$HOME") (":") ($ VSub_Name "$PATH"))}
          spids: [44]
        )
      ]
      spids: [44]
    )
    (C {(export)} {(PATH)} {(PYTHON_PATH)} {(GIT_BUILD_DIR)})
    (SimpleCommand
      words: [{(write_script)} {(DQ ($ VSub_Name "$HOME") (/svnrdump))}]
      redirects: [
        (HereDoc
          op_id: Redir_DLess
          fd: -1
          body: {("exec \"$PYTHON_PATH\" \"$GIT_BUILD_DIR/contrib/svn-fe/svnrdump_sim.py\" \"$@\"\n")}
          do_expansion: False
          here_end: EOF
          was_filled: True
          spids: [67]
        )
      ]
    )
    (FuncDef
      name: init_git
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(rm)} {(-fr)} {(.git)})
                (AndOr
                  children: [
                    (C {(git)} {(init)})
                    (C {(git)} {(remote)} {(add)} {(svnsim)} 
                      {(testsvn) (Lit_Other ":") (Lit_Other ":") (sim) (Lit_Other ":") (//) 
                        ($ VSub_Name "$TEST_DIRECTORY") (/t9154/svn.dump)
                      }
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (C {(git)} {(remote)} {(add)} {(svnfile)} 
              {(testsvn) (Lit_Other ":") (Lit_Other ":") (file) (Lit_Other ":") (//) 
                ($ VSub_Name "$TEST_DIRECTORY") (/t9154/svn.dump)
              }
            )
          ]
          spids: [77]
        )
      spids: [72 76]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(test)} {(-e)} {(DQ ($ VSub_Name "$GIT_BUILD_DIR") (/git-remote-testsvn))})]
          action: [(C {(test_set_prereq)} {(REMOTE_SVN)})]
          spids: [-1 153]
        )
      ]
      spids: [-1 160]
    )
    (C {(test_debug)} {(SQ <"\n"> <"\tgit --version\n"> <"\ttype git\n"> <"\ttype svnrdump\n">)})
    (C {(test_expect_success)} {(REMOTE_SVN)} {(SQ <"simple fetch">)} 
      {
        (SQ <"\n"> <"\tinit_git &&\n"> <"\tgit fetch svnsim &&\n"> 
          <"\ttest_cmp .git/refs/svn/svnsim/master .git/refs/remotes/svnsim/master  &&\n"> <"\tcp .git/refs/remotes/svnsim/master master.good\n">
        )
      }
    )
    (C {(test_debug)} 
      {
        (SQ <"\n"> <"\tcat .git/refs/svn/svnsim/master\n"> <"\tcat .git/refs/remotes/svnsim/master\n">)
      }
    )
    (C {(test_expect_success)} {(REMOTE_SVN)} {(SQ <"repeated fetch, nothing shall change">)} 
      {
        (SQ <"\n"> <"\tgit fetch svnsim &&\n"> 
          <"\ttest_cmp master.good .git/refs/remotes/svnsim/master\n">
        )
      }
    )
    (C {(test_expect_success)} {(REMOTE_SVN)} {(SQ <"fetch from a file:// url gives the same result">)} 
      {(SQ <"\n"> <"\tgit fetch svnfile\n">)}
    )
    (C {(test_expect_failure)} {(REMOTE_SVN)} 
      {(SQ <"the sha1 differ because the git-svn-id line in the commit msg contains the url">)} {(SQ <"\n"> <"\ttest_cmp .git/refs/remotes/svnfile/master .git/refs/remotes/svnsim/master\n">)}
    )
    (C {(test_expect_success)} {(REMOTE_SVN)} {(SQ <"mark-file regeneration">)} 
      {
        (SQ <"\n"> 
          <
"\t# filter out any other marks, that can not be regenerated. Only up to 3 digit revisions are allowed here\n"
          > <"\tgrep \":[0-9]\\{1,3\\} \" $MARKSPATH/svnsim.marks > $MARKSPATH/svnsim.marks.old &&\n"> 
          <"\trm $MARKSPATH/svnsim.marks &&\n"> <"\tgit fetch svnsim &&\n"> <"\ttest_cmp $MARKSPATH/svnsim.marks.old $MARKSPATH/svnsim.marks\n">
        )
      }
    )
    (C {(test_expect_success)} {(REMOTE_SVN)} {(SQ <"incremental imports must lead to the same head">)} 
      {
        (SQ <"\n"> <"\tSVNRMAX=3 &&\n"> <"\texport SVNRMAX &&\n"> <"\tinit_git &&\n"> 
          <"\tgit fetch svnsim &&\n"> <"\ttest_cmp .git/refs/svn/svnsim/master .git/refs/remotes/svnsim/master  &&\n"> 
          <"\tunset SVNRMAX &&\n"> <"\tgit fetch svnsim &&\n"> <"\ttest_cmp master.good .git/refs/remotes/svnsim/master\n">
        )
      }
    )
    (C {(test_debug)} {(SQ <"git branch -a">)})
    (C {(test_done)})
  ]
)