[z3-checkins] r17810 - in z3/Five/branch/Five-1.1: . testing tests

efge at codespeak.net efge at codespeak.net
Sat Sep 24 11:12:59 CEST 2005


Author: efge
Date: Sat Sep 24 11:12:59 2005
New Revision: 17810

Modified:
   z3/Five/branch/Five-1.1/CHANGES.txt
   z3/Five/branch/Five-1.1/eventconfigure.py
   z3/Five/branch/Five-1.1/testing/simplecontent.py
   z3/Five/branch/Five-1.1/tests/event.txt
Log:
Merged 17809 from trunk:
Fixed manage_beforeDelete triggering for classes using five:sendEvents.

-This line, and those below, will be ignored--

M    tests/event.txt
M    testing/simplecontent.py
M    CHANGES.txt
M    eventconfigure.py


Modified: z3/Five/branch/Five-1.1/CHANGES.txt
==============================================================================
--- z3/Five/branch/Five-1.1/CHANGES.txt	(original)
+++ z3/Five/branch/Five-1.1/CHANGES.txt	Sat Sep 24 11:12:59 2005
@@ -11,6 +11,8 @@
 * FiveTraversable should only do a view lookup and not call the traverse 
   method of its superclass.
 
+* Fixed manage_beforeDelete triggering for classes using five:sendEvents.
+
 * The redefinePermission directive was falsely registered under the
   ``zope`` namespace, not the ``meta`` namespace as it is in Zope 3.
 

Modified: z3/Five/branch/Five-1.1/eventconfigure.py
==============================================================================
--- z3/Five/branch/Five-1.1/eventconfigure.py	(original)
+++ z3/Five/branch/Five-1.1/eventconfigure.py	Sat Sep 24 11:12:59 2005
@@ -79,9 +79,9 @@
 def manage_beforeDelete(self, item, container):
     notify(ObjectRemovedEvent(self))
     # call original
-    method = getattr(self, '__five_manage_beforeDelete', None)
+    method = getattr(self, '__five_original_manage_beforeDelete', None)
     if method is not None:
-        self._five_original_manage_beforeDelete(item, container)
+        self.__five_original_manage_beforeDelete(item, container)
 
 manage_beforeDelete.__five_method__ = True
 

Modified: z3/Five/branch/Five-1.1/testing/simplecontent.py
==============================================================================
--- z3/Five/branch/Five-1.1/testing/simplecontent.py	(original)
+++ z3/Five/branch/Five-1.1/testing/simplecontent.py	Sat Sep 24 11:12:59 2005
@@ -37,10 +37,19 @@
     meta_type = 'Five SimpleContent'
     security = ClassSecurityInfo()
 
+    afterAdd_called = False
+    beforeDelete_called = False
+
     def __init__(self, id, title):
         self.id = id
         self.title = title
 
+    def manage_afterAdd(self, item, container):
+        self.afterAdd_called = True
+
+    def manage_beforeDelete(self, item, container):
+        self.beforeDelete_called = True
+
     security.declarePublic('mymethod')
     def mymethod(self):
         return "Hello world"

Modified: z3/Five/branch/Five-1.1/tests/event.txt
==============================================================================
--- z3/Five/branch/Five-1.1/tests/event.txt	(original)
+++ z3/Five/branch/Five-1.1/tests/event.txt	Sat Sep 24 11:12:59 2005
@@ -79,6 +79,11 @@
   >>> events[0].newParent == foo.aq_parent
   True
 
+Check that the object's original manage_afterAdd method was also called:
+
+  >>> foo.afterAdd_called
+  True
+
 Now clean up:
 
   >>> clearEvents()
@@ -233,6 +238,9 @@
 -------------
 
   >>> manage_addSimpleContent(folder, 'foo', 'Foo')
+  >>> foo = folder.foo
+  >>> foo.beforeDelete_called
+  False
   >>> folder.manage_delObjects(['foo'])
 
   >>> events = getEvents()
@@ -242,6 +250,11 @@
   >>> events[1].object.id
   'foo'
 
+Check that the object's original manage_beforeDelete method was also called:
+
+  >>> foo.beforeDelete_called
+  True
+
   >>> clearEvents()
 
 


More information about the z3-checkins mailing list