js/xpconnect/tests/chrome/test_mozMatchesSelector.xul

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     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=533596
     7 -->
     8 <window title="Mozilla Bug 533596"
     9   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
    10   <script type="application/javascript"
    11           src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
    13   <!-- test results are displayed in the html:body -->
    14   <body xmlns="http://www.w3.org/1999/xhtml">
    16   <iframe src="http://example.org/tests/js/xpconnect/tests/mochitest/file_mozMatchesSelector.html"
    17           onload="runTest(this)">
    18   </iframe>
    19   </body>
    21   <!-- test code goes here -->
    22   <script type="application/javascript"><![CDATA[
    23       SimpleTest.waitForExplicitFinish();
    24       function runTest(ifr)
    25       {
    26         var doc = ifr.contentDocument;
    27         var docElem = doc.documentElement;
    29         var res = doc.createElement('div').mozMatchesSelector('div');
    30         is(res, true, "mozMatchesSelector call through xray, regular case");
    32         res = docElem.mozMatchesSelector.call(
    33           doc.createElement('div'), 'div');
    34         is(res, true, "mozMatchesSelector call through xray, with .call");
    36         var sb = new Components.utils.Sandbox(ifr.contentWindow);
    37         sb.doc = doc;
    38         var str = "doc.documentElement.mozMatchesSelector.call(doc.createElement( 'div' ),'div')";
    39         res = Components.utils.evalInSandbox(str, sb);
    40         is(res, true, "mozMatchesSelector call through xray (same origin), with .call");
    42         docElem.mozMatchesSelector = function(){return false};
    43         res = docElem.mozMatchesSelector.call(doc.createElement( 'div' ),'div');
    44         is(res, false, "shadowing mozMatchesSelector with an expando on the xray wrapper");
    46         SimpleTest.finish();
    47       }
    49   ]]></script>
    50 </window>

mercurial