| Index: chrome/test/data/push_messaging/push_test.js
|
| diff --git a/chrome/test/data/push_messaging/push_test.js b/chrome/test/data/push_messaging/push_test.js
|
| index be99f626758be52981619306697ee0e4d1853747..490febcfad40e27c1f4e906a49ebc3805471a7b8 100644
|
| --- a/chrome/test/data/push_messaging/push_test.js
|
| +++ b/chrome/test/data/push_messaging/push_test.js
|
| @@ -92,8 +92,23 @@ function removeManifest() {
|
| }
|
| }
|
|
|
| +// TODO(xiang): Remove this function after "ready" CL landed.
|
| +function getReadyRegistration() {
|
| + return navigator.serviceWorker.getRegistration().then(function(r) {
|
| + if (r.active)
|
| + return r;
|
| + var worker = r.waiting ? r.waiting : r.installing;
|
| + return new Promise(function(resolve) {
|
| + worker.onstatechange = function() {
|
| + if (worker.state === 'activating')
|
| + resolve(r);
|
| + };
|
| + });
|
| + });
|
| +}
|
| +
|
| function registerPush() {
|
| - navigator.serviceWorker.ready.then(function(swRegistration) {
|
| + getReadyRegistration().then(function(swRegistration) {
|
| var registerMethodName =
|
| swRegistration.pushManager.register ? 'register' : 'subscribe';
|
| return swRegistration.pushManager[registerMethodName]()
|
| @@ -106,7 +121,7 @@ function registerPush() {
|
| }
|
|
|
| function hasPermission() {
|
| - navigator.serviceWorker.ready.then(function(swRegistration) {
|
| + getReadyRegistration().then(function(swRegistration) {
|
| return swRegistration.pushManager.hasPermission()
|
| .then(function(permission) {
|
| sendResultToTest('permission status - ' + permission);
|
| @@ -138,7 +153,7 @@ function unregister() {
|
| }
|
|
|
| function hasRegistration() {
|
| - navigator.serviceWorker.ready.then(function(swRegistration) {
|
| + getReadyRegistration().then(function(swRegistration) {
|
| return swRegistration.pushManager.getSubscription();
|
| }).then(function(subscription) {
|
| sendResultToTest(subscription ? 'true - registered'
|
|
|