(command.CommandList children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:test_description) op: Equal rhs: {(SQ <'git svn mergeinfo propagation'>)} ) ] ) (C {(.)} {(./lib-git-svn.sh)}) (C {(test_expect_success)} {(SQ <'initialize source svn repo'>)} { (SQ <'\n'> <'\tsvn_cmd mkdir -m x "$svnrepo"/trunk &&\n'> <'\tsvn_cmd co "$svnrepo"/trunk "$SVN_TREE" &&\n'> <'\t(\n'> <'\t\tcd "$SVN_TREE" &&\n'> <'\t\ttouch foo &&\n'> <'\t\tsvn_cmd add foo &&\n'> <'\t\tsvn_cmd commit -m "initial commit"\n'> <'\t) &&\n'> <'\trm -rf "$SVN_TREE"\n'> ) } ) (C {(test_expect_success)} {(SQ <'clone svn repo'>)} {(SQ <'\n'> <'\tgit svn init "$svnrepo"/trunk &&\n'> <'\tgit svn fetch\n'>)} ) (C {(test_expect_success)} {(SQ <'change svn:mergeinfo'>)} { (SQ <'\n'> <'\ttouch bar &&\n'> <'\tgit add bar &&\n'> <'\tgit commit -m "bar" &&\n'> <'\tgit svn dcommit --mergeinfo="/branches/foo:1-10"\n'> ) } ) (C {(test_expect_success)} {(SQ <'verify svn:mergeinfo'>)} { (SQ <'\n'> <'\tmergeinfo=$(svn_cmd propget svn:mergeinfo "$svnrepo"/trunk) &&\n'> <'\ttest "$mergeinfo" = "/branches/foo:1-10"\n'> ) } ) (C {(test_expect_success)} {(SQ <'change svn:mergeinfo multiline'>)} { (SQ <'\n'> <'\ttouch baz &&\n'> <'\tgit add baz &&\n'> <'\tgit commit -m "baz" &&\n'> <'\tgit svn dcommit --mergeinfo="/branches/bar:1-10 /branches/other:3-5,8,10-11"\n'> ) } ) (C {(test_expect_success)} {(SQ <'verify svn:mergeinfo multiline'>)} { (SQ <'\n'> <'\tmergeinfo=$(svn_cmd propget svn:mergeinfo "$svnrepo"/trunk) &&\n'> <'\ttest "$mergeinfo" = "/branches/bar:1-10\n'> <'/branches/other:3-5,8,10-11"\n'> ) } ) (C {(test_done)}) ] )