스타일 수정
CI / test (push) Failing after 44m2s
CI / pr_and_merge (push) Has been skipped

This commit is contained in:
2025-11-29 15:11:49 +09:00
parent c9a62d479c
commit 1f085bd64c
64 changed files with 568 additions and 126 deletions
+32 -27
View File
@@ -70,6 +70,11 @@ describe("/api/export", () => {
expect(mainJs).toContain('querySelectorAll("form.pb-form-controller")');
expect(mainJs).toContain("fetch(");
const builderCss = await cssEntry!.async("string");
// 버튼 베이스 클래스는 정적 Export 에서도 밑줄이 보이지 않도록 text-decoration:none 을 포함해야 한다.
expect(builderCss).toContain(".pb-btn-base");
expect(builderCss).toContain("text-decoration: none");
const html = await indexEntry!.async("string");
expect(html).toContain("<title>내보내기 테스트 페이지</title>");
expect(html).toContain("ZIP 내보내기 테스트");
@@ -1043,8 +1048,8 @@ describe("/api/export", () => {
expect(html).not.toContain(`/api/video/${videoId}`);
// 비디오 카드 스타일이 wrapper style 에 반영되어야 한다.
expect(html).toContain("background-color:#123456");
expect(html).toContain("padding:24px");
expect(html).toContain("border-radius:16px");
expect(html).toContain("padding:1.5em");
expect(html).toContain("border-radius:1em");
});
it("섹션 backgroundVideoSrc 가 /api/video/:id 인 경우 ZIP videos/ 및 상대 경로로 치환되고 섹션 안에 배경 비디오 video 태그로 렌더되어야 한다", async () => {
@@ -1157,7 +1162,7 @@ describe("/api/export", () => {
expect(html).toContain("pb-divider");
// 스타일 검증: medium 두께, 지정 색상, marginYPx 기반 여백이 style 속성에 포함되어야 한다.
expect(html).toContain("border-bottom:2px solid #123456");
expect(html).toContain("margin:32px 0;");
expect(html).toContain("margin:2em 0;");
});
it("image 블록은 정적 HTML에서 카드 스타일(배경/너비/둥글기)이 반영되어야 한다", async () => {
@@ -1209,7 +1214,7 @@ describe("/api/export", () => {
// 카드 배경색이 wrapper div style 에 반영되어야 한다.
expect(html).toContain("background-color:#123456");
// 고정 너비/둥글기 스타일이 img style 에 반영되어야 한다.
expect(html).toContain("width:480px");
expect(html).toContain("width:30em");
expect(html).toContain("border-radius:32px");
});
@@ -2230,11 +2235,11 @@ describe("/api/export", () => {
const html = await indexEntry!.async("string");
expect(html).toContain("name=\"email\"");
expect(html).toContain("width:320px");
expect(html).toContain("padding-left:16px");
expect(html).toContain("padding-right:16px");
expect(html).toContain("padding-top:8px");
expect(html).toContain("padding-bottom:8px");
expect(html).toContain("width:20em");
expect(html).toContain("padding-left:1em");
expect(html).toContain("padding-right:1em");
expect(html).toContain("padding-top:0.5em");
expect(html).toContain("padding-bottom:0.5em");
expect(html).toContain("background-color:#123456");
expect(html).toContain("border-color:#ff0000");
expect(html).toContain("border-radius:6px");
@@ -2292,11 +2297,11 @@ describe("/api/export", () => {
const html = await indexEntry!.async("string");
expect(html).toContain("name=\"category\"");
expect(html).toContain("width:240px");
expect(html).toContain("padding-left:16px");
expect(html).toContain("padding-right:16px");
expect(html).toContain("padding-top:8px");
expect(html).toContain("padding-bottom:8px");
expect(html).toContain("width:15em");
expect(html).toContain("padding-left:1em");
expect(html).toContain("padding-right:1em");
expect(html).toContain("padding-top:0.5em");
expect(html).toContain("padding-bottom:0.5em");
expect(html).toContain("background-color:#123456");
expect(html).toContain("border-color:#ff0000");
expect(html).toContain("border-radius:6px");
@@ -2349,10 +2354,10 @@ describe("/api/export", () => {
const html = await indexEntry!.async("string");
expect(html).toContain("name=\"features\"");
expect(html).toContain("padding-left:8px");
expect(html).toContain("padding-right:8px");
expect(html).toContain("padding-top:4px");
expect(html).toContain("padding-bottom:4px");
expect(html).toContain("padding-left:0.5em");
expect(html).toContain("padding-right:0.5em");
expect(html).toContain("padding-top:0.25em");
expect(html).toContain("padding-bottom:0.25em");
expect(html).toContain("background-color:#123456");
expect(html).toContain("border-color:#ff0000");
expect(html).toContain("border-radius:6px");
@@ -2405,10 +2410,10 @@ describe("/api/export", () => {
const html = await indexEntry!.async("string");
expect(html).toContain("name=\"plan\"");
expect(html).toContain("padding-left:8px");
expect(html).toContain("padding-right:8px");
expect(html).toContain("padding-top:4px");
expect(html).toContain("padding-bottom:4px");
expect(html).toContain("padding-left:0.5em");
expect(html).toContain("padding-right:0.5em");
expect(html).toContain("padding-top:0.25em");
expect(html).toContain("padding-bottom:0.25em");
expect(html).toContain("background-color:#123456");
expect(html).toContain("border-color:#ff0000");
expect(html).toContain("border-radius:6px");
@@ -2512,11 +2517,11 @@ describe("/api/export", () => {
const html = await indexEntry!.async("string");
// widthMode=fixed, widthPx, paddingX/paddingY, fillColorCustom, strokeColorCustom, textColorCustom 이 style 속성에 포함되어야 한다.
expect(html).toContain("width:240px");
expect(html).toContain("padding-left:16px");
expect(html).toContain("padding-right:16px");
expect(html).toContain("padding-top:8px");
expect(html).toContain("padding-bottom:8px");
expect(html).toContain("width:15em");
expect(html).toContain("padding-left:1em");
expect(html).toContain("padding-right:1em");
expect(html).toContain("padding-top:0.5em");
expect(html).toContain("padding-bottom:0.5em");
expect(html).toContain("background-color:#123456");
expect(html).toContain("border-color:#ff0000");
expect(html).toContain("color:#00ff00");