(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description) op: assign_op.Equal rhs: {(SQ <'git svn property tests'>)} spids: [13] ) ] redirects: [] ) (C {<.>} {<'./lib-git-svn.sh'>}) (C {<test_expect_success>} {(SQ <'setup repo with a git repo inside it'>)} { (SQ <'\n'> <'\tsvn_cmd co "$svnrepo" s &&\n'> <'\t(\n'> <'\t\tcd s &&\n'> <'\t\tgit init &&\n'> <'\t\ttest -f .git/HEAD &&\n'> <'\t\t> .git/a &&\n'> <'\t\techo a > a &&\n'> <'\t\tsvn_cmd add .git a &&\n'> <'\t\tsvn_cmd commit -m "create a nested git repo" &&\n'> <'\t\tsvn_cmd up &&\n'> <'\t\techo hi >> .git/a &&\n'> <'\t\tsvn_cmd commit -m "modify .git/a" &&\n'> <'\t\tsvn_cmd up\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'clone an SVN repo containing a git repo'>)} { (SQ <'\n'> <'\tgit svn clone "$svnrepo" g &&\n'> <'\techo a > expect &&\n'> <'\ttest_cmp expect g/a\n'> ) } ) (C {<test_expect_success>} {(SQ <'SVN-side change outside of .git'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd s &&\n'> <'\t\techo b >> a &&\n'> <'\t\tsvn_cmd commit -m "SVN-side change outside of .git" &&\n'> <'\t\tsvn_cmd up &&\n'> <'\t\tsvn_cmd log -v | fgrep "SVN-side change outside of .git"\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'update git svn-cloned repo'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd g &&\n'> <'\t\tgit svn rebase &&\n'> <'\t\techo a > expect &&\n'> <'\t\techo b >> expect &&\n'> <'\t\ttest_cmp a expect &&\n'> <'\t\trm expect\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'SVN-side change inside of .git'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd s &&\n'> <'\t\tgit add a &&\n'> <'\t\tgit commit -m "add a inside an SVN repo" &&\n'> <'\t\tgit log &&\n'> <'\t\tsvn_cmd add --force .git &&\n'> <'\t\tsvn_cmd commit -m "SVN-side change inside of .git" &&\n'> <'\t\tsvn_cmd up &&\n'> <'\t\tsvn_cmd log -v | fgrep "SVN-side change inside of .git"\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'update git svn-cloned repo'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd g &&\n'> <'\t\tgit svn rebase &&\n'> <'\t\techo a > expect &&\n'> <'\t\techo b >> expect &&\n'> <'\t\ttest_cmp a expect &&\n'> <'\t\trm expect\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'SVN-side change in and out of .git'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd s &&\n'> <'\t\techo c >> a &&\n'> <'\t\tgit add a &&\n'> <'\t\tgit commit -m "add a inside an SVN repo" &&\n'> <'\t\tsvn_cmd commit -m "SVN-side change in and out of .git" &&\n'> <'\t\tsvn_cmd up &&\n'> <'\t\tsvn_cmd log -v | fgrep "SVN-side change in and out of .git"\n'> <'\t)\n'> ) } ) (C {<test_expect_success>} {(SQ <'update git svn-cloned repo again'>)} { (SQ <'\n'> <'\t(\n'> <'\t\tcd g &&\n'> <'\t\tgit svn rebase &&\n'> <'\t\techo a > expect &&\n'> <'\t\techo b >> expect &&\n'> <'\t\techo c >> expect &&\n'> <'\t\ttest_cmp a expect &&\n'> <'\t\trm expect\n'> <'\t)\n'> ) } ) (C {<test_done>}) ] )