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

Unified Diff: LayoutTests/http/tests/serviceworker/resources/install-phase-event-waituntil.js

Issue 588383002: Service Workers: InstallPhaseEvent -> ExtendableEvent (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years, 3 months 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: LayoutTests/http/tests/serviceworker/resources/install-phase-event-waituntil.js
diff --git a/LayoutTests/http/tests/serviceworker/resources/install-phase-event-waituntil.js b/LayoutTests/http/tests/serviceworker/resources/install-phase-event-waituntil.js
deleted file mode 100644
index feeed4c0e664f1d12e0f3c22a70658ad944df040..0000000000000000000000000000000000000000
--- a/LayoutTests/http/tests/serviceworker/resources/install-phase-event-waituntil.js
+++ /dev/null
@@ -1,75 +0,0 @@
-var pendingPorts = [];
-var portResolves = [];
-
-onmessage = function(e) {
- var message = e.data;
- if ('port' in message) {
- var resolve = self.portResolves.shift();
- if (resolve)
- resolve(message.port);
- else
- self.pendingPorts.push(message.port);
- }
-};
-
-function fulfillPromise() {
- return new Promise(function(resolve) {
- // Make sure the oninstall/onactivate callback returns first.
- Promise.resolve().then(function() {
- var port = self.pendingPorts.shift();
- if (port)
- resolve(port);
- else
- self.portResolves.push(resolve);
- });
- }).then(function(port) {
- port.postMessage('SYNC');
- return new Promise(function(resolve) {
- port.onmessage = function(e) {
- if (e.data == 'ACK')
- resolve();
- };
- });
- });
-}
-
-function rejectPromise() {
- return new Promise(function(resolve, reject) {
- // Make sure the oninstall/onactivate callback returns first.
- Promise.resolve().then(reject);
- });
-}
-
-function stripScopeName(scope) {
- return scope.split('/').slice(-1)[0];
-}
-
-oninstall = function(e) {
- switch (stripScopeName(self.scope)) {
- case 'install-fulfilled':
- e.waitUntil(fulfillPromise());
- break;
- case 'install-rejected':
- e.waitUntil(rejectPromise());
- break;
- }
-};
-
-onactivate = function(e) {
- switch (stripScopeName(self.scope)) {
- case 'activate-fulfilled':
- e.waitUntil(fulfillPromise());
- break;
- case 'activate-rejected':
- e.waitUntil(rejectPromise());
- break;
- case 'activate-multiple-fulfilled':
- e.waitUntil(fulfillPromise());
- e.waitUntil(fulfillPromise());
- break;
- case 'activate-reject-precedence':
- e.waitUntil(fulfillPromise());
- e.waitUntil(rejectPromise());
- break;
- }
-};
« no previous file with comments | « LayoutTests/http/tests/serviceworker/resources/extendable-event-waituntil.js ('k') | Source/modules/modules.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698