Fix/BOOK-662 handle overlapping dates timezone * fix(BOOK-662): handle overlapping dates alerts * fix(BOOK-662): handle overlapping dates alerts * fix(BOOK-662): add test same dates Approved-by: Anton Gunnarsson
39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
import { describe, expect, it } from "vitest"
|
|
|
|
import { dt } from "../dt"
|
|
import { hasOverlappingDates } from "./hasOverlappingDates"
|
|
|
|
describe("hasOverlappingDates", () => {
|
|
const item = { startDate: "2025-09-01", endDate: "2025-09-10" }
|
|
|
|
it("returns true if start date is within date range", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-09-05"), dt("2025-09-12"))
|
|
expect(result).toBeTruthy()
|
|
})
|
|
|
|
it("returns true if end date is within date range", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-08-28"), dt("2025-09-05"))
|
|
expect(result).toBeTruthy()
|
|
})
|
|
|
|
it("returns true if start and end date if match dates exactly", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-09-01"), dt("2025-09-10"))
|
|
expect(result).toBeTruthy()
|
|
})
|
|
|
|
it("returns true if start and end date is within date range", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-08-28"), dt("2025-09-15"))
|
|
expect(result).toBeTruthy()
|
|
})
|
|
|
|
it("returns true if start and end date is within date range", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-09-03"), dt("2025-09-05"))
|
|
expect(result).toBeTruthy()
|
|
})
|
|
|
|
it("return false if no overlap", () => {
|
|
const result = hasOverlappingDates(item, dt("2025-08-01"), dt("2025-08-05"))
|
|
expect(result).toBeFalsy()
|
|
})
|
|
})
|