Files
beenvoice/apps/worker/tests/recurring-invoices.test.ts

19 lines
715 B
TypeScript

import { describe, expect, test } from "bun:test";
import { nextDueDate } from "../../web/src/server/services/recurring-invoices";
describe("recurring invoice scheduling", () => {
test("advances weekly schedules from their scheduled occurrence", () => {
const scheduledFor = new Date("2026-08-17T12:00:00.000Z");
expect(
nextDueDate("weekly", scheduledFor, "America/New_York").toISOString(),
).toBe("2026-08-24T12:00:00.000Z");
});
test("does not mutate the source date", () => {
const scheduledFor = new Date("2026-08-17T12:00:00.000Z");
nextDueDate("monthly", scheduledFor, "America/New_York");
expect(scheduledFor.toISOString()).toBe("2026-08-17T12:00:00.000Z");
});
});