dom/workers/test/test_recursion.html

Fri, 16 Jan 2015 18:13:44 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 18:13:44 +0100
branch
TOR_BUG_9701
changeset 14
925c144e1f1f
permissions
-rw-r--r--

Integrate suggestion from review to improve consistency with existing code.

     1 <!--
     2   Any copyright is dedicated to the Public Domain.
     3   http://creativecommons.org/publicdomain/zero/1.0/
     4 -->
     5 <!DOCTYPE HTML>
     6 <html>
     7 <!--
     8 Tests of DOM Worker Threads
     9 -->
    10 <head>
    11   <title>Test for DOM Worker Threads Recursion</title>
    12   <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
    13   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
    14 </head>
    15 <body>
    16 <p id="display"></p>
    17 <div id="content" style="display: none">
    19 </div>
    20 <pre id="test">
    21 <script class="testbody" type="text/javascript">
    23   // Intermittently triggers one assertion on Mac (bug 848098).
    24   if (navigator.platform.indexOf("Mac") == 0) {
    25     SimpleTest.expectAssertions(0, 1);
    26   }
    28   const testCount = 2;
    29   var errorCount = 0;
    31   var worker = new Worker("recursion_worker.js");
    33   function done() {
    34     worker.terminate();
    35     SimpleTest.finish();
    36   }
    38   worker.onmessage = function(event) {
    39     if (event.data == "Done") {
    40       ok(true, "correct message");
    41     }
    42     else {
    43       ok(false, "Bad message: " + event.data);
    44     }
    45     done();
    46   }
    48   worker.onerror = function(event) {
    49     event.preventDefault();
    50     if (event.message == "InternalError: too much recursion") {
    51       ok(true, "got correct error message");
    52       ++errorCount;
    53     }
    54     else {
    55       ok(false, "got bad error message: " + event.message);
    56       done();
    57     }
    58   }
    60   for (var i = 0; i < testCount; i++) {
    61     worker.postMessage("");
    62   }
    64   SimpleTest.waitForExplicitFinish();
    66 </script>
    67 </pre>
    68 </body>
    69 </html>

mercurial