def setSiteManager(plone): """ set a event for the plone siteManager inside the running torii-thread. This way we can use the full component architecture on the given plone instance. more info --> zope/site/site.txt """ ev = publication.interfaces.BeforeTraverseEvent(plone, plone.REQUEST) site.threadSiteSubscriber(plone, ev)
def test_setThreadSite_clearThreadSite(self): from zope.app.component.site import threadSiteSubscriber, clearSite from zope.app.publication.zopepublication import BeforeTraverseEvent self.assertEqual(getSite(), None) # A site is traversed sm = SiteManagerStub() site = Folder() site.setSiteManager(sm) ev = BeforeTraverseEvent(site, object()) threadSiteSubscriber(site, ev) self.assertEqual(getSite(), site) clearSite() self.assertEqual(getSite(), None)
def setSiteManager(plone): ev = BeforeTraverseEvent(plone, plone.REQUEST) site.threadSiteSubscriber(plone, ev)