diff --git a/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.test.ts b/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.test.ts index 10205522..3dca10f5 100644 --- a/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.test.ts +++ b/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.test.ts @@ -12,18 +12,6 @@ describe('useTimeRangeDropdown', () => { expect(result.current.endTime.value).toBe(INITIAL_END_TIME); }); - it('시작 시간(startTime)을 선택하면 끝 시간(endTime)은 시작 시간(startTime)의 1시간 이후로 설정된다.', () => { - const CHANGE_TIME = '01:00'; - const CHANGE_TIME_AFTER_HOUR = '02:00'; - const { result } = renderHook(() => useTimeRangeDropdown()); - - act(() => { - result.current.handleStartTimeChange(CHANGE_TIME); - }); - - expect(result.current.endTime.value).not.toBe(CHANGE_TIME_AFTER_HOUR); - }); - it('선택한 끝 시간(endTime)이 시작 시간(startTime)보다 빠르다면 선택한 시간값으로 변경되지 않는다.', () => { const CHANGE_START_TIME = '04:00'; const CHANGE_END_TIME = '01:00'; @@ -55,4 +43,20 @@ describe('useTimeRangeDropdown', () => { expect(result.current.endTime.value).toBe(CHANGE_END_TIME); }); + + it.each([ + ['18:00', '19:00'], + ['06:00', '07:00'], + ])( + '시작 시간(%s)을 선택하면, 끝 시간은 1시간 이후인 %s로 자동 설정된다.', + (startTime, endTime) => { + const { result } = renderHook(() => useTimeRangeDropdown()); + + act(() => { + result.current.handleStartTimeChange(startTime); + }); + + expect(result.current.endTime.value).toBe(endTime); + }, + ); }); diff --git a/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.utils.ts b/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.utils.ts index ad6750e1..0e58c2e5 100644 --- a/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.utils.ts +++ b/frontend/src/hooks/useTimeRangeDropdown/useTimeRangeDropdown.utils.ts @@ -48,9 +48,9 @@ export function isTimeSelectable(startTime: string, endTime: string) { return true; } -// 현재 시간에서 1시간 더한 시간을 반화해주는 함수(@낙타) +// 현재 시간에서 1시간 더한 시간을 반환해주는 함수(@낙타) export function addHoursToCurrentTime(currentTime: string, hours: number) { const [currentHours, currentMinutes] = currentTime.split(':').map(Number); - return currentHours + hours + ':' + currentMinutes; + return `${String(currentHours + hours).padStart(2, '0')}:${String(currentMinutes).padStart(2, '0')}`; }