Skip to content

Commit 9e4cf39

Browse files
committed
Update isBetweenDates tests for inclusive date handling and clarify edge cases
1 parent 3115b69 commit 9e4cf39

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/validators/isBetweenDates.test.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ describe("isBetweenDates", () => {
1515
).toBe(true);
1616
});
1717

18-
it("should return true when date equals start or end date (inclusive)", () => {
19-
expect(isBetweenDates("2023-01-01", dateRange)).toBe(true);
20-
expect(isBetweenDates("2023-12-31", dateRange)).toBe(true);
18+
it("should return true when date equals start date, false when equals end date (left inclusive)", () => {
19+
expect(isBetweenDates("2023-01-01", dateRange)).toBe(true); // includes start
20+
expect(isBetweenDates("2023-12-31", dateRange)).toBe(false); // excludes end
2121
});
2222

2323
it("should return false when date is outside the range", () => {
@@ -65,7 +65,7 @@ describe("isBetweenDates", () => {
6565

6666
it("should handle same start and end dates", () => {
6767
const sameRange = { startDate: "2023-01-01", endDate: "2023-01-01" };
68-
expect(isBetweenDates("2023-01-01", sameRange)).toBe(true);
68+
expect(isBetweenDates("2023-01-01", sameRange)).toBe(false); // left inclusive means start >= date < end, so when start === end, nothing is included
6969
expect(isBetweenDates("2023-01-02", sameRange)).toBe(false);
7070
});
7171

@@ -78,6 +78,7 @@ describe("isBetweenDates", () => {
7878
expect(isBetweenDates("2023-06-15T12:00:00.000Z", timeRange)).toBe(true);
7979
expect(isBetweenDates("2023-06-15T09:00:00.000Z", timeRange)).toBe(false);
8080
expect(isBetweenDates("2023-06-15T15:00:00.000Z", timeRange)).toBe(false);
81+
expect(isBetweenDates("2023-06-15T14:00:00.000Z", timeRange)).toBe(false); // excludes end time
8182
});
8283
});
8384
});

0 commit comments

Comments
 (0)