#!/bin/sh # Copyright (c) 2008 Marcus Griep global test_description := ''git svn multi-glob branch names'' source ./lib-git-svn.sh test_expect_success 'setup svnrepo' ' mkdir project project/trunk project/branches \ project/branches/v14.1 project/tags && echo foo > project/trunk/foo && svn_cmd import -m "$test_description" project "$svnrepo/project" && rm -rf project && svn_cmd cp -m "fun" "$svnrepo/project/trunk" \ "$svnrepo/project/branches/v14.1/beta" && svn_cmd cp -m "more fun!" "$svnrepo/project/branches/v14.1/beta" \ "$svnrepo/project/branches/v14.1/gold" ' test_expect_success 'test clone with multi-glob in branch names' ' git svn clone -T trunk -b branches/*/* -t tags \ "$svnrepo/project" project && (cd project && git rev-parse "refs/remotes/origin/v14.1/beta" && git rev-parse "refs/remotes/origin/v14.1/gold" ) ' test_expect_success 'test dcommit to multi-globbed branch' " (cd project && git reset --hard 'refs/remotes/origin/v14.1/gold' && echo hello >> foo && git commit -m 'hello' -- foo && git svn dcommit ) " test_done (CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <"git svn multi-glob branch names">)} spids: [7] ) ] spids: [7] ) (C {(.)} {(./lib-git-svn.sh)}) (C {(test_expect_success)} {(SQ <"setup svnrepo">)} { (SQ <"\n"> <"\tmkdir project project/trunk project/branches \\\n"> <"\t\t\tproject/branches/v14.1 project/tags &&\n"> <"\techo foo > project/trunk/foo &&\n"> <"\tsvn_cmd import -m \"$test_description\" project \"$svnrepo/project\" &&\n"> <"\trm -rf project &&\n"> <"\tsvn_cmd cp -m \"fun\" \"$svnrepo/project/trunk\" \\\n"> <"\t \"$svnrepo/project/branches/v14.1/beta\" &&\n"> <"\tsvn_cmd cp -m \"more fun!\" \"$svnrepo/project/branches/v14.1/beta\" \\\n"> <"\t \"$svnrepo/project/branches/v14.1/gold\"\n"> <"\t"> ) } ) (C {(test_expect_success)} {(SQ <"test clone with multi-glob in branch names">)} { (SQ <"\n"> <"\tgit svn clone -T trunk -b branches/*/* -t tags \\\n"> <"\t \"$svnrepo/project\" project &&\n"> <"\t(cd project &&\n"> <"\t\tgit rev-parse \"refs/remotes/origin/v14.1/beta\" &&\n"> <"\t\tgit rev-parse \"refs/remotes/origin/v14.1/gold\"\n"> <"\t)\n"> <"\t"> ) } ) (C {(test_expect_success)} {(SQ <"test dcommit to multi-globbed branch">)} { (DQ ("\n") ("\t(cd project &&\n") ("\tgit reset --hard 'refs/remotes/origin/v14.1/gold' &&\n") ("\techo hello >> foo &&\n") ("\tgit commit -m 'hello' -- foo &&\n") ("\tgit svn dcommit\n") ("\t)\n") ("\t") ) } ) (C {(test_done)}) ] )