diff options
Diffstat (limited to 'dom/websocket/tests/websocket_basic_worker.js')
-rw-r--r-- | dom/websocket/tests/websocket_basic_worker.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/dom/websocket/tests/websocket_basic_worker.js b/dom/websocket/tests/websocket_basic_worker.js new file mode 100644 index 0000000000..089fe3edc4 --- /dev/null +++ b/dom/websocket/tests/websocket_basic_worker.js @@ -0,0 +1,48 @@ +onmessage = function (event) { + if (event.data != 0) { + var worker = new Worker("websocket_basic_worker.js"); + worker.onmessage = function (e) { + postMessage(e.data); + }; + + worker.postMessage(event.data - 1); + return; + } + + status = false; + try { + if (WebSocket instanceof Object) { + status = true; + } + } catch (e) {} + + postMessage({ + type: "status", + status, + msg: "WebSocket object:" + WebSocket, + }); + + var ws = new WebSocket( + "ws://mochi.test:8888/tests/dom/websocket/tests/file_websocket_hello" + ); + ws.onopen = function (e) { + postMessage({ type: "status", status: true, msg: "OnOpen called" }); + ws.send("data"); + }; + + ws.onclose = function (e) {}; + + ws.onerror = function (e) { + postMessage({ type: "status", status: false, msg: "onerror called!" }); + }; + + ws.onmessage = function (e) { + postMessage({ + type: "status", + status: e.data == "Hello world!", + msg: "Wrong data", + }); + ws.close(); + postMessage({ type: "finish" }); + }; +}; |