48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
|
|
vi.mock("@/components/session/authenticatedRequest.vue", () => ({
|
|
authenticatedRequest: vi.fn(),
|
|
}));
|
|
|
|
vi.mock("@/components/request/HandleGlobalError.vue", () => ({
|
|
parseError: vi.fn(),
|
|
}));
|
|
|
|
import { authenticatedRequest } from "@/components/session/authenticatedRequest.vue";
|
|
import { addVehicleUser, vehicles } from "@/components/session/user/UserVehicleRequest.vue";
|
|
|
|
describe("UserVehicleRequest", () => {
|
|
beforeEach(() => {
|
|
vi.clearAllMocks();
|
|
vehicles.value = [];
|
|
});
|
|
|
|
it("creates customer vehicles through the shared endpoint with wash subscriptions disabled", async () => {
|
|
authenticatedRequest.mockResolvedValue({
|
|
data: {
|
|
data: {
|
|
id: 123,
|
|
reg: "AB12345",
|
|
wash_subscription: false,
|
|
},
|
|
},
|
|
});
|
|
|
|
await addVehicleUser("AB12345", "53", "Driver note");
|
|
|
|
expect(authenticatedRequest).toHaveBeenCalledWith("/vehicles", "POST", {
|
|
reg: "AB12345",
|
|
type: 53,
|
|
wash_subscription: false,
|
|
notes: "Driver note",
|
|
});
|
|
expect(vehicles.value).toEqual([
|
|
{
|
|
id: 123,
|
|
reg: "AB12345",
|
|
wash_subscription: false,
|
|
},
|
|
]);
|
|
});
|
|
});
|