1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-19 14:48:08 +02:00

Merge pull request #19163 from calixteman/fix_new_ink_itest

Correctly wait for the editor mode when double clicking on an annotation in integration tests
This commit is contained in:
calixteman 2024-12-05 13:38:12 +01:00 committed by GitHub
commit 9cbc5baafd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 17 additions and 5 deletions

View file

@ -31,6 +31,7 @@ import {
loadAndWait,
scrollIntoView,
switchToEditor,
waitForAnnotationModeChanged,
waitForNoElement,
waitForSelectedEditor,
waitForSerialized,
@ -796,7 +797,14 @@ describe("Ink Editor", () => {
it("must move an annotation", async () => {
await Promise.all(
pages.map(async ([browserName, page]) => {
await page.click(getAnnotationSelector("277R"), { count: 2 });
const modeChangedHandle = await waitForAnnotationModeChanged(page);
const inkRect = await getRect(page, getAnnotationSelector("277R"));
await page.mouse.click(
inkRect.x + inkRect.width / 2,
inkRect.y + inkRect.height / 2,
{ count: 2 }
);
await awaitPromise(modeChangedHandle);
const edgeB = getEditorSelector(10);
await waitForSelectedEditor(page, edgeB);
@ -808,10 +816,7 @@ describe("Ink Editor", () => {
const serialized = await getSerialized(page);
expect(serialized).withContext(`In ${browserName}`).toEqual([]);
const editorRect = await page.$eval(edgeB, el => {
const { x, y, width, height } = el.getBoundingClientRect();
return { x, y, width, height };
});
const editorRect = await getRect(page, edgeB);
// Select the annotation we want to move.
await page.mouse.click(editorRect.x + 2, editorRect.y + 2);

View file

@ -40,6 +40,7 @@ import {
serializeBitmapDimensions,
switchToEditor,
waitForAnnotationEditorLayer,
waitForAnnotationModeChanged,
waitForEntryInStorage,
waitForSelectedEditor,
waitForSerialized,
@ -1437,7 +1438,9 @@ describe("Stamp Editor", () => {
it("must move an annotation", async () => {
await Promise.all(
pages.map(async ([browserName, page]) => {
const modeChangedHandle = await waitForAnnotationModeChanged(page);
await page.click(getAnnotationSelector("25R"), { count: 2 });
await awaitPromise(modeChangedHandle);
await waitForSelectedEditor(page, getEditorSelector(0));
const editorIds = await getEditors(page, "stamp");
@ -1484,7 +1487,9 @@ describe("Stamp Editor", () => {
it("must update an existing alt-text", async () => {
await Promise.all(
pages.map(async ([browserName, page]) => {
const modeChangedHandle = await waitForAnnotationModeChanged(page);
await page.click(getAnnotationSelector("58R"), { count: 2 });
await awaitPromise(modeChangedHandle);
await waitForSelectedEditor(page, getEditorSelector(4));
const editorIds = await getEditors(page, "stamp");
@ -1541,7 +1546,9 @@ describe("Stamp Editor", () => {
it("must check that the annotation is correctly restored", async () => {
await Promise.all(
pages.map(async ([browserName, page]) => {
const modeChangedHandle = await waitForAnnotationModeChanged(page);
await page.click(getAnnotationSelector("37R"), { count: 2 });
await awaitPromise(modeChangedHandle);
const editorSelector = getEditorSelector(2);
await waitForSelectedEditor(page, editorSelector);