From 06c1a32ca4f47e1cb3ee6357e2870ce6e065bb26 Mon Sep 17 00:00:00 2001 From: Nitin Kumar Date: Thu, 13 Jan 2022 07:10:24 +0530 Subject: [PATCH] test: remove old skipped tests for `webSocketServer` --- ...bSocketServer-option.test.js.snap.webpack4 | 17 -- ...bSocketServer-option.test.js.snap.webpack5 | 17 -- test/server/webSocketServer-option.test.js | 229 ------------------ 3 files changed, 263 deletions(-) delete mode 100644 test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack4 delete mode 100644 test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack5 delete mode 100644 test/server/webSocketServer-option.test.js diff --git a/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack4 b/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack4 deleted file mode 100644 index 7669c19500..0000000000 --- a/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack4 +++ /dev/null @@ -1,17 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`webSocketServer server passed to server with a bad host header results in an error 1`] = ` -Array [ - "open", - "{\\"type\\":\\"error\\",\\"data\\":\\"Invalid Host/Origin header\\"}", - "close", -] -`; - -exports[`webSocketServer server passed to server without a header results in an error 1`] = ` -Array [ - "open", - "{\\"type\\":\\"error\\",\\"data\\":\\"Invalid Host/Origin header\\"}", - "close", -] -`; diff --git a/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack5 b/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack5 deleted file mode 100644 index 7669c19500..0000000000 --- a/test/server/__snapshots__/webSocketServer-option.test.js.snap.webpack5 +++ /dev/null @@ -1,17 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`webSocketServer server passed to server with a bad host header results in an error 1`] = ` -Array [ - "open", - "{\\"type\\":\\"error\\",\\"data\\":\\"Invalid Host/Origin header\\"}", - "close", -] -`; - -exports[`webSocketServer server passed to server without a header results in an error 1`] = ` -Array [ - "open", - "{\\"type\\":\\"error\\",\\"data\\":\\"Invalid Host/Origin header\\"}", - "close", -] -`; diff --git a/test/server/webSocketServer-option.test.js b/test/server/webSocketServer-option.test.js deleted file mode 100644 index 0514d46522..0000000000 --- a/test/server/webSocketServer-option.test.js +++ /dev/null @@ -1,229 +0,0 @@ -"use strict"; - -/* eslint-disable - class-methods-use-this -*/ -const sockjs = require("sockjs"); -const SockJS = require("sockjs-client/dist/sockjs"); -const config = require("../fixtures/simple-config/webpack.config"); -const BaseServer = require("../../lib/servers/BaseServer"); -const port = require("../ports-map")["web-socket-server-option"]; - -describe("webSocketServer", () => { - describe("server", () => { - let testServer; - let server; - - describe("passed to server", () => { - beforeAll(() => { - jest.unmock("../../lib/utils/getSocketServerImplementation"); - testServer = require("../helpers/test-server"); - }); - - afterEach((done) => { - testServer.close(done); - server = null; - }); - - describe.skip("without a header", () => { - let mockWarn; - - beforeAll((done) => { - server = testServer.start( - config, - { - port, - client: { webSocketTransport: "sockjs" }, - webSocketServer: class MySockJSServer extends BaseServer { - constructor(serv) { - super(serv); - this.implementation = sockjs.createServer({ - // Use provided up-to-date sockjs-client - sockjs_url: "/__webpack_dev_server__/sockjs.bundle.js", - // Limit useless logs - log: (severity, line) => { - if (severity === "error") { - this.server.logger.error(line); - } else if (severity === "info") { - this.server.logger.log(line); - } else { - this.server.logger.debug(line); - } - }, - }); - - this.implementation.installHandlers(this.server.server, { - prefix: "/ws", - }); - } - - send(connection, message) { - connection.write(message); - } - - close(callback) { - [...this.server.webSocketConnections].forEach((socket) => { - this.closeConnection(socket); - }); - - if (callback) { - callback(); - } - } - - closeConnection(connection) { - connection.close(); - } - - onConnection(f) { - this.implementation.on("connection", (connection) => { - f(connection); - }); - } - - onConnectionClose(connection, f) { - connection.on("close", f); - } - }, - }, - done - ); - - mockWarn = jest - .spyOn(server.logger, "warn") - .mockImplementation(() => {}); - }); - - it("results in an error", (done) => { - const data = []; - const client = new SockJS(`http://localhost:${port}/ws`); - - client.onopen = () => { - data.push("open"); - }; - - client.onmessage = (e) => { - data.push(e.data); - }; - - client.onclose = () => { - data.push("close"); - }; - - setTimeout(() => { - expect(data).toMatchSnapshot(); - - const calls = mockWarn.mock.calls; - - mockWarn.mockRestore(); - - let foundWarning = false; - const regExp = - /webSocketServer implementation must pass headers to the callback of onConnection\(f\)/; - - calls.every((call) => { - if (regExp.test(call)) { - foundWarning = true; - return false; - } - - return true; - }); - - expect(foundWarning).toBeTruthy(); - - done(); - }, 5000); - }); - }); - - describe.skip("with a bad host header", () => { - beforeAll((done) => { - server = testServer.start( - config, - { - port, - client: { webSocketTransport: "sockjs" }, - webSocketServer: class MySockJSServer extends BaseServer { - constructor(serv) { - super(serv); - this.implementation = sockjs.createServer({ - // Use provided up-to-date sockjs-client - sockjs_url: "/__webpack_dev_server__/sockjs.bundle.js", - // Limit useless logs - log: (severity, line) => { - if (severity === "error") { - this.server.logger.error(line); - } else if (severity === "info") { - this.server.logger.log(line); - } else { - this.server.logger.debug(line); - } - }, - }); - - this.implementation.installHandlers(this.server.server, { - prefix: "/ws", - }); - } - - send(connection, message) { - connection.write(message); - } - - close(callback) { - [...this.server.webSocketConnections].forEach((socket) => { - this.closeConnection(socket); - }); - - if (callback) { - callback(); - } - } - - closeConnection(connection) { - connection.close(); - } - - onConnection(f) { - this.implementation.on("connection", (connection) => { - f(connection, { - host: null, - }); - }); - } - - onConnectionClose(connection, f) { - connection.on("close", f); - } - }, - }, - done - ); - }); - - it("results in an error", (done) => { - const data = []; - const client = new SockJS(`http://localhost:${port}/ws`); - - client.onopen = () => { - data.push("open"); - }; - - client.onmessage = (e) => { - data.push(e.data); - }; - - client.onclose = () => { - data.push("close"); - }; - - setTimeout(() => { - expect(data).toMatchSnapshot(); - done(); - }, 5000); - }); - }); - }); - }); -});