diff --git a/tests/unit/data-table.test.tsx b/tests/unit/data-table.test.tsx new file mode 100644 index 0000000..b2e190e --- /dev/null +++ b/tests/unit/data-table.test.tsx @@ -0,0 +1,32 @@ +"use client"; + +import { render, screen } from "@testing-library/react"; +import userEvent from "@testing-library/user-event"; +import { describe, expect, it } from "vitest"; +import type { ColumnDef } from "@tanstack/react-table"; +import { DataTable } from "@/components/common/data-table"; + +type Row = { name: string; status: string }; + +const columns: ColumnDef[] = [ + { accessorKey: "name", header: "Name" }, + { accessorKey: "status", header: "Status" }, +]; + +describe("DataTable", () => { + it("filters rows by search input", async () => { + render( + , + ); + + await userEvent.type(screen.getByPlaceholderText("Search"), "Beta"); + expect(screen.getByText("Beta")).toBeInTheDocument(); + expect(screen.queryByText("Alpha")).not.toBeInTheDocument(); + }); +});