Chromium Code Reviews| Index: LayoutTests/http/tests/serviceworker/resources/test-helpers.js |
| diff --git a/LayoutTests/http/tests/serviceworker/resources/test-helpers.js b/LayoutTests/http/tests/serviceworker/resources/test-helpers.js |
| index 0bae04421a4bb6364659d6bfde02151695ae6d71..a51c1a4a436f263d4e3c93bb2f1a8b80037b038f 100644 |
| --- a/LayoutTests/http/tests/serviceworker/resources/test-helpers.js |
| +++ b/LayoutTests/http/tests/serviceworker/resources/test-helpers.js |
| @@ -1,23 +1,26 @@ |
| // Adapter for testharness.js-style tests with Service Workers |
| +// Can only be used with a worker that installs successfully, since it |
| +// first registers to acquire a ServiceWorkerRegistration object to |
| +// unregister. |
| +// FIXME: Use getRegistration() when implemented. |
| function service_worker_unregister_and_register(test, url, scope) { |
| - var options = scope ? { scope: scope } : {}; |
| - return navigator.serviceWorker.unregister(scope).then( |
| - test.step_func(function() { |
| - return navigator.serviceWorker.register(url, options); |
| - }), |
| - unreached_rejection(test, 'Unregister should not fail') |
| - ).then(test.step_func(function(worker) { |
| - return Promise.resolve(worker); |
| - }), |
| - unreached_rejection(test, 'Registration should not fail') |
| - ); |
| + var options = scope ? { scope: scope } : {}; |
| + return navigator.serviceWorker.register(url, options) |
| + .then(function(registration) { |
| + return registration.unregister(); |
| + }) |
| + .then(function() { |
| + return navigator.serviceWorker.register(url, options); |
| + }) |
| + .catch(unreached_rejection(test, |
| + 'unregister and register should not fail')); |
|
falken
2014/08/18 05:01:06
Added this error message to aid debugging.
|
| } |
| function service_worker_unregister_and_done(test, scope) { |
| return navigator.serviceWorker.unregister(scope).then( |
| test.done.bind(test), |
| - unreached_rejection(test, 'Unregister should not fail')); |
| + unreached_rejection(test, 'unregister should not fail')); |
| } |
| // Rejection-specific helper that provides more details |