import { screen, waitFor } from "@testing-library/react"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { SlideOverAuditTab } from "@/app/(protected)/workorders/_components/detail/tabs/slide-over-audit-tab"; import type { WorkOrderAuditEntry } from "@/domain/work-orders/types/work-order"; import { renderWithProviders } from "@/test/test-utils"; const fetchUsers = vi.fn(); vi.mock("@/domain/work-orders/api/work-orders-api", () => ({ workOrdersApi: { fetchUsers: (...args: unknown[]) => fetchUsers(...args), }, })); const DISPATCHER = { id: "d1", name: "Alex Dispatcher" }; const SCHEDULER = { id: "s1", name: "Pat Scheduler" }; const entry: WorkOrderAuditEntry = { id: "a1", fieldName: "AssignTo", oldValue: "Unassigned", newValue: "Morgan Blake", action: "AssignmentChanged", createdAt: "2026-06-01T13:10:00.000Z", userName: "", type: "manual", dispatcherId: SCHEDULER.id, }; describe("SlideOverAuditTab assignment actor", () => { beforeEach(() => { fetchUsers.mockReset(); fetchUsers.mockResolvedValue([SCHEDULER]); }); it("names a scheduler actor who is not on the dispatcher lookup", async () => { renderWithProviders(, { withAuth: false, }); await waitFor(() => { expect(screen.getByText("Pat Scheduler")).toBeInTheDocument(); }); expect(screen.getByText('Changed Assigned To to "Morgan Blake"')).toBeInTheDocument(); expect(screen.queryByText("s1")).not.toBeInTheDocument(); }); });