diff options
Diffstat (limited to 'testing/web-platform/tests/service-workers/service-worker/serviceworker-message-event-historical.https.html')
-rw-r--r-- | testing/web-platform/tests/service-workers/service-worker/serviceworker-message-event-historical.https.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/testing/web-platform/tests/service-workers/service-worker/serviceworker-message-event-historical.https.html b/testing/web-platform/tests/service-workers/service-worker/serviceworker-message-event-historical.https.html new file mode 100644 index 0000000000..fac8f2076f --- /dev/null +++ b/testing/web-platform/tests/service-workers/service-worker/serviceworker-message-event-historical.https.html @@ -0,0 +1,45 @@ +<!DOCTYPE html> +<title>Service Worker: ServiceWorkerMessageEvent</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="resources/test-helpers.sub.js"></script> +<script> + +promise_test(function(t) { + var scope = 'resources/blank.html'; + var url = 'resources/postmessage-to-client-worker.js'; + return service_worker_unregister_and_register(t, url, scope) + .then(function(r) { + t.add_cleanup(function() { + return service_worker_unregister(t, scope); + }); + + return wait_for_state(t, r.installing, 'activated'); + }) + .then(function() { + return with_iframe(scope); + }) + .then(function(frame) { + var w = frame.contentWindow; + var worker = w.navigator.serviceWorker.controller; + assert_equals( + self.ServiceWorkerMessageEvent, undefined, + 'ServiceWorkerMessageEvent should not be defined.'); + return new Promise(function(resolve) { + w.navigator.serviceWorker.onmessage = t.step_func(function(e) { + assert_true( + e instanceof w.MessageEvent, + 'message events should use MessageEvent interface.'); + assert_true(e.source instanceof w.ServiceWorker); + assert_equals(e.type, 'message'); + assert_equals(e.source, worker, + 'source should equal to the controller.'); + assert_equals(e.ports.length, 0); + resolve(); + }); + worker.postMessage('PING'); + }); + }); + }, 'Test MessageEvent supplants ServiceWorkerMessageEvent.'); + +</script> |