import { describe, it, expect } from "vitest"; import { WebhookTriggerEvents } from "@calcom/prisma/enums"; import type { OOOCreatedDTO } from "../../dto/types"; import { OOOPayloadBuilder } from "../versioned/v2021-10-20/OOOPayloadBuilder"; describe("OOOPayloadBuilder (v2021-10-20)", () => { const builder = new OOOPayloadBuilder(); describe("OOO_CREATED", () => { it("should build payload with OOO entry", () => { const dto: OOOCreatedDTO = { triggerEvent: WebhookTriggerEvents.OOO_CREATED, createdAt: "2024-01-15T10:00:00Z", oooEntry: { id: 1, userId: 1, start: "2024-01-20T00:00:00Z", end: "2024-01-25T00:00:00Z", reason: "Vacation", }, }; const payload = builder.build(dto); expect(payload.triggerEvent).toBe(WebhookTriggerEvents.OOO_CREATED); expect(payload.createdAt).toBe("2024-01-15T10:00:00Z"); expect(payload.payload.oooEntry).toEqual({ id: 1, userId: 1, start: "2024-01-20T00:00:00Z", end: "2024-01-25T00:00:00Z", reason: "Vacation", }); }); }); });