import { TimerUtil } from '@/core/utils/timer-util'; describe('TimerUtil unit test', () => { test('timeout unit test', () => { vi.useFakeTimers(); const clearTimeout = () => { (TimerUtil as any).clearTimeout('Timeout'); expect((TimerUtil as any).timerCache.has('Timeout')).toBe(false); } TimerUtil.timeout( () => { clearTimeout(); }, 1000, 'Timeout' ); expect((TimerUtil as any).timerCache.has('Timeout')).toBe(true); vi.runAllTimers(); }); test('interval unit test', () => { vi.useFakeTimers(); const clearInterval = () => { (TimerUtil as any).clearInterval('Interval'); expect((TimerUtil as any).timerCache.has('Interval')).toBe(false); } let number: number = 0; TimerUtil.interval( () => { number ++; if (number == 3) { clearInterval(); } }, 1000, 'Interval' ); expect((TimerUtil as any).timerCache.has('Interval')).toBe(true); vi.runAllTimers(); }); })