mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-24 09:08:07 +02:00
Fix flakiness of CSS-only zoom test
Update the test to wait for the `pagerendered`` event of a specific page (1), so that the `pagerendered`` event of other pages from a previously running render doesn't resolve the `waitForPageRendered` promise.
This commit is contained in:
parent
50c573d16d
commit
de9b041b5e
2 changed files with 20 additions and 12 deletions
|
@ -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) {
|
||||
|
|
|
@ -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,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue