[Zope-CVS] CVS: Packages/pypes/pypes/tests - test_identity.py:1.7
Casey Duncan
casey at zope.com
Tue Feb 10 22:57:46 EST 2004
Update of /cvs-repository/Packages/pypes/pypes/tests
In directory cvs.zope.org:/tmp/cvs-serv11030/tests
Modified Files:
test_identity.py
Log Message:
Change remove() so that the id is removed after the event is fired
=== Packages/pypes/pypes/tests/test_identity.py 1.6 => 1.7 ===
--- Packages/pypes/pypes/tests/test_identity.py:1.6 Mon Feb 9 16:14:58 2004
+++ Packages/pypes/pypes/tests/test_identity.py Tue Feb 10 22:57:45 2004
@@ -247,7 +247,38 @@
self.identity.remove(o)
msg, = tl.received
self.failUnless(msg.object is o)
- self.failUnless(msg.id is id)
+ self.failUnless(msg.id is id)
+
+ def testObjectStillHasIdDuringIdUnregisteredEvent(self):
+ from pypes import services
+ from pypes.identity import pypesid, IdUnregisteredMessage
+ from pypes.exceptions import VetoEvent
+ event = services.event(self.conn)
+ event.registerListener(self, 'confirmId', IdUnregisteredMessage)
+ o = self._newObj()
+ self.identity.remove(o)
+ self.failUnless(o.was_received)
+ self.assertEqual(pypesid(o), None)
+
+ def confirmId(self, message):
+ from pypes.identity import pypesid
+ self.assertEqual(message.id, pypesid(message.object))
+ message.object.was_received = True
+
+ def testObjectKeepsIdIfUnregisteredEventVetoed(self):
+ from pypes import services
+ from pypes.identity import pypesid, IdUnregisteredMessage
+ from pypes.exceptions import VetoEvent
+ event = services.event(self.conn)
+ event.registerListener(self, 'veto', IdUnregisteredMessage)
+ o = self._newObj()
+ id = pypesid(o)
+ self.assertRaises(VetoEvent, self.identity.remove, o)
+ self.assertEqual(pypesid(o), id)
+
+ def veto(self, message):
+ from pypes.exceptions import VetoEvent
+ raise VetoEvent
def testIdUnregisteredEventMultiple(self):
from pypes import services
More information about the Zope-CVS
mailing list