테마 적용
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import { describe, it, expect } from "vitest";
|
||||
import { render, screen } from "@testing-library/react";
|
||||
import { NumericPropertyControl } from "@/features/editor/components/NumericPropertyControl";
|
||||
|
||||
describe("NumericPropertyControl - 테마", () => {
|
||||
it("프리셋 셀렉트는 라이트/다크 테마에 맞는 배경/텍스트 클래스를 사용해야 한다", () => {
|
||||
render(
|
||||
<NumericPropertyControl
|
||||
label="테스트 숫자"
|
||||
unitLabel="px"
|
||||
value={16}
|
||||
min={0}
|
||||
max={100}
|
||||
step={1}
|
||||
presets={[
|
||||
{ id: "small", label: "작게", value: 12 },
|
||||
{ id: "medium", label: "보통", value: 16 },
|
||||
]}
|
||||
onChangeValue={() => {}}
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("테스트 숫자 프리셋") as HTMLSelectElement;
|
||||
const className = select.getAttribute("class") ?? "";
|
||||
|
||||
// 라이트 모드: 흰 배경 + 어두운 텍스트
|
||||
expect(className).toContain("bg-white");
|
||||
expect(className).toContain("text-slate-900");
|
||||
// 다크 모드: 다크 배경 + 밝은 텍스트
|
||||
expect(className).toContain("dark:bg-slate-900");
|
||||
expect(className).toContain("dark:text-slate-100");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user