Rev 2131: Allow Repository tests to be backed onto a specific VFS as needed. in file:///home/robertc/source/baz/hpss/

Robert Collins robertc at robertcollins.net
Sat Feb 3 12:07:47 GMT 2007


------------------------------------------------------------
revno: 2131
revision-id: robertc at robertcollins.net-20070203120738-vyfg1kkskz2l4kiv
parent: robertc at robertcollins.net-20070203105906-x45jgz536cvunbbx
committer: Robert Collins <robertc at robertcollins.net>
branch nick: hpss
timestamp: Sat 2007-02-03 23:07:38 +1100
message:
  Allow Repository tests to be backed onto a specific VFS as needed.
modified:
  bzrlib/repository.py           rev_storage.py-20051111201905-119e9401e46257e3
  bzrlib/tests/test_selftest.py  test_selftest.py-20051202044319-c110a115d8c0456a
=== modified file 'bzrlib/repository.py'
--- a/bzrlib/repository.py	2007-02-03 10:59:06 +0000
+++ b/bzrlib/repository.py	2007-02-03 12:07:38 +0000
@@ -2252,9 +2252,11 @@
     to make it easy to identify.
     """
 
-    def __init__(self, transport_server, transport_readonly_server, formats):
+    def __init__(self, transport_server, transport_readonly_server, formats,
+        vfs_transport_factory=None):
         self._transport_server = transport_server
         self._transport_readonly_server = transport_readonly_server
+        self._vfs_transport_factory = vfs_transport_factory
         self._formats = formats
     
     def adapt(self, test):
@@ -2263,6 +2265,8 @@
             new_test = deepcopy(test)
             new_test.transport_server = self._transport_server
             new_test.transport_readonly_server = self._transport_readonly_server
+            if self._vfs_transport_factory:
+                new_test.vfs_transport_factory = self._vfs_transport_factory
             new_test.bzrdir_format = bzrdir_format
             new_test.repository_format = repository_format
             def make_new_test_id():

=== modified file 'bzrlib/tests/test_selftest.py'
--- a/bzrlib/tests/test_selftest.py	2007-02-01 01:49:08 +0000
+++ b/bzrlib/tests/test_selftest.py	2007-02-03 12:07:38 +0000
@@ -231,6 +231,19 @@
         self.assertEqual(tests[1].transport_server, server1)
         self.assertEqual(tests[1].transport_readonly_server, server2)
 
+    def test_setting_vfs_transport(self):
+        """The vfs_transport_factory can be set optionally."""
+        from bzrlib.repository import RepositoryTestProviderAdapter
+        input_test = TestRepositoryProviderAdapter(
+            "test_adapted_tests")
+        formats = [("c", "C")]
+        adapter = RepositoryTestProviderAdapter(None, None, formats,
+            vfs_transport_factory="vfs")
+        suite = adapter.adapt(input_test)
+        tests = list(iter(suite))
+        self.assertEqual(1, len(tests))
+        self.assertEqual(tests[0].vfs_transport_factory, "vfs")
+
 
 class TestInterRepositoryProviderAdapter(TestCase):
     """A group of tests that test the InterRepository test adapter."""



More information about the bazaar-commits mailing list