1 # Copyright (C) 2006 Jelmer Vernooij <jelmer@samba.org>
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
13 # You should have received a copy of the GNU General Public License
14 # along with this program; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 from bzrlib.bzrdir import BzrDir
18 from bzrlib.delta import compare_trees
19 from bzrlib.errors import NotBranchError
20 from bzrlib.repository import Repository
23 from convert import convert_repository
24 from scheme import TrunkBranchingScheme
25 from tests import TestCaseWithSubversionRepository
27 class TestConversion(TestCaseWithSubversionRepository):
29 super(TestConversion, self).setUp()
30 self.repos_url = self.make_client('d', 'dc')
31 self.build_tree({'dc/trunk/file': 'data', 'dc/branches/abranch/anotherfile': 'data2'})
32 self.client_add("dc/trunk")
33 self.client_add("dc/branches")
34 self.client_commit("dc", "create repos")
35 self.build_tree({'dc/trunk/file': 'otherdata'})
36 self.client_commit("dc", "change")
38 def test_shared_import(self):
39 convert_repository("svn+"+self.repos_url, "e",
40 TrunkBranchingScheme(), True)
42 self.assertTrue(Repository.open("e").is_shared())
44 def test_simple(self):
45 convert_repository("svn+"+self.repos_url, os.path.join(self.test_dir, "e"), TrunkBranchingScheme())
46 self.assertTrue(os.path.isdir(os.path.join(self.test_dir, "e", "trunk")))
47 self.assertTrue(os.path.isdir(os.path.join(self.test_dir, "e", "branches", "abranch")))
49 def test_notshared_import(self):
50 convert_repository("svn+"+self.repos_url, "e", TrunkBranchingScheme(),
53 self.assertRaises(NotBranchError, Repository.open, "e")