~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_selftest.py

First cut at pluralised VersionedFiles. Some rather massive API incompatabilities, primarily because of the difficulty of coherence among competing stores.

Show diffs side-by-side

added added

removed removed

Lines of Context:
396
396
            adapter.formats_to_scenarios(formats))
397
397
 
398
398
 
399
 
class TestInterVersionedFileProviderAdapter(TestCase):
400
 
    """A group of tests that test the InterVersionedFile test adapter."""
401
 
 
402
 
    def test_scenarios(self):
403
 
        # check that constructor parameters are passed through to the adapted
404
 
        # test.
405
 
        from bzrlib.tests.interversionedfile_implementations \
406
 
            import InterVersionedFileTestProviderAdapter
407
 
        server1 = "a"
408
 
        server2 = "b"
409
 
        formats = [(str, "C1", "C2"), (int, "D1", "D2")]
410
 
        adapter = InterVersionedFileTestProviderAdapter(server1, server2, formats)
411
 
        self.assertEqual([
412
 
            ('str',
413
 
             {'interversionedfile_class':str,
414
 
              'transport_readonly_server': 'b',
415
 
              'transport_server': 'a',
416
 
              'versionedfile_factory': 'C1',
417
 
              'versionedfile_factory_to': 'C2'}),
418
 
            ('int',
419
 
             {'interversionedfile_class': int,
420
 
              'transport_readonly_server': 'b',
421
 
              'transport_server': 'a',
422
 
              'versionedfile_factory': 'D1',
423
 
              'versionedfile_factory_to': 'D2'})],
424
 
            adapter.scenarios)
425
 
 
426
 
 
427
 
class TestRevisionStoreProviderAdapter(TestCase):
428
 
    """A group of tests that test the RevisionStore test adapter."""
429
 
 
430
 
    def test_scenarios(self):
431
 
        # check that constructor parameters are passed through to the adapted
432
 
        # test.
433
 
        from bzrlib.tests.revisionstore_implementations \
434
 
            import RevisionStoreTestProviderAdapter
435
 
        # revision stores need a store factory - i.e. RevisionKnit
436
 
        #, a readonly and rw transport 
437
 
        # transport servers:
438
 
        server1 = "a"
439
 
        server2 = "b"
440
 
        store_factories = ["c", "d"]
441
 
        adapter = RevisionStoreTestProviderAdapter(server1, server2, store_factories)
442
 
        self.assertEqual([
443
 
            ('c',
444
 
             {'store_factory': 'c',
445
 
              'transport_readonly_server': 'b',
446
 
              'transport_server': 'a'}),
447
 
            ('d',
448
 
             {'store_factory': 'd',
449
 
              'transport_readonly_server': 'b',
450
 
              'transport_server': 'a'})],
451
 
            adapter.scenarios)
452
 
 
453
 
 
454
399
class TestWorkingTreeProviderAdapter(TestCase):
455
400
    """A group of tests that test the workingtree implementation test adapter."""
456
401