Unit Tests: Reorganise the jest config file. - #80940
Conversation
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
|
Size Change: 0 B Total Size: 7.76 MB |
98c421c to
9fca827
Compare
9fca827 to
cf04a3a
Compare
|
Flaky tests detected in cf04a3a. 🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/30632253120
|
What?
Follow-up to #80765 (comment)
Some changes extracted from the isolated mode PR #75814
This PR updates the unit-test Jest configuration so module resolution works with isolated dependency installs as well as the default install layout. It also reorganizes
moduleNameMapperand makes the list of dependencies transformed by Jest easier to maintain.Why?
The Ariakit mappings added in #80765 point directly to the root
node_modulesdirectory. Workspace-only dependencies are not available there when dependencies are installed in isolation, so Jest cannot resolve those modules.Some other parts of the configuration also rely on hoisted dependencies or mapper ordering. Specific mappings need to be evaluated before generic
@wordpress/*mappings, and deep package imports need their own mapping.How?
@ariakit/testfrom the Components workspace and resolve@ariakit/utilsfrom the installed Ariakit test package.ROOT_DIRas Jest'srootDir.jest-environment-jsdomexplicitly.dependenciesToTransformarray.Testing Instructions
npm run test:unitshould be happy, already checked by CITesting Instructions for Keyboard
Not applicable. This PR does not change the user interface.
Screenshots or screencast
Not applicable.
Use of AI Tools
OpenAI Codex, used only to draft this PR description.