@@ -348,7 +348,9 @@ function createVitest(): VitestUtils {
348
348
349
349
const workerState = getWorkerState ( )
350
350
351
- const _timers = new FakeTimers ( {
351
+ let _timers : FakeTimers
352
+
353
+ const timers = ( ) => _timers ||= new FakeTimers ( {
352
354
global : globalThis ,
353
355
config : workerState . config . fakeTimers ,
354
356
} )
@@ -374,77 +376,77 @@ function createVitest(): VitestUtils {
374
376
}
375
377
376
378
if ( config )
377
- _timers . configure ( { ...workerState . config . fakeTimers , ...config } )
379
+ timers ( ) . configure ( { ...workerState . config . fakeTimers , ...config } )
378
380
else
379
- _timers . configure ( workerState . config . fakeTimers )
381
+ timers ( ) . configure ( workerState . config . fakeTimers )
380
382
381
- _timers . useFakeTimers ( )
383
+ timers ( ) . useFakeTimers ( )
382
384
return utils
383
385
} ,
384
386
385
387
isFakeTimers ( ) {
386
- return _timers . isFakeTimers ( )
388
+ return timers ( ) . isFakeTimers ( )
387
389
} ,
388
390
389
391
useRealTimers ( ) {
390
- _timers . useRealTimers ( )
392
+ timers ( ) . useRealTimers ( )
391
393
_mockedDate = null
392
394
return utils
393
395
} ,
394
396
395
397
runOnlyPendingTimers ( ) {
396
- _timers . runOnlyPendingTimers ( )
398
+ timers ( ) . runOnlyPendingTimers ( )
397
399
return utils
398
400
} ,
399
401
400
402
async runOnlyPendingTimersAsync ( ) {
401
- await _timers . runOnlyPendingTimersAsync ( )
403
+ await timers ( ) . runOnlyPendingTimersAsync ( )
402
404
return utils
403
405
} ,
404
406
405
407
runAllTimers ( ) {
406
- _timers . runAllTimers ( )
408
+ timers ( ) . runAllTimers ( )
407
409
return utils
408
410
} ,
409
411
410
412
async runAllTimersAsync ( ) {
411
- await _timers . runAllTimersAsync ( )
413
+ await timers ( ) . runAllTimersAsync ( )
412
414
return utils
413
415
} ,
414
416
415
417
runAllTicks ( ) {
416
- _timers . runAllTicks ( )
418
+ timers ( ) . runAllTicks ( )
417
419
return utils
418
420
} ,
419
421
420
422
advanceTimersByTime ( ms : number ) {
421
- _timers . advanceTimersByTime ( ms )
423
+ timers ( ) . advanceTimersByTime ( ms )
422
424
return utils
423
425
} ,
424
426
425
427
async advanceTimersByTimeAsync ( ms : number ) {
426
- await _timers . advanceTimersByTimeAsync ( ms )
428
+ await timers ( ) . advanceTimersByTimeAsync ( ms )
427
429
return utils
428
430
} ,
429
431
430
432
advanceTimersToNextTimer ( ) {
431
- _timers . advanceTimersToNextTimer ( )
433
+ timers ( ) . advanceTimersToNextTimer ( )
432
434
return utils
433
435
} ,
434
436
435
437
async advanceTimersToNextTimerAsync ( ) {
436
- await _timers . advanceTimersToNextTimerAsync ( )
438
+ await timers ( ) . advanceTimersToNextTimerAsync ( )
437
439
return utils
438
440
} ,
439
441
440
442
getTimerCount ( ) {
441
- return _timers . getTimerCount ( )
443
+ return timers ( ) . getTimerCount ( )
442
444
} ,
443
445
444
446
setSystemTime ( time : number | string | Date ) {
445
447
const date = time instanceof Date ? time : new Date ( time )
446
448
_mockedDate = date
447
- _timers . setSystemTime ( date )
449
+ timers ( ) . setSystemTime ( date )
448
450
return utils
449
451
} ,
450
452
@@ -453,11 +455,11 @@ function createVitest(): VitestUtils {
453
455
} ,
454
456
455
457
getRealSystemTime ( ) {
456
- return _timers . getRealSystemTime ( )
458
+ return timers ( ) . getRealSystemTime ( )
457
459
} ,
458
460
459
461
clearAllTimers ( ) {
460
- _timers . clearAllTimers ( )
462
+ timers ( ) . clearAllTimers ( )
461
463
return utils
462
464
} ,
463
465
0 commit comments