/** * @file Tests for InspectorFieldRow component */ import { render, screen } from "@testing-library/react"; import { InspectorFieldRow } from "./InspectorFieldRow"; describe("InspectorFieldRow", () => { it("renders label and children", () => { render( ); expect(screen.getByText("Test Label")).toBeInTheDocument(); expect(screen.getByTestId("test-input")).toBeInTheDocument(); }); it("renders ReactNode label", () => { render( Custom}> ); expect(screen.getByTestId("custom-label")).toBeInTheDocument(); }); it("accepts additional className for container", () => { const { container } = render( ); expect(container.firstChild).toHaveClass("custom-class"); }); it("passes labelProps to label element", () => { render( ); const label = screen.getByText("Label"); expect(label).toHaveAttribute("id", "my-label"); }); it("merges labelProps className with default label class", () => { render( ); const label = screen.getByText("Label"); expect(label).toHaveClass("extra-label-class"); }); it("renders multiple children in control area", () => { render( ); expect(screen.getByTestId("input-1")).toBeInTheDocument(); expect(screen.getByTestId("input-2")).toBeInTheDocument(); }); });