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

Side by Side Diff: LayoutTests/http/tests/serviceworker/chromium/clients-openwindow.html

Issue 1130113006: ServiceWorker: Introduce ServiceWorkerMessageEvent to replace MessageEvent (3/3). (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: make more tests pass Created 5 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: clients.openWindow() tests (using testRunner)</title> 2 <title>Service Worker: clients.openWindow() tests (using testRunner)</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 <script> 6 <script>
7 // This test is using testRunner to grant itself the notification permission and 7 // This test is using testRunner to grant itself the notification permission and
8 // to simulate a click on a notification. A couple of changes would allow it to 8 // to simulate a click on a notification. A couple of changes would allow it to
9 // be run as a manual test by other browser vendors. 9 // be run as a manual test by other browser vendors.
10 if (window.testRunner) 10 if (window.testRunner)
11 testRunner.setPermission('notifications', 'granted', location.origin, locati on.origin); 11 testRunner.setPermission('notifications', 'granted', location.origin, locati on.origin);
12 12
13 var t = async_test('clients.openWindow() behaved as expected'); 13 var t = async_test('clients.openWindow() behaved as expected');
14 t.step(function() { 14 t.step(function() {
15 var scope = 'resources/blank.html' 15 var scope = 'resources/blank.html'
16 service_worker_unregister_and_register( 16 service_worker_unregister_and_register(
17 t, 'resources/clients-openwindow.js', scope) 17 t, 'resources/clients-openwindow.js', scope)
18 .then(function(registration) { 18 .then(function(registration) {
19 return wait_for_state(t, registration.installing, 'activated'); 19 return wait_for_state(t, registration.installing, 'activated');
20 }) 20 })
21 .then(function() { return with_iframe(scope); }) 21 .then(function() { return with_iframe(scope); })
22 .then(function(frame) { 22 .then(function(frame) {
23 var w = frame.contentWindow; 23 var w = frame.contentWindow;
24 w.onmessage = t.step_func(onMessage); 24 w.navigator.serviceWorker.onmessage = t.step_func(onMessage);
25 w.navigator.serviceWorker.controller.postMessage('start'); 25 w.navigator.serviceWorker.controller.postMessage('start');
26 }) 26 })
27 .catch(unreached_rejection(t)); 27 .catch(unreached_rejection(t));
28 28
29 var result = []; 29 var result = [];
30 var expected = ['openWindow() can\'t open a window without a user interactio n', 30 var expected = ['openWindow() can\'t open a window without a user interactio n',
31 'openWindow() error is InvalidAccessError', 31 'openWindow() error is InvalidAccessError',
32 'openWindow() can open cross origin windows', 32 'openWindow() can open cross origin windows',
33 'openWindow() result: null', 33 'openWindow() result: null',
34 'openWindow() can open not controlled windows', 34 'openWindow() can open not controlled windows',
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 if (message === 'quit') { 67 if (message === 'quit') {
68 assert_array_equals(result, expected, 68 assert_array_equals(result, expected,
69 'Worker should post back expected messages.'); 69 'Worker should post back expected messages.');
70 service_worker_unregister_and_done(t, scope); 70 service_worker_unregister_and_done(t, scope);
71 } else { 71 } else {
72 result.push(message); 72 result.push(message);
73 } 73 }
74 } 74 }
75 }); 75 });
76 </script> 76 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698