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

Unified Diff: third_party/WebKit/LayoutTests/http/tests/serviceworker/registration-end-to-end.html

Issue 2893743003: Upstream service wrkr "registration" tests to WPT (Closed)
Patch Set: Created 3 years, 7 months 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: third_party/WebKit/LayoutTests/http/tests/serviceworker/registration-end-to-end.html
diff --git a/third_party/WebKit/LayoutTests/http/tests/serviceworker/registration-end-to-end.html b/third_party/WebKit/LayoutTests/http/tests/serviceworker/registration-end-to-end.html
deleted file mode 100644
index 4845afb91f0827827df46d32dc9268a7f488c220..0000000000000000000000000000000000000000
--- a/third_party/WebKit/LayoutTests/http/tests/serviceworker/registration-end-to-end.html
+++ /dev/null
@@ -1,96 +0,0 @@
-<!DOCTYPE html>
-<title>Service Worker: registration end-to-end</title>
-<script src="../resources/testharness.js"></script>
-<script src="../resources/testharnessreport.js"></script>
-<script src="resources/test-helpers.js"></script>
-<script>
-var t = async_test('Registration: end-to-end');
-t.step(function() {
-
- var scope = 'resources/in-scope/';
- var serviceWorkerStates = [];
- var lastServiceWorkerState = '';
- var receivedMessageFromPort = '';
- var currentChangeCount = 0;
-
- assert_true(navigator.serviceWorker instanceof ServiceWorkerContainer);
- assert_equals(typeof navigator.serviceWorker.register, 'function');
- assert_equals(typeof navigator.serviceWorker.getRegistration, 'function');
-
- navigator.serviceWorker.oncurrentchange = function() {
- ++currentChangeCount;
- };
-
- service_worker_unregister_and_register(
- t, 'resources/end-to-end-worker.js', scope)
- .then(onRegister)
- .catch(unreached_rejection(t));
-
- function sendMessagePort(worker, from) {
- var messageChannel = new MessageChannel();
- worker.postMessage({from:from, port:messageChannel.port2}, [messageChannel.port2]);
- return messageChannel.port1;
- }
-
- function onRegister(registration) {
- var sw = registration.installing;
- serviceWorkerStates.push(sw.state);
- lastServiceWorkerState = sw.state;
-
- var sawMessage = new Promise(t.step_func(function(resolve) {
- sendMessagePort(sw, 'registering doc').onmessage = t.step_func(function (e) {
- receivedMessageFromPort = e.data;
- resolve();
- });
- }));
-
- var sawActive = new Promise(t.step_func(function(resolve) {
- sw.onstatechange = t.step_func(function() {
- serviceWorkerStates.push(sw.state);
-
- switch (sw.state) {
- case 'installed':
- assert_equals(lastServiceWorkerState, 'installing');
- break;
- case 'activating':
- assert_equals(lastServiceWorkerState, 'installed');
- break;
- case 'activated':
- assert_equals(lastServiceWorkerState, 'activating');
- break;
- default:
- // We won't see 'redundant' because onstatechange is
- // overwritten before calling unregister.
- assert_unreached('Unexpected state: ' + sw.state);
- }
-
- lastServiceWorkerState = sw.state;
- if (sw.state === 'activated')
- resolve();
- });
- }));
-
- Promise.all([sawMessage, sawActive]).then(t.step_func(function() {
- assert_array_equals(serviceWorkerStates,
- ['installing', 'installed', 'activating', 'activated'],
- 'Service worker should pass through all states');
-
- assert_equals(currentChangeCount, 0,
- 'Should not see current changes since document is out of scope');
-
- assert_equals(receivedMessageFromPort, 'Ack for: registering doc');
-
- var sawRedundant = new Promise(t.step_func(function(resolve) {
- sw.onstatechange = t.step_func(function() {
- assert_equals(sw.state, 'redundant');
- resolve();
- });
- }));
- registration.unregister();
- sawRedundant.then(t.step_func(function() {
- t.done();
- }));
- }));
- }
-});
-</script>

Powered by Google App Engine
This is Rietveld 408576698