test(e2e): poll for initial shrink-to-fit zoom before asserting (#607)
The initial fit-to-width in the pdf viewer measures container.clientWidth immediately after showViewer() flips display:flex. Under CI load the reflow can lag a tick, leaving widthFit >= 1.0 and zoom at 100% when first read, which intermittently fails the toBeLessThan(100) assertion (~6 failures in the 30 runs since #583). Swap the single-shot read for expect.poll, matching the pattern already used for the post-fullscreen assertion below, then capture inlineZoom for the subsequent comparison.
This commit is contained in:
parent
621a70a724
commit
4f4dd8b6f0
1 changed files with 6 additions and 1 deletions
|
|
@ -63,8 +63,13 @@ test.describe("PDF Viewer — fullscreen fit + pinch zoom", () => {
|
|||
await waitForPdfRender(page);
|
||||
const app = getAppFrame(page);
|
||||
|
||||
// Initial fit-to-width measures container.clientWidth immediately after
|
||||
// showViewer() flips display:flex; under CI load the reflow can lag, so
|
||||
// poll until the shrink-to-fit scale has actually applied.
|
||||
await expect
|
||||
.poll(() => readZoomPercent(page), { timeout: 5000 })
|
||||
.toBeLessThan(100);
|
||||
const inlineZoom = await readZoomPercent(page);
|
||||
expect(inlineZoom).toBeLessThan(100);
|
||||
|
||||
// Widen + give plenty of height, then enter fullscreen. Fullscreen uses
|
||||
// fit-to-PAGE (whole page visible), so the resulting zoom is whichever
|
||||
|
|
|
|||
Loading…
Reference in a new issue