# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: michael.hudson@canonical.com-20090310231237-\
#   rlcaj7qp96dn5jfz
# target_branch: http://bazaar-vcs.org/bzr/bzr.dev
# testament_sha1: bb7e305ef66258c4ff4e04db7f863281e3083900
# timestamp: 2009-03-11 12:16:12 +1300
# source_branch: bzr+ssh://bazaar.launchpad.net/~mwhudson/bzr/extract-\
#   make-branch-scenarios
# base_revision_id: pqm@pqm.ubuntu.com-20090310131846-8f45p0k6f0nftk31
# 
# Begin patch
=== modified file 'bzrlib/tests/branch_implementations/__init__.py'
--- bzrlib/tests/branch_implementations/__init__.py	2009-03-07 06:58:17 +0000
+++ bzrlib/tests/branch_implementations/__init__.py	2009-03-10 23:12:37 +0000
@@ -130,6 +130,36 @@
         return tree
 
 
+def branch_scenarios():
+    """Generate the list of scenarios to run the branch tests against."""
+    combinations = [(format, format._matchingbzrdir) for format in
+         BranchFormat._formats.values() + _legacy_formats]
+    scenarios = make_scenarios(
+        # None here will cause the default vfs transport server to be used.
+        None,
+        # None here will cause a readonly decorator to be created
+        # by the TestCaseWithTransport.get_readonly_transport method.
+        None,
+        combinations)
+    # Add RemoteBranch tests, which need a special server.
+    remote_branch_format = RemoteBranchFormat()
+    scenarios.extend(make_scenarios(
+        SmartTCPServer_for_testing,
+        ReadonlySmartTCPServer_for_testing,
+        [(remote_branch_format, remote_branch_format._matchingbzrdir)],
+        MemoryServer,
+        name_suffix='-default'))
+    # Also add tests for RemoteBranch with HPSS protocol v2 (i.e. bzr <1.6)
+    # server.
+    scenarios.extend(make_scenarios(
+        SmartTCPServer_for_testing_v2_only,
+        ReadonlySmartTCPServer_for_testing_v2_only,
+        [(remote_branch_format, remote_branch_format._matchingbzrdir)],
+        MemoryServer,
+        name_suffix='-v2'))
+    return scenarios
+
+
 def load_tests(standard_tests, module, loader):
     test_branch_implementations = [
         'bzrlib.tests.branch_implementations.test_bound_sftp',
@@ -161,32 +191,4 @@
         'bzrlib.tests.branch_implementations.test_update',
         ]
     sub_tests = loader.loadTestsFromModuleNames(test_branch_implementations)
-    # Generate a list of branch formats and their associated bzrdir formats to
-    # use.
-    combinations = [(format, format._matchingbzrdir) for format in
-         BranchFormat._formats.values() + _legacy_formats]
-    scenarios = make_scenarios(
-        # None here will cause the default vfs transport server to be used.
-        None,
-        # None here will cause a readonly decorator to be created
-        # by the TestCaseWithTransport.get_readonly_transport method.
-        None,
-        combinations)
-    # Add RemoteBranch tests, which need a special server.
-    remote_branch_format = RemoteBranchFormat()
-    scenarios.extend(make_scenarios(
-        SmartTCPServer_for_testing,
-        ReadonlySmartTCPServer_for_testing,
-        [(remote_branch_format, remote_branch_format._matchingbzrdir)],
-        MemoryServer,
-        name_suffix='-default'))
-    # Also add tests for RemoteBranch with HPSS protocol v2 (i.e. bzr <1.6)
-    # server.
-    scenarios.extend(make_scenarios(
-        SmartTCPServer_for_testing_v2_only,
-        ReadonlySmartTCPServer_for_testing_v2_only,
-        [(remote_branch_format, remote_branch_format._matchingbzrdir)],
-        MemoryServer,
-        name_suffix='-v2'))
-    # add the tests for the sub modules
-    return tests.multiply_tests(sub_tests, scenarios, standard_tests)
+    return tests.multiply_tests(sub_tests, branch_scenarios(), standard_tests)

# Begin bundle
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
