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

Side by Side Diff: third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/ServiceWorkerGlobalScope/resources/extendable-message-event-loopback-worker.js

Issue 2751113005: Upstream service worker message event tests to WPT (Closed)
Patch Set: Remove redundant comment Created 3 years, 9 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 unified diff | Download patch
OLDNEW
1 importScripts('./extendable-message-event-utils.js');
2
1 self.addEventListener('message', function(event) { 3 self.addEventListener('message', function(event) {
2 switch (event.data.type) { 4 switch (event.data.type) {
3 case 'start': 5 case 'start':
4 self.registration.active.postMessage( 6 self.registration.active.postMessage(
5 {type: '1st', client_id: event.source.id}); 7 {type: '1st', client_id: event.source.id});
6 break; 8 break;
7 case '1st': 9 case '1st':
8 // 1st loopback message via ServiceWorkerRegistration.active. 10 // 1st loopback message via ServiceWorkerRegistration.active.
9 var results = [ 11 var results = {
10 '1st loopback: ' + event, 12 trial: 1,
11 ' event.origin: ' + event.origin, 13 event: ExtendableMessageEventUtils.serialize(event)
12 ' event.lastEventId: ' + event.lastEventId, 14 };
13 ' event.source: ' + event.source,
14 ' event.source.scriptURL: ' + event.source.scriptURL,
15 ' event.source.state: ' + event.source.state,
16 ' event.ports: ' + event.ports,
17 ];
18 var client_id = event.data.client_id; 15 var client_id = event.data.client_id;
19 event.source.postMessage({type: '2nd', client_id: client_id}); 16 event.source.postMessage({type: '2nd', client_id: client_id});
20 event.waitUntil(clients.get(client_id) 17 event.waitUntil(clients.get(client_id)
21 .then(function(client) { 18 .then(function(client) {
22 client.postMessage({type: 'record', results: results}); 19 client.postMessage({type: 'record', results: results});
23 })); 20 }));
24 break; 21 break;
25 case '2nd': 22 case '2nd':
26 // 2nd loopback message via ExtendableMessageEvent.source. 23 // 2nd loopback message via ExtendableMessageEvent.source.
27 var results = [ 24 var results = {
28 '2nd loopback: ' + event, 25 trial: 2,
29 ' event.origin: ' + event.origin, 26 event: ExtendableMessageEventUtils.serialize(event)
30 ' event.lastEventId: ' + event.lastEventId, 27 };
31 ' event.source: ' + event.source,
32 ' event.source.scriptURL: ' + event.source.scriptURL,
33 ' event.source.state: ' + event.source.state,
34 ' event.ports: ' + event.ports,
35 ];
36 var client_id = event.data.client_id; 28 var client_id = event.data.client_id;
37 event.waitUntil(clients.get(client_id) 29 event.waitUntil(clients.get(client_id)
38 .then(function(client) { 30 .then(function(client) {
39 client.postMessage({type: 'record', results: results}); 31 client.postMessage({type: 'record', results: results});
40 client.postMessage({type: 'finish'}); 32 client.postMessage({type: 'finish'});
41 })); 33 }));
42 break; 34 break;
43 } 35 }
44 }); 36 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698