1. 03 Mar, 2023 7 commits
    • Jérome Perrin's avatar
      ERP5Type/tests: support Zope4's Testing.makerequest.makerequest · e216cccd
      Jérome Perrin authored
      On Zope2, there was support for starting a ZServer (in
      Testing.ZopeTestCase.utils.startZServer) and there was another makerequest
      (in Testing.ZopeTestCase.utils.makerequest) which had knowledge of this
      ZServer address. We are using our own implementation of startZServer,
      which also knows how to start a WSGI server, but we we were interacting
      with Testing.ZopeTestCase.utils so that its makerequest knows about
      our web server.
      
      On Zope4 there is no utility to start an http server from the tests and
      the makerequest is also gone.
      
      This revisits the web server from test interaction with makerequest:
       - no longer use PortalTestCase._app which creates an app with a request
         to http://nohost, but implement our own _app which creates a request
         to our web server
        - store our server address as class attributes on ProcessingNodeTestCase
         instead of patching pseudo constants in utils (these pseudo constants
         no longer exist)
        - in the case of ERP5TypeLiveTestCase, also rewrap the site to use a
        request to our web server (which was done on Zope2 by using
        Testing.ZopeTestCase.utils.makerequest and not
        Testing.makerequest.makerequest directly)
      e216cccd
    • Jérome Perrin's avatar
      PortalTransforms: update transforms/rest for zope4 compatibility · cee77c11
      Jérome Perrin authored
      Update to https://github.com/plone/Products.PortalTransforms/blob/3.2.0/Products/PortalTransforms/transforms/rest.py
      because Zope4 no longer ship with a reStructuredText module and recommend
      using docutils directly instead, which is what upstream did.
      
      ( in zope4py2 branch this was working because slapos patch
      component/egg-patch/Zope/0001-OFS-XMLExportImport.patch used to bring
      back reStructuredText but we don't seem to need it )
      cee77c11
    • Jérome Perrin's avatar
    • Jérome Perrin's avatar
      patches/WSGIPublisher: update patch for Zope4 · 5b042ba3
      Jérome Perrin authored
      Zope2 did not have WSGIPublisher, this patch was a backport of the
      module from Zope 4. Now that we use Zope 4, we no longer need to copy
      the module code, but we still need a patch to apply the deadline patch.
      5b042ba3
    • Aurel's avatar
      xhtml_style: adjust standard_error_message for Zope4 · e50a6133
      Aurel authored
      There are some few differences:
      
      In Zope4 exceptions are callable, but we don't want to call them here,
      so we use a python: expression instead of the path expression which
      tries to call error_value.
      
      error_message is sometimes not passed.
      
      The context is different: Since Zope 4, the `standard_error_message` is
      rendered in the context of REQUEST['PUBLISHED'], which in case of
      publishing a skin (page template or script) in the context of a document
      is is the skin itself, but for error rendering in case of erp5_web Web
      Site or Web Section, we expect standard_error_message_template to always
      be rendered in the context of the document, that's why we use
      REQUEST.PARENTS[0] as context.
      
        REQUEST.PUBLISHED = <PythonScript at /erp5/script used for /erp5/module/document>
        REQUEST.PARENTS [<Document>, <Module>, <ERP5Site>, ...]
      
      In case of redirect, the body is no longer empty, but we explicitly
      return an empty body to keep the same behavior as zope2
      e50a6133
    • Jérome Perrin's avatar
      Revert "*: keep using func_code and not yet __code__ with scripts" · d2af3276
      Jérome Perrin authored
      This reverts commit eaae74a0.
      
      On Zope4 branch we are ready to use __code__
      d2af3276
    • Aurel's avatar
      fixup! a17bb910 use unichr instead of chr · 63e63f60
      Aurel authored
      63e63f60
  2. 02 Mar, 2023 32 commits
  3. 01 Mar, 2023 1 commit