(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 multiple branch and tag paths in the svn repo' span_id: 15 ) ) } spids: [13] ) ] ) (C {(.)} {(./lib-git-svn.sh)}) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'setup svnrepo' span_id:26))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:30) (Token id:Id.Lit_Chars val:'\tmkdir\tproject \\\n' span_id:31) (Token id:Id.Lit_Chars val:'\t\tproject/trunk \\\n' span_id:32) (Token id:Id.Lit_Chars val:'\t\tproject/b_one \\\n' span_id:33) (Token id:Id.Lit_Chars val:'\t\tproject/b_two \\\n' span_id:34) (Token id:Id.Lit_Chars val:'\t\tproject/tags_A \\\n' span_id:35) (Token id:Id.Lit_Chars val:'\t\tproject/tags_B &&\n' span_id:36) (Token id:Id.Lit_Chars val:'\techo 1 > project/trunk/a.file &&\n' span_id:37) (Token id: Id.Lit_Chars val: '\tsvn_cmd import -m "$test_description" project "$svnrepo/project" &&\n' span_id: 38 ) (Token id:Id.Lit_Chars val:'\trm -rf project &&\n' span_id:39) (Token id: Id.Lit_Chars val: '\tsvn_cmd cp -m "Branch 1" "$svnrepo/project/trunk" \\\n' span_id: 40 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/b_one/first" &&\n' span_id:41) (Token id: Id.Lit_Chars val: '\tsvn_cmd cp -m "Tag 1" "$svnrepo/project/trunk" \\\n' span_id: 42 ) (Token id:Id.Lit_Chars val:'\t\t\t "$svnrepo/project/tags_A/1.0" &&\n' span_id:43) (Token id: Id.Lit_Chars val: '\tsvn_cmd co "$svnrepo/project" svn_project &&\n' span_id: 44 ) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:45) (Token id:Id.Lit_Chars val:'\t\techo 2 > trunk/a.file &&\n' span_id:46) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 1" trunk/a.file &&\n' span_id:47) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Branch 2" "$svnrepo/project/trunk" \\\n' span_id: 48 ) (Token id:Id.Lit_Chars val:'\t\t\t\t\t "$svnrepo/project/b_one/second" &&\n' span_id:49) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 2" "$svnrepo/project/trunk" \\\n' span_id: 50 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_A/2.0" &&\n' span_id:51) (Token id:Id.Lit_Chars val:'\t\techo 3 > trunk/a.file &&\n' span_id:52) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 2" trunk/a.file &&\n' span_id:53) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Branch 3" "$svnrepo/project/trunk" \\\n' span_id: 54 ) (Token id:Id.Lit_Chars val:'\t\t\t\t\t "$svnrepo/project/b_two/1" &&\n' span_id:55) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 3" "$svnrepo/project/trunk" \\\n' span_id: 56 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_A/3.0" &&\n' span_id:57) (Token id:Id.Lit_Chars val:'\t\techo 4 > trunk/a.file &&\n' span_id:58) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 3" trunk/a.file &&\n' span_id:59) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Branch 4" "$svnrepo/project/trunk" \\\n' span_id: 60 ) (Token id:Id.Lit_Chars val:'\t\t\t\t\t "$svnrepo/project/b_two/2" &&\n' span_id:61) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 4" "$svnrepo/project/trunk" \\\n' span_id: 62 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_A/4.0" &&\n' span_id:63) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd up &&\n' span_id:64) (Token id:Id.Lit_Chars val:'\t\techo 5 > b_one/first/a.file &&\n' span_id:65) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd ci -m "Change 4" b_one/first/a.file &&\n' span_id: 66 ) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 5" "$svnrepo/project/b_one/first" \\\n' span_id: 67 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_B/v5" &&\n' span_id:68) (Token id:Id.Lit_Chars val:'\t\techo 6 > b_one/second/a.file &&\n' span_id:69) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 5" b_one/second/a.file &&\n' span_id:70) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 6" "$svnrepo/project/b_one/second" \\\n' span_id: 71 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_B/v6" &&\n' span_id:72) (Token id:Id.Lit_Chars val:'\t\techo 7 > b_two/1/a.file &&\n' span_id:73) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 6" b_two/1/a.file &&\n' span_id:74) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 7" "$svnrepo/project/b_two/1" \\\n' span_id: 75 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_B/v7" &&\n' span_id:76) (Token id:Id.Lit_Chars val:'\t\techo 8 > b_two/2/a.file &&\n' span_id:77) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd ci -m "Change 7" b_two/2/a.file &&\n' span_id:78) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd cp -m "Tag 8" "$svnrepo/project/b_two/2" \\\n' span_id: 79 ) (Token id:Id.Lit_Chars val:'\t\t\t\t "$svnrepo/project/tags_B/v8"\n' span_id:80) (Token id:Id.Lit_Chars val:'\t)\n' span_id:81) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'clone multiple branch and tag paths' span_id:88))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:92) (Token id:Id.Lit_Chars val:'\tgit svn clone -T trunk \\\n' span_id:93) (Token id:Id.Lit_Chars val:'\t\t -b b_one/* --branches b_two/* \\\n' span_id:94) (Token id:Id.Lit_Chars val:'\t\t -t tags_A/* --tags tags_B \\\n' span_id:95) (Token id:Id.Lit_Chars val:'\t\t "$svnrepo/project" git_project &&\n' span_id:96) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:97) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/first &&\n' span_id:98) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/second &&\n' span_id: 99 ) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/1 &&\n' span_id:100) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/2 &&\n' span_id: 101 ) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/tags/1.0 &&\n' span_id:102) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/tags/2.0 &&\n' span_id: 103 ) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/tags/3.0 &&\n' span_id:104) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/tags/4.0 &&\n' span_id: 105 ) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/tags/v5 &&\n' span_id:106) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/tags/v6 &&\n' span_id: 107 ) (Token id:Id.Lit_Chars val:'\t\tgit rev-parse refs/remotes/origin/tags/v7 &&\n' span_id:108) (Token id: Id.Lit_Chars val: '\t\tgit rev-parse refs/remotes/origin/tags/v8\n' span_id: 109 ) (Token id:Id.Lit_Chars val:'\t)\n' span_id:110) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'Multiple branch or tag paths require -d' span_id:117))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:121) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:122) (Token id: Id.Lit_Chars val: '\t\ttest_must_fail git svn branch -m "No new branch" Nope &&\n' span_id: 123 ) (Token id:Id.Lit_Chars val:'\t\ttest_must_fail git svn tag -m "No new tag" Tagless &&\n' span_id:124) (Token id: Id.Lit_Chars val: '\t\ttest_must_fail git rev-parse refs/remotes/origin/Nope &&\n' span_id: 125 ) (Token id: Id.Lit_Chars val: '\t\ttest_must_fail git rev-parse refs/remotes/origin/tags/Tagless\n' span_id: 126 ) (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:127) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:128) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd up &&\n' span_id:129) (Token id: Id.Lit_Chars val: '\t\ttest_must_fail test -d b_one/Nope &&\n' span_id: 130 ) (Token id:Id.Lit_Chars val:'\t\ttest_must_fail test -d b_two/Nope &&\n' span_id:131) (Token id: Id.Lit_Chars val: '\t\ttest_must_fail test -d tags_A/Tagless &&\n' span_id: 132 ) (Token id:Id.Lit_Chars val:'\t\ttest_must_fail test -d tags_B/Tagless\n' span_id:133) (Token id:Id.Lit_Chars val:'\t)\n' span_id:134) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'create new branches and tags' span_id:141))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:145) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:146) (Token id:Id.Lit_Chars val:'\t\tgit svn branch -m "New branch 1" -d b_one New1 ) &&\n' span_id:147) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:148) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd up && test -e b_one/New1/a.file ) &&\n' span_id:149) (Token id:Id.Lit_Chars val:'\n' span_id:150) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:151) (Token id: Id.Lit_Chars val: '\t\tgit svn branch -m "New branch 2" -d b_two New2 ) &&\n' span_id: 152 ) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:153) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd up && test -e b_two/New2/a.file ) &&\n' span_id: 154 ) (Token id:Id.Lit_Chars val:'\n' span_id:155) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:156) (Token id:Id.Lit_Chars val:'\t\tgit svn branch -t -m "New tag 1" -d tags_A Tag1 ) &&\n' span_id:157) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:158) (Token id:Id.Lit_Chars val:'\t\tsvn_cmd up && test -e tags_A/Tag1/a.file ) &&\n' span_id:159) (Token id:Id.Lit_Chars val:'\n' span_id:160) (Token id:Id.Lit_Chars val:'\t( cd git_project &&\n' span_id:161) (Token id: Id.Lit_Chars val: '\t\tgit svn tag -m "New tag 2" -d tags_B Tag2 ) &&\n' span_id: 162 ) (Token id:Id.Lit_Chars val:'\t( cd svn_project &&\n' span_id:163) (Token id: Id.Lit_Chars val: '\t\tsvn_cmd up && test -e tags_B/Tag2/a.file )\n' span_id: 164 ) ) } ) (C {(test_done)}) ] )