92
92
old_format.__class__)
95
class SampleRepositoryFormat(repository.RepositoryFormat):
95
class SampleRepositoryFormat(repository.RepositoryFormatMetaDir):
98
98
this format is initializable, unsupported to aid in testing the
99
99
open and open(unsupported=True) routines.
102
def get_format_string(self):
103
def get_format_string(cls):
103
104
"""See RepositoryFormat.get_format_string()."""
104
105
return "Sample .bzr repository format."
137
138
dir = format._matchingbzrdir.initialize(url)
138
139
format.initialize(dir)
139
140
t = transport.get_transport_from_path(url)
140
found_format = repository.RepositoryFormat.find_format(dir)
141
found_format = repository.RepositoryFormatMetaDir.find_format(dir)
141
142
self.assertIsInstance(found_format, format.__class__)
142
143
check_format(repository.format_registry.get_default(), "bar")
144
145
def test_find_format_no_repository(self):
145
146
dir = bzrdir.BzrDirMetaFormat1().initialize(self.get_url())
146
147
self.assertRaises(errors.NoRepositoryPresent,
147
repository.RepositoryFormat.find_format,
148
repository.RepositoryFormatMetaDir.find_format,
151
def test_from_string(self):
152
self.assertIsInstance(
153
SampleRepositoryFormat.from_string(
154
"Sample .bzr repository format."),
155
SampleRepositoryFormat)
156
self.assertRaises(ValueError,
157
SampleRepositoryFormat.from_string,
158
"Different .bzr repository format.")
150
160
def test_find_format_unknown_format(self):
151
161
dir = bzrdir.BzrDirMetaFormat1().initialize(self.get_url())
152
162
SampleRepositoryFormat().initialize(dir)
153
163
self.assertRaises(UnknownFormatError,
154
repository.RepositoryFormat.find_format,
164
repository.RepositoryFormatMetaDir.find_format,
157
167
def test_register_unregister_format(self):
439
449
class TestRepositoryFormat1(knitrepo.RepositoryFormatKnit1):
441
def get_format_string(self):
452
def get_format_string(cls):
442
453
return "Test Format 1"
445
456
class TestRepositoryFormat2(knitrepo.RepositoryFormatKnit1):
447
def get_format_string(self):
459
def get_format_string(cls):
448
460
return "Test Format 2"