diff --git a/test/integration/test_utils.mjs b/test/integration/test_utils.mjs index bd0af5f56..3d67f7fcd 100644 --- a/test/integration/test_utils.mjs +++ b/test/integration/test_utils.mjs @@ -568,16 +568,24 @@ function waitForAnnotationModeChanged(page) { }); } -function waitForPageRendered(page) { - return createPromise(page, resolve => { - const { eventBus } = window.PDFViewerApplication; - eventBus.on("pagerendered", function handler(e) { - if (!e.isDetailView) { - resolve(); - eventBus.off("pagerendered", handler); - } - }); - }); +function waitForPageRendered(page, pageNumber) { + return page.evaluateHandle( + number => [ + new Promise(resolve => { + const { eventBus } = window.PDFViewerApplication; + eventBus.on("pagerendered", function handler(e) { + if ( + !e.isDetailView && + (number === undefined || e.pageNumber === number) + ) { + resolve(); + eventBus.off("pagerendered", handler); + } + }); + }), + ], + pageNumber + ); } function waitForEditorMovedInDOM(page) { diff --git a/test/integration/viewer_spec.mjs b/test/integration/viewer_spec.mjs index e5988d272..8bc58fee8 100644 --- a/test/integration/viewer_spec.mjs +++ b/test/integration/viewer_spec.mjs @@ -328,7 +328,7 @@ describe("PDF viewer", () => { const originalCanvasSize = await getCanvasSize(page); const factor = 2; - const handle = await waitForPageRendered(page); + const handle = await waitForPageRendered(page, 1); await page.evaluate(scaleFactor => { window.PDFViewerApplication.pdfViewer.increaseScale({ drawingDelay: 0, @@ -356,7 +356,7 @@ describe("PDF viewer", () => { const originalCanvasSize = await getCanvasSize(page); const factor = 4; - const handle = await waitForPageRendered(page); + const handle = await waitForPageRendered(page, 1); await page.evaluate(scaleFactor => { window.PDFViewerApplication.pdfViewer.increaseScale({ drawingDelay: 0,