tor-browser

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

test_bug895340.xhtml (1573B)


      1 <?xml version="1.0"?>
      2 <?xml-stylesheet href="chrome://global/skin" type="text/css"?>
      3 <?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
      4                 type="text/css"?>
      5 <!--
      6 https://bugzilla.mozilla.org/show_bug.cgi?id=895340
      7 -->
      8 <window title="Mozilla Bug 895340"
      9  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
     10  <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
     11 
     12  <!-- test results are displayed in the html:body -->
     13  <body xmlns="http://www.w3.org/1999/xhtml">
     14  <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=895340 "
     15     target="_blank">Mozilla Bug 895340 </a>
     16  </body>
     17 
     18  <!-- test code goes here -->
     19  <script type="application/javascript"><![CDATA[
     20 
     21  SimpleTest.waitForExplicitFinish();
     22  SimpleTest.expectUncaughtException();
     23 
     24  var finished = false;
     25 
     26  let listener = {
     27    QueryInterface: ChromeUtils.generateQI(["nsIConsoleListener"])
     28  };
     29 
     30  listener.observe = function(aMessage) {
     31    if (aMessage.message.includes("Will you report me?") && !finished) {
     32      finished = true;
     33      ok(true, "exception reported");
     34      Services.console.unregisterListener(listener);
     35      SimpleTest.finish();
     36    }
     37  };
     38 
     39  Services.console.registerListener(listener);
     40 
     41  /* Throw an exception and verify that it gets reported. */
     42  let foo_obs = function() {
     43    throw new Error("Will you report me?");
     44  };
     45 
     46  Services.obs.addObserver(foo_obs, "foo");
     47  Services.obs.notifyObservers(null, "foo", "foo");
     48  Services.obs.removeObserver(foo_obs, "foo");
     49  ]]></script>
     50 </window>