Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6418)

Unified Diff: chrome/test/data/extensions/api_test/service_worker/content_script_fetch/controlled_page/register_sw.js

Issue 1390943003: Bypass ServiceWorker when the request originates from isolated world. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/test/data/extensions/api_test/service_worker/content_script_fetch/controlled_page/register_sw.js
diff --git a/chrome/test/data/extensions/api_test/service_worker/content_script_fetch/controlled_page/register_sw.js b/chrome/test/data/extensions/api_test/service_worker/content_script_fetch/controlled_page/register_sw.js
new file mode 100644
index 0000000000000000000000000000000000000000..7e5c46f4c510d2d00e8ed164df87202e95d84958
--- /dev/null
+++ b/chrome/test/data/extensions/api_test/service_worker/content_script_fetch/controlled_page/register_sw.js
@@ -0,0 +1,27 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+function register() {
+ var script = './sw.js';
+ var scope = './';
+ navigator.serviceWorker.register(script, {scope: scope})
+ .then(function() { return navigator.serviceWorker.ready; })
+ .then(function(registration) {
+ var channel = new MessageChannel();
+ var saw_message = new Promise(function(resolve, reject) {
+ channel.port1.onmessage = function (e) {
+ if (e.data == 'clients claimed')
+ resolve();
+ else
+ reject(e.data)
+ };
+ });
+ registration.active.postMessage({port: channel.port2}, [channel.port2]);
+ return saw_message;
+ })
+ .then(function() { return fetch('./sw_controlled_check'); })
+ .then(function(res) { return res.text(); })
+ .then(function(txt) { window.domAutomationController.send(txt); })
+ .catch(function(e) { window.domAutomationController.send('Fail: ' + e); });
+}

Powered by Google App Engine
This is Rietveld 408576698