all repos — s3brm @ c543e4f5a809b6216e18a72f1b34faed6c7c6ca6

S3 Backup Retention Manager

test.ts (view raw)

 1import { assertEquals } from "https://deno.land/std@0.152.0/testing/asserts.ts";
 2import {
 3  getStartOfDay,
 4  getStartOfWeek,
 5  getStartOfMonth,
 6  isSameDate,
 7} from "./date.ts";
 8
 9const date = new Date("2022-08-13");
10
11Deno.test("getSartOfDay", () => {
12  const startOfDay: Date = getStartOfDay(date);
13  assertEquals(startOfDay.getHours(), 0);
14  assertEquals(startOfDay.getMinutes(), 0);
15  assertEquals(startOfDay.getMilliseconds(), 0);
16});
17
18Deno.test("getStartOfWeek returns start of week", () => {
19  const startOfWeek = getStartOfWeek(date);
20  assertEquals(startOfWeek.getDate(), 8);
21  assertEquals(startOfWeek.getMonth(), 7); // 7 = August
22  assertEquals(startOfWeek.getHours(), 0);
23  assertEquals(startOfWeek.getMinutes(), 0);
24  assertEquals(startOfWeek.getMilliseconds(), 0);
25});
26
27Deno.test("getStartOfMonth returns start of month", () => {
28  const startOfMonth = getStartOfMonth(date);
29  assertEquals(startOfMonth.getDate(), 1);
30  assertEquals(startOfMonth.getMonth(), 7); // 7 = August
31  assertEquals(startOfMonth.getHours(), 0);
32  assertEquals(startOfMonth.getMinutes(), 0);
33  assertEquals(startOfMonth.getMilliseconds(), 0);
34});
35
36Deno.test("isSameDate returns true for same dates but different hours", () => {
37  const dateB = new Date(new Date("2022-08-13").setHours(23, 10, 33));
38  const comparaison = isSameDate(date, dateB);
39  assertEquals(comparaison, true);
40});
41
42Deno.test("isSameDate returns false for different dates", () => {
43  const dateB = new Date("2022-08-02");
44  const comparaison = isSameDate(date, dateB);
45  assertEquals(comparaison, false);
46});