test(FR-2652): fix parallel interference and folder-dialog flakiness in delete spec#7162
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has required the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
fcb679d to
e21190c
Compare
f25c89e to
0af08bd
Compare
e21190c to
b40dbdf
Compare
0af08bd to
318c98a
Compare
There was a problem hiding this comment.
Pull request overview
This PR focuses on stabilizing the Admin Model Card delete E2E suite by eliminating parallel interference under fullyParallel: true and tightening a couple of timing/race conditions around bulk delete and folder-creation flows.
Changes:
- Forces
e2e/admin-model-card/admin-model-card-delete.spec.tsto run serially to avoid backend indexing / filter-result races under parallel load. - Improves delete-flow robustness by switching header checkbox selection to
.click()(handles indeterminate state) and waiting for the Delete button to become enabled before clicking. - Hardens folder creation via the “+” path by explicitly asserting the “Current project changed successfully.” toast before waiting for the folder dialog, and extending relevant timeouts.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
e2e/utils/classes/AdminModelCardPage.ts |
Makes createNewFolderViaPlus resilient to the “Change Project” popconfirm path and slow refetches by asserting the success toast and increasing timeouts. |
e2e/admin-model-card/admin-model-card-delete.spec.ts |
Runs the suite serially and adjusts interaction/wait patterns to reduce flakiness under load (checkbox selection, enabled-state waits, longer visibility timeouts). |
e2e/E2E_COVERAGE_REPORT.md |
Updates the report’s “Last Updated” date. |
b40dbdf to
e2fd11f
Compare
318c98a to
63a727a
Compare
e2fd11f to
24fdba9
Compare
9a6e1b7 to
2d66c83
Compare
…in delete spec
- Add test.describe.configure({ mode: 'serial' }) to prevent within-file
parallelism under fullyParallel:true; filter results were empty under load
because newly created cards weren't indexed fast enough concurrently
- Extend toBeVisible timeout on post-cancel row assertions (5s → 15s)
- In createNewFolderViaPlus: increase or() timeout (5s → 10s), assert
"Current project changed successfully." after clicking Change Project so
the test fails fast if modelStoreProject data isn't loaded yet, and
increase folder-dialog visibility timeout (15s → 30s)
2d66c83 to
28731fa
Compare
24fdba9 to
3087ee1
Compare
|
Closing this PR as its changes have been folded into #7137. Both PRs cover E2E test changes for the same spec, so they've been consolidated into one. |

Resolves #6885 (FR-2652)
Stacked on top of #7137.
Summary
Fixes flakiness in
e2e/admin-model-card/admin-model-card-delete.spec.tsexposed under load:fullyParallel: trueset globally inplaywright.config.ts, tests within this file ran in parallel and the server occasionally indexed newly-created cards too slowly to satisfy the name filter (resulting in "No data" assertions). Addedtest.describe.configure({ mode: 'serial' })to the describe block so the tests share a deterministic ordering against the same backend.toBeVisiblewas tight enough to flake when the page was busy.createNewFolderViaPlusrobust against theChange ProjectPopconfirm path. TheonConfirmhandler inAdminModelCardSettingModalruns insidestartTransitionand silently no-ops whenmodelStoreProjectdata isn't loaded yet. The page object now:Change Project | folder dialograce timeout (5s → 10s).Change Project, asserts theCurrent project changed successfully.message — this fails fast (and clearly) when the data dependency isn't ready, instead of timing out later on the folder dialog.Test plan
pnpm exec playwright test e2e/admin-model-card/admin-model-card-delete.spec.ts— 10/10 passing in ~3.9 minutesfullyParallel: trueconfig — no parallel interference within the file