Skip to content

Consolidate test layers to share PLONE_RESTAPI_DX_FIXTURE base#1984

Open
jensens wants to merge 1 commit intomainfrom
consolidate-test-layers
Open

Consolidate test layers to share PLONE_RESTAPI_DX_FIXTURE base#1984
jensens wants to merge 1 commit intomainfrom
consolidate-test-layers

Conversation

@jensens
Copy link
Member

@jensens jensens commented Feb 14, 2026

Summary

  • Make PloneRestApiDXPAMLayer and PloneRestApiDXIterateLayer extend PLONE_RESTAPI_DX_FIXTURE instead of duplicating its setup, eliminating redundant ZCML + profile loading cycles (~5-15s wall time saved per full test run)
  • Switch test_boolean_value and test_indexers from FUNCTIONAL to INTEGRATION testing (no HTTP calls or commits needed)
  • Fix pre-existing test isolation bug in test_dxfield_publication where transaction.commit() in IntegrationTesting leaked portal_timezone into the shared DemoStorage

Fixes #1983


📚 Documentation preview 📚: https://plonerestapi--1984.org.readthedocs.build/

@mister-roboto
Copy link

@jensens thanks for creating this Pull Request and helping to improve Plone!

TL;DR: Finish pushing changes, pass all other checks, then paste a comment:

@jenkins-plone-org please run jobs

To ensure that these changes do not break other parts of Plone, the Plone test suite matrix needs to pass, but it takes 30-60 min. Other CI checks are usually much faster and the Plone Jenkins resources are limited, so when done pushing changes and all other checks pass either start all Jenkins PR jobs yourself, or simply add the comment above in this PR to start all the jobs automatically.

Happy hacking!

@jensens jensens marked this pull request as draft February 14, 2026 00:33
@jensens jensens force-pushed the consolidate-test-layers branch from 4ee62c3 to 25f0431 Compare February 14, 2026 00:37
Make PloneRestApiDXPAMLayer and PloneRestApiDXIterateLayer extend
PLONE_RESTAPI_DX_FIXTURE instead of duplicating its setup or using
a separate lineage. This eliminates redundant ZCML + profile loading
cycles, saving ~5-15s of layer setup per test run.

Also switch test_boolean_value and test_indexers from FUNCTIONAL to
INTEGRATION testing (they never make HTTP calls or commit transactions).

Fix pre-existing test isolation bug in test_dxfield_publication where
transaction.commit() in IntegrationTesting leaked portal_timezone
into the shared DemoStorage.

Fixes #1983
@jensens jensens force-pushed the consolidate-test-layers branch from 25f0431 to 1b68229 Compare February 14, 2026 00:49
@jensens
Copy link
Member Author

jensens commented Feb 14, 2026

@jenkins-plone-org please run jobs

@jensens jensens marked this pull request as ready for review February 16, 2026 14:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Consolidate test layers to reduce test suite setup time

2 participants