@@ -9,6 +9,7 @@ import { CancellationToken, CancellationTokenSource } from 'vs/base/common/cance
99import { isCancellationError } from 'vs/base/common/errors' ;
1010import { Event } from 'vs/base/common/event' ;
1111import { URI } from 'vs/base/common/uri' ;
12+ import { runWithFakedTimers } from 'vs/base/test/common/timeTravelScheduler' ;
1213
1314suite ( 'Async' , ( ) => {
1415
@@ -636,29 +637,33 @@ suite('Async', () => {
636637
637638 suite ( 'retry' , ( ) => {
638639 test ( 'success case' , async ( ) => {
639- let counter = 0 ;
640+ return runWithFakedTimers ( { useFakeTimers : true } , async ( ) => {
641+ let counter = 0 ;
640642
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+ }
646648
647- return Promise . resolve ( true ) ;
648- } , 10 , 3 ) ;
649+ return Promise . resolve ( true ) ;
650+ } , 10 , 3 ) ;
649651
650- assert . strictEqual ( res , true ) ;
652+ assert . strictEqual ( res , true ) ;
653+ } ) ;
651654 } ) ;
652655
653656 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+ } ) ;
662667 } ) ;
663668 } ) ;
664669
0 commit comments