Skip to content

Instantly share code, notes, and snippets.

@hvelarde
Last active February 28, 2018 13:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hvelarde/567edc327429eea912b5b6e18000a6e4 to your computer and use it in GitHub Desktop.
Save hvelarde/567edc327429eea912b5b6e18000a6e4 to your computer and use it in GitHub Desktop.
Spoofing request when running Zope from the command line
from plone import api
from zope.component.hooks import setSite
import transaction
def spoof_request(app):
from AccessControl.SecurityManagement import newSecurityManager
from AccessControl.SecurityManager import setSecurityPolicy
from Testing.makerequest import makerequest
from Products.CMFCore.tests.base.security import OmnipotentUser
from Products.CMFCore.tests.base.security import PermissiveSecurityPolicy
_policy = PermissiveSecurityPolicy()
_oldpolicy = setSecurityPolicy(_policy)
newSecurityManager(None, OmnipotentUser().__of__(app.acl_users))
return makerequest(app)
app = spoof_request(app)
site = app['Plone']
setSite(site)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment