From 9c2b2d47801631f5cbb8f9708f9ffc21c7275571 Mon Sep 17 00:00:00 2001 From: Valere Date: Thu, 19 Mar 2026 09:20:02 +0100 Subject: [PATCH] fix: playwright, new web popup interfering with test to witch room --- .../widget/pip-call-button-interaction.test.ts | 2 ++ playwright/widget/pip-call.test.ts | 5 +++++ playwright/widget/test-helpers.ts | 16 ++++++++++++++++ 3 files changed, 23 insertions(+) diff --git a/playwright/widget/pip-call-button-interaction.test.ts b/playwright/widget/pip-call-button-interaction.test.ts index 1dda652d..804e7d9f 100644 --- a/playwright/widget/pip-call-button-interaction.test.ts +++ b/playwright/widget/pip-call-button-interaction.test.ts @@ -25,6 +25,8 @@ widgetTest("Footer interaction in PiP", async ({ addUser, browserName }) => { await TestHelpers.createRoom("OtherRoom", valere.page); + await TestHelpers.maybeDismissBackupChatsToast(valere.page); + await TestHelpers.switchToRoomNamed(valere.page, callRoom); // Start the call as Valere diff --git a/playwright/widget/pip-call.test.ts b/playwright/widget/pip-call.test.ts index d57befc1..ecf24e92 100644 --- a/playwright/widget/pip-call.test.ts +++ b/playwright/widget/pip-call.test.ts @@ -28,6 +28,11 @@ widgetTest("Put call in PIP", async ({ addUser, browserName }) => { await TestHelpers.acceptRoomInvite(callRoom, timo.page); + await TestHelpers.maybeDismissBackupChatsToast(valere.page); + await TestHelpers.maybeDismissBackupChatsToast(timo.page); + + await valere.page.pause(); + await TestHelpers.switchToRoomNamed(valere.page, callRoom); // Start the call as Valere diff --git a/playwright/widget/test-helpers.ts b/playwright/widget/test-helpers.ts index 4562ba5a..ed40bce6 100644 --- a/playwright/widget/test-helpers.ts +++ b/playwright/widget/test-helpers.ts @@ -152,6 +152,22 @@ export class TestHelpers { } } + public static async maybeDismissBackupChatsToast(page: Page): Promise { + const toast = page + .locator(".mx_Toast_toast") + .getByRole("heading", { name: "Back up your chats" }); + + try { + await expect(toast).toBeVisible({ timeout: 700 }); + await page + .locator(".mx_Toast_toast") + .getByRole("button", { name: "Dismiss" }) + .click(); + } catch { + // toast not visible, continue as normal + } + } + public static async createRoom( name: string, page: Page,