@@ -9,6 +9,7 @@ import { CancellationToken, CancellationTokenSource } from 'vs/base/common/cance
9
9
import { isCancellationError } from 'vs/base/common/errors' ;
10
10
import { Event } from 'vs/base/common/event' ;
11
11
import { URI } from 'vs/base/common/uri' ;
12
+ import { runWithFakedTimers } from 'vs/base/test/common/timeTravelScheduler' ;
12
13
13
14
suite ( 'Async' , ( ) => {
14
15
@@ -636,29 +637,33 @@ suite('Async', () => {
636
637
637
638
suite ( 'retry' , ( ) => {
638
639
test ( 'success case' , async ( ) => {
639
- let counter = 0 ;
640
+ return runWithFakedTimers ( { useFakeTimers : true } , async ( ) => {
641
+ let counter = 0 ;
640
642
641
- const res = await async . retry ( ( ) => {
642
- counter ++ ;
643
- if ( counter < 2 ) {
644
- return Promise . reject ( new Error ( 'fail' ) ) ;
645
- }
643
+ const res = await async . retry ( ( ) => {
644
+ counter ++ ;
645
+ if ( counter < 2 ) {
646
+ return Promise . reject ( new Error ( 'fail' ) ) ;
647
+ }
646
648
647
- return Promise . resolve ( true ) ;
648
- } , 10 , 3 ) ;
649
+ return Promise . resolve ( true ) ;
650
+ } , 10 , 3 ) ;
649
651
650
- assert . strictEqual ( res , true ) ;
652
+ assert . strictEqual ( res , true ) ;
653
+ } ) ;
651
654
} ) ;
652
655
653
656
test ( 'error case' , async ( ) => {
654
- const expectedError = new Error ( 'fail' ) ;
655
- try {
656
- await async . retry ( ( ) => {
657
- return Promise . reject ( expectedError ) ;
658
- } , 10 , 3 ) ;
659
- } catch ( error ) {
660
- assert . strictEqual ( error , error ) ;
661
- }
657
+ return runWithFakedTimers ( { useFakeTimers : true } , async ( ) => {
658
+ const expectedError = new Error ( 'fail' ) ;
659
+ try {
660
+ await async . retry ( ( ) => {
661
+ return Promise . reject ( expectedError ) ;
662
+ } , 10 , 3 ) ;
663
+ } catch ( error ) {
664
+ assert . strictEqual ( error , error ) ;
665
+ }
666
+ } ) ;
662
667
} ) ;
663
668
} ) ;
664
669
0 commit comments