import { describe, it } from "vitest" import { REPORT_REASONS } from "panoramax-js" import Translations from "../../src/UI/i18n/Translations" import { OH, OpeningRange } from "../../src/UI/OpeningHours/OpeningHours" import { expect } from "chai" describe("OH", () => { describe("getRanges", () => { process.env.TZ = 'UTC' it("standard opening hours", () => { const oh_obj = OH.createOhObject({ "opening_hours": "10:00-18:00", _lat: 0, _lon: 0, _country: "be", }, "10:00-18:00", "be") const ranges = OH.getRanges(oh_obj, new Date("2025-06-10T00:00:00Z"), new Date("2025-06-11T00:00:00Z")) // Deep equal compares the dates correctly expect(ranges[1]).to.deep.equal([ { "comment": undefined, "endDate": new Date("2025-06-10T18:00:00.000Z"), "isOpen": true, "isSpecial": false, "openEnd": false, "startDate": new Date("2025-06-10T10:00:00.000Z"), }, ]) }) it("open ended opening hours", () => { process.env.TZ = 'UTC' const oh_obj = OH.createOhObject({ "opening_hours": "10:00-18:00+", _lat: 0, _lon: 0, _country: "be", }, "10:00+", "be") const ranges = OH.getRanges(oh_obj, new Date("2025-06-09T00:00:00Z"), new Date("2025-06-16T00:00:00Z")) // Deep equal compares the dates correctly expect(ranges[1]).to.deep.equal([ { "comment": undefined, "endDate": new Date("2025-06-10T13:00:00.000Z"), "isOpen": false, "isSpecial": true, "openEnd": true, "startDate": new Date("2025-06-10T10:00:00.000Z"), }, ]) expect(ranges.at(-1)).to.deep.equal([ { "comment": undefined, "endDate": new Date("2025-06-15T13:00:00.000Z"), "isOpen": false, "isSpecial": true, "openEnd": true, "startDate": new Date("2025-06-15T10:00:00.000Z"), }, ]) }) }) })