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

Side by Side Diff: LayoutTests/http/tests/serviceworker/ready-controlled-document.html

Issue 352423005: Add ServiceWorker InstallPhaseEvent.waitUntil() layout test. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: review update Created 6 years, 5 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 unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <title>Service Worker: ready in a controlled document</title> 2 <title>Service Worker: ready in a controlled document</title>
3 <script src="../resources/testharness.js"></script> 3 <script src="../resources/testharness.js"></script>
4 <script src="../resources/testharnessreport.js"></script> 4 <script src="../resources/testharnessreport.js"></script>
5 <script src="resources/test-helpers.js"></script> 5 <script src="resources/test-helpers.js"></script>
6 <body> 6 <body>
7 <script> 7 <script>
8 var t = async_test('ready in a controlled document'); 8 var t = async_test('ready in a controlled document');
9 t.step(function() { 9 t.step(function() {
10 var url = 'resources/worker-no-op.js'; 10 var url = 'resources/worker-no-op.js';
11 var scope = 'resources/blank.html'; 11 var scope = 'resources/blank.html';
12 service_worker_unregister_and_register(t, url, scope).then(t.step_func(onReg ister)); 12 service_worker_unregister_and_register(t, url, scope).then(t.step_func(onReg ister));
13 13
14 function onRegister(worker) { 14 function onRegister(worker) {
15 worker.addEventListener('statechange', t.step_func(function(event) { 15 worker.addEventListener('statechange', t.step_func(function(event) {
16 if (event.target.state == 'active') 16 if (event.target.state == 'activated')
17 onActive(); 17 onActive();
18 })); 18 }));
19 } 19 }
20 20
21 var controller; 21 var controller;
22 22
23 function onActive() { 23 function onActive() {
24 with_iframe(scope, t.step_func(function(frame) { 24 with_iframe(scope, t.step_func(function(frame) {
25 var w = frame.contentWindow; 25 var w = frame.contentWindow;
26 controller = w.navigator.serviceWorker.controller; 26 controller = w.navigator.serviceWorker.controller;
27 w.navigator.serviceWorker.ready.then(t.step_func(onReady)); 27 w.navigator.serviceWorker.ready.then(t.step_func(onReady));
28 })); 28 }));
29 } 29 }
30 30
31 function onReady(serviceWorker) { 31 function onReady(serviceWorker) {
32 assert_equals(serviceWorker, controller, 32 assert_equals(serviceWorker, controller,
33 'ready should resolve to the controller of a ' + 33 'ready should resolve to the controller of a ' +
34 'controlled document'); 34 'controlled document');
35 service_worker_unregister_and_done(t, scope); 35 service_worker_unregister_and_done(t, scope);
36 } 36 }
37 }); 37 });
38 </script> 38 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698