diff --git a/apps/client/src/features/overview/Overview.tsx b/apps/client/src/features/overview/Overview.tsx index 742d39c9e..ccf457134 100644 --- a/apps/client/src/features/overview/Overview.tsx +++ b/apps/client/src/features/overview/Overview.tsx @@ -95,7 +95,7 @@ function TitlesOverview() { } function TimerOverview() { - const {current} = useTimer(); + const { current } = useTimer(); const display = millisToString(current); diff --git a/apps/client/src/features/overview/__tests__/overviewUtils.test.ts b/apps/client/src/features/overview/__tests__/overviewUtils.test.ts new file mode 100644 index 000000000..fe92b8753 --- /dev/null +++ b/apps/client/src/features/overview/__tests__/overviewUtils.test.ts @@ -0,0 +1,22 @@ +import { dayInMs } from 'ontime-utils'; + +import { calculateEndAndDaySpan } from '../overviewUtils'; + +describe('calculateEndAndDaySpan', () => { + it('should return [null, 0] when end is null', () => { + const result = calculateEndAndDaySpan(null); + expect(result).toEqual([null, 0]); + }); + + it('should return [end, 0] when end is less than or equal to dayInMs', () => { + const end = dayInMs / 2; + const result = calculateEndAndDaySpan(end); + expect(result).toEqual([end, 0]); + }); + + it('should return [end % dayInMs, Math.floor(end / dayInMs)] when end is greater than dayInMs', () => { + const end = dayInMs * 1.5; + const result = calculateEndAndDaySpan(end); + expect(result).toEqual([end % dayInMs, Math.floor(end / dayInMs)]); + }); +}); diff --git a/apps/client/src/features/overview/overviewUtils.ts b/apps/client/src/features/overview/overviewUtils.ts index 8b74f2e75..73561efae 100644 --- a/apps/client/src/features/overview/overviewUtils.ts +++ b/apps/client/src/features/overview/overviewUtils.ts @@ -13,20 +13,14 @@ export function formatedTime(time: MaybeNumber) { } /** - * Calculates a day span from a number range - * @param end - * @returns + * Calculates how long a time is and how many days it spans */ export function calculateEndAndDaySpan(end: MaybeNumber): [MaybeNumber, number] { - let maybeEnd = end; - let maybeDaySpan = 0; - if (end !== null) { - if (end > dayInMs) { - maybeEnd = end % dayInMs; - maybeDaySpan = Math.floor(end / dayInMs); - } + if (end !== null && end > dayInMs) { + return [end % dayInMs, Math.floor(end / dayInMs)]; } - return [maybeEnd, maybeDaySpan]; + + return [end, 0]; } /**