216
215
from bzrlib.tests.per_repository import formats_to_scenarios
217
216
formats = [("(c)", remote.RemoteRepositoryFormat()),
218
217
("(d)", repository.format_registry.get(
219
'Bazaar repository format 2a (needs bzr 1.16 or later)\n'))]
218
'Bazaar pack repository format 1 (needs bzr 0.92)\n'))]
220
219
no_vfs_scenarios = formats_to_scenarios(formats, "server", "readonly",
222
221
vfs_scenarios = formats_to_scenarios(formats, "server", "readonly",
223
222
vfs_transport_factory="vfs")
224
223
# no_vfs generate scenarios without vfs_transport_factory
226
225
('RemoteRepositoryFormat(c)',
227
226
{'bzrdir_format': remote.RemoteBzrDirFormat(),
228
227
'repository_format': remote.RemoteRepositoryFormat(),
229
228
'transport_readonly_server': 'readonly',
230
229
'transport_server': 'server'}),
231
('RepositoryFormat2a(d)',
230
('RepositoryFormatKnitPack1(d)',
232
231
{'bzrdir_format': bzrdir.BzrDirMetaFormat1(),
233
'repository_format': groupcompress_repo.RepositoryFormat2a(),
232
'repository_format': pack_repo.RepositoryFormatKnitPack1(),
234
233
'transport_readonly_server': 'readonly',
235
'transport_server': 'server'})]
236
self.assertEqual(expected, no_vfs_scenarios)
234
'transport_server': 'server'})],
237
236
self.assertEqual([
238
237
('RemoteRepositoryFormat(c)',
239
238
{'bzrdir_format': remote.RemoteBzrDirFormat(),
241
240
'transport_readonly_server': 'readonly',
242
241
'transport_server': 'server',
243
242
'vfs_transport_factory': 'vfs'}),
244
('RepositoryFormat2a(d)',
243
('RepositoryFormatKnitPack1(d)',
245
244
{'bzrdir_format': bzrdir.BzrDirMetaFormat1(),
246
'repository_format': groupcompress_repo.RepositoryFormat2a(),
245
'repository_format': pack_repo.RepositoryFormatKnitPack1(),
247
246
'transport_readonly_server': 'readonly',
248
247
'transport_server': 'server',
249
248
'vfs_transport_factory': 'vfs'})],
999
998
runner = tests.TextTestRunner(stream=stream)
1000
999
result = self.run_test_runner(runner, test)
1001
1000
lines = stream.getvalue().splitlines()
1002
self.assertContainsRe(stream.getvalue(),
1005
'^======================================================================\n'
1006
'^FAIL: unittest.FunctionTestCase \\(failing_test\\)\n'
1007
'^----------------------------------------------------------------------\n'
1008
'Traceback \\(most recent call last\\):\n'
1009
' .*' # File .*, line .*, in failing_test' - but maybe not from .pyc
1010
' raise AssertionError\\(\'foo\'\\)\n'
1012
'^----------------------------------------------------------------------\n'
1014
'FAILED \\(failures=1, known_failure_count=1\\)'
1003
'======================================================================',
1004
'FAIL: unittest.FunctionTestCase (failing_test)',
1005
'----------------------------------------------------------------------',
1006
'Traceback (most recent call last):',
1007
' raise AssertionError(\'foo\')',
1008
'AssertionError: foo',
1010
'----------------------------------------------------------------------',
1012
'FAILED (failures=1, known_failure_count=1)'],
1013
lines[3:8] + lines[9:13] + lines[14:])
1017
1015
def test_known_failure_ok_run(self):
1018
1016
# run a test that generates a known failure which should be printed in the final output.