(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 info' span_id:12))}
          spids: [10]
        )
      ]
    )
    (C {(.)} {(./lib-git-svn.sh)})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:v)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:28)
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {(svn_cmd)} {(--version)})
                          (C {(sed)} {(-n)} {(-e)} 
                            {
                              (SQ 
                                (Token
                                  id: Id.Lit_Chars
                                  val: 's/^svn, version \\(1\\.[0-9]*\\.[0-9]*\\).*$/\\1/p'
                                  span_id: 42
                                )
                              )
                            }
                          )
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
          spids: [27]
        )
      ]
    )
    (command.Case
      to_match: {($ Id.VSub_DollarName '$v')}
      arms: [
        (case_arm
          pat_list: [{(1.) (Id.Lit_LBracket '[') (456) (Id.Lit_RBracket ']') (.) (Id.Lit_Star '*')}]
          spids: [52 58 61 -1]
        )
        (case_arm
          pat_list: [{(Id.Lit_Star '*')}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:skip_all)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ('skipping svn-info test (SVN version: ') ($ Id.VSub_DollarName '$v') 
                        (' not supported)')
                      )
                    }
                  spids: [67]
                )
              ]
            )
            (C {(test_done)})
          ]
          spids: [63 64 78 -1]
        )
      ]
    )
    (command.ShFunction
      name: test_cmp_info
      body: 
        (command.BraceGroup
          children: [
            (command.Simple
              words: [
                {(sed)}
                {(-e)}
                {(SQ (Token id:Id.Lit_Chars val:'/^Text Last Updated:/d' span_id:105))}
                {(DQ ($ Id.VSub_Number '$1'))}
              ]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_Great val:'>' span_id:112)
                  fd: -1
                  arg_word: {(tmp.expect)}
                )
              ]
            )
            (command.Simple
              words: [
                {(sed)}
                {(-e)}
                {(SQ (Token id:Id.Lit_Chars val:'/^Text Last Updated:/d' span_id:121))}
                {(DQ ($ Id.VSub_Number '$2'))}
              ]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_Great val:'>' span_id:128)
                  fd: -1
                  arg_word: {(tmp.actual)}
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {(test_cmp)} {(tmp.expect)} {(tmp.actual)})
                (C {(rm)} {(-f)} {(tmp.expect)} {(tmp.actual)})
              ]
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:quoted_svnrepo)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (command_sub
                  left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:154)
                  command_list: 
                    (command.CommandList
                      children: [
                        (command.Pipeline
                          children: [
                            (C {(echo)} {($ Id.VSub_DollarName '$svnrepo')})
                            (C {(sed)} {(SQ (Token id:Id.Lit_Chars val:'s/ /%20/' span_id:164))})
                          ]
                          negated: F
                        )
                      ]
                    )
                )
              )
            }
          spids: [152]
        )
      ]
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'setup repository and import' span_id:173))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:177) 
          (Token id:Id.Lit_Chars val:'\tmkdir info &&\n' span_id:178) (Token id:Id.Lit_Chars val:'\t(\n' span_id:179) 
          (Token id:Id.Lit_Chars val:'\t\tcd info &&\n' span_id:180) (Token id:Id.Lit_Chars val:'\t\techo FIRST >A &&\n' span_id:181) 
          (Token id:Id.Lit_Chars val:'\t\techo one >file &&\n' span_id:182) (Token id:Id.Lit_Chars val:'\t\tln -s file symlink-file &&\n' span_id:183) 
          (Token id:Id.Lit_Chars val:'\t\tmkdir directory &&\n' span_id:184) (Token id:Id.Lit_Chars val:'\t\ttouch directory/.placeholder &&\n' span_id:185) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tln -s directory symlink-directory &&\n'
            span_id: 186
          ) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd import -m "initial" . "$svnrepo"\n' span_id:187) 
          (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:188) (Token id:Id.Lit_Chars val:'\tsvn_cmd co "$svnrepo" svnwc &&\n' span_id:189) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:190) (Token id:Id.Lit_Chars val:'\t\tcd svnwc &&\n' span_id:191) 
          (Token id:Id.Lit_Chars val:'\t\techo foo >foo &&\n' span_id:192) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd add foo &&\n' span_id:193) 
          (Token
            id: Id.Lit_Chars
            val: '\t\tsvn_cmd commit -m "change outside directory" &&\n'
            span_id: 194
          ) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd update\n' span_id:195) 
          (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:196) (Token id:Id.Lit_Chars val:'\tmkdir gitwc &&\n' span_id:197) 
          (Token id:Id.Lit_Chars val:'\t(\n' span_id:198) (Token id:Id.Lit_Chars val:'\t\tcd gitwc &&\n' span_id:199) 
          (Token id:Id.Lit_Chars val:'\t\tgit svn init "$svnrepo" &&\n' span_id:200) (Token id:Id.Lit_Chars val:'\t\tgit svn fetch\n' span_id:201) 
          (Token id:Id.Lit_Chars val:'\t)\n' span_id:202) (Token id:Id.Lit_Chars val:'\t' span_id:203)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:info span_id:210))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info) > expected.info &&\n') 
          ('\t(cd gitwc; git svn info) > actual.info &&\n') ('\ttest_cmp_info expected.info actual.info\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url' span_id:225))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:229) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url)" = "$quoted_svnrepo"\n'
            span_id: 230
          ) (Token id:Id.Lit_Chars val:'\t' span_id:231)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info .' span_id:238))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info .) > expected.info-dot &&\n') 
          ('\t(cd gitwc; git svn info .) > actual.info-dot &&\n') ('\ttest_cmp_info expected.info-dot actual.info-dot\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info $(pwd)' span_id:253))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:257) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd svnwc; svn info "$(pwd)") >expected.info-pwd &&\n'
            span_id: 258
          ) (Token id:Id.Lit_Chars val:'\t(cd gitwc; git svn info "$(pwd)") >actual.info-pwd &&\n' span_id:259) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep -v ^Path: <expected.info-pwd >expected.info-np &&\n'
            span_id: 260
          ) (Token id:Id.Lit_Chars val:'\tgrep -v ^Path: <actual.info-pwd >actual.info-np &&\n' span_id:261) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_cmp_info expected.info-np actual.info-np &&\n'
            span_id: 262
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(sed -ne \\"/^Path:/ s!/svnwc!!\\" <expected.info-pwd)" = \\\n'
            span_id: 263
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t     "$(sed -ne \\"/^Path:/ s!/gitwc!!\\" <actual.info-pwd)"\n'
            span_id: 264
          ) (Token id:Id.Lit_Chars val:'\t' span_id:265)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info $(pwd)/../___wc' span_id:272))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:276) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd svnwc; svn info "$(pwd)/../svnwc") >expected.info-pwd &&\n'
            span_id: 277
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; git svn info "$(pwd)/../gitwc") >actual.info-pwd &&\n'
            span_id: 278
          ) (Token id:Id.Lit_Chars val:'\tgrep -v ^Path: <expected.info-pwd >expected.info-np &&\n' span_id:279) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep -v ^Path: <actual.info-pwd >actual.info-np &&\n'
            span_id: 280
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp_info expected.info-np actual.info-np &&\n' span_id:281) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(sed -ne \\"/^Path:/ s!/svnwc!!\\" <expected.info-pwd)" = \\\n'
            span_id: 282
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t     "$(sed -ne \\"/^Path:/ s!/gitwc!!\\" <actual.info-pwd)"\n'
            span_id: 283
          ) (Token id:Id.Lit_Chars val:'\t' span_id:284)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info $(pwd)/../___wc//file' span_id:291))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:295) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd svnwc; svn info "$(pwd)/../svnwc//file") >expected.info-pwd &&\n'
            span_id: 296
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; git svn info "$(pwd)/../gitwc//file") >actual.info-pwd &&\n'
            span_id: 297
          ) (Token id:Id.Lit_Chars val:'\tgrep -v ^Path: <expected.info-pwd >expected.info-np &&\n' span_id:298) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep -v ^Path: <actual.info-pwd >actual.info-np &&\n'
            span_id: 299
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp_info expected.info-np actual.info-np &&\n' span_id:300) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(sed -ne \\"/^Path:/ s!/svnwc!!\\" <expected.info-pwd)" = \\\n'
            span_id: 301
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\t     "$(sed -ne \\"/^Path:/ s!/gitwc!!\\" <actual.info-pwd)"\n'
            span_id: 302
          ) (Token id:Id.Lit_Chars val:'\t' span_id:303)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url .' span_id:310))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:314) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url .)" = "$quoted_svnrepo"\n'
            span_id: 315
          ) (Token id:Id.Lit_Chars val:'\t' span_id:316)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info file' span_id:323))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info file) > expected.info-file &&\n') 
          ('\t(cd gitwc; git svn info file) > actual.info-file &&\n') ('\ttest_cmp_info expected.info-file actual.info-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url file' span_id:338))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:342) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url file)" = "$quoted_svnrepo/file"\n'
            span_id: 343
          ) (Token id:Id.Lit_Chars val:'\t' span_id:344)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info directory' span_id:351))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info directory) > expected.info-directory &&\n') 
          ('\t(cd gitwc; git svn info directory) > actual.info-directory &&\n') ('\ttest_cmp_info expected.info-directory actual.info-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info inside directory' span_id:366))} 
      {
        (DQ ('\n') ('\t(cd svnwc/directory; svn info) > expected.info-inside-directory &&\n') 
          ('\t(cd gitwc/directory; git svn info) > actual.info-inside-directory &&\n') ('\ttest_cmp_info expected.info-inside-directory actual.info-inside-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url directory' span_id:381))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:385) 
          (Token
            id: Id.Lit_Chars
            val: 
'\ttest "$(cd gitwc; git svn info --url directory)" = "$quoted_svnrepo/directory"\n'
            span_id: 386
          ) (Token id:Id.Lit_Chars val:'\t' span_id:387)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info symlink-file' span_id:394))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info symlink-file) > expected.info-symlink-file &&\n') 
          ('\t(cd gitwc; git svn info symlink-file) > actual.info-symlink-file &&\n') ('\ttest_cmp_info expected.info-symlink-file actual.info-symlink-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url symlink-file' span_id:409))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:413) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url symlink-file)" \\\n'
            span_id: 414
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/symlink-file"\n' span_id:415) 
          (Token id:Id.Lit_Chars val:'\t' span_id:416)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info symlink-directory' span_id:423))} 
      {
        (DQ ('\n') ('\t(cd svnwc; svn info symlink-directory) ') 
          ('\t\t> expected.info-symlink-directory &&\n') ('\t(cd gitwc; git svn info symlink-directory) ') ('\t\t> actual.info-symlink-directory &&\n') 
          ('\ttest_cmp_info expected.info-symlink-directory actual.info-symlink-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url symlink-directory' span_id:442))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:446) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url symlink-directory)" \\\n'
            span_id: 447
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/symlink-directory"\n' span_id:448) 
          (Token id:Id.Lit_Chars val:'\t' span_id:449)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info added-file' span_id:456))} 
      {
        (DQ ('\n') ('\techo two > gitwc/added-file &&\n') ('\t(\n') ('\t\tcd gitwc &&\n') 
          ('\t\tgit add added-file\n') ('\t) &&\n') ('\tcp gitwc/added-file svnwc/added-file &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') 
          ('\t\tsvn_cmd add added-file > /dev/null\n') ('\t) &&\n') ('\t(cd svnwc; svn info added-file) > expected.info-added-file &&\n') 
          ('\t(cd gitwc; git svn info added-file) > actual.info-added-file &&\n') ('\ttest_cmp_info expected.info-added-file actual.info-added-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url added-file' span_id:481))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:485) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url added-file)" \\\n'
            span_id: 486
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/added-file"\n' span_id:487) 
          (Token id:Id.Lit_Chars val:'\t' span_id:488)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info added-directory' span_id:495))} 
      {
        (DQ ('\n') ('\tmkdir gitwc/added-directory svnwc/added-directory &&\n') 
          ('\ttouch gitwc/added-directory/.placeholder &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tsvn_cmd add added-directory > /dev/null\n') ('\t) &&\n') ('\t(\n') 
          ('\t\tcd gitwc &&\n') ('\t\tgit add added-directory\n') ('\t) &&\n') ('\t(cd svnwc; svn info added-directory) ') 
          ('\t\t> expected.info-added-directory &&\n') ('\t(cd gitwc; git svn info added-directory) ') ('\t\t> actual.info-added-directory &&\n') 
          ('\ttest_cmp_info expected.info-added-directory actual.info-added-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url added-directory' span_id:524))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:528) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url added-directory)" \\\n'
            span_id: 529
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/added-directory"\n' span_id:530) 
          (Token id:Id.Lit_Chars val:'\t' span_id:531)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info added-symlink-file' span_id:538))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tln -s added-file added-symlink-file &&\n') 
          ('\t\tgit add added-symlink-file\n') ('\t) &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tln -s added-file added-symlink-file &&\n') 
          ('\t\tsvn_cmd add added-symlink-file > /dev/null\n') ('\t) &&\n') ('\t(cd svnwc; svn info added-symlink-file) ') 
          ('\t\t> expected.info-added-symlink-file &&\n') ('\t(cd gitwc; git svn info added-symlink-file) ') ('\t\t> actual.info-added-symlink-file &&\n') 
          ('\ttest_cmp_info expected.info-added-symlink-file ') ('\t\tactual.info-added-symlink-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url added-symlink-file' span_id:569))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:573) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url added-symlink-file)" \\\n'
            span_id: 574
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/added-symlink-file"\n' span_id:575) 
          (Token id:Id.Lit_Chars val:'\t' span_id:576)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info added-symlink-directory' span_id:583))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') 
          ('\t\tln -s added-directory added-symlink-directory &&\n') ('\t\tgit add added-symlink-directory\n') ('\t) &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') 
          ('\t\tln -s added-directory added-symlink-directory &&\n') ('\t\tsvn_cmd add added-symlink-directory > /dev/null\n') ('\t) &&\n') 
          ('\t(cd svnwc; svn info added-symlink-directory) ') ('\t\t> expected.info-added-symlink-directory &&\n') 
          ('\t(cd gitwc; git svn info added-symlink-directory) ') ('\t\t> actual.info-added-symlink-directory &&\n') 
          ('\ttest_cmp_info expected.info-added-symlink-directory ') ('\t\tactual.info-added-symlink-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url added-symlink-directory' span_id:614))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:618) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url added-symlink-directory)" \\\n'
            span_id: 619
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/added-symlink-directory"\n' span_id:620) 
          (Token id:Id.Lit_Chars val:'\t' span_id:621)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info deleted-file' span_id:628))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tgit rm -f file > /dev/null\n') ('\t) &&\n') 
          ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tsvn_cmd rm --force file > /dev/null\n') ('\t) &&\n') 
          ('\t(cd svnwc; svn info file) >expected.info-deleted-file &&\n') ('\t(cd gitwc; git svn info file) >actual.info-deleted-file &&\n') 
          ('\ttest_cmp_info expected.info-deleted-file actual.info-deleted-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url file (deleted)' span_id:651))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:655) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url file)" \\\n'
            span_id: 656
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/file"\n' span_id:657) 
          (Token id:Id.Lit_Chars val:'\t' span_id:658)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info deleted-directory' span_id:665))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tgit rm -r -f directory > /dev/null\n') 
          ('\t) &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tsvn_cmd rm --force directory > /dev/null\n') ('\t) &&\n') 
          ('\t(cd svnwc; svn info directory) >expected.info-deleted-directory &&\n') ('\t(cd gitwc; git svn info directory) >actual.info-deleted-directory &&\n') 
          ('\ttest_cmp_info expected.info-deleted-directory actual.info-deleted-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url directory (deleted)' span_id:688))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:692) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url directory)" \\\n'
            span_id: 693
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/directory"\n' span_id:694) 
          (Token id:Id.Lit_Chars val:'\t' span_id:695)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info deleted-symlink-file' span_id:702))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tgit rm -f symlink-file > /dev/null\n') 
          ('\t) &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tsvn_cmd rm --force symlink-file > /dev/null\n') ('\t) &&\n') 
          ('\t(cd svnwc; svn info symlink-file) >expected.info-deleted-symlink-file &&\n') ('\t(cd gitwc; git svn info symlink-file) >actual.info-deleted-symlink-file &&\n') 
          ('\ttest_cmp_info expected.info-deleted-symlink-file actual.info-deleted-symlink-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url symlink-file (deleted)' span_id:725))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:729) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url symlink-file)" \\\n'
            span_id: 730
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/symlink-file"\n' span_id:731) 
          (Token id:Id.Lit_Chars val:'\t' span_id:732)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info deleted-symlink-directory' span_id:739))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tgit rm -f symlink-directory > /dev/null\n') 
          ('\t) &&\n') ('\t(\n') ('\t\tcd svnwc &&\n') ('\t\tsvn_cmd rm --force symlink-directory > /dev/null\n') ('\t) &&\n') 
          ('\t(cd svnwc; svn info symlink-directory) >expected.info-deleted-symlink-directory &&\n') ('\t(cd gitwc; git svn info symlink-directory) >actual.info-deleted-symlink-directory &&\n') 
          (
'\ttest_cmp_info expected.info-deleted-symlink-directory actual.info-deleted-symlink-directory\n'
          ) ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url symlink-directory (deleted)' span_id:762))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:766) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest "$(cd gitwc; git svn info --url symlink-directory)" \\\n'
            span_id: 767
          ) (Token id:Id.Lit_Chars val:'\t     = "$quoted_svnrepo/symlink-directory"\n' span_id:768) 
          (Token id:Id.Lit_Chars val:'\t' span_id:769)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info unknown-file' span_id:783))} 
      {
        (DQ ('\n') ('\techo two > gitwc/unknown-file &&\n') 
          ('\t(cd gitwc; test_must_fail git svn info unknown-file) ') ('\t\t 2> actual.info-unknown-file &&\n') ('\tgrep unknown-file actual.info-unknown-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info --url unknown-file' span_id:800))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:804) 
          (Token id:Id.Lit_Chars val:'\techo two > gitwc/unknown-file &&\n' span_id:805) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; test_must_fail git svn info --url unknown-file) \\\n'
            span_id: 806
          ) (Token id:Id.Lit_Chars val:'\t\t 2> actual.info-url-unknown-file &&\n' span_id:807) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep unknown-file actual.info-url-unknown-file\n'
            span_id: 808
          ) (Token id:Id.Lit_Chars val:'\t' span_id:809)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'info unknown-directory' span_id:816))} 
      {
        (DQ ('\n') ('\tmkdir gitwc/unknown-directory svnwc/unknown-directory &&\n') 
          ('\t(cd gitwc; test_must_fail git svn info unknown-directory) ') ('\t\t 2> actual.info-unknown-directory &&\n') 
          ('\tgrep unknown-directory actual.info-unknown-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url unknown-directory' span_id:833))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:837) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; test_must_fail git svn info --url unknown-directory) \\\n'
            span_id: 838
          ) (Token id:Id.Lit_Chars val:'\t\t 2> actual.info-url-unknown-directory &&\n' span_id:839) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep unknown-directory actual.info-url-unknown-directory\n'
            span_id: 840
          ) (Token id:Id.Lit_Chars val:'\t' span_id:841)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info unknown-symlink-file' span_id:848))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') ('\t\tln -s unknown-file unknown-symlink-file\n') 
          ('\t) &&\n') ('\t(cd gitwc; test_must_fail git svn info unknown-symlink-file) ') 
          ('\t\t 2> actual.info-unknown-symlink-file &&\n') ('\tgrep unknown-symlink-file actual.info-unknown-symlink-file\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url unknown-symlink-file' span_id:868))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:872) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; test_must_fail git svn info --url unknown-symlink-file) \\\n'
            span_id: 873
          ) (Token id:Id.Lit_Chars val:'\t\t 2> actual.info-url-unknown-symlink-file &&\n' span_id:874) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep unknown-symlink-file actual.info-url-unknown-symlink-file\n'
            span_id: 875
          ) (Token id:Id.Lit_Chars val:'\t' span_id:876)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info unknown-symlink-directory' span_id:883))} 
      {
        (DQ ('\n') ('\t(\n') ('\t\tcd gitwc &&\n') 
          ('\t\tln -s unknown-directory unknown-symlink-directory\n') ('\t) &&\n') ('\t(cd gitwc; test_must_fail git svn info unknown-symlink-directory) ') 
          ('\t\t 2> actual.info-unknown-symlink-directory &&\n') ('\tgrep unknown-symlink-directory actual.info-unknown-symlink-directory\n') ('\t')
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'info --url unknown-symlink-directory' span_id:903))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:907) 
          (Token
            id: Id.Lit_Chars
            val: '\t(cd gitwc; test_must_fail git svn info --url unknown-symlink-directory) \\\n'
            span_id: 908
          ) (Token id:Id.Lit_Chars val:'\t\t 2> actual.info-url-unknown-symlink-directory &&\n' span_id:909) 
          (Token
            id: Id.Lit_Chars
            val: '\tgrep unknown-symlink-directory actual.info-url-unknown-symlink-directory\n'
            span_id: 910
          ) (Token id:Id.Lit_Chars val:'\t' span_id:911)
        )
      }
    )
    (C {(test_done)})
  ]
)