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

Side by Side Diff: LayoutTests/http/tests/serviceworker/state.html

Issue 468753003: SW tests update (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: 467133002 and fix test Created 6 years, 4 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 <script src="../resources/testharness.js"></script> 2 <script src="../resources/testharness.js"></script>
3 <script src="../resources/testharnessreport.js"></script> 3 <script src="../resources/testharnessreport.js"></script>
4 <script src="resources/test-helpers.js"></script> 4 <script src="resources/test-helpers.js"></script>
5 <body> 5 <body>
6 <script> 6 <script>
7 (function () { 7 (function () {
8 var t = async_test('Service Worker state property and "statechange" event'); 8 var t = async_test('Service Worker state property and "statechange" event');
9 var currentState = 'test-is-starting'; 9 var currentState = 'test-is-starting';
10 var scope = '/state/'; 10 var scope = '/state/';
11 11
12 service_worker_unregister_and_register(t, 'resources/worker-no-op.js', scope ).then(t.step_func(onRegister)); 12 service_worker_unregister_and_register(
13 13 t, 'resources/worker-no-op.js', scope)
14 function onRegister(sw) { 14 .then(t.step_func(function(registration) {
15 sw.addEventListener('statechange', t.step_func(onStateChange(sw))); 15 return wait_for_update(t, registration);
16 assert_in_array(sw.state, ['parsed', 'installing'], 16 }))
17 'the service worker should be in a state up to ' + 17 .then(t.step_func(function(sw) {
18 '"installing".'); 18 sw.addEventListener('statechange', t.step_func(onStateChange(sw)));
19 checkStateTransition(sw.state); 19 assert_in_array(sw.state, ['parsed', 'installing'],
20 } 20 'the service worker should be in a state up to ' +
21 '"installing".');
22 checkStateTransition(sw.state);
23 }))
24 .catch(unreached_rejection(t));
21 25
22 function checkStateTransition(newState) { 26 function checkStateTransition(newState) {
23 switch (currentState) { 27 switch (currentState) {
24 case 'test-is-starting': 28 case 'test-is-starting':
25 break; // anything goes 29 break; // anything goes
26 case 'parsed': 30 case 'parsed':
27 assert_equals(newState, 'installing'); 31 assert_equals(newState, 'installing');
28 break; 32 break;
29 case 'installing': 33 case 'installing':
30 assert_in_array(newState, ['installed', 'redundant']); 34 assert_in_array(newState, ['installed', 'redundant']);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 'the type of the event should be "statechange".'); 66 'the type of the event should be "statechange".');
63 67
64 checkStateTransition(event.target.state); 68 checkStateTransition(event.target.state);
65 69
66 if (event.target.state == 'activated') 70 if (event.target.state == 'activated')
67 service_worker_unregister_and_done(t, scope); 71 service_worker_unregister_and_done(t, scope);
68 }; 72 };
69 } 73 }
70 }()); 74 }());
71 </script> 75 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698