From: hannosch <svn...@pl...> - 2006-12-30 17:14:11
|
Author: hannosch Date: Sat Dec 30 17:14:06 2006 New Revision: 35205 Modified: PloneTestCase/trunk/CHANGES.txt PloneTestCase/trunk/setup.py Log: Expanded support for the local component registry. We register it now right after it has been created in Plone >= 3.0 as it is needed during site setup. Modified: PloneTestCase/trunk/CHANGES.txt ============================================================================== --- PloneTestCase/trunk/CHANGES.txt (original) +++ PloneTestCase/trunk/CHANGES.txt Sat Dec 30 17:14:06 2006 @@ -1,3 +1,6 @@ +- Expanded support for the local component registry. We register it now right + after it has been created in Plone >= 3.0 as it is needed during site setup. + 0.9.0 - Prepared for switching ZopeTestCase to Zope3 interfaces. - Load etc/site.zcml lazily instead of using the wrapper. Modified: PloneTestCase/trunk/setup.py ============================================================================== --- PloneTestCase/trunk/setup.py (original) +++ PloneTestCase/trunk/setup.py Sat Dec 30 17:14:06 2006 @@ -134,6 +134,16 @@ base_profile, extension_profiles).run() +if PLONE30: + def handleSiteManagerCreatedEvent(event): + """Event subscriber for ISiteManagerCreatedEvent events. + """ + # Set the local component registry + from zope.app.component.hooks import setSite, setHooks + setHooks() + setSite(event.object) + + class SiteSetup: '''Creates a Plone site and/or quickinstalls products into it.''' @@ -185,6 +195,12 @@ self._print('Adding Plone Site (%s) ... ' % (self.base_profile,)) else: self._print('Adding Plone Site ... ') + if PLONE30: + # Register event handler to activate the site manager on the portal + from zope.component import getGlobalSiteManager + from Products.CMFPlone.interfaces import ISiteManagerCreatedEvent + getGlobalSiteManager().registerHandler(handleSiteManagerCreatedEvent, + (ISiteManagerCreatedEvent, )) # Add Plone site factory = self.app.manage_addProduct['CMFPlone'] factory.addPloneSite(self.id, create_userfolder=1, snapshot=0, |