i18n 적용
This commit is contained in:
@@ -45,7 +45,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("필드 텍스트 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Field text color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#112233" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -70,7 +70,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("필드 채움 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Field fill color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#445566" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -95,7 +95,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("필드 테두리 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Field border color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#778899" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -104,7 +104,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
);
|
||||
});
|
||||
|
||||
it("텍스트 색상 팔레트에서 \"없음\" 을 선택하면 FormInput textColorCustom 이 빈 문자열로 업데이트되어야 한다", () => {
|
||||
it("텍스트 색상 팔레트에서 \"None\" 을 선택하면 FormInput textColorCustom 이 빈 문자열로 업데이트되어야 한다", () => {
|
||||
const updateBlock = vi.fn();
|
||||
|
||||
const block = makeBlock<FormInputBlockProps>("f-input-none", "formInput", {
|
||||
@@ -121,11 +121,11 @@ describe("FormInputPropertiesPanel", () => {
|
||||
);
|
||||
|
||||
// 첫 번째 ColorPickerField(필드 텍스트 색상)의 팔레트 버튼을 연다.
|
||||
const paletteButtons = screen.getAllByText("색상 팔레트");
|
||||
const paletteButtons = screen.getAllByText("Color palette");
|
||||
fireEvent.click(paletteButtons[0].closest("button") as HTMLButtonElement);
|
||||
|
||||
// 팔레트에서 "없음" 항목을 버튼 role 기준으로 선택한다.
|
||||
const noneButtons = screen.getAllByRole("button", { name: "없음" });
|
||||
// 팔레트에서 "None" 항목을 버튼 role 기준으로 선택한다.
|
||||
const noneButtons = screen.getAllByRole("button", { name: "None" });
|
||||
fireEvent.click(noneButtons[0]);
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -150,7 +150,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("필드 텍스트 색상 HEX") as HTMLInputElement;
|
||||
const hexInput = screen.getByLabelText("Field text color HEX") as HTMLInputElement;
|
||||
expect(hexInput.value).toBe("");
|
||||
});
|
||||
|
||||
@@ -171,7 +171,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("너비");
|
||||
const select = screen.getByLabelText("Width");
|
||||
fireEvent.change(select, { target: { value: "fixed" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -197,7 +197,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const layoutSelect = screen.getByLabelText("레이아웃");
|
||||
const layoutSelect = screen.getByLabelText("Layout");
|
||||
expect(layoutSelect).toBeTruthy();
|
||||
|
||||
cleanup();
|
||||
@@ -216,7 +216,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.queryByLabelText("레이아웃")).toBeNull();
|
||||
expect(screen.queryByLabelText("Layout")).toBeNull();
|
||||
});
|
||||
|
||||
it("폼 입력 텍스트/줄간격/자간 px 컨트롤이 fontSizeCustom/lineHeightCustom/letterSpacingCustom 으로 저장되어야 한다", () => {
|
||||
@@ -237,13 +237,13 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const fontSizeInput = screen.getByLabelText("필드 텍스트 크기 (px) 커스텀 (px)");
|
||||
const fontSizeInput = screen.getByLabelText("Field text size (px) 커스텀 (px)");
|
||||
fireEvent.change(fontSizeInput, { target: { value: "24" } });
|
||||
|
||||
const lineHeightInput = screen.getByLabelText("필드 줄간격 (px) 커스텀 (px)");
|
||||
const lineHeightInput = screen.getByLabelText("Field line height (px) 커스텀 (px)");
|
||||
fireEvent.change(lineHeightInput, { target: { value: "30" } });
|
||||
|
||||
const letterSpacingInput = screen.getByLabelText("필드 자간 (px) 커스텀 (px)");
|
||||
const letterSpacingInput = screen.getByLabelText("Field letter spacing (px) 커스텀 (px)");
|
||||
fireEvent.change(letterSpacingInput, { target: { value: "1.5" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -280,19 +280,19 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const alignSelect = screen.getByLabelText("텍스트 정렬");
|
||||
const alignSelect = screen.getByLabelText("Text alignment");
|
||||
fireEvent.change(alignSelect, { target: { value: "center" } });
|
||||
|
||||
const widthModeSelect = screen.getByLabelText("너비");
|
||||
const widthModeSelect = screen.getByLabelText("Width");
|
||||
fireEvent.change(widthModeSelect, { target: { value: "fixed" } });
|
||||
|
||||
const widthPxInput = screen.getByLabelText("필드 고정 너비 커스텀 (px)");
|
||||
const widthPxInput = screen.getByLabelText("Field fixed width 커스텀 (px)");
|
||||
fireEvent.change(widthPxInput, { target: { value: "320" } });
|
||||
|
||||
const paddingXInput = screen.getByLabelText("필드 가로 패딩 (px) 커스텀 (px)");
|
||||
const paddingXInput = screen.getByLabelText("Field horizontal padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingXInput, { target: { value: "16" } });
|
||||
|
||||
const paddingYInput = screen.getByLabelText("필드 세로 패딩 (px) 커스텀 (px)");
|
||||
const paddingYInput = screen.getByLabelText("Field vertical padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingYInput, { target: { value: "12" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -332,7 +332,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const labelTypeSelect = screen.getByLabelText("라벨 타입") as HTMLSelectElement;
|
||||
const labelTypeSelect = screen.getByLabelText("Label type") as HTMLSelectElement;
|
||||
const labelTypeClass = labelTypeSelect.getAttribute("class") ?? "";
|
||||
expect(labelTypeClass).toContain("bg-white");
|
||||
expect(labelTypeClass).toContain("text-slate-900");
|
||||
@@ -341,7 +341,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
expect(labelTypeClass).toContain("dark:text-slate-100");
|
||||
expect(labelTypeClass).toContain("dark:border-slate-700");
|
||||
|
||||
const labelInput = screen.getByLabelText("필드 라벨") as HTMLInputElement;
|
||||
const labelInput = screen.getByLabelText("Field label") as HTMLInputElement;
|
||||
const labelInputClass = labelInput.getAttribute("class") ?? "";
|
||||
expect(labelInputClass).toContain("bg-white");
|
||||
expect(labelInputClass).toContain("text-slate-900");
|
||||
@@ -350,7 +350,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
expect(labelInputClass).toContain("dark:text-slate-100");
|
||||
expect(labelInputClass).toContain("dark:border-slate-700");
|
||||
|
||||
const labelDisplaySelect = screen.getByLabelText("라벨 표시 방식") as HTMLSelectElement;
|
||||
const labelDisplaySelect = screen.getByLabelText("Label display mode") as HTMLSelectElement;
|
||||
const labelDisplayClass = labelDisplaySelect.getAttribute("class") ?? "";
|
||||
expect(labelDisplayClass).toContain("bg-white");
|
||||
expect(labelDisplayClass).toContain("text-slate-900");
|
||||
@@ -359,7 +359,7 @@ describe("FormInputPropertiesPanel", () => {
|
||||
expect(labelDisplayClass).toContain("dark:text-slate-100");
|
||||
expect(labelDisplayClass).toContain("dark:border-slate-700");
|
||||
|
||||
const fieldTypeSelect = screen.getByLabelText("필드 타입") as HTMLSelectElement;
|
||||
const fieldTypeSelect = screen.getByLabelText("Field type") as HTMLSelectElement;
|
||||
const fieldTypeClass = fieldTypeSelect.getAttribute("class") ?? "";
|
||||
expect(fieldTypeClass).toContain("bg-white");
|
||||
expect(fieldTypeClass).toContain("text-slate-900");
|
||||
@@ -406,7 +406,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("셀렉트 텍스트 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Select text color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#112233" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -431,7 +431,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("셀렉트 채움 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Select fill color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#445566" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -456,7 +456,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("셀렉트 테두리 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Select border color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#778899" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -482,7 +482,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("필드 너비");
|
||||
const select = screen.getByLabelText("Field width");
|
||||
fireEvent.change(select, { target: { value: "fixed" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -509,13 +509,13 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const fontSizeInput = screen.getByLabelText("셀렉트 텍스트 크기 (px) 커스텀 (px)");
|
||||
const fontSizeInput = screen.getByLabelText("Select text size (px) 커스텀 (px)");
|
||||
fireEvent.change(fontSizeInput, { target: { value: "24" } });
|
||||
|
||||
const lineHeightInput = screen.getByLabelText("셀렉트 줄간격 (px) 커스텀 (px)");
|
||||
const lineHeightInput = screen.getByLabelText("Select line height (px) 커스텀 (px)");
|
||||
fireEvent.change(lineHeightInput, { target: { value: "30" } });
|
||||
|
||||
const letterSpacingInput = screen.getByLabelText("셀렉트 자간 (px) 커스텀 (px)");
|
||||
const letterSpacingInput = screen.getByLabelText("Select letter spacing (px) 커스텀 (px)");
|
||||
fireEvent.change(letterSpacingInput, { target: { value: "1.5" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -551,13 +551,13 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const widthPxInput = screen.getByLabelText("필드 고정 너비 커스텀 (px)");
|
||||
const widthPxInput = screen.getByLabelText("Field fixed width 커스텀 (px)");
|
||||
fireEvent.change(widthPxInput, { target: { value: "320" } });
|
||||
|
||||
const paddingXInput = screen.getByLabelText("셀렉트 가로 패딩 (px) 커스텀 (px)");
|
||||
const paddingXInput = screen.getByLabelText("Select horizontal padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingXInput, { target: { value: "16" } });
|
||||
|
||||
const paddingYInput = screen.getByLabelText("셀렉트 세로 패딩 (px) 커스텀 (px)");
|
||||
const paddingYInput = screen.getByLabelText("Select vertical padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingYInput, { target: { value: "12" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -591,7 +591,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const layoutSelect = screen.getByLabelText("레이아웃");
|
||||
const layoutSelect = screen.getByLabelText("Layout");
|
||||
expect(layoutSelect).toBeTruthy();
|
||||
|
||||
cleanup();
|
||||
@@ -610,7 +610,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.queryByLabelText("레이아웃")).toBeNull();
|
||||
expect(screen.queryByLabelText("Layout")).toBeNull();
|
||||
});
|
||||
|
||||
it("라벨 타입 셀렉트 변경 시 updateBlock 이 labelMode 로 호출되어야 한다", () => {
|
||||
@@ -629,7 +629,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("라벨 타입");
|
||||
const select = screen.getByLabelText("Label type");
|
||||
fireEvent.change(select, { target: { value: "image" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -654,7 +654,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("라벨 표시 방식");
|
||||
const select = screen.getByLabelText("Label display mode");
|
||||
fireEvent.change(select, { target: { value: "hidden" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -680,7 +680,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("레이아웃");
|
||||
const select = screen.getByLabelText("Layout");
|
||||
fireEvent.change(select, { target: { value: "inline" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -707,7 +707,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const gapInput = screen.getByLabelText("라벨/필드 간격 (px) 커스텀 (px)");
|
||||
const gapInput = screen.getByLabelText("Label/field gap (px) 커스텀 (px)");
|
||||
fireEvent.change(gapInput, { target: { value: "16" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -732,7 +732,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const input = screen.getByLabelText("필드 라벨");
|
||||
const input = screen.getByLabelText("Field label");
|
||||
fireEvent.change(input, { target: { value: "새 카테고리" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -757,7 +757,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const input = screen.getByLabelText("전송 키");
|
||||
const input = screen.getByLabelText("Submit key");
|
||||
fireEvent.change(input, { target: { value: "category_new" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -782,7 +782,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const radiusInput = screen.getByLabelText("필드 모서리 둥글기 커스텀");
|
||||
const radiusInput = screen.getByLabelText("Field border radius 커스텀");
|
||||
fireEvent.change(radiusInput, { target: { value: "8" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -806,7 +806,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const labelTypeSelect = screen.getByLabelText("라벨 타입") as HTMLSelectElement;
|
||||
const labelTypeSelect = screen.getByLabelText("Label type") as HTMLSelectElement;
|
||||
const labelTypeClass = labelTypeSelect.getAttribute("class") ?? "";
|
||||
expect(labelTypeClass).toContain("bg-white");
|
||||
expect(labelTypeClass).toContain("text-slate-900");
|
||||
@@ -815,7 +815,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
expect(labelTypeClass).toContain("dark:text-slate-100");
|
||||
expect(labelTypeClass).toContain("dark:border-slate-700");
|
||||
|
||||
const labelInput = screen.getByLabelText("필드 라벨") as HTMLInputElement;
|
||||
const labelInput = screen.getByLabelText("Field label") as HTMLInputElement;
|
||||
const labelInputClass = labelInput.getAttribute("class") ?? "";
|
||||
expect(labelInputClass).toContain("bg-white");
|
||||
expect(labelInputClass).toContain("text-slate-900");
|
||||
@@ -824,7 +824,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
expect(labelInputClass).toContain("dark:text-slate-100");
|
||||
expect(labelInputClass).toContain("dark:border-slate-700");
|
||||
|
||||
const labelDisplaySelect = screen.getByLabelText("라벨 표시 방식") as HTMLSelectElement;
|
||||
const labelDisplaySelect = screen.getByLabelText("Label display mode") as HTMLSelectElement;
|
||||
const labelDisplayClass = labelDisplaySelect.getAttribute("class") ?? "";
|
||||
expect(labelDisplayClass).toContain("bg-white");
|
||||
expect(labelDisplayClass).toContain("text-slate-900");
|
||||
@@ -833,7 +833,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
expect(labelDisplayClass).toContain("dark:text-slate-100");
|
||||
expect(labelDisplayClass).toContain("dark:border-slate-700");
|
||||
|
||||
const widthModeSelect = screen.getByLabelText("필드 너비") as HTMLSelectElement;
|
||||
const widthModeSelect = screen.getByLabelText("Field width") as HTMLSelectElement;
|
||||
const widthModeClass = widthModeSelect.getAttribute("class") ?? "";
|
||||
expect(widthModeClass).toContain("bg-white");
|
||||
expect(widthModeClass).toContain("text-slate-900");
|
||||
@@ -842,7 +842,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
expect(widthModeClass).toContain("dark:text-slate-100");
|
||||
expect(widthModeClass).toContain("dark:border-slate-700");
|
||||
|
||||
const optionLabelInput = screen.getByPlaceholderText("라벨") as HTMLInputElement;
|
||||
const optionLabelInput = screen.getByPlaceholderText("Label") as HTMLInputElement;
|
||||
const optionLabelClass = optionLabelInput.getAttribute("class") ?? "";
|
||||
expect(optionLabelClass).toContain("bg-white");
|
||||
expect(optionLabelClass).toContain("text-slate-900");
|
||||
@@ -867,7 +867,7 @@ describe("FormSelectPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const optionLabelInput = screen.getByPlaceholderText("라벨") as HTMLInputElement;
|
||||
const optionLabelInput = screen.getByPlaceholderText("Label") as HTMLInputElement;
|
||||
const rowDiv = optionLabelInput.closest("div") as HTMLDivElement | null;
|
||||
expect(rowDiv).not.toBeNull();
|
||||
|
||||
@@ -904,7 +904,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("체크박스 텍스트 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Checkbox text color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#112233" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -931,13 +931,13 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const fontSizeInput = screen.getByLabelText("체크박스 텍스트 크기 (px) 커스텀 (px)");
|
||||
const fontSizeInput = screen.getByLabelText("Checkbox text size (px) 커스텀 (px)");
|
||||
fireEvent.change(fontSizeInput, { target: { value: "24" } });
|
||||
|
||||
const lineHeightInput = screen.getByLabelText("체크박스 줄간격 (px) 커스텀 (px)");
|
||||
const lineHeightInput = screen.getByLabelText("Checkbox line height (px) 커스텀 (px)");
|
||||
fireEvent.change(lineHeightInput, { target: { value: "30" } });
|
||||
|
||||
const letterSpacingInput = screen.getByLabelText("체크박스 자간 (px) 커스텀 (px)");
|
||||
const letterSpacingInput = screen.getByLabelText("Checkbox letter spacing (px) 커스텀 (px)");
|
||||
fireEvent.change(letterSpacingInput, { target: { value: "1.5" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -973,13 +973,13 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const widthPxInput = screen.getByLabelText("필드 고정 너비 커스텀 (px)");
|
||||
const widthPxInput = screen.getByLabelText("Field fixed width 커스텀 (px)");
|
||||
fireEvent.change(widthPxInput, { target: { value: "320" } });
|
||||
|
||||
const paddingXInput = screen.getByLabelText("체크박스 가로 패딩 (px) 커스텀 (px)");
|
||||
const paddingXInput = screen.getByLabelText("Checkbox horizontal padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingXInput, { target: { value: "16" } });
|
||||
|
||||
const paddingYInput = screen.getByLabelText("체크박스 세로 패딩 (px) 커스텀 (px)");
|
||||
const paddingYInput = screen.getByLabelText("Checkbox vertical padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingYInput, { target: { value: "12" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1013,7 +1013,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const layoutSelect = screen.getByLabelText("레이아웃");
|
||||
const layoutSelect = screen.getByLabelText("Layout");
|
||||
expect(layoutSelect).toBeTruthy();
|
||||
|
||||
cleanup();
|
||||
@@ -1032,7 +1032,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.queryByLabelText("레이아웃")).toBeNull();
|
||||
expect(screen.queryByLabelText("Layout")).toBeNull();
|
||||
});
|
||||
|
||||
it("그룹 타이틀 타입 셀렉트 변경 시 updateBlock 이 groupLabelMode 로 호출되어야 한다", () => {
|
||||
@@ -1051,7 +1051,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("그룹 타이틀 타입");
|
||||
const select = screen.getByLabelText("Group title type");
|
||||
fireEvent.change(select, { target: { value: "image" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1076,7 +1076,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("그룹 타이틀 표시 방식");
|
||||
const select = screen.getByLabelText("Group title display mode");
|
||||
fireEvent.change(select, { target: { value: "hidden" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1102,7 +1102,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("레이아웃");
|
||||
const select = screen.getByLabelText("Layout");
|
||||
fireEvent.change(select, { target: { value: "inline" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1129,7 +1129,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const gapInput = screen.getByLabelText("라벨/필드 간격 (px) 커스텀 (px)");
|
||||
const gapInput = screen.getByLabelText("Label/field gap (px) 커스텀 (px)");
|
||||
fireEvent.change(gapInput, { target: { value: "16" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1154,7 +1154,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const input = screen.getByLabelText("그룹 타이틀");
|
||||
const input = screen.getByLabelText("Group title");
|
||||
fireEvent.change(input, { target: { value: "새 옵션들" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1179,7 +1179,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const gapInput = screen.getByLabelText("체크박스 옵션 간격 (px) 커스텀 (px)");
|
||||
const gapInput = screen.getByLabelText("Checkbox option gap (px) 커스텀 (px)");
|
||||
fireEvent.change(gapInput, { target: { value: "10" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1204,7 +1204,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("옵션 레이아웃");
|
||||
const select = screen.getByLabelText("Option layout");
|
||||
fireEvent.change(select, { target: { value: "inline" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1229,7 +1229,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const radiusInput = screen.getByLabelText("필드 모서리 둥글기 커스텀");
|
||||
const radiusInput = screen.getByLabelText("Field border radius 커스텀");
|
||||
fireEvent.change(radiusInput, { target: { value: "8" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1253,7 +1253,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const select = screen.getByLabelText("필드 너비") as HTMLSelectElement;
|
||||
const select = screen.getByLabelText("Field width") as HTMLSelectElement;
|
||||
const className = select.getAttribute("class") ?? "";
|
||||
|
||||
expect(className).toContain("bg-white");
|
||||
@@ -1282,13 +1282,13 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const fontSizeInput = screen.getByLabelText("라디오 텍스트 크기 (px) 커스텀 (px)");
|
||||
const fontSizeInput = screen.getByLabelText("Radio text size (px) 커스텀 (px)");
|
||||
fireEvent.change(fontSizeInput, { target: { value: "24" } });
|
||||
|
||||
const lineHeightInput = screen.getByLabelText("라디오 줄간격 (px) 커스텀 (px)");
|
||||
const lineHeightInput = screen.getByLabelText("Radio line height (px) 커스텀 (px)");
|
||||
fireEvent.change(lineHeightInput, { target: { value: "30" } });
|
||||
|
||||
const letterSpacingInput = screen.getByLabelText("라디오 자간 (px) 커스텀 (px)");
|
||||
const letterSpacingInput = screen.getByLabelText("Radio letter spacing (px) 커스텀 (px)");
|
||||
fireEvent.change(letterSpacingInput, { target: { value: "1.5" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1325,16 +1325,16 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const widthPxInput = screen.getByLabelText("필드 고정 너비 커스텀 (px)");
|
||||
const widthPxInput = screen.getByLabelText("Field fixed width 커스텀 (px)");
|
||||
fireEvent.change(widthPxInput, { target: { value: "320" } });
|
||||
|
||||
const paddingXInput = screen.getByLabelText("라디오 가로 패딩 (px) 커스텀 (px)");
|
||||
const paddingXInput = screen.getByLabelText("Radio horizontal padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingXInput, { target: { value: "12" } });
|
||||
|
||||
const paddingYInput = screen.getByLabelText("라디오 세로 패딩 (px) 커스텀 (px)");
|
||||
const paddingYInput = screen.getByLabelText("Radio vertical padding (px) 커스텀 (px)");
|
||||
fireEvent.change(paddingYInput, { target: { value: "6" } });
|
||||
|
||||
const optionGapInput = screen.getByLabelText("라디오 옵션 간격 (px) 커스텀 (px)");
|
||||
const optionGapInput = screen.getByLabelText("Radio option gap (px) 커스텀 (px)");
|
||||
fireEvent.change(optionGapInput, { target: { value: "10" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1616,7 +1616,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("라디오 배경 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Radio background color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#445566" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1641,7 +1641,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const hexInput = screen.getByLabelText("라디오 테두리 색상 HEX");
|
||||
const hexInput = screen.getByLabelText("Radio border color HEX");
|
||||
fireEvent.change(hexInput, { target: { value: "#778899" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
@@ -1666,7 +1666,7 @@ describe("FormCheckboxPropertiesPanel", () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
const radiusInput = screen.getByLabelText("필드 모서리 둥글기 커스텀");
|
||||
const radiusInput = screen.getByLabelText("Field border radius 커스텀");
|
||||
fireEvent.change(radiusInput, { target: { value: "8" } });
|
||||
|
||||
expect(updateBlock).toHaveBeenCalledWith(
|
||||
|
||||
Reference in New Issue
Block a user