OLD | NEW |
| (Empty) |
1 <!DOCTYPE html> | |
2 <!-- FIXME: Move this test out of chromium/ when PHP is no longer needed | |
3 to set the Link header (crbug.com/347864). | |
4 --> | |
5 <script src="/resources/testharness.js"></script> | |
6 <script src="/resources/testharnessreport.js"></script> | |
7 <script src="../resources/test-helpers.js"></script> | |
8 <body> | |
9 <script> | |
10 promise_test(function(t) { | |
11 var scope = normalizeURL('resources/blank.html?fetch'); | |
12 var header = '<empty-worker.js>; rel=serviceworker; scope="' + scope + '"'; | |
13 var resource = 'resources/link-header.php?Link=' + | |
14 encodeURIComponent(header); | |
15 return with_iframe(scope) | |
16 .then(frame => | |
17 Promise.all([frame.contentWindow.navigator.serviceWorker.ready, | |
18 fetch(resource)])) | |
19 .then(([registration, response]) => { | |
20 assert_equals(registration.scope, scope); | |
21 }); | |
22 }, 'fetch can trigger service worker installation'); | |
23 | |
24 promise_test(function(t) { | |
25 var scope = normalizeURL('resources/blank.html?iframe'); | |
26 var header = '<empty-worker.js>; rel=serviceworker; scope="' + scope + '"'; | |
27 var resource = 'resources/link-header.php?Link=' + | |
28 encodeURIComponent(header); | |
29 return with_iframe(scope) | |
30 .then(frame => | |
31 Promise.all([frame.contentWindow.navigator.serviceWorker.ready, | |
32 with_iframe(resource)])) | |
33 .then(([registration, frame]) => { | |
34 assert_equals(registration.scope, scope); | |
35 }); | |
36 }, 'An iframe can trigger service worker installation'); | |
37 | |
38 promise_test(function(t) { | |
39 var scope = normalizeURL('resources/blank.html?css'); | |
40 var header = '<empty-worker.js>; rel=serviceworker; scope="' + scope + '"'; | |
41 var resource = 'resources/link-header.php?Link=' + | |
42 encodeURIComponent(header); | |
43 return with_iframe(scope) | |
44 .then(frame => { | |
45 var link = document.createElement('link'); | |
46 link.setAttribute('rel', 'stylesheet'); | |
47 link.setAttribute('type', 'text/css'); | |
48 link.setAttribute('href', resource); | |
49 document.getElementsByTagName('head')[0].appendChild(link); | |
50 return frame.contentWindow.navigator.serviceWorker.ready; | |
51 }) | |
52 .then(registration => { | |
53 assert_equals(registration.scope, scope); | |
54 }); | |
55 }, 'A stylesheet can trigger service worker installation'); | |
56 | |
57 </script> | |
OLD | NEW |