first commit
This commit is contained in:
50
calcom/packages/prisma/zod-utils.test.ts
Normal file
50
calcom/packages/prisma/zod-utils.test.ts
Normal file
@@ -0,0 +1,50 @@
|
||||
import { describe, expect, it, beforeAll, vi } from "vitest";
|
||||
|
||||
import dayjs from "@calcom/dayjs";
|
||||
import { stringToDayjs } from "@calcom/prisma/zod-utils";
|
||||
|
||||
beforeAll(() => {
|
||||
vi.setSystemTime(dayjs.utc("2021-06-20T11:59:59Z").toDate());
|
||||
});
|
||||
|
||||
describe("Tests the parsing logic", () => {
|
||||
it("when supplied with no timezone data", async () => {
|
||||
const date = stringToDayjs("2024-02-27T17:00:00");
|
||||
expect(date.toISOString()).toBe("2024-02-27T17:00:00.000Z");
|
||||
});
|
||||
|
||||
it("when supplied with UTC", async () => {
|
||||
const date = stringToDayjs("2024-02-27T17:00:00Z");
|
||||
expect(date.year()).toBe(2024);
|
||||
expect(date.month()).toBe(1);
|
||||
expect(date.date()).toBe(27);
|
||||
expect(date.hour()).toBe(17);
|
||||
expect(date.minute()).toBe(0);
|
||||
expect(date.second()).toBe(0);
|
||||
expect(date.utcOffset()).toBe(0);
|
||||
});
|
||||
|
||||
it("when supplied with UTC- timezone", async () => {
|
||||
const date = stringToDayjs("2024-02-27T17:00:00-05:00");
|
||||
expect(date.year()).toBe(2024);
|
||||
expect(date.month()).toBe(1);
|
||||
expect(date.date()).toBe(27);
|
||||
expect(date.hour()).toBe(17);
|
||||
expect(date.minute()).toBe(0);
|
||||
expect(date.second()).toBe(0);
|
||||
expect(date.utcOffset()).toBe(-300);
|
||||
expect(date.toISOString()).toBe("2024-02-27T22:00:00.000Z");
|
||||
});
|
||||
|
||||
it("when supplied with UTC+ timezone", async () => {
|
||||
const date = stringToDayjs("2024-02-27T17:00:00+05:00");
|
||||
expect(date.year()).toBe(2024);
|
||||
expect(date.month()).toBe(1);
|
||||
expect(date.date()).toBe(27);
|
||||
expect(date.hour()).toBe(17);
|
||||
expect(date.minute()).toBe(0);
|
||||
expect(date.second()).toBe(0);
|
||||
expect(date.utcOffset()).toBe(300);
|
||||
expect(date.toISOString()).toBe("2024-02-27T12:00:00.000Z");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user