summaryrefslogtreecommitdiffstats
path: root/dom/workers/test/serviceworkers/sharedWorker_fetch.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/workers/test/serviceworkers/sharedWorker_fetch.js')
-rw-r--r--dom/workers/test/serviceworkers/sharedWorker_fetch.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/dom/workers/test/serviceworkers/sharedWorker_fetch.js b/dom/workers/test/serviceworkers/sharedWorker_fetch.js
new file mode 100644
index 000000000..4970a1fd2
--- /dev/null
+++ b/dom/workers/test/serviceworkers/sharedWorker_fetch.js
@@ -0,0 +1,29 @@
+var clients = new Array();
+clients.length = 0;
+
+var broadcast = function(message) {
+ var length = clients.length;
+ for (var i = 0; i < length; i++) {
+ port = clients[i];
+ port.postMessage(message);
+ }
+}
+
+onconnect = function(e) {
+ clients.push(e.ports[0]);
+ if (clients.length == 1) {
+ clients[0].postMessage("Connected");
+ } else if (clients.length == 2) {
+ broadcast("BothConnected");
+ clients[0].onmessage = function(e) {
+ if (e.data == "StartFetchWithWrongIntegrity") {
+ // The fetch will succeed because the integrity value is invalid and we
+ // are looking for the console message regarding the bad integrity value.
+ fetch("SharedWorker_SRIFailed.html", {"integrity": "abc"}).then(
+ function () {
+ clients[0].postMessage('SRI_failed');
+ });
+ }
+ }
+ }
+}