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

Tres Seaver cvs-admin at zope.org
Mon Jun 25 04:04:47 UTC 2012


Log message for revision 127063:
  Coverage.

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

-=-
Modified: zope.component/tseaver-test_cleanup/src/zope/component/tests/test_hooks.py
===================================================================
--- zope.component/tseaver-test_cleanup/src/zope/component/tests/test_hooks.py	2012-06-25 04:04:39 UTC (rev 127062)
+++ zope.component/tseaver-test_cleanup/src/zope/component/tests/test_hooks.py	2012-06-25 04:04:43 UTC (rev 127063)
@@ -166,6 +166,52 @@
             self.assertTrue(siteinfo.sm is gsm)
 
 
+class Test_getSiteManager(unittest.TestCase):
+
+    def _callFUT(self, context=None):
+        from zope.component.hooks import getSiteManager
+        return getSiteManager(context)
+
+    def test_default(self):
+        from zope.component import hooks
+        from zope.component.globalregistry import getGlobalSiteManager
+        gsm = getGlobalSiteManager()
+        _SM2 = object()
+        siteinfo = _DummySiteInfo()
+        siteinfo.sm = _SM2
+        with _Monkey(hooks, siteinfo=siteinfo):
+            self.assertTrue(self._callFUT() is _SM2)
+
+    def test_w_explicit_context_no_IComponentLookup(self):
+        from zope.component import hooks
+        from zope.component.globalregistry import getGlobalSiteManager
+        gsm = getGlobalSiteManager()
+        _SM2 = object()
+        siteinfo = _DummySiteInfo()
+        siteinfo.sm = _SM2
+        with _Monkey(hooks, siteinfo=siteinfo):
+            self.assertTrue(self._callFUT(object()) is gsm)
+
+    def test_w_explicit_context_w_IComponentLookup(self):
+        from zope.interface import Interface
+        from zope.component import hooks
+        from zope.component.globalregistry import getGlobalSiteManager
+        from zope.component.interfaces import IComponentLookup
+        class _Lookup(object):
+            def __init__(self, context):
+                self.context = context
+        gsm = getGlobalSiteManager()
+        gsm.registerAdapter(_Lookup, (Interface,), IComponentLookup, '')
+        _SM2 = object()
+        siteinfo = _DummySiteInfo()
+        siteinfo.sm = _SM2
+        context = object()
+        with _Monkey(hooks, siteinfo=siteinfo):
+            sm = self._callFUT(context)
+        self.assertTrue(isinstance(sm, _Lookup))
+        self.assertTrue(sm.context is context)
+
+
 _SM = object()
 class _DummySiteInfo(object):
     sm = _SM
@@ -194,5 +240,6 @@
         unittest.makeSuite(Test_setSite),
         unittest.makeSuite(Test_getSite),
         unittest.makeSuite(Test_site),
+        unittest.makeSuite(Test_getSiteManager),
     ))
 



More information about the checkins mailing list