Rubber-stamped by Brady Eidson.
[webbrowser.git] / LayoutTests / fast / workers / resources / shared-worker-common.js
blob720821b584575379709ec8b364f5a0ebaad3d462
1 function generateError()
3 // Generate an exception by accessing an undefined variable.
4 foo.bar = 0;
7 onconnect = function(event) {
8 event.ports[0].onmessage = function(evt) { handleMessage(evt, event.ports[0]); };
9 };
11 function gc()
13 for (var i = 0; i < 10000; i++) { // force garbage collection (FF requires about 9K allocations before a collect)
14 var s = new String("abc");
18 function handleMessage(event, port) {
19 if (event.data == "ping")
20 port.postMessage("PASS: Received ping message");
21 else if (event.data == "close")
22 close();
23 else if (event.data == "done")
24 port.postMessage("DONE");
25 else if (event.data == "throw")
26 generateError();
27 else if (/eval.+/.test(event.data)) {
28 try {
29 port.postMessage(event.data.substr(5) + ": " + eval(event.data.substr(5)));
30 } catch (ex) {
31 port.postMessage(event.data.substr(5) + ": " + ex);
34 else
35 port.postMessage("FAILURE: Received unknown message: " + event.data);