(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)})
  ]
)