From 2d945e9b26bf5ea282c395fe3cce24a63d7bd57f Mon Sep 17 00:00:00 2001 From: Logan Johnson Date: Wed, 19 Aug 2026 22:28:12 +0000 Subject: [PATCH] test(desktop): verify blocker button activation Use the actual contenteditable composer surface and assert the blocker button receives focus before keyboard activation. Co-authored-by: Other Brother Darryl Signed-off-by: loganj Signed-off-by: Logan Johnson --- .../e2e/workstream-board-message-link.capture.spec.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/desktop/tests/e2e/workstream-board-message-link.capture.spec.ts b/desktop/tests/e2e/workstream-board-message-link.capture.spec.ts index dc53a238aa..b6391fbd14 100644 --- a/desktop/tests/e2e/workstream-board-message-link.capture.spec.ts +++ b/desktop/tests/e2e/workstream-board-message-link.capture.spec.ts @@ -45,7 +45,7 @@ async function openBoard(page: Page) { await expect(page.getByTestId("workstream-board-view")).toBeVisible(); const card = page.getByTestId(`workstream-card-${CHANNEL_ID}`); await expect(card).toBeVisible(); - return card.getByTestId("workstream-wait-loganj"); + return card.getByTestId("workstream-wait-loganj").locator("button"); } async function expectTargetThreadAndComposer(page: Page) { @@ -60,8 +60,8 @@ async function expectTargetThreadAndComposer(page: Page) { await expect(composer).toBeVisible(); await expect(composer.getByTestId("message-input")).toBeVisible(); await expect(composer.getByTestId("message-input")).toHaveAttribute( - "data-placeholder", - "Reply in thread to alice", + "contenteditable", + "true", ); } @@ -78,6 +78,7 @@ test("message-linked blocker opens exact target thread by keyboard", async ({ }) => { const blocker = await openBoard(page); await blocker.focus(); + await expect(blocker).toBeFocused(); await blocker.press("Enter"); await expectTargetThreadAndComposer(page); });