Rev 1091: Fix more tests. in file:///data/jelmer/bzr-svn/cext/

Jelmer Vernooij jelmer at samba.org
Sat Jun 14 03:29:27 BST 2008


At file:///data/jelmer/bzr-svn/cext/

------------------------------------------------------------
revno: 1091
revision-id: jelmer at samba.org-20080614022920-mporquaa4b1bcvt5
parent: jelmer at samba.org-20080609234037-ykhgv5kbhxhzjewc
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: cext
timestamp: Sat 2008-06-14 04:29:20 +0200
message:
  Fix more tests.
modified:
  commit.py                      commit.py-20060607190346-qvq128wgfubhhgm2-1
  editor.c                       editor.c-20080602191336-frj7az1sdk13o1tw-1
  mapping3/__init__.py           __init__.py-20080502174630-9324zh25kka98vlw-1
  transport.py                   transport.py-20060406231150-b3472d06b3a0818d
=== modified file 'commit.py'
--- a/commit.py	2008-06-05 18:08:34 +0000
+++ b/commit.py	2008-06-14 02:29:20 +0000
@@ -457,6 +457,7 @@
                     self.editor = conn.get_commit_editor(
                             self._svn_revprops, done, None, False)
                     self._svn_revprops = {}
+                    self.editor_active = True
                 except NotImplementedError:
                     if set_revprops:
                         raise
@@ -490,7 +491,7 @@
 
                 # Set all the revprops
                 for prop, value in self._svnprops.items():
-                    if not util.is_valid_property_name(prop):
+                    if not properties.is_valid_property_name(prop):
                         warning("Setting property %r with invalid characters in name" % prop)
                     if value is not None:
                         value = value.encode('utf-8')
@@ -501,7 +502,10 @@
                     dir_editor.close()
 
                 self.editor.close()
+                self.editor_active = False
             finally:
+                if self.editor_active:
+                    self.editor.abort()
                 self.repository.transport.add_connection(conn)
         finally:
             lock.unlock()

=== modified file 'editor.c'
--- a/editor.c	2008-06-05 10:37:24 +0000
+++ b/editor.c	2008-06-14 02:29:20 +0000
@@ -385,7 +385,7 @@
 		return NULL;
 	}
 
-	if (!PyArg_ParseTuple(args, "|i", &base_revision))
+	if (!PyArg_ParseTuple(args, "|l:open_root", &base_revision))
 		return NULL;
 
     if (!check_error(editor->editor->open_root(editor->baton, base_revision,

=== modified file 'mapping3/__init__.py'
--- a/mapping3/__init__.py	2008-06-05 18:22:19 +0000
+++ b/mapping3/__init__.py	2008-06-14 02:29:20 +0000
@@ -120,15 +120,12 @@
 
 
 def set_property_scheme(repository, scheme):
-    def done(revmetadata, pool):
-        pass
     editor = repository.transport.get_commit_editor(
-            {properties.PROP_REVISION_LOG: "Updating branching scheme for Bazaar."},
-            done, None, False)
-    root = editor.open_root(-1)
-    editor.change_dir_prop(root, SVN_PROP_BZR_BRANCHING_SCHEME, 
+            {properties.PROP_REVISION_LOG: "Updating branching scheme for Bazaar."})
+    root = editor.open_root()
+    root.change_prop(SVN_PROP_BZR_BRANCHING_SCHEME, 
             "".join(map(lambda x: x+"\n", scheme.branch_list)).encode("utf-8"))
-    editor.close_directory(root)
+    root.close()
     editor.close()
 
 

=== modified file 'transport.py'
--- a/transport.py	2008-06-05 18:22:19 +0000
+++ b/transport.py	2008-06-14 02:29:20 +0000
@@ -354,11 +354,21 @@
         finally:
             self.add_connection(conn)
 
-    def mkdir(self, relpath, mode=None):
+    def mkdir(self, relpath, message="Creating directory"):
         conn = self.get_connection()
         self.mutter('svn mkdir %s' % (relpath,))
         try:
-            return conn.mkdir(relpath, mode)
+            ce = conn.get_commit_editor({"svn:log": message})
+            node = ce.open_root(-1)
+            batons = relpath.split("/")
+            toclose = [node]
+            for i in range(len(batons)):
+                node = node.open_directory("/".join(batons[:i]), -1)
+                toclose.append(node)
+            toclose.append(node.add_directory(relpath, None, -1))
+            for c in reversed(toclose):
+                c.close()
+            ce.close()
         finally:
             self.add_connection(conn)
 
@@ -392,11 +402,11 @@
         finally:
             self.add_connection(conn)
 
-    def get_commit_editor(self, revprops, done_cb, lock_token, keep_locks):
+    def get_commit_editor(self, revprops, done_cb=None, 
+                          lock_token=None, keep_locks=False):
         conn = self._open_real_transport()
         self.mutter('svn get-commit-editor %r' % (revprops,))
-        return conn.get_commit_editor(revprops, done_cb,
-                                     lock_token, keep_locks)
+        return conn.get_commit_editor(revprops, done_cb, lock_token, keep_locks)
 
     def listable(self):
         """See Transport.listable().




More information about the bazaar-commits mailing list