tor-browser

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

test_bug1062920.html (1916B)


      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 <head>
      8  <title>Test for navigator property override</title>
      9  <script src="/tests/SimpleTest/SimpleTest.js"></script>
     10  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
     11 </head>
     12 <body>
     13 <p id="display"></p>
     14 <div id="content" style="display: none"></div>
     15 <pre id="test"></pre>
     16 <script class="testbody" type="text/javascript">
     17 
     18  function checkValues() {
     19    var worker = new Worker("bug1062920_worker.js");
     20 
     21    worker.onmessage = function(event) {
     22      var ifr = document.createElement('IFRAME');
     23      ifr.src = "about:blank";
     24 
     25      ifr.addEventListener('load', function() {
     26        var nav = ifr.contentWindow.navigator;
     27        is(event.data.appCodeName, nav.appCodeName, "appCodeName should match");
     28        is(event.data.appName, nav.appName, "appName should match");
     29        is(event.data.appVersion, nav.appVersion, "appVersion should match");
     30        is(event.data.platform, nav.platform, "platform should match");
     31        is(event.data.userAgent, nav.userAgent, "userAgent should match");
     32        is(event.data.product, nav.product, "product should match");
     33        runTests();
     34      });
     35 
     36      document.getElementById('content').appendChild(ifr);
     37    };
     38  }
     39 
     40  function replaceAndCheckValues() {
     41    SpecialPowers.pushPrefEnv({"set": [
     42      ["general.appversion.override", "appVersion overridden"],
     43      ["general.platform.override", "platform overridden"],
     44      ["general.useragent.override", "userAgent overridden"]
     45    ]}, checkValues);
     46  }
     47 
     48  var tests = [
     49    checkValues,
     50    replaceAndCheckValues
     51  ];
     52 
     53  function runTests() {
     54    if (!tests.length) {
     55      SimpleTest.finish();
     56      return;
     57    }
     58 
     59    var test = tests.shift();
     60    test();
     61  }
     62 
     63  SimpleTest.waitForExplicitFinish();
     64  runTests();
     65 
     66 </script>
     67 </pre>
     68 </body>
     69 </html>