@@ -198,21 +198,23 @@ test('events order at task completion', async () => {
198198
199199test . each ( [ 'warmup' , 'run' ] ) ( '%s error event' , async ( mode ) => {
200200 const bench = new Bench ( { time : 100 , warmup : mode === 'warmup' } ) ;
201- const err = new Error ( ) ;
201+ const error = new Error ( ) ;
202202
203203 bench . add ( 'error' , ( ) => {
204- throw err ;
204+ throw error ;
205205 } ) ;
206206
207- let taskErr : Error | undefined ;
207+ let err : Error | undefined ;
208+ let task : Task | undefined ;
208209 bench . addEventListener ( 'error' , ( evt ) => {
209- const { task } = evt ;
210- taskErr = task ?. result ?. error ;
210+ const { error : e , task : t } = evt ;
211+ err = e ;
212+ task = t ;
211213 } ) ;
212214
213- await bench . run ( ) ;
214-
215- expect ( taskErr ) . toStrictEqual ( err ) ;
215+ await expect ( bench . run ( ) ) . resolves . toBeDefined ( ) ;
216+ expect ( err ) . toStrictEqual ( error ) ;
217+ expect ( task ?. result ?. error ) . toStrictEqual ( error ) ;
216218} ) ;
217219
218220test . each ( [ 'warmup' , 'run' ] ) ( '%s throws' , async ( mode ) => {
@@ -223,12 +225,23 @@ test.each(['warmup', 'run'])('%s throws', async (mode) => {
223225 warmup : mode === 'warmup' ,
224226 warmupIterations : iterations ,
225227 } ) ;
226- const err = new Error ( ) ;
228+ const error = new Error ( ) ;
227229
228230 bench . add ( 'error' , ( ) => {
229- throw err ;
231+ throw error ;
230232 } ) ;
231- await expect ( ( ) => bench . run ( ) ) . rejects . toThrowError ( err ) ;
233+
234+ let err : Error | undefined ;
235+ let task : Task | undefined ;
236+ bench . addEventListener ( 'error' , ( evt ) => {
237+ const { error : e , task : t } = evt ;
238+ err = e ;
239+ task = t ;
240+ } ) ;
241+
242+ await expect ( bench . run ( ) ) . rejects . toThrowError ( error ) ;
243+ expect ( err ) . toStrictEqual ( error ) ;
244+ expect ( task ?. result ?. error ) . toStrictEqual ( error ) ;
232245} ) ;
233246
234247test ( 'detect faster task' , async ( ) => {
0 commit comments