|
6 | 6 | dateIsWeekend, |
7 | 7 | dateDifferenceInDays, |
8 | 8 | getNextBusinessDate, |
| 9 | + getStartOfDay, |
| 10 | + getEndOfDay, |
| 11 | + getLastDayOfYear, |
9 | 12 | } from "./date"; |
10 | 13 |
|
11 | 14 | describe("date tests", () => { |
@@ -106,6 +109,41 @@ describe("date tests", () => { |
106 | 109 | [42 as unknown as Date, new Date(Number.NaN)], |
107 | 110 | ["test" as unknown as Date, new Date(Number.NaN)], |
108 | 111 | ])("getNextBusinessDate", (date, expected) => { |
109 | | - expect(getNextBusinessDate(date).getDate()).toBe(expected.getDate()); |
| 112 | + expect(getNextBusinessDate(date).getTime()).toBe(expected.getTime()); |
| 113 | + }); |
| 114 | + |
| 115 | + test.each([ |
| 116 | + [new Date(2024, 0, 1, 12, 45, 25, 333), new Date(2024, 0, 1, 0, 0, 0, 0)], |
| 117 | + [null as unknown as Date, new Date(Number.NaN)], |
| 118 | + [undefined as unknown as Date, new Date(Number.NaN)], |
| 119 | + [42 as unknown as Date, new Date(Number.NaN)], |
| 120 | + ["test" as unknown as Date, new Date(Number.NaN)], |
| 121 | + ])("getStartOfDay", (date, expected) => { |
| 122 | + expect(getStartOfDay(date).getTime()).toBe(expected.getTime()); |
| 123 | + }); |
| 124 | + |
| 125 | + test.each([ |
| 126 | + [new Date(2024, 0, 1, 12, 45, 25, 333), new Date(2024, 0, 1, 23, 59, 59, 999)], |
| 127 | + [null as unknown as Date, new Date(Number.NaN)], |
| 128 | + [undefined as unknown as Date, new Date(Number.NaN)], |
| 129 | + [42 as unknown as Date, new Date(Number.NaN)], |
| 130 | + ["test" as unknown as Date, new Date(Number.NaN)], |
| 131 | + ])("getEndOfDay", (date, expected) => { |
| 132 | + expect(getEndOfDay(date).getTime()).toBe(expected.getTime()); |
| 133 | + }); |
| 134 | + |
| 135 | + test.each([ |
| 136 | + [null as unknown as Date, new Date(Number.NaN)], |
| 137 | + [undefined as unknown as Date, new Date(Number.NaN)], |
| 138 | + [42 as unknown as Date, new Date(Number.NaN)], |
| 139 | + ["test" as unknown as Date, new Date(Number.NaN)], |
| 140 | + ])("getLastDayOfYear", (date, expected) => { |
| 141 | + expect(getLastDayOfYear(date).getTime()).toBe(expected.getTime()); |
| 142 | + }); |
| 143 | + |
| 144 | + test("getLastDayOfYear all days", () => { |
| 145 | + for (let date = new Date(2024, 0, 1); date < new Date(2025, 0, 1); date.setDate(date.getDate() + 1)) { |
| 146 | + expect(getLastDayOfYear(date).getTime()).toBe(new Date(2024, 11, 31, 0, 0, 0, 0).getTime()); |
| 147 | + } |
110 | 148 | }); |
111 | 149 | }); |
0 commit comments