sadpandajoe opened a new pull request, #39980:
URL: https://github.com/apache/superset/pull/39980

   ### SUMMARY
   De-flakes the Playwright list-view specs (dashboard / chart / dataset) by 
hardening the delete-confirmation modal interactions, the bulk-select page 
object, and the visibility/timeout assertions used after row creation and 
deletion.
   
   The first commit fixed dashboard-list delete + bulk-export. The second 
commit extends the same hardening across chart-list and dataset-list so the 
patterns are consistent end-to-end.
   
   **Page objects** (`superset-frontend/playwright/components/`)
   - `DeleteConfirmationModal`: explicit `data-test` selectors, wait for the 
Delete button to be enabled before clicking (it's disabled until the user types 
DELETE), and gate on the modal being attached.
   - `BulkSelect`: wait for the header toggle after enabling bulk-select; gate 
on checkbox / action-button visibility before interacting; mirror `selectRow`'s 
waits in `deselectRow` so lingering selection state surfaces at the call site.
   
   **Specs** (`tests/{dashboard,chart,dataset}/*-list.spec.ts`)
   - Row-visibility waits on freshly-created rows now use 
`TIMEOUT.API_RESPONSE` (15 s) so the async list query has time on slow CI.
   - Toast assertions switched from `expect(toast).toBeVisible()` to 
`toast.waitFor({ state: 'visible' })` so a fast auto-dismiss is detected.
   - Post-delete row assertions switched from `not.toBeVisible()` to 
`toHaveCount(0)` since deleted rows are removed from the DOM rather than hidden.
   - Bulk-export specs (chart, dataset) now set `test.setTimeout(SLOW_TEST)` 
and `waitForGet({ timeout: SLOW_TEST })` to match the bulk-delete budget; the 
prior implicit budget was capped by Playwright's 30 s test timeout.
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   N/A — test-only change.
   
   ### TESTING INSTRUCTIONS
   ```
   npm run playwright:test -- tests/dashboard/dashboard-list.spec.ts
   npm run playwright:test -- tests/chart/chart-list.spec.ts
   npm run playwright:test -- tests/dataset/dataset-list.spec.ts
   ```
   Run each spec multiple times locally and on CI to confirm flake reduction 
(the failures were intermittent, not deterministic).
   
   ### ADDITIONAL INFORMATION
   - [ ] Has associated issue:
   - [ ] Required feature flags:
   - [ ] Changes UI
   - [ ] Includes DB Migration
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to