mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-19 22:58:07 +02:00
Fix 'must load a SVG, delete it and undo' integration test
We wait for the canvas before trying to serialize the annotation in order to make sure the image has been loaded.
This commit is contained in:
parent
f4061190fa
commit
eefaca07c3
2 changed files with 16 additions and 7 deletions
|
@ -195,14 +195,14 @@ describe("Stamp Editor", () => {
|
|||
);
|
||||
const editorSelector = getEditorSelector(0);
|
||||
await waitForImage(page, editorSelector);
|
||||
|
||||
await waitForSerialized(page, 1);
|
||||
|
||||
await page.waitForSelector(`${editorSelector} button.delete`);
|
||||
await page.click(`${editorSelector} button.delete`);
|
||||
|
||||
await waitForSerialized(page, 0);
|
||||
|
||||
await kbUndo(page);
|
||||
await waitForImage(page, editorSelector);
|
||||
await waitForSerialized(page, 1);
|
||||
|
||||
await waitForSelectedEditor(page, editorSelector);
|
||||
|
@ -654,8 +654,8 @@ describe("Stamp Editor", () => {
|
|||
await waitForSerialized(page, 0);
|
||||
|
||||
await kbUndo(page);
|
||||
await waitForImage(page, selector);
|
||||
await waitForSerialized(page, 1);
|
||||
await page.waitForSelector(`${selector} canvas`);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -739,8 +739,8 @@ describe("Stamp Editor", () => {
|
|||
}
|
||||
|
||||
await kbUndo(page);
|
||||
await waitForImage(page, selector);
|
||||
await waitForSerialized(page, 1);
|
||||
await page.waitForSelector(`${selector} canvas`);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -327,9 +327,18 @@ async function waitForStorageEntries(page, nEntries) {
|
|||
|
||||
async function waitForSerialized(page, nEntries) {
|
||||
return page.waitForFunction(
|
||||
n =>
|
||||
(window.PDFViewerApplication.pdfDocument.annotationStorage.serializable
|
||||
.map?.size ?? 0) === n,
|
||||
n => {
|
||||
try {
|
||||
return (
|
||||
(window.PDFViewerApplication.pdfDocument.annotationStorage
|
||||
.serializable.map?.size ?? 0) === n
|
||||
);
|
||||
} catch {
|
||||
// When serializing a stamp annotation with a SVG, the transfer
|
||||
// can fail because of the SVG, so we just retry.
|
||||
return false;
|
||||
}
|
||||
},
|
||||
{},
|
||||
nEntries
|
||||
);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue