[Checkins] SVN: zope.component/tseaver-test_cleanup/ Coverage.

Tres Seaver cvs-admin at zope.org
Fri Jun 22 17:09:02 UTC 2012


Log message for revision 127034:
  Coverage.

Changed:
  _U  zope.component/tseaver-test_cleanup/
  U   zope.component/tseaver-test_cleanup/src/zope/component/_api.py
  U   zope.component/tseaver-test_cleanup/src/zope/component/tests/test__api.py

-=-
Modified: zope.component/tseaver-test_cleanup/src/zope/component/_api.py
===================================================================
--- zope.component/tseaver-test_cleanup/src/zope/component/_api.py	2012-06-22 17:08:55 UTC (rev 127033)
+++ zope.component/tseaver-test_cleanup/src/zope/component/_api.py	2012-06-22 17:08:59 UTC (rev 127034)
@@ -138,10 +138,7 @@
     return sitemanager.subscribers(objects, interface)
 
 def handle(*objects):
-    sitemanager = getSiteManager(None)
-    # iterating over subscribers assures they get executed
-    for ignored in sitemanager.subscribers(objects, None):
-        pass
+    getSiteManager(None).subscribers(objects, None)
 
 #############################################################################
 # Register the component architectures adapter hook, with the adapter hook

Modified: zope.component/tseaver-test_cleanup/src/zope/component/tests/test__api.py
===================================================================
--- zope.component/tseaver-test_cleanup/src/zope/component/tests/test__api.py	2012-06-22 17:08:55 UTC (rev 127033)
+++ zope.component/tseaver-test_cleanup/src/zope/component/tests/test__api.py	2012-06-22 17:08:59 UTC (rev 127034)
@@ -710,6 +710,43 @@
         self.assertEqual(subscribers, [])
 
 
+class Test_handle(unittest.TestCase):
+
+    from zope.component.testing import setUp, tearDown
+
+    def _callFUT(self, *args, **kw):
+        from zope.component import handle
+        return handle(*args, **kw)
+
+    def test_nonesuch(self):
+        from zope.interface import Interface
+        class IFoo(Interface):
+            pass
+        subscribers = self._callFUT((object,), IFoo) #doesn't raise
+
+    def test_hit(self):
+        from zope.component import getGlobalSiteManager
+        from zope.interface import Interface
+        from zope.interface import implementer
+        class IFoo(Interface):
+            pass
+        @implementer(IFoo)
+        class Foo(object):
+            pass
+        _called = []
+        def _bar(context):
+                _called.append('_bar')
+        def _baz(context):
+                _called.append('_baz')
+        gsm = getGlobalSiteManager()
+        gsm.registerHandler(_bar, (IFoo,))
+        gsm.registerHandler(_baz, (IFoo,))
+        self._callFUT(Foo())
+        self.assertEqual(len(_called), 2, _called)
+        self.assertTrue('_bar' in _called)
+        self.assertTrue('_baz' in _called)
+
+
 class Test_getUtility(unittest.TestCase):
 
     from zope.component.testing import setUp, tearDown
@@ -1008,6 +1045,7 @@
         unittest.makeSuite(Test_queryMultiAdapter),
         unittest.makeSuite(Test_getAdapters),
         unittest.makeSuite(Test_subscribers),
+        unittest.makeSuite(Test_handle),
         unittest.makeSuite(Test_getUtility),
         unittest.makeSuite(Test_queryUtility),
         unittest.makeSuite(Test_getUtilitiesFor),



More information about the checkins mailing list