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

Unified Diff: LayoutTests/http/tests/notifications/service-worker-show-notification-not-activated.html

Issue 787893002: Actually hook up ServiceWorkerRegistration.showNotification() (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: add missing file Created 6 years 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 side-by-side diff with in-line comments
Download patch
Index: LayoutTests/http/tests/notifications/service-worker-show-notification-not-activated.html
diff --git a/LayoutTests/http/tests/notifications/serviceworkerregistration-show-notification.html b/LayoutTests/http/tests/notifications/service-worker-show-notification-not-activated.html
similarity index 55%
rename from LayoutTests/http/tests/notifications/serviceworkerregistration-show-notification.html
rename to LayoutTests/http/tests/notifications/service-worker-show-notification-not-activated.html
index bdd8bf27eb02847192ffb9cd37461a2158f1fc71..af9b14afbaafc47f08057ec2fa04d8548025ec8b 100644
--- a/LayoutTests/http/tests/notifications/serviceworkerregistration-show-notification.html
+++ b/LayoutTests/http/tests/notifications/service-worker-show-notification-not-activated.html
@@ -8,12 +8,15 @@
</head>
<body>
<script>
- // Tests that the showNotification() function is exposed on the ServiceWorkerRegistration
- // object. As of right now, this is only exposed in documents.
+ // Tests that the showNotification() function rejects the returned promise with a
+ // TypeError when the Service Worker is not activated yet.
async_test(function (test) {
- var scope = 'resources/scope/serviceworkerregistration-show-notification',
+ var scope = 'resources/scope/service-worker-show-notification-not-activated',
worker_url = 'resources/empty-worker.js';
+ if (window.testRunner)
+ testRunner.grantWebNotificationPermission("http://127.0.0.1:8000", false);
+
service_worker_unregister_and_register(test, worker_url, scope).then(function (registration) {
assert_inherits(registration, 'showNotification', 'showNotification() must be exposed.');
registration.showNotification('Title', {
@@ -21,11 +24,16 @@
icon: '/icon.png'
}).then(function() {
assert_unreached('showNotification() is expected to reject.');
- }).catch(test.step_func_done());
+ }).catch(function(error) {
+ assert_equals(error.name, 'TypeError');
+ assert_equals(error.message, 'No active registration available on the ServiceWorkerRegistration.');
+ test.done();
+ });
}).catch(unreached_rejection(test));
- }, 'showNotification() must be exposed on the Document-based ServiceWorkerRegistration.');
+ }, 'showNotification() must reject if there is no active registration on the ServiceWorkerRegistration.');
+
</script>
</body>
</html>

Powered by Google App Engine
This is Rietveld 408576698