tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_bug531176.html (1898B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=531176
      5 -->
      6 <head>
      7  <title>Test for Bug 531176</title>
      8  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      9  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
     10 </head>
     11 <body>
     12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=531176">Mozilla Bug 531176</a>
     13 <p id="display"></p>
     14 <div id="content" style="display: none">
     15  
     16 </div>
     17 <pre id="test">
     18 <script type="application/javascript">
     19 
     20 /** Test for Bug 531176 **/
     21 
     22 var errorCount = 0;
     23 function errorHandler(msg, filename, linenr) {
     24  is(msg, "SyntaxError: expected expression, got ';'", "Wrong error!");
     25  is(filename, String(window.location), "Wrong filename!");
     26  is(linenr, 1, "Wrong linenr!");
     27  ++errorCount;
     28 }
     29 
     30 window.onerror = errorHandler;
     31 document.body.setAttribute("onclick", "var x=;");
     32 // Force eager compilation
     33 document.body.onclick;
     34 is(errorCount, 1, "Error handler should have been called! (1)");
     35 
     36 function recursiveHandler(msg, filename, linenr) {
     37  is(msg, "SyntaxError: expected expression, got ';'", "Wrong error!");
     38  is(filename, String(window.location), "Wrong filename!");
     39  is(linenr, 1, "Wrong linenr!");
     40  ++errorCount;
     41  document.body.setAttribute("onclick", "var z=;");
     42 }
     43 
     44 window.onerror = recursiveHandler;
     45 document.body.setAttribute("onclick", "var y=;");
     46 // Force eager compilation
     47 document.body.onclick;
     48 is(errorCount, 2, "Error handler should have been called! (2)");
     49 
     50 // Check that error handler works even after recursion error.
     51 document.body.setAttribute("onclick", "var foo=;");
     52 // Force eager compilation
     53 document.body.onclick;
     54 is(errorCount, 3, "Error handler should have been called! (3)");
     55 
     56 window.onerror = function() { ++errorCount; };
     57 </script>
     58 <script>
     59 var foo =;
     60 </script>
     61 <script>
     62 is(errorCount, 4, "Error handler should have been called! (4)");
     63 </script>
     64 </pre>
     65 </body>
     66 </html>