import { expect, test } from "@playwright/test"; import { confirmDraftSubmission } from "./feishu-project-full-flow.helpers"; test.use({ launchOptions: { executablePath: "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome", }, }); test("confirm draft submission prefers the visible card button", async ({ page }) => { await page.setContent(`
`); const mode = await confirmDraftSubmission(page, { sendShortcut: "Enter", workItemId: 705, }); expect(mode).toBe("card_button_then_text_message"); await expect.poll(() => page.evaluate(() => window.__confirmClicks ?? 0)).toBe(1); await expect.poll(() => page.evaluate(() => window.__sentMessages ?? [])).toEqual([ "work_item #705 确认", ]); }); test("confirm draft submission falls back to text when no card button is visible", async ({ page }) => { await page.setContent(`

    
`); const mode = await confirmDraftSubmission(page, { sendShortcut: "Enter", workItemId: 705, }); expect(mode).toBe("text_message"); await expect.poll(() => page.evaluate(() => window.__sentMessages ?? [])).toEqual([ "work_item #705 确认", ]); });