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


Quelle  browser_private_browsing.js   Sprache: JAVA

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


const URL =
  "http://mochi.test:8888/browser/dom/broadcastchannel/tests/blank.html";

add_task(async function () {
  var win1 = OpenBrowserWindow({ privatetrue });
  var win1Promise = new win1.Promise(resolve => {
    win1.addEventListener(
      "load",
      function () {
        resolve();
      },
      { once: true }
    );
  });
  await win1Promise;

  var win2 = OpenBrowserWindow({ privatefalse });
  var win2Promise = new win2.Promise(resolve => {
    win2.addEventListener(
      "load",
      function () {
        resolve();
      },
      { once: true }
    );
  });
  await win2Promise;

  var tab1 = BrowserTestUtils.addTab(win1.gBrowser, URL);
  await BrowserTestUtils.browserLoaded(win1.gBrowser.getBrowserForTab(tab1));
  var browser1 = gBrowser.getBrowserForTab(tab1);

  var tab2 = BrowserTestUtils.addTab(win2.gBrowser, URL);
  await BrowserTestUtils.browserLoaded(win2.gBrowser.getBrowserForTab(tab2));
  var browser2 = gBrowser.getBrowserForTab(tab2);

  var p1 = SpecialPowers.spawn(browser1, [], function () {
    return new content.window.Promise(resolve => {
      content.window.bc = new content.window.BroadcastChannel("foobar");
      content.window.bc.onmessage = function (e) {
        resolve(e.data);
      };
    });
  });

  var p2 = SpecialPowers.spawn(browser2, [], function () {
    return new content.window.Promise(resolve => {
      content.window.bc = new content.window.BroadcastChannel("foobar");
      content.window.bc.onmessage = function (e) {
        resolve(e.data);
      };
    });
  });

  await SpecialPowers.spawn(browser1, [], function () {
    return new content.window.Promise(resolve => {
      var bc = new content.window.BroadcastChannel("foobar");
      bc.postMessage("hello world from private browsing");
      resolve();
    });
  });

  await SpecialPowers.spawn(browser2, [], function () {
    return new content.window.Promise(resolve => {
      var bc = new content.window.BroadcastChannel("foobar");
      bc.postMessage("hello world from non private browsing");
      resolve();
    });
  });

  var what1 = await p1;
  is(
    what1,
    "hello world from private browsing",
    "No messages received from the other window."
  );

  var what2 = await p2;
  is(
    what2,
    "hello world from non private browsing",
    "No messages received from the other window."
  );

  BrowserTestUtils.removeTab(tab1);
  await BrowserTestUtils.closeWindow(win1);

  BrowserTestUtils.removeTab(tab2);
  await BrowserTestUtils.closeWindow(win2);
});

Messung V0.5
C=95 H=90 G=92

¤ Dauer der Verarbeitung: 0.16 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


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