Skip to content

Commit da2c06d

Browse files
test: improve
1 parent 407c618 commit da2c06d

5 files changed

+123
-259
lines changed

test/e2e/__snapshots__/web-socket-server-url.test.js.snap.webpack4

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,28 @@ Array [
261261

262262
exports[`web socket server URL should work with "client.webSocketURL.port" and "webSocketServer.options.port" options as string ("ws"): page errors 1`] = `Array []`;
263263

264+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("sockjs"): console messages 1`] = `
265+
Array [
266+
"[HMR] Waiting for update signal from WDS...",
267+
"Hey.",
268+
"[webpack-dev-server] Hot Module Replacement enabled.",
269+
"[webpack-dev-server] Live Reloading enabled.",
270+
]
271+
`;
272+
273+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("sockjs"): page errors 1`] = `Array []`;
274+
275+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("ws"): console messages 1`] = `
276+
Array [
277+
"[HMR] Waiting for update signal from WDS...",
278+
"Hey.",
279+
"[webpack-dev-server] Hot Module Replacement enabled.",
280+
"[webpack-dev-server] Live Reloading enabled.",
281+
]
282+
`;
283+
284+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("ws"): page errors 1`] = `Array []`;
285+
264286
exports[`web socket server URL should work with the "client.webSocketURL" option as "string" ("sockjs"): console messages 1`] = `
265287
Array [
266288
"[HMR] Waiting for update signal from WDS...",

test/e2e/__snapshots__/web-socket-server-url.test.js.snap.webpack5

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,28 @@ Array [
261261

262262
exports[`web socket server URL should work with "client.webSocketURL.port" and "webSocketServer.options.port" options as string ("ws"): page errors 1`] = `Array []`;
263263

264+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("sockjs"): console messages 1`] = `
265+
Array [
266+
"[HMR] Waiting for update signal from WDS...",
267+
"Hey.",
268+
"[webpack-dev-server] Hot Module Replacement enabled.",
269+
"[webpack-dev-server] Live Reloading enabled.",
270+
]
271+
`;
272+
273+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("sockjs"): page errors 1`] = `Array []`;
274+
275+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("ws"): console messages 1`] = `
276+
Array [
277+
"[HMR] Waiting for update signal from WDS...",
278+
"Hey.",
279+
"[webpack-dev-server] Hot Module Replacement enabled.",
280+
"[webpack-dev-server] Live Reloading enabled.",
281+
]
282+
`;
283+
284+
exports[`web socket server URL should work with default "/ws" value of the "client.webSocketURL.pathname" option ("ws"): page errors 1`] = `Array []`;
285+
264286
exports[`web socket server URL should work with the "client.webSocketURL" option as "string" ("sockjs"): console messages 1`] = `
265287
Array [
266288
"[HMR] Waiting for update signal from WDS...",

test/e2e/web-socket-server-and-transport.test.js

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ describe('web socket server and transport', () => {
1515
const compiler = webpack(defaultConfig);
1616
const devServerOptions = {
1717
port,
18-
host: '0.0.0.0',
1918
};
2019
const server = new Server(devServerOptions, compiler);
2120

@@ -63,7 +62,6 @@ describe('web socket server and transport', () => {
6362
const compiler = webpack(defaultConfig);
6463
const devServerOptions = {
6564
port,
66-
host: '0.0.0.0',
6765
webSocketServer: 'ws',
6866
};
6967
const server = new Server(devServerOptions, compiler);
@@ -112,7 +110,6 @@ describe('web socket server and transport', () => {
112110
const compiler = webpack(defaultConfig);
113111
const devServerOptions = {
114112
port,
115-
host: '0.0.0.0',
116113
webSocketServer: {
117114
type: 'ws',
118115
},
@@ -163,7 +160,6 @@ describe('web socket server and transport', () => {
163160
const compiler = webpack(sockjsConfig);
164161
const devServerOptions = {
165162
port,
166-
host: '0.0.0.0',
167163
webSocketServer: 'sockjs',
168164
};
169165
const server = new Server(devServerOptions, compiler);
@@ -212,7 +208,6 @@ describe('web socket server and transport', () => {
212208
const compiler = webpack(sockjsConfig);
213209
const devServerOptions = {
214210
port,
215-
host: '0.0.0.0',
216211
webSocketServer: {
217212
type: 'sockjs',
218213
},
@@ -263,7 +258,6 @@ describe('web socket server and transport', () => {
263258
const compiler = webpack(defaultConfig);
264259
const devServerOptions = {
265260
port,
266-
host: '0.0.0.0',
267261
client: {
268262
transport: 'ws',
269263
},
@@ -315,7 +309,6 @@ describe('web socket server and transport', () => {
315309
const compiler = webpack(defaultConfig);
316310
const devServerOptions = {
317311
port,
318-
host: '0.0.0.0',
319312
client: {
320313
transport: 'ws',
321314
},
@@ -369,7 +362,6 @@ describe('web socket server and transport', () => {
369362
const compiler = webpack(defaultConfig);
370363
const devServerOptions = {
371364
port,
372-
host: '0.0.0.0',
373365
client: {
374366
transport: 'ws',
375367
},
@@ -421,7 +413,6 @@ describe('web socket server and transport', () => {
421413
const compiler = webpack(defaultConfig);
422414
const devServerOptions = {
423415
port,
424-
host: '0.0.0.0',
425416
client: {
426417
transport: 'ws',
427418
},
@@ -475,7 +466,6 @@ describe('web socket server and transport', () => {
475466
const compiler = webpack(defaultConfig);
476467
const devServerOptions = {
477468
port,
478-
host: '0.0.0.0',
479469
webSocketServer: {
480470
type: '/bad/path/to/implementation',
481471
},
@@ -506,7 +496,6 @@ describe('web socket server and transport', () => {
506496
const compiler = webpack(sockjsConfig);
507497
const devServerOptions = {
508498
port,
509-
host: '0.0.0.0',
510499
client: {
511500
transport: 'sockjs',
512501
},
@@ -557,7 +546,6 @@ describe('web socket server and transport', () => {
557546
const compiler = webpack(wsConfig);
558547
const devServerOptions = {
559548
port,
560-
host: '0.0.0.0',
561549
client: {
562550
transport: 'ws',
563551
},
@@ -608,7 +596,6 @@ describe('web socket server and transport', () => {
608596
const compiler = webpack(sockjsConfig);
609597
const devServerOptions = {
610598
port,
611-
host: '0.0.0.0',
612599
client: {
613600
transport: 'sockjs',
614601
},
@@ -660,7 +647,6 @@ describe('web socket server and transport', () => {
660647
const compiler = webpack(wsConfig);
661648
const devServerOptions = {
662649
port,
663-
host: '0.0.0.0',
664650
client: {
665651
transport: 'ws',
666652
},
@@ -712,7 +698,6 @@ describe('web socket server and transport', () => {
712698
const compiler = webpack(customConfig);
713699
const devServerOptions = {
714700
port,
715-
host: '0.0.0.0',
716701
client: {
717702
transport: require.resolve(
718703
'../fixtures/custom-client/CustomSockJSClient'

test/e2e/web-socket-server-url.test.js

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1301,6 +1301,85 @@ describe('web socket server URL', () => {
13011301
});
13021302
});
13031303

1304+
it(`should work with default "/ws" value of the "client.webSocketURL.pathname" option ("${webSocketServer}")`, async () => {
1305+
const compiler = webpack(config);
1306+
const devServerOptions = {
1307+
webSocketServer,
1308+
port: port1,
1309+
host: '0.0.0.0',
1310+
allowedHosts: 'all',
1311+
};
1312+
const server = new Server(devServerOptions, compiler);
1313+
1314+
await new Promise((resolve, reject) => {
1315+
server.listen(devServerOptions.port, devServerOptions.host, (error) => {
1316+
if (error) {
1317+
reject(error);
1318+
1319+
return;
1320+
}
1321+
1322+
resolve();
1323+
});
1324+
});
1325+
1326+
const { page, browser } = await runBrowser();
1327+
1328+
const pageErrors = [];
1329+
const consoleMessages = [];
1330+
1331+
page
1332+
.on('console', (message) => {
1333+
consoleMessages.push(message);
1334+
})
1335+
.on('pageerror', (error) => {
1336+
pageErrors.push(error);
1337+
});
1338+
1339+
const webSocketRequests = [];
1340+
1341+
if (webSocketServer === 'ws') {
1342+
const client = page._client;
1343+
1344+
client.on('Network.webSocketCreated', (test) => {
1345+
webSocketRequests.push(test);
1346+
});
1347+
} else {
1348+
page.on('request', (request) => {
1349+
if (/\/ws\//.test(request.url())) {
1350+
webSocketRequests.push({ url: request.url() });
1351+
}
1352+
});
1353+
}
1354+
1355+
await page.goto(`http://127.0.0.1:${port1}/main`, {
1356+
waitUntil: 'networkidle0',
1357+
});
1358+
1359+
const webSocketRequest = webSocketRequests[0];
1360+
1361+
expect(webSocketRequest.url).toContain(
1362+
`${websocketURLProtocol}://127.0.0.1:${port1}/ws`
1363+
);
1364+
expect(consoleMessages.map((message) => message.text())).toMatchSnapshot(
1365+
'console messages'
1366+
);
1367+
expect(pageErrors).toMatchSnapshot('page errors');
1368+
1369+
await browser.close();
1370+
await new Promise((resolve, reject) => {
1371+
server.close((error) => {
1372+
if (error) {
1373+
reject(error);
1374+
1375+
return;
1376+
}
1377+
1378+
resolve();
1379+
});
1380+
});
1381+
});
1382+
13041383
it(`should work with the "client.webSocketURL.username" option ("${webSocketServer}")`, async () => {
13051384
const compiler = webpack(config);
13061385
const devServerOptions = {

0 commit comments

Comments
 (0)