테마 적용
This commit is contained in:
@@ -192,4 +192,43 @@ describe("ImagePropertiesPanel", () => {
|
||||
expect.objectContaining({ borderRadius: "sm", borderRadiusPx: 24 }),
|
||||
);
|
||||
});
|
||||
|
||||
it("ImagePropertiesPanel 주요 인풋/셀렉트 컨트롤은 라이트/다크 듀얼 테마 크롬을 사용해야 한다", () => {
|
||||
const updateBlock = vi.fn();
|
||||
|
||||
render(
|
||||
<ImagePropertiesPanel
|
||||
imageProps={baseProps as any}
|
||||
selectedBlockId="image-theme-1"
|
||||
updateBlock={updateBlock}
|
||||
/>,
|
||||
);
|
||||
|
||||
const sourceSelect = screen.getByLabelText("이미지 소스") as HTMLSelectElement;
|
||||
const sourceClass = sourceSelect.getAttribute("class") ?? "";
|
||||
expect(sourceClass).toContain("bg-white");
|
||||
expect(sourceClass).toContain("text-slate-900");
|
||||
expect(sourceClass).toContain("border-slate-300");
|
||||
expect(sourceClass).toContain("dark:bg-slate-900");
|
||||
expect(sourceClass).toContain("dark:text-slate-100");
|
||||
expect(sourceClass).toContain("dark:border-slate-700");
|
||||
|
||||
const urlInput = screen.getByLabelText("이미지 URL") as HTMLInputElement;
|
||||
const urlClass = urlInput.getAttribute("class") ?? "";
|
||||
expect(urlClass).toContain("bg-white");
|
||||
expect(urlClass).toContain("text-slate-900");
|
||||
expect(urlClass).toContain("border-slate-300");
|
||||
expect(urlClass).toContain("dark:bg-slate-900");
|
||||
expect(urlClass).toContain("dark:text-slate-100");
|
||||
expect(urlClass).toContain("dark:border-slate-700");
|
||||
|
||||
const alignSelect = screen.getByLabelText("이미지 정렬") as HTMLSelectElement;
|
||||
const alignClass = alignSelect.getAttribute("class") ?? "";
|
||||
expect(alignClass).toContain("bg-white");
|
||||
expect(alignClass).toContain("text-slate-900");
|
||||
expect(alignClass).toContain("border-slate-300");
|
||||
expect(alignClass).toContain("dark:bg-slate-900");
|
||||
expect(alignClass).toContain("dark:text-slate-100");
|
||||
expect(alignClass).toContain("dark:border-slate-700");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user