Files
dashboard/utils/__tests__/reportCycle.test.ts
T

27 lines
903 B
TypeScript

import { describe, it, expect } from 'vitest';
import { closedCycleUpToDay, isCycleClosed } from '../reportCycle.ts';
describe('isCycleClosed', () => {
it('is false when endDate is missing', () => {
expect(isCycleClosed(undefined)).toBe(false);
expect(isCycleClosed(null)).toBe(false);
expect(isCycleClosed('')).toBe(false);
});
it('is true when endDate is set', () => {
expect(isCycleClosed('2026-06-25')).toBe(true);
expect(isCycleClosed(new Date('2026-06-25T00:00:00'))).toBe(true);
});
});
describe('closedCycleUpToDay', () => {
it('returns the inclusive report day of endDate', () => {
expect(closedCycleUpToDay('2026-05-22', '2026-05-30')).toBe(8);
});
it('returns 0 when endDate is missing or before start', () => {
expect(closedCycleUpToDay('2026-05-22', null)).toBe(0);
expect(closedCycleUpToDay('2026-05-22', '2026-05-20')).toBe(0);
});
});