@@ -79,15 +79,9 @@ test("useAsync passes finishedAt date when the promise finishes", async () => {
79
79
await waitForElement ( ( ) => getByText ( "done" ) )
80
80
} )
81
81
82
- test ( "useAsync passes reload function that re-runs the promise" , ( ) => {
83
- const promiseFn = jest . fn ( ) . mockReturnValue ( resolveTo ( ) )
84
- const component = (
85
- < Async promiseFn = { promiseFn } >
86
- { ( { reload } ) => {
87
- return < button onClick = { reload } > reload</ button >
88
- } }
89
- </ Async >
90
- )
82
+ test ( "useAsync passes reload function that re-runs the promise" , async ( ) => {
83
+ const promiseFn = jest . fn ( ) . mockReturnValue ( resolveTo ( "done" ) )
84
+ const component = < Async promiseFn = { promiseFn } > { ( { reload } ) => < button onClick = { reload } > reload</ button > } </ Async >
91
85
const { getByText, rerender } = render ( component )
92
86
rerender ( component )
93
87
expect ( promiseFn ) . toHaveBeenCalledTimes ( 1 )
@@ -221,16 +215,20 @@ test("useAsync cancels pending promise when unmounted", async () => {
221
215
} )
222
216
223
217
test ( "useAsync cancels and restarts the promise when promiseFn changes" , async ( ) => {
224
- const promiseFn1 = jest . fn ( ) . mockReturnValue ( resolveIn ( 10 ) ( "one" ) )
225
- const promiseFn2 = jest . fn ( ) . mockReturnValue ( resolveIn ( 10 ) ( "two" ) )
218
+ const promiseFn1 = jest . fn ( ) . mockReturnValue ( Promise . resolve ( "one" ) )
219
+ const promiseFn2 = jest . fn ( ) . mockReturnValue ( Promise . resolve ( "two" ) )
226
220
const onResolve = jest . fn ( )
227
221
const component1 = < Async promiseFn = { promiseFn1 } onResolve = { onResolve } />
228
222
const component2 = < Async promiseFn = { promiseFn2 } onResolve = { onResolve } />
229
223
const { rerender } = render ( component1 )
224
+ await Promise . resolve ( )
225
+ rerender ( component1 )
226
+ expect ( promiseFn1 ) . toHaveBeenCalled ( )
230
227
rerender ( component2 )
231
- await resolveIn ( 10 ) ( )
232
228
rerender ( component2 )
229
+ expect ( promiseFn2 ) . toHaveBeenCalled ( )
233
230
expect ( onResolve ) . not . toHaveBeenCalledWith ( "one" )
231
+ await Promise . resolve ( )
234
232
expect ( onResolve ) . toHaveBeenCalledWith ( "two" )
235
233
} )
236
234
0 commit comments