summaryrefslogtreecommitdiffstats
path: root/dom/workers/test/test_sharedWorker_ports.html
blob: 6befd4920c2d338d58976bba3eb4f4e41ab64e2f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<!--
  Any copyright is dedicated to the Public Domain.
  http://creativecommons.org/publicdomain/zero/1.0/
-->
<!DOCTYPE HTML>
<html>
  <head>
    <title>Test for MessagePort and SharedWorkers</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <script src="/tests/SimpleTest/SimpleTest.js"></script>
  </head>
  <body>
    <script class="testbody" type="text/javascript">

var sw1 = new SharedWorker('sharedWorker_ports.js');
sw1.port.onmessage = function(event) {
  if (event.data.type == "connected") {
    ok(true, "The SharedWorker is alive.");

    var sw2 = new SharedWorker('sharedWorker_ports.js');
    sw1.port.postMessage("Port from the main-thread!", [sw2.port]);
    return;
  }

  if (event.data.type == "status") {
    ok(event.data.test, event.data.msg);
    return;
  }

  if (event.data.type == "finish") {
    info("Finished!");
    ok(sw1.port, "The port still exists");
    sw1.port.foo = sw1; // Just a test to see if we leak.
    SimpleTest.finish();
  }
}

SimpleTest.waitForExplicitFinish();
    </script>
  </body>
</html>