@@ -114,11 +114,13 @@ describe("IntervalTicker", () => {
114
114
expect ( handler ) . toHaveBeenCalledTimes ( 3 ) ;
115
115
} ) ;
116
116
117
- it ( 'should call the handler with correct prevSuccess value' , async ( ) => {
118
- const handler = vi . fn ( ) . mockResolvedValueOnce ( undefined )
117
+ it ( 'should call the handler with correct failureCount value' , async ( ) => {
118
+ const handler = vi . fn ( ) . mockRejectedValueOnce ( new Error ( ) )
119
+ . mockRejectedValueOnce ( new Error ( ) )
119
120
. mockRejectedValueOnce ( new Error ( ) )
120
121
. mockResolvedValueOnce ( undefined )
121
- . mockResolvedValue ( undefined ) ;
122
+ . mockRejectedValueOnce ( new Error ( ) )
123
+ . mockResolvedValueOnce ( undefined ) ;
122
124
123
125
const intervalTicker = new IntervalRepeater ( 2000 ) ;
124
126
intervalTicker . setTask ( handler ) ;
@@ -127,19 +129,27 @@ describe("IntervalTicker", () => {
127
129
128
130
await advanceTimersByTime ( 2000 ) ;
129
131
expect ( handler ) . toHaveBeenCalledTimes ( 1 ) ;
130
- expect ( handler . mock . calls [ 0 ] [ 0 ] ) . toBe ( true ) ;
132
+ expect ( handler . mock . calls [ 0 ] [ 0 ] ) . toBe ( 0 ) ;
131
133
132
134
await advanceTimersByTime ( 2000 ) ;
133
135
expect ( handler ) . toHaveBeenCalledTimes ( 2 ) ;
134
- expect ( handler . mock . calls [ 1 ] [ 0 ] ) . toBe ( true ) ;
136
+ expect ( handler . mock . calls [ 1 ] [ 0 ] ) . toBe ( 1 ) ;
135
137
136
138
await advanceTimersByTime ( 2000 ) ;
137
139
expect ( handler ) . toHaveBeenCalledTimes ( 3 ) ;
138
- expect ( handler . mock . calls [ 2 ] [ 0 ] ) . toBe ( false ) ;
140
+ expect ( handler . mock . calls [ 2 ] [ 0 ] ) . toBe ( 2 ) ;
139
141
140
142
await advanceTimersByTime ( 2000 ) ;
141
143
expect ( handler ) . toHaveBeenCalledTimes ( 4 ) ;
142
- expect ( handler . mock . calls [ 3 ] [ 0 ] ) . toBe ( true ) ;
144
+ expect ( handler . mock . calls [ 3 ] [ 0 ] ) . toBe ( 3 ) ;
145
+
146
+ await advanceTimersByTime ( 2000 ) ;
147
+ expect ( handler ) . toHaveBeenCalledTimes ( 5 ) ;
148
+ expect ( handler . mock . calls [ 4 ] [ 0 ] ) . toBe ( 0 ) ;
149
+
150
+ await advanceTimersByTime ( 2000 ) ;
151
+ expect ( handler ) . toHaveBeenCalledTimes ( 6 ) ;
152
+ expect ( handler . mock . calls [ 5 ] [ 0 ] ) . toBe ( 1 ) ;
143
153
} ) ;
144
154
145
155
it ( 'should backoff when the handler fails if backoffController is provided' , async ( ) => {
0 commit comments