Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quellcode-Bibliothek browser_ua_emulation.js   Sprache: unbekannt

 
/* Any copyright is dedicated to the Public Domain.
   http://creativecommons.org/publicdomain/zero/1.0/ */


"use strict";

const URL = "data:text/html;charset=utf-8,";

// Test that the docShell UA emulation works
async function contentTaskNoOverride() {
  let docshell = docShell;
  is(
    docshell.browsingContext.customUserAgent,
    "",
    "There should initially be no customUserAgent"
  );
}

async function contentTaskOverride() {
  let docshell = docShell;
  is(
    docshell.browsingContext.customUserAgent,
    "foo",
    "The user agent should be changed to foo"
  );

  is(
    content.navigator.userAgent,
    "foo",
    "The user agent should be changed to foo"
  );

  let frameWin = content.document.querySelector("#test-iframe").contentWindow;
  is(
    frameWin.navigator.userAgent,
    "foo",
    "The UA should be passed on to frames."
  );

  let newFrame = content.document.createElement("iframe");
  content.document.body.appendChild(newFrame);

  let newFrameWin = newFrame.contentWindow;
  is(
    newFrameWin.navigator.userAgent,
    "foo",
    "Newly created frames should use the new UA"
  );

  newFrameWin.location.reload();
  await ContentTaskUtils.waitForEvent(newFrame, "load");

  is(
    newFrameWin.navigator.userAgent,
    "foo",
    "New UA should persist across reloads"
  );
}

add_task(async function () {
  await BrowserTestUtils.withNewTab(
    { gBrowser, url: URL },
    async function (browser) {
      await SpecialPowers.spawn(browser, [], contentTaskNoOverride);

      let browsingContext = BrowserTestUtils.getBrowsingContextFrom(browser);
      browsingContext.customUserAgent = "foo";

      await SpecialPowers.spawn(browser, [], contentTaskOverride);
    }
  );
});

100%


[ 0.29Quellennavigators  Projekt   ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge