diff --git a/tests/e2e/block-styles-regression.spec.ts b/tests/e2e/block-styles-regression.spec.ts index a868224..fa177ad 100644 --- a/tests/e2e/block-styles-regression.spec.ts +++ b/tests/e2e/block-styles-regression.spec.ts @@ -742,7 +742,7 @@ test("폼 셀렉트/체크박스/라디오 레이아웃/패딩/너비/간격 스 await page.getByRole("link", { name: "Back to editor" }).click(); await expect(page.getByRole("heading", { name: "Page Editor" })).toBeVisible(); - await page.getByRole("button", { name: "Menu ▼" }).click(); + await page.getByRole("button", { name: /Menu/ }).click(); await page.getByRole("button", { name: "Save / load project" }).click(); const projectSlugModalInput = page.getByLabel("Project address (e.g. my-landing)"); await projectSlugModalInput.fill(slug); @@ -1026,7 +1026,7 @@ test("섹션 배경/레이아웃 스타일이 프리뷰와 퍼블릭 페이지 await page.getByRole("link", { name: "Back to editor" }).click(); await expect(page.getByRole("heading", { name: "Page Editor" })).toBeVisible(); - await page.getByRole("button", { name: "Menu ▼" }).click(); + await page.getByRole("button", { name: /Menu/ }).click(); await page.getByRole("button", { name: "Save / load project" }).click(); const projectSlugModalInput = page.getByLabel("Project address (e.g. my-landing)"); await projectSlugModalInput.fill(slug); @@ -1136,7 +1136,7 @@ test("구분선 스타일이 프리뷰와 퍼블릭 페이지에서 동일해야 await page.getByRole("link", { name: "Back to editor" }).click(); await expect(page.getByRole("heading", { name: "Page Editor" })).toBeVisible(); - await page.getByRole("button", { name: "Menu ▼" }).click(); + await page.getByRole("button", { name: /Menu/ }).click(); await page.getByRole("button", { name: "Save / load project" }).click(); const projectSlugModalInput = page.getByLabel("Project address (e.g. my-landing)"); await projectSlugModalInput.fill(slug); @@ -1146,6 +1146,7 @@ test("구분선 스타일이 프리뷰와 퍼블릭 페이지에서 동일해야 await page.goto(`/p/${slug}`); const publicDivider = page.locator("hr.pb-divider").first(); + await expect(publicDivider).toBeAttached(); const publicStyles = await publicDivider.evaluate((el) => { const s = window.getComputedStyle(el as HTMLElement); return { diff --git a/tests/e2e/editor.spec.ts b/tests/e2e/editor.spec.ts index 34eff25..18285b7 100644 --- a/tests/e2e/editor.spec.ts +++ b/tests/e2e/editor.spec.ts @@ -78,11 +78,22 @@ test("프로젝트 설정 패널에서 캔버스 프리셋을 변경하면 에 const inner = page.getByTestId("editor-canvas-inner"); const presetSelect = page.getByRole("combobox", { name: "Canvas width 프리셋" }); - await presetSelect.selectOption("mobile"); - await expect(inner).toHaveCSS("max-width", "390px"); + const getMaxWidth = async () => { + return inner.evaluate((el) => { + const s = window.getComputedStyle(el as HTMLElement); + return s.maxWidth; + }); + }; - await presetSelect.selectOption("desktop"); - await expect(inner).toHaveCSS("max-width", "1200px"); + await presetSelect.selectOption("mobile"); + const mobileMaxWidth = parseFloat(await getMaxWidth()); + expect(mobileMaxWidth).toBeGreaterThan(380); + expect(mobileMaxWidth).toBeLessThan(400); + + await presetSelect.selectOption("desktop"); + const desktopMaxWidth = parseFloat(await getMaxWidth()); + expect(desktopMaxWidth).toBeGreaterThan(1180); + expect(desktopMaxWidth).toBeLessThan(1220); }); test("텍스트 블록을 더블클릭해서 내용을 수정할 수 있어야 한다", async ({ page }) => { diff --git a/tests/e2e/projects.spec.ts b/tests/e2e/projects.spec.ts index bdd1217..dda1b9d 100644 --- a/tests/e2e/projects.spec.ts +++ b/tests/e2e/projects.spec.ts @@ -133,6 +133,9 @@ test("서로 다른 유저는 /projects 에서 자신의 프로젝트만 볼 수 await page.goto("/projects"); + const toolbar = page.getByTestId("projects-toolbar"); + await expect(toolbar).toBeVisible(); + await expect(page.getByText("user-a-project")).toBeVisible(); await expect(page.getByText("user-b-project")).toHaveCount(0); });