@@ -25,6 +25,7 @@ describe("index", () => {
25
25
warn : jest . fn ( ) ,
26
26
error : jest . fn ( ) ,
27
27
} ,
28
+ logEnabledFeatures : jest . fn ( ) ,
28
29
setLogLevel : jest . fn ( ) ,
29
30
} ) ;
30
31
@@ -83,18 +84,6 @@ describe("index", () => {
83
84
expect ( socket . mock . calls [ 0 ] ) . toMatchSnapshot ( ) ;
84
85
} ) ;
85
86
86
- test ( "should run onSocketMessage.hot" , ( ) => {
87
- onSocketMessage . hot ( ) ;
88
-
89
- expect ( log . log . info . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
90
- } ) ;
91
-
92
- test ( "should run onSocketMessage.liveReload" , ( ) => {
93
- onSocketMessage . liveReload ( ) ;
94
-
95
- expect ( log . log . info . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
96
- } ) ;
97
-
98
87
test ( "should run onSocketMessage['still-ok']" , ( ) => {
99
88
onSocketMessage [ "still-ok" ] ( ) ;
100
89
@@ -207,6 +196,60 @@ describe("index", () => {
207
196
expect ( overlay . show ) . toBeCalled ( ) ;
208
197
} ) ;
209
198
199
+ test ( "should parse overlay options from resource query" , ( ) => {
200
+ jest . isolateModules ( ( ) => {
201
+ // Pass JSON config with warnings disabled
202
+ global . __resourceQuery = `?overlay=${ encodeURIComponent (
203
+ `{"warnings": false}`
204
+ ) } `;
205
+ overlay . show . mockReset ( ) ;
206
+ socket . mockReset ( ) ;
207
+ jest . unmock ( "../../client-src/utils/parseURL.js" ) ;
208
+ require ( "../../client-src" ) ;
209
+ onSocketMessage = socket . mock . calls [ 0 ] [ 1 ] ;
210
+
211
+ onSocketMessage . warnings ( [ "warn1" ] ) ;
212
+ expect ( overlay . show ) . not . toBeCalled ( ) ;
213
+
214
+ onSocketMessage . errors ( [ "error1" ] ) ;
215
+ expect ( overlay . show ) . toBeCalledTimes ( 1 ) ;
216
+ } ) ;
217
+
218
+ jest . isolateModules ( ( ) => {
219
+ // Pass JSON config with errors disabled
220
+ global . __resourceQuery = `?overlay=${ encodeURIComponent (
221
+ `{"errors": false}`
222
+ ) } `;
223
+ overlay . show . mockReset ( ) ;
224
+ socket . mockReset ( ) ;
225
+ jest . unmock ( "../../client-src/utils/parseURL.js" ) ;
226
+ require ( "../../client-src" ) ;
227
+ onSocketMessage = socket . mock . calls [ 0 ] [ 1 ] ;
228
+
229
+ onSocketMessage . errors ( [ "error1" ] ) ;
230
+ expect ( overlay . show ) . not . toBeCalled ( ) ;
231
+
232
+ onSocketMessage . warnings ( [ "warn1" ] ) ;
233
+ expect ( overlay . show ) . toBeCalledTimes ( 1 ) ;
234
+ } ) ;
235
+
236
+ jest . isolateModules ( ( ) => {
237
+ // Use simple boolean
238
+ global . __resourceQuery = "?overlay=true" ;
239
+ jest . unmock ( "../../client-src/utils/parseURL.js" ) ;
240
+ socket . mockReset ( ) ;
241
+ overlay . show . mockReset ( ) ;
242
+ require ( "../../client-src" ) ;
243
+ onSocketMessage = socket . mock . calls [ 0 ] [ 1 ] ;
244
+
245
+ onSocketMessage . warnings ( [ "warn2" ] ) ;
246
+ expect ( overlay . show ) . toBeCalledTimes ( 1 ) ;
247
+
248
+ onSocketMessage . errors ( [ "error2" ] ) ;
249
+ expect ( overlay . show ) . toBeCalledTimes ( 2 ) ;
250
+ } ) ;
251
+ } ) ;
252
+
210
253
test ( "should run onSocketMessage.error" , ( ) => {
211
254
onSocketMessage . error ( "error!!" ) ;
212
255
@@ -225,7 +268,7 @@ describe("index", () => {
225
268
onSocketMessage . hot ( ) ;
226
269
onSocketMessage . close ( ) ;
227
270
228
- expect ( log . log . info . mock . calls [ 1 ] [ 0 ] ) . toMatchSnapshot ( ) ;
271
+ expect ( log . log . info . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
229
272
expect ( sendMessage . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
230
273
} ) ;
231
274
@@ -234,7 +277,7 @@ describe("index", () => {
234
277
onSocketMessage . liveReload ( ) ;
235
278
onSocketMessage . close ( ) ;
236
279
237
- expect ( log . log . info . mock . calls [ 1 ] [ 0 ] ) . toMatchSnapshot ( ) ;
280
+ expect ( log . log . info . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
238
281
expect ( sendMessage . mock . calls [ 0 ] [ 0 ] ) . toMatchSnapshot ( ) ;
239
282
} ) ;
240
283
0 commit comments