OLD | NEW |
---|---|
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <title>Service Worker: FetchEvent for resources</title> | 2 <title>Service Worker: FetchEvent for resources</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?pipe=sub"></script> | 5 <script src="resources/test-helpers.js?pipe=sub"></script> |
6 <script> | 6 <script> |
7 var url_count = 0; | 7 var url_count = 0; |
8 var expected_results = {}; | 8 var expected_results = {}; |
9 | 9 |
10 function image_test(frame, url, cross_origin, | 10 function image_test(frame, url, cross_origin, expected_context, |
11 expexted_mode, expected_credentials) { | 11 expexted_mode, expected_credentials) { |
12 var actual_url = url + (++url_count); | 12 var actual_url = url + (++url_count); |
13 expected_results[actual_url] = { | 13 expected_results[actual_url] = { |
14 cross_origin: cross_origin, | 14 cross_origin: cross_origin, |
15 context: expected_context, | |
15 mode: expexted_mode, | 16 mode: expexted_mode, |
16 credentials: expected_credentials, | 17 credentials: expected_credentials, |
17 message: 'Image load (url:' + | 18 message: 'Image load (url:' + |
18 actual_url + ' cross_origin:' + cross_origin + ')' | 19 actual_url + ' cross_origin:' + cross_origin + ')' |
19 }; | 20 }; |
20 return frame.contentWindow.load_image(actual_url, cross_origin); | 21 return frame.contentWindow.load_image(actual_url, cross_origin); |
21 } | 22 } |
22 | 23 |
23 function script_test(frame, url, cross_origin, | 24 function script_test(frame, url, cross_origin, expected_context, |
24 expexted_mode, expected_credentials) { | 25 expexted_mode, expected_credentials) { |
25 var actual_url = url + (++url_count); | 26 var actual_url = url + (++url_count); |
26 expected_results[actual_url] = { | 27 expected_results[actual_url] = { |
27 cross_origin: cross_origin, | 28 cross_origin: cross_origin, |
29 context: expected_context, | |
28 mode: expexted_mode, | 30 mode: expexted_mode, |
29 credentials: expected_credentials, | 31 credentials: expected_credentials, |
30 message: 'Script load (url:' + | 32 message: 'Script load (url:' + |
31 actual_url + ' cross_origin:' + cross_origin + ')' | 33 actual_url + ' cross_origin:' + cross_origin + ')' |
32 }; | 34 }; |
33 return frame.contentWindow.load_script(actual_url, cross_origin); | 35 return frame.contentWindow.load_script(actual_url, cross_origin); |
34 } | 36 } |
35 | 37 |
36 function css_test(frame, url, cross_origin, | 38 function css_test(frame, url, cross_origin, expected_context, |
37 expexted_mode, expected_credentials) { | 39 expexted_mode, expected_credentials) { |
38 var actual_url = url + (++url_count); | 40 var actual_url = url + (++url_count); |
39 expected_results[actual_url] = { | 41 expected_results[actual_url] = { |
40 cross_origin: cross_origin, | 42 cross_origin: cross_origin, |
43 context: expected_context, | |
41 mode: expexted_mode, | 44 mode: expexted_mode, |
42 credentials: expected_credentials, | 45 credentials: expected_credentials, |
43 message: 'CSS load (url:' + | 46 message: 'CSS load (url:' + |
44 actual_url + ' cross_origin:' + cross_origin + ')' | 47 actual_url + ' cross_origin:' + cross_origin + ')' |
45 }; | 48 }; |
46 return frame.contentWindow.load_css(actual_url, cross_origin); | 49 return frame.contentWindow.load_css(actual_url, cross_origin); |
47 } | 50 } |
48 | 51 |
49 function font_face_test(frame, url, expexted_mode, expected_credentials) { | 52 function font_face_test(frame, url, expected_context, expexted_mode, expected_cr edentials) { |
hiroshige
2015/04/09 17:43:21
nit: wrap to 80 columns.
shiva.jm
2015/04/10 09:27:10
Done.
| |
50 var actual_url = url + (++url_count); | 53 var actual_url = url + (++url_count); |
51 expected_results[actual_url] = { | 54 expected_results[actual_url] = { |
52 url: actual_url, | 55 url: actual_url, |
56 context: expected_context, | |
53 mode: expexted_mode, | 57 mode: expexted_mode, |
54 credentials: expected_credentials, | 58 credentials: expected_credentials, |
55 message: 'FontFace load (url:' + actual_url + ')' | 59 message: 'FontFace load (url:' + actual_url + ')' |
56 }; | 60 }; |
57 return frame.contentWindow.load_font(actual_url); | 61 return frame.contentWindow.load_font(actual_url); |
58 } | 62 } |
59 | 63 |
60 function css_image_test(frame, url, type, expexted_mode, expected_credentials) { | 64 function css_image_test(frame, url, type, expected_context, expexted_mode, expec ted_credentials) { |
hiroshige
2015/04/09 17:43:21
nit: wrap to 80 columns.
shiva.jm
2015/04/10 09:27:10
Done.
| |
61 var actual_url = url + (++url_count); | 65 var actual_url = url + (++url_count); |
62 expected_results[actual_url] = { | 66 expected_results[actual_url] = { |
63 url: actual_url, | 67 url: actual_url, |
68 context: expected_context, | |
64 mode: expexted_mode, | 69 mode: expexted_mode, |
65 credentials: expected_credentials, | 70 credentials: expected_credentials, |
66 message: 'CSSImage load (url:' + actual_url + ' type:' + type + ')' | 71 message: 'CSSImage load (url:' + actual_url + ' type:' + type + ')' |
67 }; | 72 }; |
68 return frame.contentWindow.load_css_image(actual_url, type); | 73 return frame.contentWindow.load_css_image(actual_url, type); |
69 } | 74 } |
70 | 75 |
71 function css_image_set_test(frame, url, type, | 76 function css_image_set_test(frame, url, type, expected_context, |
72 expexted_mode, expected_credentials) { | 77 expexted_mode, expected_credentials) { |
73 var actual_url = url + (++url_count); | 78 var actual_url = url + (++url_count); |
74 expected_results[actual_url] = { | 79 expected_results[actual_url] = { |
75 url: actual_url, | 80 url: actual_url, |
81 context: expected_context, | |
76 mode: expexted_mode, | 82 mode: expexted_mode, |
77 credentials: expected_credentials, | 83 credentials: expected_credentials, |
78 message: 'CSSImageSet load (url:' + actual_url + ' type:' + type + ')' | 84 message: 'CSSImageSet load (url:' + actual_url + ' type:' + type + ')' |
79 }; | 85 }; |
80 return frame.contentWindow.load_css_image_set(actual_url, type); | 86 return frame.contentWindow.load_css_image_set(actual_url, type); |
81 } | 87 } |
82 | 88 |
83 async_test(function(t) { | 89 async_test(function(t) { |
84 var SCOPE = 'resources/fetch-request-resources-iframe.html'; | 90 var SCOPE = 'resources/fetch-request-resources-iframe.html'; |
85 var SCRIPT = 'resources/fetch-request-resources-worker.js'; | 91 var SCRIPT = 'resources/fetch-request-resources-worker.js'; |
(...skipping 16 matching lines...) Expand all Loading... | |
102 if (msg.data.ready) { | 108 if (msg.data.ready) { |
103 resolve(); | 109 resolve(); |
104 return; | 110 return; |
105 } | 111 } |
106 var result = msg.data; | 112 var result = msg.data; |
107 var expected = expected_results[result.url]; | 113 var expected = expected_results[result.url]; |
108 if (!expected) { | 114 if (!expected) { |
109 return; | 115 return; |
110 } | 116 } |
111 assert_equals( | 117 assert_equals( |
118 result.context, expected.context, | |
119 'context of ' + expected.message + ' must be ' + | |
120 expected.context + '.'); | |
121 assert_equals( | |
112 result.mode, expected.mode, | 122 result.mode, expected.mode, |
113 'mode of ' + expected.message + ' must be ' + | 123 'mode of ' + expected.message + ' must be ' + |
114 expected.mode + '.'); | 124 expected.mode + '.'); |
115 assert_equals( | 125 assert_equals( |
116 result.credentials, expected.credentials, | 126 result.credentials, expected.credentials, |
117 'credentials of ' + expected.message + ' must be ' + | 127 'credentials of ' + expected.message + ' must be ' + |
118 expected.credentials + '.'); | 128 expected.credentials + '.'); |
119 --url_count; | 129 --url_count; |
120 delete expected_results[result.url]; | 130 delete expected_results[result.url]; |
121 if (url_count == 0) { | 131 if (url_count == 0) { |
122 frame.remove(); | 132 frame.remove(); |
123 service_worker_unregister_and_done(t, SCOPE); | 133 service_worker_unregister_and_done(t, SCOPE); |
124 } | 134 } |
125 }); | 135 }); |
126 worker.postMessage( | 136 worker.postMessage( |
127 {port: channel.port2}, [channel.port2]); | 137 {port: channel.port2}, [channel.port2]); |
128 }); | 138 }); |
129 }) | 139 }) |
130 .then(function() { return with_iframe(SCOPE); }) | 140 .then(function() { return with_iframe(SCOPE); }) |
131 .then(function(f) { | 141 .then(function(f) { |
132 frame = f; | 142 frame = f; |
133 image_test(f, LOCAL_URL, '', 'no-cors', 'same-origin'); | 143 image_test(f, LOCAL_URL, '', 'image', 'no-cors', 'same-origin'); |
134 image_test(f, LOCAL_URL, 'anonymous', 'cors', 'omit'); | 144 image_test(f, LOCAL_URL, 'anonymous', 'image', 'cors', 'omit'); |
135 image_test(f, LOCAL_URL, 'use-credentials', 'cors', 'include'); | 145 image_test(f, LOCAL_URL, 'use-credentials', 'image', 'cors', 'include'); |
136 image_test(f, REMOTE_URL, '', 'no-cors', 'same-origin'); | 146 image_test(f, REMOTE_URL, '', 'image', 'no-cors', 'same-origin'); |
137 image_test(f, REMOTE_URL, 'anonymous', 'cors', 'omit'); | 147 image_test(f, REMOTE_URL, 'anonymous', 'image', 'cors', 'omit'); |
138 image_test(f, REMOTE_URL, 'use-credentials', 'cors', 'include'); | 148 image_test(f, REMOTE_URL, 'use-credentials', 'image', 'cors', 'include') ; |
hiroshige
2015/04/09 17:43:21
nit: wrap to 80 columns (also some lines below).
shiva.jm
2015/04/10 09:27:10
Done.
| |
139 | 149 |
140 script_test(f, LOCAL_URL, '', 'no-cors', 'same-origin'); | 150 script_test(f, LOCAL_URL, '', 'script', 'no-cors', 'same-origin'); |
141 script_test(f, LOCAL_URL, 'anonymous', 'cors', 'omit'); | 151 script_test(f, LOCAL_URL, 'anonymous', 'script', 'cors', 'omit'); |
142 script_test(f, LOCAL_URL, 'use-credentials', 'cors', 'include'); | 152 script_test(f, LOCAL_URL, 'use-credentials', 'script', 'cors', 'include' ); |
143 script_test(f, REMOTE_URL, '', 'no-cors', 'same-origin'); | 153 script_test(f, REMOTE_URL, '', 'script', 'no-cors', 'same-origin'); |
144 script_test(f, REMOTE_URL, 'anonymous', 'cors', 'omit'); | 154 script_test(f, REMOTE_URL, 'anonymous', 'script', 'cors', 'omit'); |
145 script_test(f, REMOTE_URL, 'use-credentials', 'cors', 'include'); | 155 script_test(f, REMOTE_URL, 'use-credentials', 'script', 'cors', 'include '); |
146 | 156 |
147 css_test(f, LOCAL_URL, '', 'no-cors', 'same-origin'); | 157 css_test(f, LOCAL_URL, '', 'style', 'no-cors', 'same-origin'); |
148 css_test(f, LOCAL_URL, 'anonymous', 'cors', 'omit'); | 158 css_test(f, LOCAL_URL, 'anonymous', 'style', 'cors', 'omit'); |
149 css_test(f, LOCAL_URL, 'use-credentials', 'cors', 'include'); | 159 css_test(f, LOCAL_URL, 'use-credentials', 'style', 'cors', 'include'); |
150 css_test(f, REMOTE_URL, '', 'no-cors', 'same-origin'); | 160 css_test(f, REMOTE_URL, '', 'style', 'no-cors', 'same-origin'); |
151 css_test(f, REMOTE_URL, 'anonymous', 'cors', 'omit'); | 161 css_test(f, REMOTE_URL, 'anonymous', 'style', 'cors', 'omit'); |
152 css_test(f, REMOTE_URL, 'use-credentials', 'cors', 'include'); | 162 css_test(f, REMOTE_URL, 'use-credentials', 'style', 'cors', 'include'); |
153 | 163 |
154 font_face_test(f, LOCAL_URL, 'no-cors', 'same-origin'); | 164 font_face_test(f, LOCAL_URL, 'font', 'no-cors', 'same-origin'); |
155 font_face_test(f, REMOTE_URL, 'cors', 'omit'); | 165 font_face_test(f, REMOTE_URL, 'font', 'cors', 'omit'); |
156 | 166 |
157 css_image_test(f, LOCAL_URL, 'backgroundImage', | 167 css_image_test(f, LOCAL_URL, 'backgroundImage', 'image', |
158 'no-cors', 'same-origin'); | 168 'no-cors', 'same-origin'); |
159 css_image_test(f, REMOTE_URL, 'backgroundImage', | 169 css_image_test(f, REMOTE_URL, 'backgroundImage', 'image', |
160 'no-cors', 'same-origin'); | 170 'no-cors', 'same-origin'); |
161 css_image_test(f, LOCAL_URL, 'shapeOutside', 'cors', 'omit'); | 171 css_image_test(f, LOCAL_URL, 'shapeOutside', 'image', 'cors', 'omit'); |
162 css_image_test(f, REMOTE_URL, 'shapeOutside', 'cors', 'omit'); | 172 css_image_test(f, REMOTE_URL, 'shapeOutside', 'image', 'cors', 'omit'); |
163 | 173 |
164 css_image_set_test(f, LOCAL_URL, 'backgroundImage', | 174 css_image_set_test(f, LOCAL_URL, 'backgroundImage', 'image', |
165 'no-cors', 'same-origin'); | 175 'no-cors', 'same-origin'); |
166 css_image_set_test(f, REMOTE_URL, 'backgroundImage', | 176 css_image_set_test(f, REMOTE_URL, 'backgroundImage', 'image', |
167 'no-cors', 'same-origin'); | 177 'no-cors', 'same-origin'); |
168 css_image_set_test(f, LOCAL_URL, 'shapeOutside', 'cors', 'omit'); | 178 css_image_set_test(f, LOCAL_URL, 'shapeOutside', 'image', 'cors', 'omit' ); |
169 css_image_set_test(f, REMOTE_URL, 'shapeOutside', 'cors', 'omit'); | 179 css_image_set_test(f, REMOTE_URL, 'shapeOutside', 'image', 'cors', 'omit '); |
170 | 180 |
171 }) | 181 }) |
172 .catch(unreached_rejection(t)); | 182 .catch(unreached_rejection(t)); |
173 }, 'Verify FetchEvent for resources.'); | 183 }, 'Verify FetchEvent for resources.'); |
174 </script> | 184 </script> |
OLD | NEW |