OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 'use strict'; | 5 'use strict'; |
6 | 6 |
7 var resultQueue = new ResultQueue(); | 7 var resultQueue = new ResultQueue(); |
8 var registrationReference = null; | 8 var registrationReference = null; |
9 | 9 |
10 // Sends data back to the test. This must be in response to an earlier | 10 // Sends data back to the test. This must be in response to an earlier |
(...skipping 25 matching lines...) Expand all Loading... | |
36 navigator.serviceWorker.ready | 36 navigator.serviceWorker.ready |
37 .then(function(swRegistration) { | 37 .then(function(swRegistration) { |
38 return swRegistration.sync.register({'tag': tag}); | 38 return swRegistration.sync.register({'tag': tag}); |
39 }) | 39 }) |
40 .then(function(syncRegistration) { | 40 .then(function(syncRegistration) { |
41 sendResultToTest('ok - ' + tag + ' registered'); | 41 sendResultToTest('ok - ' + tag + ' registered'); |
42 }) | 42 }) |
43 .catch(sendErrorToTest); | 43 .catch(sendErrorToTest); |
44 } | 44 } |
45 | 45 |
46 function registerOneShotFromServiceWorker(tag) { | |
47 navigator.serviceWorker.ready | |
48 .then(function(swRegistration) { | |
49 swRegistration.active.postMessage({action: 'registerOneShot', tag: tag}); | |
50 sendResultToTest('ok - ' + tag + ' register sent to SW'); | |
51 }) | |
52 .catch(sendErrorToTest); | |
53 } | |
54 | |
46 function unregisterOneShot(tag) { | 55 function unregisterOneShot(tag) { |
47 navigator.serviceWorker.ready | 56 navigator.serviceWorker.ready |
48 .then(function(swRegistration) { | 57 .then(function(swRegistration) { |
49 return swRegistration.sync.getRegistration(tag); | 58 return swRegistration.sync.getRegistration(tag); |
50 }) | 59 }) |
51 .then(function(syncRegistration) { | 60 .then(function(syncRegistration) { |
52 if (!syncRegistration) { | 61 if (!syncRegistration) { |
53 sendResultToTest('error - ' + tag + ' not found'); | 62 sendResultToTest('error - ' + tag + ' not found'); |
54 return; | 63 return; |
55 } | 64 } |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
90 .then(function(syncRegistration) { | 99 .then(function(syncRegistration) { |
91 if (!syncRegistration) { | 100 if (!syncRegistration) { |
92 sendResultToTest('error - ' + tag + ' not found'); | 101 sendResultToTest('error - ' + tag + ' not found'); |
93 return; | 102 return; |
94 } | 103 } |
95 sendResultToTest('ok - ' + tag + ' found'); | 104 sendResultToTest('ok - ' + tag + ' found'); |
96 }) | 105 }) |
97 .catch(sendErrorToTest); | 106 .catch(sendErrorToTest); |
98 } | 107 } |
99 | 108 |
109 function getRegistrationOneShotFromServiceWorker(tag) { | |
110 navigator.serviceWorker.ready | |
111 .then(function(swRegistration) { | |
112 swRegistration.active.postMessage( | |
113 {action: 'getRegistrationOneShot', tag: tag}); | |
jkarlin
2015/10/08 15:43:14
4 space indent for the argument to the function ca
| |
114 sendResultToTest('ok - getRegistration sent to SW'); | |
115 }) | |
116 .catch(sendErrorToTest); | |
117 } | |
118 | |
100 function getRegistrationsOneShot(tag) { | 119 function getRegistrationsOneShot(tag) { |
101 navigator.serviceWorker.ready | 120 navigator.serviceWorker.ready |
102 .then(function(swRegistration) { | 121 .then(function(swRegistration) { |
103 return swRegistration.sync.getRegistrations(); | 122 return swRegistration.sync.getRegistrations(); |
104 }) | 123 }) |
105 .then(function(syncRegistrations) { | 124 .then(function(syncRegistrations) { |
106 var tags = syncRegistrations.map(function(syncRegistration) { | 125 var tags = syncRegistrations.map(function(syncRegistration) { |
107 return syncRegistration.tag; | 126 return syncRegistration.tag; |
108 }); | 127 }); |
109 sendResultToTest('ok - ' + tags.toString()); | 128 sendResultToTest('ok - ' + tags.toString()); |
110 }) | 129 }) |
111 .catch(sendErrorToTest); | 130 .catch(sendErrorToTest); |
112 } | 131 } |
113 | 132 |
133 function getRegistrationsOneShotFromServiceWorker() { | |
134 navigator.serviceWorker.ready | |
135 .then(function(swRegistration) { | |
136 swRegistration.active.postMessage({action: 'getRegistrationsOneShot'}); | |
137 sendResultToTest('ok - getRegistrations sent to SW'); | |
138 }) | |
139 .catch(sendErrorToTest); | |
140 } | |
141 | |
114 function completeDelayedOneShot() { | 142 function completeDelayedOneShot() { |
115 navigator.serviceWorker.ready | 143 navigator.serviceWorker.ready |
116 .then(function(swRegistration) { | 144 .then(function(swRegistration) { |
117 swRegistration.active.postMessage({action: 'completeDelayedOneShot'}); | 145 swRegistration.active.postMessage({action: 'completeDelayedOneShot'}); |
118 sendResultToTest('ok - delay completing'); | 146 sendResultToTest('ok - delay completing'); |
119 }) | 147 }) |
120 .catch(sendErrorToTest); | 148 .catch(sendErrorToTest); |
121 } | 149 } |
122 | 150 |
123 function rejectDelayedOneShot() { | 151 function rejectDelayedOneShot() { |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
196 }; | 224 }; |
197 | 225 |
198 // Called by native. Immediately sends the next data item to the test if it is | 226 // Called by native. Immediately sends the next data item to the test if it is |
199 // available, otherwise sends null. | 227 // available, otherwise sends null. |
200 ResultQueue.prototype.popImmediately = function() { | 228 ResultQueue.prototype.popImmediately = function() { |
201 sendResultToTest(this.queue.length ? this.queue.pop() : null); | 229 sendResultToTest(this.queue.length ? this.queue.pop() : null); |
202 }; | 230 }; |
203 | 231 |
204 navigator.serviceWorker.addEventListener('message', function(event) { | 232 navigator.serviceWorker.addEventListener('message', function(event) { |
205 var message = event.data; | 233 var message = event.data; |
206 if (message.type == 'sync') | 234 if (message.type == 'sync' || message.type === 'register') |
207 resultQueue.push(message.data); | 235 resultQueue.push(message.data); |
208 }, false); | 236 }, false); |
OLD | NEW |