From b52f70d57d3965aa8a733d73057829ab072a513d Mon Sep 17 00:00:00 2001 From: Abdullah Atta Date: Mon, 26 Jan 2026 12:49:50 +0500 Subject: [PATCH] core: fix reminders tests --- packages/core/__tests__/reminders.test.js | 11 +++++++---- packages/core/src/collections/reminders.ts | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/core/__tests__/reminders.test.js b/packages/core/__tests__/reminders.test.js index a7387d2cb..6afb9e342 100644 --- a/packages/core/__tests__/reminders.test.js +++ b/packages/core/__tests__/reminders.test.js @@ -28,8 +28,11 @@ import MockDate from "mockdate"; import { describe, afterAll, beforeEach, test, expect } from "vitest"; import { databaseTest } from "./utils/index.ts"; import dayjs from "dayjs"; +import utc from "dayjs/plugin/utc.js"; import assert from "assert"; +dayjs.extend(utc); + describe("format reminder time", () => { afterAll(() => { MockDate.reset(); @@ -371,10 +374,10 @@ async function compareReminder(reminder) { .sql() .selectFrom("reminders") .select([ - createUpcomingReminderTimeQuery(dayjs().format("YYYY-MM-DDTHH:mm")).as( - "dueDate" - ), - createIsReminderActiveQuery(dayjs().format("YYYY-MM-DDTHH:mm")).as( + createUpcomingReminderTimeQuery( + dayjs().utc().format("YYYY-MM-DDTHH:mm") + ).as("dueDate"), + createIsReminderActiveQuery(dayjs.utc().format("YYYY-MM-DDTHH:mm")).as( "isActive" ), "id" diff --git a/packages/core/src/collections/reminders.ts b/packages/core/src/collections/reminders.ts index 7e5f28db2..f642287f5 100644 --- a/packages/core/src/collections/reminders.ts +++ b/packages/core/src/collections/reminders.ts @@ -278,9 +278,9 @@ export function isReminderActive(reminder: Reminder) { export function createUpcomingReminderTimeQuery(unix = "now") { const time = sql`time(date / 1000, 'unixepoch', 'localtime')`; - const dateNow = sql`date(${unix})`; + const dateNow = sql`date(${unix}, 'localtime')`; const dateTime = sql`datetime(${dateNow} || ${time})`; - const dateTimeNow = sql`datetime(${unix})`; + const dateTimeNow = sql`datetime(${unix}, 'localtime')`; const weekDayNow = sql`CAST(strftime('%w', ${dateNow}) AS INTEGER)`; const monthDayNow = sql`CAST(strftime('%d', ${dateNow}) AS INTEGER)`; const lastSelectedDay = sql`(SELECT MAX(value) FROM json_each(selectedDays))`;