A try of overhauling the frontend tests, bailed after 24h+
This commit is contained in:
@@ -22,6 +22,11 @@ describe('buildTimetableSlots', () => {
|
||||
expect(result['2024-01-15']).toHaveLength(2);
|
||||
expect(result['2024-01-16']).toHaveLength(1);
|
||||
});
|
||||
|
||||
it('handles empty array', () => {
|
||||
const result = buildTimetableSlots([]);
|
||||
expect(result).toEqual({});
|
||||
});
|
||||
});
|
||||
|
||||
describe('computeWakeupMinutes', () => {
|
||||
@@ -41,6 +46,26 @@ describe('computeWakeupMinutes', () => {
|
||||
const result = computeWakeupMinutes(days, '04:00');
|
||||
expect(result[0].time).toBe('N/A');
|
||||
});
|
||||
|
||||
it('handles midnight crossover', () => {
|
||||
const days: WakeupBedtimeDay[] = [
|
||||
{ date: '2024-01-15', wakeup_minutes: 60, bedtime_minutes: null },
|
||||
];
|
||||
const result = computeWakeupMinutes(days, '23:00');
|
||||
expect(result[0].time).toBe('00:00');
|
||||
});
|
||||
|
||||
it('handles mixed data (valid, null, zero)', () => {
|
||||
const days: WakeupBedtimeDay[] = [
|
||||
{ date: '2024-01-15', wakeup_minutes: 120, bedtime_minutes: null },
|
||||
{ date: '2024-01-16', wakeup_minutes: null, bedtime_minutes: null },
|
||||
{ date: '2024-01-17', wakeup_minutes: 0, bedtime_minutes: null },
|
||||
];
|
||||
const result = computeWakeupMinutes(days, '04:00');
|
||||
expect(result[0]).toEqual({ date: '2024-01-15', minutes: 120, time: '06:00' });
|
||||
expect(result[1]).toEqual({ date: '2024-01-16', minutes: 0, time: 'N/A' });
|
||||
expect(result[2]).toEqual({ date: '2024-01-17', minutes: 0, time: '04:00' });
|
||||
});
|
||||
});
|
||||
|
||||
describe('computeBedtimeMinutes', () => {
|
||||
@@ -51,6 +76,26 @@ describe('computeBedtimeMinutes', () => {
|
||||
const result = computeBedtimeMinutes(days, '19:00');
|
||||
expect(result[0].time).toBe('20:15');
|
||||
});
|
||||
|
||||
it('handles midnight crossover', () => {
|
||||
const days: WakeupBedtimeDay[] = [
|
||||
{ date: '2024-01-15', wakeup_minutes: null, bedtime_minutes: 60 },
|
||||
];
|
||||
const result = computeBedtimeMinutes(days, '23:00');
|
||||
expect(result[0].time).toBe('00:00');
|
||||
});
|
||||
|
||||
it('handles mixed data (valid, null, zero)', () => {
|
||||
const days: WakeupBedtimeDay[] = [
|
||||
{ date: '2024-01-15', wakeup_minutes: null, bedtime_minutes: 120 },
|
||||
{ date: '2024-01-16', wakeup_minutes: null, bedtime_minutes: null },
|
||||
{ date: '2024-01-17', wakeup_minutes: null, bedtime_minutes: 0 },
|
||||
];
|
||||
const result = computeBedtimeMinutes(days, '19:00');
|
||||
expect(result[0]).toEqual({ date: '2024-01-15', minutes: 120, time: '21:00' });
|
||||
expect(result[1]).toEqual({ date: '2024-01-16', minutes: 0, time: 'N/A' });
|
||||
expect(result[2]).toEqual({ date: '2024-01-17', minutes: 0, time: '19:00' });
|
||||
});
|
||||
});
|
||||
|
||||
describe('computeDailySummaryData', () => {
|
||||
@@ -110,4 +155,4 @@ describe('filterDaysWithData', () => {
|
||||
expect(result).toHaveLength(1);
|
||||
expect(result[0].date).toBe('2024-01-15');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user