diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-12-18 00:27:59 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-12-18 00:28:16 -0800 |
commit | 03f94ae9f909952ed5a78917ab319a312889354b (patch) | |
tree | 0fd041e8b390bd0d2a960ae629d8e965d363de92 /t/t9128-git-svn-cmd-branch.sh | |
parent | 2c47789d817aaf745a5ce5d5f79619c634cc8566 (diff) | |
parent | 81b50f3ce40bfdd66e5d967bf82be001039a9a98 (diff) | |
download | git-jk/maint-strbuf-missing-init.tar.gz |
Update jk/maint-strbuf-missing-init to builtin/ renamejk/maint-strbuf-missing-init
Diffstat (limited to 't/t9128-git-svn-cmd-branch.sh')
-rwxr-xr-x | t/t9128-git-svn-cmd-branch.sh | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/t/t9128-git-svn-cmd-branch.sh b/t/t9128-git-svn-cmd-branch.sh new file mode 100755 index 0000000000..807e494a3a --- /dev/null +++ b/t/t9128-git-svn-cmd-branch.sh @@ -0,0 +1,78 @@ +#!/bin/sh +# +# Copyright (c) 2008 Deskin Miller +# + +test_description='git svn partial-rebuild tests' +. ./lib-git-svn.sh + +test_expect_success 'initialize svnrepo' ' + mkdir import && + ( + cd import && + mkdir trunk branches tags && + cd trunk && + echo foo > foo && + cd .. && + svn_cmd import -m "import for git-svn" . "$svnrepo" >/dev/null && + cd .. && + rm -rf import && + svn_cmd co "$svnrepo"/trunk trunk && + cd trunk && + echo bar >> foo && + svn_cmd ci -m "updated trunk" && + cd .. && + rm -rf trunk + ) +' + +test_expect_success 'import into git' ' + git svn init --stdlayout "$svnrepo" && + git svn fetch && + git checkout remotes/trunk +' + +test_expect_success 'git svn branch tests' ' + git svn branch a && + base=$(git rev-parse HEAD:) && + test $base = $(git rev-parse remotes/a:) && + git svn branch -m "created branch b blah" b && + test $base = $(git rev-parse remotes/b:) && + test_must_fail git branch -m "no branchname" && + git svn branch -n c && + test_must_fail git rev-parse remotes/c && + test_must_fail git svn branch a && + git svn branch -t tag1 && + test $base = $(git rev-parse remotes/tags/tag1:) && + git svn branch --tag tag2 && + test $base = $(git rev-parse remotes/tags/tag2:) && + git svn tag tag3 && + test $base = $(git rev-parse remotes/tags/tag3:) && + git svn tag -m "created tag4 foo" tag4 && + test $base = $(git rev-parse remotes/tags/tag4:) && + test_must_fail git svn tag -m "no tagname" && + git svn tag -n tag5 && + test_must_fail git rev-parse remotes/tags/tag5 && + test_must_fail git svn tag tag1 +' + +test_expect_success 'branch uses correct svn-remote' ' + (svn_cmd co "$svnrepo" svn && + cd svn && + mkdir mirror && + svn_cmd add mirror && + svn_cmd copy trunk mirror/ && + svn_cmd copy tags mirror/ && + svn_cmd copy branches mirror/ && + svn_cmd ci -m "made mirror" ) && + rm -rf svn && + git svn init -s -R mirror --prefix=mirror/ "$svnrepo"/mirror && + git svn fetch -R mirror && + git checkout mirror/trunk && + base=$(git rev-parse HEAD:) && + git svn branch -m "branch in mirror" d && + test $base = $(git rev-parse remotes/mirror/d:) && + test_must_fail git rev-parse remotes/d +' + +test_done |