/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/interrepository_implementations/__init__.py

Merge from bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
rather than in tests/interrepository_implementations/*.py.
26
26
"""
27
27
 
 
28
 
 
29
from bzrlib.errors import (
 
30
    FileExists,
 
31
    UninitializableFormat,
 
32
    )
 
33
 
28
34
from bzrlib.repository import (
29
35
                               InterKnitRepo,
30
36
                               InterKnit1and2,
38
44
                          TestScenarioApplier,
39
45
                          TestSuite,
40
46
                          )
 
47
from bzrlib.tests.bzrdir_implementations.test_bzrdir import TestCaseWithBzrDir
 
48
from bzrlib.transport import get_transport
41
49
 
42
50
 
43
51
class InterRepositoryTestProviderAdapter(TestScenarioApplier):
119
127
        return result
120
128
 
121
129
 
 
130
class TestCaseWithInterRepository(TestCaseWithBzrDir):
 
131
 
 
132
    def setUp(self):
 
133
        super(TestCaseWithInterRepository, self).setUp()
 
134
 
 
135
    def make_branch(self, relpath, format=None):
 
136
        repo = self.make_repository(relpath, format=format)
 
137
        return repo.bzrdir.create_branch()
 
138
 
 
139
    def make_bzrdir(self, relpath, format=None):
 
140
        try:
 
141
            url = self.get_url(relpath)
 
142
            segments = url.split('/')
 
143
            if segments and segments[-1] not in ('', '.'):
 
144
                parent = '/'.join(segments[:-1])
 
145
                t = get_transport(parent)
 
146
                try:
 
147
                    t.mkdir(segments[-1])
 
148
                except FileExists:
 
149
                    pass
 
150
            if format is None:
 
151
                format = self.repository_format._matchingbzrdir
 
152
            return format.initialize(url)
 
153
        except UninitializableFormat:
 
154
            raise TestSkipped("Format %s is not initializable." % format)
 
155
 
 
156
    def make_repository(self, relpath, format=None):
 
157
        made_control = self.make_bzrdir(relpath, format=format)
 
158
        return self.repository_format.initialize(made_control)
 
159
 
 
160
    def make_to_repository(self, relpath):
 
161
        made_control = self.make_bzrdir(relpath,
 
162
            self.repository_format_to._matchingbzrdir)
 
163
        return self.repository_format_to.initialize(made_control)
 
164
 
 
165
 
122
166
def test_suite():
123
167
    result = TestSuite()
124
168
    test_interrepository_implementations = [
 
169
        'bzrlib.tests.interrepository_implementations.test_fetch',
125
170
        'bzrlib.tests.interrepository_implementations.test_interrepository',
126
171
        ]
127
172
    adapter = InterRepositoryTestProviderAdapter(