From 843d76191e3d463cdf157cdcc6393000d44c7dfd Mon Sep 17 00:00:00 2001 From: Frank Date: Mon, 19 Jan 2026 10:12:46 -0500 Subject: [PATCH] zen: fix black reset date --- packages/console/core/src/util/date.test.ts | 20 ++++++++++++++++++++ packages/console/core/src/util/date.ts | 4 ++-- 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 packages/console/core/src/util/date.test.ts diff --git a/packages/console/core/src/util/date.test.ts b/packages/console/core/src/util/date.test.ts new file mode 100644 index 000000000..074df8a2f --- /dev/null +++ b/packages/console/core/src/util/date.test.ts @@ -0,0 +1,20 @@ +import { describe, expect, test } from "bun:test" +import { getWeekBounds } from "./date" + +describe("util.date.getWeekBounds", () => { + test("returns a Monday-based week for Sunday dates", () => { + const date = new Date("2026-01-18T12:00:00Z") + const bounds = getWeekBounds(date) + + expect(bounds.start.toISOString()).toBe("2026-01-12T00:00:00.000Z") + expect(bounds.end.toISOString()).toBe("2026-01-19T00:00:00.000Z") + }) + + test("returns a seven day window", () => { + const date = new Date("2026-01-14T12:00:00Z") + const bounds = getWeekBounds(date) + + const span = bounds.end.getTime() - bounds.start.getTime() + expect(span).toBe(7 * 24 * 60 * 60 * 1000) + }) +}) diff --git a/packages/console/core/src/util/date.ts b/packages/console/core/src/util/date.ts index 7f34c9bb5..9c1ab12d2 100644 --- a/packages/console/core/src/util/date.ts +++ b/packages/console/core/src/util/date.ts @@ -1,7 +1,7 @@ export function getWeekBounds(date: Date) { - const dayOfWeek = date.getUTCDay() + const offset = (date.getUTCDay() + 6) % 7 const start = new Date(date) - start.setUTCDate(date.getUTCDate() - dayOfWeek + 1) + start.setUTCDate(date.getUTCDate() - offset) start.setUTCHours(0, 0, 0, 0) const end = new Date(start) end.setUTCDate(start.getUTCDate() + 7)