(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <"git svn reset">)}
          spids: [13]
        )
      ]
      spids: [13]
    )
    (C {(.)} {(./lib-git-svn.sh)})
    (C {(test_expect_success)} {(SQ <"setup test repository">)} 
      {
        (SQ <"\n"> <"\tsvn_cmd co \"$svnrepo\" s &&\n"> <"\t(\n"> <"\t\tcd s &&\n"> 
          <"\t\tmkdir vis &&\n"> <"\t\techo always visible > vis/vis.txt &&\n"> <"\t\tsvn_cmd add vis &&\n"> 
          <"\t\tsvn_cmd commit -m \"create visible files\" &&\n"> <"\t\tmkdir hid &&\n"> <"\t\techo initially hidden > hid/hid.txt &&\n"> <"\t\tsvn_cmd add hid &&\n"> 
          <"\t\tsvn_cmd commit -m \"create initially hidden files\" &&\n"> <"\t\tsvn_cmd up &&\n"> <"\t\techo mod >> vis/vis.txt &&\n"> 
          <"\t\tsvn_cmd commit -m \"modify vis\" &&\n"> <"\t\tsvn_cmd up\n"> <"\t)\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"clone SVN repository with hidden directory">)} 
      {
        (SQ <"\n"> <"\tgit svn init \"$svnrepo\" g &&\n"> 
          <"\t( cd g && git svn fetch --ignore-paths=\"^hid\" )\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"modify hidden file in SVN repo">)} 
      {
        (SQ <"\n"> <"\t( cd s &&\n"> <"\t  echo mod hidden >> hid/hid.txt &&\n"> 
          <"\t  svn_cmd commit -m \"modify hid\" &&\n"> <"\t  svn_cmd up\n"> <"\t)\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"fetch fails on modified hidden file">)} 
      {
        (SQ <"\n"> <"\t( cd g &&\n"> <"\t  git svn find-rev refs/remotes/git-svn > ../expect &&\n"> 
          <"\t  test_must_fail git svn fetch 2> ../errors &&\n"> <"\t  git svn find-rev refs/remotes/git-svn > ../expect2 ) &&\n"> 
          <"\tfgrep \"not found in commit\" errors &&\n"> <"\ttest_cmp expect expect2\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"reset unwinds back to r1">)} 
      {
        (SQ <"\n"> <"\t( cd g &&\n"> <"\t  git svn reset -r1 &&\n"> 
          <"\t  git svn find-rev refs/remotes/git-svn > ../expect2 ) &&\n"> <"\techo 1 >expect &&\n"> <"\ttest_cmp expect expect2\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"refetch succeeds not ignoring any files">)} 
      {
        (SQ <"\n"> <"\t( cd g &&\n"> <"\t  git svn fetch &&\n"> <"\t  git svn rebase &&\n"> 
          <"\t  fgrep \"mod hidden\" hid/hid.txt\n"> <"\t)\n">
        )
      }
    )
    (C {(test_done)})
  ]
)