super-productivity/e2e/pages
Johannes Millan 0a6a692187 test(sync): harden supersync e2e against flaky late decrypt dialog
The scheduled master E2E (run 27927390789, SuperSync 3/6 shard) flaked on
"Bidirectional sync works after encryption change via import". The stuck
overlay was the "Decryption Failed" dialog (dialog-handle-decrypt-error):
it fires asynchronously after a re-sync, and the setupSuperSync dialog
loop only handles it within its bounded rounds. A late re-fire was never
dismissed, so the final one-shot expect(...).toHaveCount(0) watched the
disableClose dialog for the full 15s and timed out.

Replace the one-shot late-dialog wait + close assertion with a converging
expect.toPass() poll that dismisses whichever late, non-self-closing dialog
is present each round (enable-encryption or decrypt-error), then re-checks
the overlay is empty — handling appearances that land early, late, or never.
Extract the decrypt-error handling into a shared _handleDecryptErrorDialog
helper reused by the loop and the drain.

Verified via prettier/eslint/tsc; not run live (the @supersync docker e2e
can't reach the server from the dev sandbox).
2026-06-23 12:56:48 +02:00
..
base.page.ts test(e2e): fix supersync test flakiness from navigation blocking and unhandled dialogs 2026-02-12 20:01:14 +01:00
dialog.page.ts Update recurrent task calendar and general calendar design (#8017) 2026-06-09 16:30:22 +02:00
import.page.ts Improve automated store screenshots 2026-05-10 00:58:01 +02:00
index.ts docs(e2e): add CLAUDE.md reference and barrel export for easier test creation 2026-01-03 13:27:24 +01:00
note.page.ts test(e2e): fix flaky tests with better waits and focus handling 2026-03-03 21:46:11 +01:00
planner.page.ts test(e2e): fix 12 flaky tests by removing networkidle waits and fixing plugin setup 2026-02-09 17:55:12 +01:00
project.page.ts feat(project): project completion experience (#8036) 2026-06-08 13:43:38 +02:00
schedule.page.ts test(webdav): add e2e tests 2025-12-29 12:48:36 +01:00
settings.page.ts test(e2e): use correct route /#/tag/TODAY/tasks instead of /#/tag/TODAY 2026-03-15 18:48:00 +01:00
side-nav.page.ts refactor: cleanup 2025-12-10 15:29:03 +01:00
supersync.page.ts test(sync): harden supersync e2e against flaky late decrypt dialog 2026-06-23 12:56:48 +02:00
sync.page.ts test(e2e): stabilize encryption dialog password fill 2026-06-06 00:12:28 +02:00
tag.page.ts test(e2e): fix flaky tests with better waits and focus handling 2026-03-03 21:46:11 +01:00
task.page.ts Update recurrent task calendar and general calendar design (#8017) 2026-06-09 16:30:22 +02:00
work-view.page.ts Codex/issue 8081 keep subtask input open (#8423) 2026-06-18 17:58:45 +02:00