mirror of
https://github.com/Sea-Haven-Industries/shoc-frontend-new.git
synced 2026-10-07 11:39:00 +00:00
Dispatchers can flag Aveta on Service and Notes and filter those rows without a site-level attribute.
78 lines
2.1 KiB
TypeScript
78 lines
2.1 KiB
TypeScript
import { fireEvent, screen } from "@testing-library/react";
|
|
import { describe, expect, it, vi } from "vitest";
|
|
import { SlideOverInfoTabEditView } from "@/app/(protected)/workorders/_components/detail/tabs/slide-over-info-tab-edit-view";
|
|
import { EMPTY_UPLIFT_SUMMARY } from "@/domain/work-orders/types/work-order-uplift";
|
|
import type { WorkOrderTableRow } from "@/domain/work-orders/types/work-order-table-row";
|
|
import { renderWithProviders } from "@/test/test-utils";
|
|
|
|
function row(overrides: Partial<WorkOrderTableRow> = {}): WorkOrderTableRow {
|
|
return {
|
|
id: 1,
|
|
woNumber: "24871",
|
|
site: "BK5",
|
|
type: "Emergency",
|
|
severity: 1,
|
|
dispatcherId: "",
|
|
dispatcherName: "",
|
|
scheduledOn: "2026-06-16",
|
|
completedDate: "",
|
|
targetWeek: "",
|
|
dayGroup: "",
|
|
dayLabel: "",
|
|
location: "Dallas",
|
|
locationId: "1",
|
|
pm: "Scrubber Pit",
|
|
serviceNotes: "",
|
|
extraServices: [],
|
|
vendorId: "",
|
|
company: "",
|
|
tech: "",
|
|
techPhone: "",
|
|
apptStart: "",
|
|
apptEnd: "",
|
|
apptTime: "",
|
|
status: "Scheduled",
|
|
docStatus: "No",
|
|
pocName: "",
|
|
pocPhone: "",
|
|
pocNotes: "",
|
|
additionalContacts: [],
|
|
dueDate: "2026-06-16",
|
|
rescheduleCount: 0,
|
|
carriedOver: 0,
|
|
isAddOn: false,
|
|
originalWeek: "",
|
|
originalDate: "",
|
|
isPastDue: false,
|
|
scheduleWeekOnly: false,
|
|
mediaCount: 0,
|
|
title: "",
|
|
priority: "",
|
|
primaryDispatchId: null,
|
|
rowVersion: "",
|
|
dispatchRowVersion: "",
|
|
flagColor: null,
|
|
upliftSummary: EMPTY_UPLIFT_SUMMARY,
|
|
...overrides,
|
|
};
|
|
}
|
|
|
|
describe("slide-over Emergency Due Date", () => {
|
|
it("opens the dedicated calendar dialog for Emergency", () => {
|
|
renderWithProviders(
|
|
<SlideOverInfoTabEditView
|
|
draft={row()}
|
|
users={[]}
|
|
sites={[]}
|
|
vendors={[]}
|
|
pmTypes={["Scrubber Pit"]}
|
|
allOrders={[]}
|
|
onDraftChange={vi.fn()}
|
|
/>,
|
|
);
|
|
|
|
fireEvent.click(screen.getByRole("button", { name: "Due Date" }));
|
|
expect(screen.getByRole("dialog")).toBeInTheDocument();
|
|
expect(screen.getByRole("heading", { name: "Due Date" })).toBeInTheDocument();
|
|
});
|
|
});
|