(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ (Token id:Id.Lit_Chars val:'git svn tracking removed top-level path' span_id:15))}
          spids: [13]
        )
      ]
    )
    (C {(.)} {(./lib-git-svn.sh)})
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'make history for tracking' span_id:26))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:30) 
          (Token id:Id.Lit_Chars val:'\tmkdir import &&\n' span_id:31) (Token id:Id.Lit_Chars val:'\tmkdir import/trunk &&\n' span_id:32) 
          (Token id:Id.Lit_Chars val:'\techo hello >> import/trunk/README &&\n' span_id:33) (Token id:Id.Lit_Chars val:'\tsvn_cmd import -m initial import "$svnrepo" &&\n' span_id:34) 
          (Token id:Id.Lit_Chars val:'\trm -rf import &&\n' span_id:35) (Token id:Id.Lit_Chars val:'\tsvn_cmd co "$svnrepo"/trunk trunk &&\n' span_id:36) 
          (Token id:Id.Lit_Chars val:'\techo bye bye >> trunk/README &&\n' span_id:37) (Token id:Id.Lit_Chars val:'\tsvn_cmd rm -m "gone" "$svnrepo"/trunk &&\n' span_id:38) 
          (Token id:Id.Lit_Chars val:'\trm -rf trunk &&\n' span_id:39) (Token id:Id.Lit_Chars val:'\tmkdir trunk &&\n' span_id:40) 
          (Token id:Id.Lit_Chars val:'\techo "new" > trunk/FOLLOWME &&\n' span_id:41) (Token id:Id.Lit_Chars val:'\tsvn_cmd import -m "new trunk" trunk "$svnrepo"/trunk\n' span_id:42)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'clone repo with git' span_id:49))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:53) 
          (Token id:Id.Lit_Chars val:'\tgit svn clone -s "$svnrepo" x &&\n' span_id:54) (Token id:Id.Lit_Chars val:'\ttest_path_is_file x/FOLLOWME &&\n' span_id:55) 
          (Token id:Id.Lit_Chars val:'\ttest_path_is_missing x/README\n' span_id:56)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'make sure r2 still has old file' span_id:63))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:67) (Token id:Id.Lit_Chars val:'\t(\n' span_id:68) 
          (Token id:Id.Lit_Chars val:'\t\tcd x &&\n' span_id:69) (Token id:Id.Lit_Chars val:'\t\ttest -n "$(git svn find-rev r1)" &&\n' span_id:70) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tgit reset --hard "$(git svn find-rev r1)" &&\n'
            span_id: 71
          ) (Token id:Id.Lit_Chars val:'\t\ttest_path_is_file README &&\n' span_id:72) 
          (Token id:Id.Lit_Chars val:'\t\ttest_path_is_missing FOLLOWME &&\n' span_id:73) (Token id:Id.Lit_Chars val:'\t\ttest -z "$(git svn find-rev r2)"\n' span_id:74) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:75)
        )
      }
    )
    (C {(test_done)})
  ]
)