diff --git a/addons/bus/static/tests/helpers/mock_websocket.js b/addons/bus/static/tests/helpers/mock_websocket.js index 25965683d26..32b5fa5256d 100644 --- a/addons/bus/static/tests/helpers/mock_websocket.js +++ b/addons/bus/static/tests/helpers/mock_websocket.js @@ -55,6 +55,14 @@ class SharedWorkerMock extends EventTarget { } } +class WorkerMock extends SharedWorkerMock { + constructor(websocketWorker) { + super(websocketWorker); + this.port.start(); + this.postMessage = this.port.postMessage.bind(this.port); + } +} + let websocketWorker; /** * @param {*} params Parameters used to patch the websocket worker. @@ -81,6 +89,14 @@ export function patchWebsocketWorkerWithCleanup(params = {}) { }); return sharedWorker; }, + Worker: function () { + const worker = new WorkerMock(websocketWorker); + registerCleanup(() => { + worker._messageChannel.port1.close(); + worker._messageChannel.port2.close(); + }); + return worker; + }, }); registerCleanup(() => { if (websocketWorker) {