@@ -286,4 +286,36 @@ describe('NetworkCollector', () => {
286286 page . emit ( 'request' , request ) ;
287287 assert . equal ( collector . getData ( page ) . length , 2 ) ;
288288 } ) ;
289+
290+ it ( 'works with previous navigations' , async ( ) => {
291+ const browser = getMockBrowser ( ) ;
292+ const page = ( await browser . pages ( ) ) [ 0 ] ;
293+ const mainFrame = page . mainFrame ( ) ;
294+ const navRequest = getMockRequest ( {
295+ navigationRequest : true ,
296+ frame : page . mainFrame ( ) ,
297+ } ) ;
298+ const navRequest2 = getMockRequest ( {
299+ navigationRequest : true ,
300+ frame : page . mainFrame ( ) ,
301+ } ) ;
302+ const request = getMockRequest ( ) ;
303+
304+ const collector = new NetworkCollector ( browser ) ;
305+ await collector . init ( ) ;
306+ page . emit ( 'request' , navRequest ) ;
307+ assert . equal ( collector . getData ( page , true ) . length , 1 ) ;
308+
309+ page . emit ( 'framenavigated' , mainFrame ) ;
310+ assert . equal ( collector . getData ( page , true ) . length , 1 ) ;
311+
312+ page . emit ( 'request' , navRequest2 ) ;
313+ assert . equal ( collector . getData ( page , true ) . length , 2 ) ;
314+
315+ page . emit ( 'framenavigated' , mainFrame ) ;
316+ assert . equal ( collector . getData ( page , true ) . length , 2 ) ;
317+
318+ page . emit ( 'request' , request ) ;
319+ assert . equal ( collector . getData ( page , true ) . length , 3 ) ;
320+ } ) ;
289321} ) ;
0 commit comments