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

Unified Diff: LayoutTests/http/tests/serviceworker/resources/skip-waiting-installed-worker.js

Issue 723923002: ServiceWorker: Add support for .skipWaiting and controllerchange event(1/3) (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: webcallback->skipwaitingcallbacks, test re-write Created 6 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: LayoutTests/http/tests/serviceworker/resources/skip-waiting-installed-worker.js
diff --git a/LayoutTests/http/tests/serviceworker/resources/skip-waiting-installed-worker.js b/LayoutTests/http/tests/serviceworker/resources/skip-waiting-installed-worker.js
new file mode 100644
index 0000000000000000000000000000000000000000..0be48ee7fb4e5389802b6e2c8d7a1e9c56697538
--- /dev/null
+++ b/LayoutTests/http/tests/serviceworker/resources/skip-waiting-installed-worker.js
@@ -0,0 +1,33 @@
+self.state = 'starting';
+
+self.addEventListener('install', function() {
+ self.state = 'installing';
+ });
+
+self.addEventListener('activate', function() {
+ self.state = 'activating';
+ });
+
+self.addEventListener('message', function(event) {
+ var port = event.data.port;
+ if (self.state !== 'installing') {
+ port.postMessage('FAIL: Worker should waiting in installed state');
falken 2014/12/01 02:28:48 nit: "be waiting"?
xiang 2014/12/01 07:13:44 Done.
+ return;
+ }
+ self.skipWaiting()
+ .then(function(result) {
+ if (result !== undefined) {
+ port.postMessage('FAIL: Promise should be resolved with undefined');
+ return;
+ }
+ if (self.state !== 'activating') {
+ port.postMessage(
+ 'FAIL: Promise should be resolved after worker activated');
+ return;
+ }
+ port.postMessage('PASS');
+ })
+ .catch(function(e) {
+ port.postMessage('FAIL: unexpected exception: ' + e);
+ });
+ });

Powered by Google App Engine
This is Rietveld 408576698