@@ -28,35 +28,42 @@ describe("web socket communication", () => {
2828
2929 const { page, browser } = await runBrowser ( ) ;
3030
31- const pageErrors = [ ] ;
32- const consoleMessages = [ ] ;
33-
34- page
35- . on ( "console" , ( message ) => {
36- consoleMessages . push ( message . text ( ) ) ;
37- } )
38- . on ( "pageerror" , ( error ) => {
39- pageErrors . push ( error ) ;
31+ try {
32+ const pageErrors = [ ] ;
33+ const consoleMessages = [ ] ;
34+
35+ page
36+ . on ( "console" , ( message ) => {
37+ consoleMessages . push ( message . text ( ) ) ;
38+ } )
39+ . on ( "pageerror" , ( error ) => {
40+ pageErrors . push ( error ) ;
41+ } ) ;
42+
43+ await page . goto ( `http://127.0.0.1:${ port } /` , {
44+ waitUntil : "networkidle0" ,
4045 } ) ;
4146
42- await page . goto ( `http://127.0.0.1:${ port } /` , {
43- waitUntil : "networkidle0" ,
44- } ) ;
45- await server . stop ( ) ;
46- await new Promise ( ( resolve ) => {
47- const interval = setInterval ( ( ) => {
48- if ( consoleMessages . includes ( "[webpack-dev-server] Disconnected!" ) ) {
49- clearInterval ( interval ) ;
50-
51- resolve ( ) ;
52- }
53- } , 100 ) ;
54- } ) ;
55-
56- expect ( consoleMessages ) . toMatchSnapshot ( "console messages" ) ;
57- expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
47+ await server . stop ( ) ;
48+ await new Promise ( ( resolve ) => {
49+ const interval = setInterval ( ( ) => {
50+ if (
51+ consoleMessages . includes ( "[webpack-dev-server] Disconnected!" )
52+ ) {
53+ clearInterval ( interval ) ;
54+
55+ resolve ( ) ;
56+ }
57+ } , 100 ) ;
58+ } ) ;
5859
59- await browser . close ( ) ;
60+ expect ( consoleMessages ) . toMatchSnapshot ( "console messages" ) ;
61+ expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
62+ } catch ( error ) {
63+ throw error ;
64+ } finally {
65+ await browser . close ( ) ;
66+ }
6067 } ) ;
6168
6269 it ( `should work and terminate client that is not alive ("${ websocketServer } ")` , async ( ) => {
@@ -73,36 +80,40 @@ describe("web socket communication", () => {
7380
7481 const { page, browser } = await runBrowser ( ) ;
7582
76- const pageErrors = [ ] ;
77- const consoleMessages = [ ] ;
83+ try {
84+ const pageErrors = [ ] ;
85+ const consoleMessages = [ ] ;
7886
79- page
80- . on ( "console" , ( message ) => {
81- consoleMessages . push ( message ) ;
82- } )
83- . on ( "pageerror" , ( error ) => {
84- pageErrors . push ( error ) ;
85- } ) ;
87+ page
88+ . on ( "console" , ( message ) => {
89+ consoleMessages . push ( message ) ;
90+ } )
91+ . on ( "pageerror" , ( error ) => {
92+ pageErrors . push ( error ) ;
93+ } ) ;
8694
87- await page . goto ( `http://127.0.0.1:${ port } /` , {
88- waitUntil : "networkidle0" ,
89- } ) ;
90- await browser . close ( ) ;
91-
92- // Wait heartbeat
93- await new Promise ( ( resolve ) => {
94- setTimeout ( ( ) => {
95- resolve ( ) ;
96- } , 200 ) ;
97- } ) ;
95+ await page . goto ( `http://127.0.0.1:${ port } /` , {
96+ waitUntil : "networkidle0" ,
97+ } ) ;
98+ await browser . close ( ) ;
9899
99- expect ( server . webSocketServer . clients . length ) . toBe ( 0 ) ;
100- expect ( consoleMessages . map ( ( message ) => message . text ( ) ) ) . toMatchSnapshot (
101- "console messages"
102- ) ;
103- expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
100+ // Wait heartbeat
101+ await new Promise ( ( resolve ) => {
102+ setTimeout ( ( ) => {
103+ resolve ( ) ;
104+ } , 200 ) ;
105+ } ) ;
104106
105- await server . stop ( ) ;
107+ expect ( server . webSocketServer . clients . length ) . toBe ( 0 ) ;
108+ expect (
109+ consoleMessages . map ( ( message ) => message . text ( ) )
110+ ) . toMatchSnapshot ( "console messages" ) ;
111+ expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
112+ } catch ( error ) {
113+ throw error ;
114+ } finally {
115+ await server . stop ( ) ;
116+ }
106117 } ) ;
107118
108119 it ( `should work and reconnect when the connection is lost ("${ websocketServer } ")` , async ( ) => {
@@ -119,35 +130,39 @@ describe("web socket communication", () => {
119130
120131 const { page, browser } = await runBrowser ( ) ;
121132
122- const pageErrors = [ ] ;
123- const consoleMessages = [ ] ;
124-
125- page
126- . on ( "console" , ( message ) => {
127- consoleMessages . push ( message ) ;
128- } )
129- . on ( "pageerror" , ( error ) => {
130- pageErrors . push ( error ) ;
131- } ) ;
133+ try {
134+ const pageErrors = [ ] ;
135+ const consoleMessages = [ ] ;
132136
133- await page . goto ( `http://127.0.0.1:${ port } /` , {
134- waitUntil : "networkidle0" ,
135- } ) ;
137+ page
138+ . on ( "console" , ( message ) => {
139+ consoleMessages . push ( message ) ;
140+ } )
141+ . on ( "pageerror" , ( error ) => {
142+ pageErrors . push ( error ) ;
143+ } ) ;
136144
137- await server . stop ( ) ;
138- await server . start ( ) ;
145+ await page . goto ( `http://127.0.0.1:${ port } /` , {
146+ waitUntil : "networkidle0" ,
147+ } ) ;
139148
140- await page . waitForNavigation ( {
141- waitUntil : "networkidle0" ,
142- } ) ;
149+ await server . stop ( ) ;
150+ await server . start ( ) ;
143151
144- expect ( consoleMessages . map ( ( message ) => message . text ( ) ) ) . toMatchSnapshot (
145- "console messages"
146- ) ;
147- expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
152+ await page . waitForNavigation ( {
153+ waitUntil : "networkidle0" ,
154+ } ) ;
148155
149- await browser . close ( ) ;
150- await server . stop ( ) ;
156+ expect (
157+ consoleMessages . map ( ( message ) => message . text ( ) )
158+ ) . toMatchSnapshot ( "console messages" ) ;
159+ expect ( pageErrors ) . toMatchSnapshot ( "page errors" ) ;
160+ } catch ( error ) {
161+ throw error ;
162+ } finally {
163+ await browser . close ( ) ;
164+ await server . stop ( ) ;
165+ }
151166 } ) ;
152167 } ) ;
153168
0 commit comments