[Zope-Checkins] SVN: Zope/trunk/lib/python/OFS/tests/testCopySupportEvents.py Repair (and simplify) tests in response to

2007-04-12 Thread Stefan H. Holek
Log message for revision 74109:
  Repair (and simplify) tests in response to
  http://www.zope.org/Collectors/Zope/2308.
  

Changed:
  U   Zope/trunk/lib/python/OFS/tests/testCopySupportEvents.py

-=-
Modified: Zope/trunk/lib/python/OFS/tests/testCopySupportEvents.py
===
--- Zope/trunk/lib/python/OFS/tests/testCopySupportEvents.py2007-04-12 
14:56:25 UTC (rev 74108)
+++ Zope/trunk/lib/python/OFS/tests/testCopySupportEvents.py2007-04-12 
18:19:57 UTC (rev 74109)
@@ -15,15 +15,7 @@
 
 from zope import interface
 from zope import component
-from zope.app.container.interfaces import IObjectAddedEvent
-from zope.app.container.interfaces import IObjectMovedEvent
-from zope.app.container.interfaces import IObjectRemovedEvent
-from zope.app.container.interfaces import IContainerModifiedEvent
-from zope.lifecycleevent.interfaces import IObjectCopiedEvent
-from OFS.interfaces import IObjectWillBeAddedEvent
-from OFS.interfaces import IObjectWillBeMovedEvent
-from OFS.interfaces import IObjectWillBeRemovedEvent
-from OFS.interfaces import IObjectClonedEvent
+from zope.component.interfaces import IObjectEvent
 
 from zope.testing import cleanup
 from Products.Five import zcml
@@ -35,7 +27,7 @@
 def reset(self):
 self._called = []
 def trace(self, ob, event):
-self._called.append((ob.getId(), event))
+self._called.append((ob.getId(), event.__class__.__name__))
 def called(self):
 return self._called
 
@@ -62,57 +54,6 @@
 pass # Always allow
 
 
-def objectAddedEvent(ob, event):
-eventlog.trace(ob, 'ObjectAddedEvent')
-
-def objectCopiedEvent(ob, event):
-eventlog.trace(ob, 'ObjectCopiedEvent')
-
-def objectMovedEvent(ob, event):
-if IObjectAddedEvent.providedBy(event):
-return
-if IObjectRemovedEvent.providedBy(event):
-return
-eventlog.trace(ob, 'ObjectMovedEvent')
-
-def objectRemovedEvent(ob, event):
-eventlog.trace(ob, 'ObjectRemovedEvent')
-
-def containerModifiedEvent(ob, event):
-eventlog.trace(ob, 'ContainerModifiedEvent')
-
-def objectWillBeAddedEvent(ob, event):
-eventlog.trace(ob, 'ObjectWillBeAddedEvent')
-
-def objectWillBeMovedEvent(ob, event):
-if IObjectWillBeAddedEvent.providedBy(event):
-return
-if IObjectWillBeRemovedEvent.providedBy(event):
-return
-eventlog.trace(ob, 'ObjectWillBeMovedEvent')
-
-def objectWillBeRemovedEvent(ob, event):
-eventlog.trace(ob, 'ObjectWillBeRemovedEvent')
-
-def objectClonedEvent(ob, event):
-eventlog.trace(ob, 'ObjectClonedEvent')
-
-
-def setUpItemSubscribers(interface):
-component.provideHandler(objectAddedEvent, (interface, IObjectAddedEvent))
-component.provideHandler(objectCopiedEvent, (interface, 
IObjectCopiedEvent))
-component.provideHandler(objectMovedEvent, (interface, IObjectMovedEvent))
-component.provideHandler(objectRemovedEvent, (interface, 
IObjectRemovedEvent))
-component.provideHandler(objectWillBeAddedEvent, (interface, 
IObjectWillBeAddedEvent))
-component.provideHandler(objectWillBeMovedEvent, (interface, 
IObjectWillBeMovedEvent))
-component.provideHandler(objectWillBeRemovedEvent, (interface, 
IObjectWillBeRemovedEvent))
-component.provideHandler(objectClonedEvent, (interface, 
IObjectClonedEvent))
-
-def setUpFolderSubscribers(interface):
-setUpItemSubscribers(interface)
-component.provideHandler(containerModifiedEvent, (interface, 
IContainerModifiedEvent))
-
-
 class EventLayer:
 
 @classmethod
@@ -120,8 +61,8 @@
 cleanup.cleanUp()
 zcml._initialized = 0
 zcml.load_site()
-setUpItemSubscribers(ITestItem)
-setUpFolderSubscribers(ITestFolder)
+component.provideHandler(eventlog.trace, (ITestItem, IObjectEvent))
+component.provideHandler(eventlog.trace, (ITestFolder, IObjectEvent))
 
 @classmethod
 def tearDown(cls):
@@ -271,19 +212,26 @@
 # Reset event log
 eventlog.reset()
 
+def assertEqual(self, first, second, msg=None):
+# XXX: Compare sets as the order of event handlers cannot be
+#  relied on between objects.
+if not set(first) == set(second):
+raise self.failureException, \
+(msg or '%r != %r' % (first, second))
+
 def test_1_Clone(self):
 # Test clone
 self.subfolder.manage_clone(self.folder.myfolder, 'myfolder')
 self.assertEqual(eventlog.called(),
-[('mydoc', 'ObjectCopiedEvent'),
- ('myfolder', 'ObjectCopiedEvent'),
- ('mydoc', 'ObjectWillBeAddedEvent'),
+[('myfolder', 'ObjectCopiedEvent'),
+ ('mydoc', 'ObjectCopiedEvent'),
  ('myfolder', 'ObjectWillBeAddedEvent'),
- ('mydoc', 'ObjectAddedEvent'),
+ ('mydoc', 'ObjectWillBeAddedEvent'),
  ('myfolder', 'ObjectAddedEvent'),
+ ('mydoc', 'ObjectAddedEvent'),
  

[Zope-Checkins] SVN: Zope/branches/2.10/lib/python/OFS/tests/testCopySupportEvents.py Merged trunk r74108:74109 into 2.10 branch.

2007-04-12 Thread Stefan H. Holek
Log message for revision 74110:
  Merged trunk r74108:74109 into 2.10 branch.
  
  Repair (and simplify) tests in response to
  http://www.zope.org/Collectors/Zope/2308.
  

Changed:
  U   Zope/branches/2.10/lib/python/OFS/tests/testCopySupportEvents.py

-=-
Modified: Zope/branches/2.10/lib/python/OFS/tests/testCopySupportEvents.py
===
--- Zope/branches/2.10/lib/python/OFS/tests/testCopySupportEvents.py
2007-04-12 18:19:57 UTC (rev 74109)
+++ Zope/branches/2.10/lib/python/OFS/tests/testCopySupportEvents.py
2007-04-12 18:33:59 UTC (rev 74110)
@@ -15,15 +15,7 @@
 
 from zope import interface
 from zope import component
-from zope.app.container.interfaces import IObjectAddedEvent
-from zope.app.container.interfaces import IObjectMovedEvent
-from zope.app.container.interfaces import IObjectRemovedEvent
-from zope.app.container.interfaces import IContainerModifiedEvent
-from zope.lifecycleevent.interfaces import IObjectCopiedEvent
-from OFS.interfaces import IObjectWillBeAddedEvent
-from OFS.interfaces import IObjectWillBeMovedEvent
-from OFS.interfaces import IObjectWillBeRemovedEvent
-from OFS.interfaces import IObjectClonedEvent
+from zope.component.interfaces import IObjectEvent
 
 from zope.testing import cleanup
 from Products.Five import zcml
@@ -35,7 +27,7 @@
 def reset(self):
 self._called = []
 def trace(self, ob, event):
-self._called.append((ob.getId(), event))
+self._called.append((ob.getId(), event.__class__.__name__))
 def called(self):
 return self._called
 
@@ -62,57 +54,6 @@
 pass # Always allow
 
 
-def objectAddedEvent(ob, event):
-eventlog.trace(ob, 'ObjectAddedEvent')
-
-def objectCopiedEvent(ob, event):
-eventlog.trace(ob, 'ObjectCopiedEvent')
-
-def objectMovedEvent(ob, event):
-if IObjectAddedEvent.providedBy(event):
-return
-if IObjectRemovedEvent.providedBy(event):
-return
-eventlog.trace(ob, 'ObjectMovedEvent')
-
-def objectRemovedEvent(ob, event):
-eventlog.trace(ob, 'ObjectRemovedEvent')
-
-def containerModifiedEvent(ob, event):
-eventlog.trace(ob, 'ContainerModifiedEvent')
-
-def objectWillBeAddedEvent(ob, event):
-eventlog.trace(ob, 'ObjectWillBeAddedEvent')
-
-def objectWillBeMovedEvent(ob, event):
-if IObjectWillBeAddedEvent.providedBy(event):
-return
-if IObjectWillBeRemovedEvent.providedBy(event):
-return
-eventlog.trace(ob, 'ObjectWillBeMovedEvent')
-
-def objectWillBeRemovedEvent(ob, event):
-eventlog.trace(ob, 'ObjectWillBeRemovedEvent')
-
-def objectClonedEvent(ob, event):
-eventlog.trace(ob, 'ObjectClonedEvent')
-
-
-def setUpItemSubscribers(interface):
-component.provideHandler(objectAddedEvent, (interface, IObjectAddedEvent))
-component.provideHandler(objectCopiedEvent, (interface, 
IObjectCopiedEvent))
-component.provideHandler(objectMovedEvent, (interface, IObjectMovedEvent))
-component.provideHandler(objectRemovedEvent, (interface, 
IObjectRemovedEvent))
-component.provideHandler(objectWillBeAddedEvent, (interface, 
IObjectWillBeAddedEvent))
-component.provideHandler(objectWillBeMovedEvent, (interface, 
IObjectWillBeMovedEvent))
-component.provideHandler(objectWillBeRemovedEvent, (interface, 
IObjectWillBeRemovedEvent))
-component.provideHandler(objectClonedEvent, (interface, 
IObjectClonedEvent))
-
-def setUpFolderSubscribers(interface):
-setUpItemSubscribers(interface)
-component.provideHandler(containerModifiedEvent, (interface, 
IContainerModifiedEvent))
-
-
 class EventLayer:
 
 @classmethod
@@ -120,8 +61,8 @@
 cleanup.cleanUp()
 zcml._initialized = 0
 zcml.load_site()
-setUpItemSubscribers(ITestItem)
-setUpFolderSubscribers(ITestFolder)
+component.provideHandler(eventlog.trace, (ITestItem, IObjectEvent))
+component.provideHandler(eventlog.trace, (ITestFolder, IObjectEvent))
 
 @classmethod
 def tearDown(cls):
@@ -271,19 +212,26 @@
 # Reset event log
 eventlog.reset()
 
+def assertEqual(self, first, second, msg=None):
+# XXX: Compare sets as the order of event handlers cannot be
+#  relied on between objects.
+if not set(first) == set(second):
+raise self.failureException, \
+(msg or '%r != %r' % (first, second))
+
 def test_1_Clone(self):
 # Test clone
 self.subfolder.manage_clone(self.folder.myfolder, 'myfolder')
 self.assertEqual(eventlog.called(),
-[#('mydoc', 'ObjectCopiedEvent'),
- ('myfolder', 'ObjectCopiedEvent'),
- ('mydoc', 'ObjectWillBeAddedEvent'),
+[('myfolder', 'ObjectCopiedEvent'),
+ #('mydoc', 'ObjectCopiedEvent'),
  ('myfolder', 'ObjectWillBeAddedEvent'),
- ('mydoc', 'ObjectAddedEvent'),
+ ('mydoc', 'ObjectWillBeAddedEvent'),