java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 29 var mode = location.href.includes("http2") ? "?mode=http2&" : "? function makeWrapperUrl(wrapper) { return wrapper + mode + "script=" + script;
}
let workerWrapperUrl = makeWrapperUrl("worker_wrapper.js");
// The framework runs the entire test in many different configurations. // On slow platforms and builds this can make the tests likely to // timeout while they are still running. Lengthen the timeout to // accomodate this.
SimpleTest.requestLongerTimeout(4);
// reroute.html should have set this variable if a service worker is present! if (!("isSWPresent" in window)) {
window.isSWPresent = false;
}
function workerTest() { returnnew Promise(function (resolve, reject) { var worker = new Worker(workerWrapperUrl);
worker.onmessage = function (event) { if (event.data.context != "Worker") { return;
} if (event.data.type == "finish") {
resolve();
} elseif (event.data.type == "status") {
ok(event.data.status, event.data.context + ": " + event.data.msg);
}
};
worker.onerror = function (event) {
reject("Worker error: " + event.message);
};
worker.postMessage({ script });
});
}
function nestedWorkerTest() { returnnew Promise(function (resolve, reject) { var worker = new Worker(makeWrapperUrl("nested_worker_wrapper.js"));
worker.onmessage = function (event) { if (event.data.context != "NestedWorker") { return;
} if (event.data.type == "finish") {
resolve();
} elseif (event.data.type == "status") {
ok(event.data.status, event.data.context + ": " + event.data.msg);
}
};
worker.onerror = function (event) {
reject("Nested Worker error: " + event.message);
};
worker.postMessage({ script });
});
}
function serviceWorkerTest() { var isB2G =
java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
/Mobile|Tablet/.test(navigator.userAgent); if (sB2G) { // TODO B2G doesn't support running service workers for now due to bug 1137683.
dump("Skipping running the test in SW until bug 1137683 gets fixed.\n"); return Promise.resolve();
} returnnew Promise(function (resolve, reject) { function setupSW(registration) { var worker =
registration.installing ||
registration.waiting ||
registration.active; var iframe;
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.