Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/dom/notification/test/mochitest/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 3 kB image not shown  

Quelle  notification_worker.js   Sprache: JAVA

 
/* eslint-disable mozilla/no-comparison-or-assignment-inside-ok */

function ok(test, message) {
  postMessage({ type: "ok", test, message });
}

function is(a, b, message) {
  postMessage({ type: "is", test1: a, test2: b, message });
}

if (self.Notification) {
  var steps = [
    function () {
      ok(typeof Notification === "function""Notification constructor exists");
      ok(Notification.permission, "Notification.permission exists");
      ok(
        typeof Notification.requestPermission === "undefined",
        "Notification.requestPermission should not exist"
      );
    },

    function (done) {
      var options = {
        dir: "auto",
        lang: "",
        body: "This is a notification body",
        tag: "sometag",
        icon: "icon.png",
        data: ["a complex object that should be", { structured: "cloned" }],
        mozbehavior: { vibrationPattern: [30, 200, 30] },
      };
      var notification = new Notification("This is a title", options);

      ok(notification !== undefined, "Notification exists");
      is(notification.onclick, null"onclick() should be null");
      is(notification.onshow, null"onshow() should be null");
      is(notification.onerror, null"onerror() should be null");
      is(notification.onclose, null"onclose() should be null");
      is(typeof notification.close, "function""close() should exist");

      is(notification.dir, options.dir, "auto should get set");
      is(notification.lang, options.lang, "lang should get set");
      is(notification.body, options.body, "body should get set");
      is(notification.tag, options.tag, "tag should get set");
      is(
        notification.icon,
        new URL(options.icon, location.href).toString(),
        "icon should get set"
      );
      is(
        notification.data[0],
        "a complex object that should be",
        "data item 0 should be a matching string"
      );
      is(
        notification.data[1].structured,
        "cloned",
        "data item 1 should be a matching object literal"
      );

      // store notification in test context
      this.notification = notification;

      notification.onshow = function () {
        ok(true"onshow handler should be called");
        done();
      };
    },

    function (done) {
      var notification = this.notification;

      notification.onclose = function () {
        ok(true"onclose handler should be called");
        done();
      };

      notification.close();
    },
  ];

  onmessage = () => {
    var context = {};
    (function executeRemainingTests(remainingTests) {
      if (!remainingTests.length) {
        postMessage({ type: "finish" });
        return;
      }

      var nextTest = remainingTests.shift();
      var finishTest = executeRemainingTests.bind(null, remainingTests);
      var startTest = nextTest.call.bind(nextTest, context, finishTest);

      try {
        startTest();
        // if no callback was defined for test function,
        // we must manually invoke finish to continue
        if (nextTest.length === 0) {
          finishTest();
        }
      } catch (ex) {
        ok(false"Test threw exception! " + nextTest + " " + ex);
        finishTest();
      }
    })(steps);
  };
else {
  ok(true"Notifications are not enabled in workers on the platform.");
  postMessage({ type: "finish" });
}

Messung V0.5
C=97 H=100 G=98

¤ Dauer der Verarbeitung: 0.12 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.