| OLD | NEW |
| (Empty) |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <head> | |
| 4 <title>Test PushRegistration.unregister()</title> | |
| 5 <link rel="manifest" href="resources/push_manifest.json"> | |
| 6 <script src="../resources/testharness.js"></script> | |
| 7 <script src="../resources/testharnessreport.js"></script> | |
| 8 <script src="../serviceworker/resources/test-helpers.js"></script> | |
| 9 </head> | |
| 10 <body> | |
| 11 <script> | |
| 12 async_test(function(test) { | |
| 13 var workerUrl = 'resources/empty_worker.js'; | |
| 14 var workerScope = 'resources/scope/' + location.pathname; | |
| 15 var swRegistration; | |
| 16 var pushRegistration; | |
| 17 service_worker_unregister_and_register(test, workerUrl, workerScope) | |
| 18 .then(function(serviceWorkerRegistration) { | |
| 19 swRegistration = serviceWorkerRegistration; | |
| 20 return wait_for_state(test, swRegistration.installing, 'activated'); | |
| 21 }) | |
| 22 .then(function() { | |
| 23 // If running manually, grant permission when prompted. | |
| 24 if (self.testRunner) | |
| 25 testRunner.setPushMessagingPermission(location.origin, true); | |
| 26 return swRegistration.pushManager.register(); | |
| 27 }) | |
| 28 .then(function(registration) { | |
| 29 pushRegistration = registration; | |
| 30 assert_inherits(pushRegistration, 'unregister', | |
| 31 'unregister() should be exposed on the PushRegistrat
ion object'); | |
| 32 assert_equals(typeof(pushRegistration.unregister), 'function', | |
| 33 'PushRegistration.unregister() is a function.'); | |
| 34 return pushRegistration.unregister(); | |
| 35 }) | |
| 36 .then(function(unregistration_result) { | |
| 37 assert_true(unregistration_result, | |
| 38 "unregister() called when correctly registered should be
fulfilled with true"); | |
| 39 return pushRegistration.unregister(); | |
| 40 }) | |
| 41 .then(function(unregistration_result) { | |
| 42 assert_false(unregistration_result, | |
| 43 "unregister() called a second time should be fulfilled
with false"); | |
| 44 return swRegistration.pushManager.getRegistration(); | |
| 45 }) | |
| 46 .then(function(pushRegistration) { | |
| 47 assert_equals(pushRegistration, null, | |
| 48 "After unregistration, there is no more PushRegistrati
on."); | |
| 49 return service_worker_unregister_and_done(test, workerScope); | |
| 50 }) | |
| 51 .catch(unreached_rejection(test)); | |
| 52 }); | |
| 53 </script> | |
| 54 </body> | |
| 55 </html> | |
| OLD | NEW |