@@ -284,24 +284,35 @@ describe('requestHandler', () => {
284
284
} ) ;
285
285
} ) ;
286
286
287
+ it ( 'patches `res.end`' , ( ) => {
288
+ const flush = jest . spyOn ( SDK , 'flush' ) . mockResolvedValue ( true ) ;
289
+
290
+ sentryRequestMiddleware ( req , res , next ) ;
291
+ res . end ( 'ok' ) ;
292
+
293
+ setImmediate ( ( ) => {
294
+ expect ( flush ) . toHaveBeenCalled ( ) ;
295
+ expect ( res . finished ) . toBe ( true ) ;
296
+ } ) ;
297
+ } ) ;
298
+
287
299
it ( 'patches `res.end` when `flushTimeout` is specified' , ( ) => {
288
300
const flush = jest . spyOn ( SDK , 'flush' ) . mockResolvedValue ( true ) ;
289
301
290
- const handler = requestHandler ( { flushTimeout : 1337 } ) ;
291
- handler ( req , res , next ) ;
302
+ const sentryRequestMiddleware = requestHandler ( { flushTimeout : 1337 } ) ;
303
+ sentryRequestMiddleware ( req , res , next ) ;
292
304
res . end ( 'ok' ) ;
293
305
294
306
setImmediate ( ( ) => {
295
- expect ( flush ) . toBeCalledWith ( 1337 ) ;
307
+ expect ( flush ) . toHaveBeenCalledWith ( 1337 ) ;
296
308
expect ( res . finished ) . toBe ( true ) ;
297
309
} ) ;
298
310
} ) ;
299
311
300
312
it ( 'prevents errors thrown during `flush` from breaking the response' , async ( ) => {
301
313
jest . spyOn ( SDK , 'flush' ) . mockRejectedValue ( new SentryError ( 'HTTP Error (429)' ) ) ;
302
314
303
- const handler = requestHandler ( { flushTimeout : 1337 } ) ;
304
- handler ( req , res , next ) ;
315
+ sentryRequestMiddleware ( req , res , next ) ;
305
316
res . end ( 'ok' ) ;
306
317
307
318
setImmediate ( ( ) => {
0 commit comments