Rev 2477: Merge BranchBuilder format support. in file:///home/robertc/source/baz/use-build-branch/

Robert Collins robertc at robertcollins.net
Fri Apr 27 07:48:05 BST 2007


At file:///home/robertc/source/baz/use-build-branch/

------------------------------------------------------------
revno: 2477
revision-id: robertc at robertcollins.net-20070427064802-35m9boexb4av6z65
parent: robertc at robertcollins.net-20070427034250-8gie8hxmx3e2cgc3
parent: robertc at robertcollins.net-20070427061629-hqnq6rocm9dgljhx
committer: Robert Collins <robertc at robertcollins.net>
branch nick: use-build-branch
timestamp: Fri 2007-04-27 16:48:02 +1000
message:
  Merge BranchBuilder format support.
modified:
  bzrlib/branchbuilder.py        branchbuilder.py-20070427022007-zlxpqz2lannhk6y8-1
  bzrlib/tests/test_branchbuilder.py test_branchbuilder.p-20070427022007-zlxpqz2lannhk6y8-2
    ------------------------------------------------------------
    revno: 2475.1.1
    merged: robertc at robertcollins.net-20070427061629-hqnq6rocm9dgljhx
    parent: robertc at robertcollins.net-20070427033909-bsuz8ogd7r75dbfl
    committer: Robert Collins <robertc at robertcollins.net>
    branch nick: build-branch
    timestamp: Fri 2007-04-27 16:16:29 +1000
    message:
      Add a format parameter to BranchBuilder.
=== modified file 'bzrlib/branchbuilder.py'
--- a/bzrlib/branchbuilder.py	2007-04-27 03:39:09 +0000
+++ b/bzrlib/branchbuilder.py	2007-04-27 06:16:29 +0000
@@ -34,17 +34,21 @@
       branch = builder.get_branch()
     """
 
-    def __init__(self, transport):
+    def __init__(self, transport, format=None):
         """Construct a BranchBuilder on transport.
         
         :param transport: The transport the branch should be created on.
             If the path of the transport does not exist but its parent does
             it will be created.
+        :param format: The name of a format in the bzrdir format registry
+            for the branch to be built.
         """
         if not transport.has('.'):
             transport.mkdir('.')
+        if format is None:
+            format = 'default'
         self._branch = bzrdir.BzrDir.create_branch_convenience(transport.base,
-            format=bzrdir.format_registry.make_bzrdir('default'))
+            format=bzrdir.format_registry.make_bzrdir(format))
 
     def build_commit(self):
         """Build a commit on the branch."""

=== modified file 'bzrlib/tests/test_branchbuilder.py'
--- a/bzrlib/tests/test_branchbuilder.py	2007-04-27 03:39:09 +0000
+++ b/bzrlib/tests/test_branchbuilder.py	2007-04-27 06:16:29 +0000
@@ -42,6 +42,12 @@
             (0, _mod_revision.NULL_REVISION),
             branch.last_revision_info())
 
+    def test_format(self):
+        """Making a BranchBuilder with a format option sets the branch type."""
+        builder = BranchBuilder(self.get_transport(), format='dirstate-tags')
+        branch = builder.get_branch()
+        self.assertIsInstance(branch, _mod_branch.BzrBranch6)
+
     def test_build_one_commit(self):
         """doing build_commit causes a commit to happen."""
         builder = BranchBuilder(self.get_transport().clone('foo'))



More information about the bazaar-commits mailing list