From 956568c77a5f07790b954c3c04a0d98f91372bf9 Mon Sep 17 00:00:00 2001 From: Vincent Koc <25068+vincentkoc@users.noreply.github.com> Date: Thu, 25 Jun 2026 15:14:00 +0800 Subject: [PATCH] test(web): close mobile drawer via mobile control --- tests/e2e/chat.spec.ts | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/tests/e2e/chat.spec.ts b/tests/e2e/chat.spec.ts index 26f7e26f..7ccc7756 100644 --- a/tests/e2e/chat.spec.ts +++ b/tests/e2e/chat.spec.ts @@ -273,30 +273,36 @@ test("mobile navigation behaves like a drawer", async ({ page }) => { const composer = page.locator('textarea[aria-label="Message body"]'); const toggle = page.getByRole("button", { name: "Toggle navigation" }); + const openMobileNavigation = async () => { + await expect(toggle).toBeVisible(); + await toggle.click(); + await expect(toggle).toHaveAttribute("aria-expanded", "true"); + }; + + await expect(page.getByRole("heading", { name: "#general" })).toBeVisible(); + await expect(composer).toBeVisible(); await expect(toggle).toHaveAttribute("aria-expanded", "false"); - await toggle.click(); - await expect(toggle).toHaveAttribute("aria-expanded", "true"); + await openMobileNavigation(); await expect(page.getByRole("button", { name: "Close navigation" })).toBeVisible(); - await page.getByRole("button", { name: "Collapse sidebar" }).click(); + await page.getByRole("button", { name: "Close navigation" }).click(); await expect(toggle).toHaveAttribute("aria-expanded", "false"); - await toggle.click(); - await expect(toggle).toHaveAttribute("aria-expanded", "true"); + await openMobileNavigation(); await page.setViewportSize({ width: 1024, height: 844 }); await expect(page.getByRole("button", { name: "Collapse sidebar" })).toBeVisible(); await page.setViewportSize({ width: 390, height: 844 }); await expect(toggle).toHaveAttribute("aria-expanded", "false"); - await toggle.click(); + await openMobileNavigation(); await page.keyboard.type("hidden draft"); await expect(composer).toHaveValue(""); await page.keyboard.press("Escape"); await expect(toggle).toHaveAttribute("aria-expanded", "false"); - await toggle.click(); + await openMobileNavigation(); await page.getByRole("button", { name: "Close navigation" }).click(); await expect(toggle).toHaveAttribute("aria-expanded", "false"); });