update tests

This commit is contained in:
Alex Holliday committed 2026-07-23 10:26:01 -07:00
1 parent b4e42bfd68
commit f50ba1bf23
1 file changed
+24 -8
+24 -8
View File
@@ -1,6 +1,7 @@
import { describe, expect, it } from "@jest/globals";
import { getDateForRange, NormalizeData, NormalizeDataUptimeDetails } from "../../../src/utils/dataUtils.ts";
import { getDateForRange, getDateFormat, NormalizeData, NormalizeDataUptimeDetails } from "../../../src/utils/dataUtils.ts";
import type { GroupedCheck } from "../../../src/domain/checks/check.type.ts";
import { DateRanges, type DateRange } from "../../../src/types/query.ts";
// ── Helpers ──────────────────────────────────────────────────────────────────
@@ -29,20 +30,35 @@ describe("getDateForRange", () => {
["month", 30 * 24 * 60 * 60 * 1000],
])("returns now minus the %s window", (range, offsetMs) => {
const before = Date.now();
const result = getDateForRange(range as string);
const result = getDateForRange(range as DateRange);
const after = Date.now();
expect(result).toBeInstanceOf(Date);
expect(result!.getTime()).toBeGreaterThanOrEqual(before - offsetMs);
expect(result!.getTime()).toBeLessThanOrEqual(after - offsetMs);
expect(result.getTime()).toBeGreaterThanOrEqual(before - offsetMs);
expect(result.getTime()).toBeLessThanOrEqual(after - offsetMs);
});
it("returns undefined for 'all'", () => {
expect(getDateForRange("all")).toBeUndefined();
it("returns the epoch for 'all'", () => {
expect(getDateForRange("all")).toEqual(new Date(0));
});
});
describe("getDateFormat", () => {
it.each([
["recent", "%Y-%m-%dT%H:%M:00Z"],
["hour", "%Y-%m-%dT%H:%M:00Z"],
["day", "%Y-%m-%dT%H:00:00Z"],
["week", "%Y-%m-%dT00:00:00Z"],
["month", "%Y-%m-%dT00:00:00Z"],
["all", "%Y-%m-%dT00:00:00Z"],
])("returns the %s bucket format", (range, format) => {
expect(getDateFormat(range as DateRange)).toBe(format);
});
it("returns undefined for unknown ranges", () => {
expect(getDateForRange("fortnight")).toBeUndefined();
it("has a format for every member of DateRanges", () => {
for (const range of DateRanges) {
expect(getDateFormat(range)).toMatch(/^%Y-%m-%d/);
}
});
});