dom/tests/mochitest/chrome/test_subscript_bindings.xul

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 <?xml version="1.0"?>
     2 <?xml-stylesheet type="text/css" href="chrome://global/skin"?>
     3 <?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?>
     4 <!--
     5 https://bugzilla.mozilla.org/show_bug.cgi?id=741267
     6 -->
     7 <window title="Mozilla Bug 741267"
     8         xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
     9   <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
    11   <iframe id="t"></iframe>
    13   <!-- test results are displayed in the html:body -->
    14   <body xmlns="http://www.w3.org/1999/xhtml">
    15   <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=741267"
    16      target="_blank">Mozilla Bug 741267</a>
    17   </body>
    19   <!-- test code goes here -->
    20   <script type="application/javascript">
    21   <![CDATA[
    23   /** Test for Bug 741267 **/
    24     function doTest() {
    25       // Resolve XMLHttpRequest on the chrome global
    26       new XMLHttpRequest();
    28       var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"].getService(Components.interfaces.mozIJSSubScriptLoader);
    29       var context = { window: $("t").contentWindow };
    30       var thrown = false;
    31       try {
    32         loader.loadSubScript(/.*\//.exec(window.location.href)[0] + "file_subscript_bindings.js", context);
    33       } catch (e) {
    34         thrown = true;
    35       }
    36       ok(!thrown, "'new window.XMLHttpRequest()' in a subscript shouldn't throw");
    37       SimpleTest.finish();
    38     }
    40     SimpleTest.waitForExplicitFinish();
    41     addLoadEvent(doTest);
    42   ]]>
    43   </script>
    44 </window>

mercurial