author ffxbld <>
Mon, 03 Aug 2020 10:13:16 +0000
changeset 605813 0e0faa02ce530adccb4b358a56bca24d26548853
parent 536485 617d77613a30d7feab1621cd36cf6d29d8e08544
permissions -rw-r--r--
No Bug, mozilla-release repo-update remote-settings - a=repo-update r=RyanVM Differential Revision:

  <meta charset="utf-8">
  <title>Test that our U2F implementation interacts OK with the Google polyfill</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
    // We want to run our test script at toplevel, because that's where the
    // polyfill runs.  But we also need to wait until the pref is set, so go
    // ahead and use a dynamically created script element.
    SpecialPowers.pushPrefEnv({ "set": [["security.webauth.u2f", true]] },

    function doTest() {
        // Need a new global for the pref to really take effect.
        var iframe = document.createElement("iframe");
        var win = iframe.contentWindow;
        var s = document.createElement("script");
        s.textContent = `
          'use strict';
          try {
            var savedU2f = u2f;
            var savedRegister = savedU2f.register;
            var savedSign = savedU2f.sign;
            var u2f = u2f || {};
            u2f.register = function() {};
            u2f.sign = function() {};
  , savedU2f, "Should still have the right object");
  , savedRegister, "Should not allow overriding 'sign'");
  , savedSign, "Should not allow overriding 'sign'");
          } catch (e) {
            parent.ok(false, "Threw an exception: " + e);
          } finally {
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test"></pre>