@@ -79,15 +79,9 @@ test("useAsync passes finishedAt date when the promise finishes", async () => {
7979 await waitForElement ( ( ) => getByText ( "done" ) )
8080} )
8181
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 >
9185 const { getByText, rerender } = render ( component )
9286 rerender ( component )
9387 expect ( promiseFn ) . toHaveBeenCalledTimes ( 1 )
@@ -221,16 +215,20 @@ test("useAsync cancels pending promise when unmounted", async () => {
221215} )
222216
223217test ( "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" ) )
226220 const onResolve = jest . fn ( )
227221 const component1 = < Async promiseFn = { promiseFn1 } onResolve = { onResolve } />
228222 const component2 = < Async promiseFn = { promiseFn2 } onResolve = { onResolve } />
229223 const { rerender } = render ( component1 )
224+ await Promise . resolve ( )
225+ rerender ( component1 )
226+ expect ( promiseFn1 ) . toHaveBeenCalled ( )
230227 rerender ( component2 )
231- await resolveIn ( 10 ) ( )
232228 rerender ( component2 )
229+ expect ( promiseFn2 ) . toHaveBeenCalled ( )
233230 expect ( onResolve ) . not . toHaveBeenCalledWith ( "one" )
231+ await Promise . resolve ( )
234232 expect ( onResolve ) . toHaveBeenCalledWith ( "two" )
235233} )
236234
0 commit comments