OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/logging.h" | 6 #include "base/logging.h" |
7 #include "chrome/browser/extensions/extension_apitest.h" | 7 #include "chrome/browser/extensions/extension_apitest.h" |
8 #include "chrome/browser/ui/browser.h" | 8 #include "chrome/browser/ui/browser.h" |
9 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 9 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
10 #include "chrome/test/base/test_switches.h" | 10 #include "chrome/test/base/test_switches.h" |
11 #include "chrome/test/base/ui_test_utils.h" | 11 #include "chrome/test/base/ui_test_utils.h" |
12 #include "content/public/browser/web_contents.h" | 12 #include "content/public/browser/web_contents.h" |
13 #include "content/public/test/browser_test_utils.h" | 13 #include "content/public/test/browser_test_utils.h" |
14 #include "extensions/common/switches.h" | 14 #include "extensions/common/switches.h" |
15 #include "net/dns/mock_host_resolver.h" | 15 #include "net/dns/mock_host_resolver.h" |
| 16 #include "net/test/embedded_test_server/embedded_test_server.h" |
16 #include "url/gurl.h" | 17 #include "url/gurl.h" |
17 | 18 |
18 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest { | 19 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest { |
19 protected: | 20 protected: |
20 void SetUpCommandLine(base::CommandLine* command_line) override { | 21 void SetUpCommandLine(base::CommandLine* command_line) override { |
21 ExtensionApiTest::SetUpCommandLine(command_line); | 22 ExtensionApiTest::SetUpCommandLine(command_line); |
22 command_line->AppendSwitch( | 23 command_line->AppendSwitch( |
23 extensions::switches::kAllowLegacyExtensionManifests); | 24 extensions::switches::kAllowLegacyExtensionManifests); |
24 } | 25 } |
25 }; | 26 }; |
26 | 27 |
27 // Note, this mostly tests the logic of chrome/renderer/extensions/ | 28 // Note, this mostly tests the logic of chrome/renderer/extensions/ |
28 // extension_resource_request_policy.*, but we have it as a browser test so that | 29 // extension_resource_request_policy.*, but we have it as a browser test so that |
29 // can make sure it works end-to-end. | 30 // can make sure it works end-to-end. |
30 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, OriginPrivileges) { | 31 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, OriginPrivileges) { |
31 #if defined(OS_WIN) && defined(USE_ASH) | 32 #if defined(OS_WIN) && defined(USE_ASH) |
32 // Disable this test in Metro+Ash for now (http://crbug.com/262796). | 33 // Disable this test in Metro+Ash for now (http://crbug.com/262796). |
33 if (base::CommandLine::ForCurrentProcess()->HasSwitch( | 34 if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
34 switches::kAshBrowserTests)) | 35 switches::kAshBrowserTests)) |
35 return; | 36 return; |
36 #endif | 37 #endif |
37 | 38 |
38 host_resolver()->AddRule("*", "127.0.0.1"); | 39 host_resolver()->AddRule("*", "127.0.0.1"); |
39 ASSERT_TRUE(test_server()->Start()); | 40 ASSERT_TRUE(embedded_test_server()->Start()); |
40 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_ | 41 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_ |
41 .AppendASCII("extension_resource_request_policy") | 42 .AppendASCII("extension_resource_request_policy") |
42 .AppendASCII("extension"), | 43 .AppendASCII("extension"), |
43 // Tests manifest_version 1 behavior, so warnings are expected. | 44 // Tests manifest_version 1 behavior, so warnings are expected. |
44 ExtensionBrowserTest::kFlagIgnoreManifestWarnings)); | 45 ExtensionBrowserTest::kFlagIgnoreManifestWarnings)); |
45 | 46 |
46 GURL web_resource( | 47 GURL web_resource(embedded_test_server()->GetURL( |
47 test_server()->GetURL( | 48 "/extensions/api_test/extension_resource_request_policy/" |
48 "files/extensions/api_test/extension_resource_request_policy/" | 49 "index.html")); |
49 "index.html")); | |
50 | 50 |
51 GURL::Replacements make_host_a_com; | 51 GURL::Replacements make_host_a_com; |
52 make_host_a_com.SetHostStr("a.com"); | 52 make_host_a_com.SetHostStr("a.com"); |
53 | 53 |
54 GURL::Replacements make_host_b_com; | 54 GURL::Replacements make_host_b_com; |
55 make_host_b_com.SetHostStr("b.com"); | 55 make_host_b_com.SetHostStr("b.com"); |
56 | 56 |
57 // A web host that has permission. | 57 // A web host that has permission. |
58 ui_test_utils::NavigateToURL( | 58 ui_test_utils::NavigateToURL( |
59 browser(), web_resource.ReplaceComponents(make_host_a_com)); | 59 browser(), web_resource.ReplaceComponents(make_host_a_com)); |
60 std::string result; | 60 std::string result; |
61 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 61 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
62 browser()->tab_strip_model()->GetActiveWebContents(), | 62 browser()->tab_strip_model()->GetActiveWebContents(), |
63 "window.domAutomationController.send(document.title)", | 63 "window.domAutomationController.send(document.title)", |
64 &result)); | 64 &result)); |
65 EXPECT_EQ(result, "Loaded"); | 65 EXPECT_EQ(result, "Loaded"); |
66 | 66 |
67 // A web host that loads a non-existent extension. | 67 // A web host that loads a non-existent extension. |
68 GURL non_existent_extension( | 68 GURL non_existent_extension(embedded_test_server()->GetURL( |
69 test_server()->GetURL( | 69 "/extensions/api_test/extension_resource_request_policy/" |
70 "files/extensions/api_test/extension_resource_request_policy/" | 70 "non_existent_extension.html")); |
71 "non_existent_extension.html")); | |
72 ui_test_utils::NavigateToURL(browser(), non_existent_extension); | 71 ui_test_utils::NavigateToURL(browser(), non_existent_extension); |
73 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 72 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
74 browser()->tab_strip_model()->GetActiveWebContents(), | 73 browser()->tab_strip_model()->GetActiveWebContents(), |
75 "window.domAutomationController.send(document.title)", | 74 "window.domAutomationController.send(document.title)", |
76 &result)); | 75 &result)); |
77 EXPECT_EQ(result, "Image failed to load"); | 76 EXPECT_EQ(result, "Image failed to load"); |
78 | 77 |
79 // A data URL. Data URLs should always be able to load chrome-extension:// | 78 // A data URL. Data URLs should always be able to load chrome-extension:// |
80 // resources. | 79 // resources. |
81 std::string file_source; | 80 std::string file_source; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 | 146 |
148 // This test times out regularly on win_rel trybots. See http://crbug.com/122154 | 147 // This test times out regularly on win_rel trybots. See http://crbug.com/122154 |
149 #if defined(OS_WIN) | 148 #if defined(OS_WIN) |
150 #define MAYBE_WebAccessibleResources DISABLED_WebAccessibleResources | 149 #define MAYBE_WebAccessibleResources DISABLED_WebAccessibleResources |
151 #else | 150 #else |
152 #define MAYBE_WebAccessibleResources WebAccessibleResources | 151 #define MAYBE_WebAccessibleResources WebAccessibleResources |
153 #endif | 152 #endif |
154 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, | 153 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, |
155 MAYBE_WebAccessibleResources) { | 154 MAYBE_WebAccessibleResources) { |
156 std::string result; | 155 std::string result; |
157 ASSERT_TRUE(test_server()->Start()); | 156 ASSERT_TRUE(embedded_test_server()->Start()); |
158 ASSERT_TRUE(LoadExtension(test_data_dir_ | 157 ASSERT_TRUE(LoadExtension(test_data_dir_ |
159 .AppendASCII("extension_resource_request_policy") | 158 .AppendASCII("extension_resource_request_policy") |
160 .AppendASCII("web_accessible"))); | 159 .AppendASCII("web_accessible"))); |
161 | 160 |
162 GURL accessible_resource( | 161 GURL accessible_resource(embedded_test_server()->GetURL( |
163 test_server()->GetURL( | 162 "/extensions/api_test/extension_resource_request_policy/" |
164 "files/extensions/api_test/extension_resource_request_policy/" | 163 "web_accessible/accessible_resource.html")); |
165 "web_accessible/accessible_resource.html")); | |
166 ui_test_utils::NavigateToURL(browser(), accessible_resource); | 164 ui_test_utils::NavigateToURL(browser(), accessible_resource); |
167 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 165 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
168 browser()->tab_strip_model()->GetActiveWebContents(), | 166 browser()->tab_strip_model()->GetActiveWebContents(), |
169 "window.domAutomationController.send(document.title)", | 167 "window.domAutomationController.send(document.title)", |
170 &result)); | 168 &result)); |
171 EXPECT_EQ("Loaded", result); | 169 EXPECT_EQ("Loaded", result); |
172 | 170 |
173 GURL xhr_accessible_resource( | 171 GURL xhr_accessible_resource(embedded_test_server()->GetURL( |
174 test_server()->GetURL( | 172 "/extensions/api_test/extension_resource_request_policy/" |
175 "files/extensions/api_test/extension_resource_request_policy/" | 173 "web_accessible/xhr_accessible_resource.html")); |
176 "web_accessible/xhr_accessible_resource.html")); | |
177 ui_test_utils::NavigateToURL( | 174 ui_test_utils::NavigateToURL( |
178 browser(), xhr_accessible_resource); | 175 browser(), xhr_accessible_resource); |
179 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 176 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
180 browser()->tab_strip_model()->GetActiveWebContents(), | 177 browser()->tab_strip_model()->GetActiveWebContents(), |
181 "window.domAutomationController.send(document.title)", | 178 "window.domAutomationController.send(document.title)", |
182 &result)); | 179 &result)); |
183 EXPECT_EQ("XHR completed with status: 200", result); | 180 EXPECT_EQ("XHR completed with status: 200", result); |
184 | 181 |
185 GURL xhr_inaccessible_resource( | 182 GURL xhr_inaccessible_resource(embedded_test_server()->GetURL( |
186 test_server()->GetURL( | 183 "/extensions/api_test/extension_resource_request_policy/" |
187 "files/extensions/api_test/extension_resource_request_policy/" | 184 "web_accessible/xhr_inaccessible_resource.html")); |
188 "web_accessible/xhr_inaccessible_resource.html")); | |
189 ui_test_utils::NavigateToURL( | 185 ui_test_utils::NavigateToURL( |
190 browser(), xhr_inaccessible_resource); | 186 browser(), xhr_inaccessible_resource); |
191 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 187 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
192 browser()->tab_strip_model()->GetActiveWebContents(), | 188 browser()->tab_strip_model()->GetActiveWebContents(), |
193 "window.domAutomationController.send(document.title)", | 189 "window.domAutomationController.send(document.title)", |
194 &result)); | 190 &result)); |
195 EXPECT_EQ("XHR failed to load resource", result); | 191 EXPECT_EQ("XHR failed to load resource", result); |
196 | 192 |
197 GURL nonaccessible_resource( | 193 GURL nonaccessible_resource(embedded_test_server()->GetURL( |
198 test_server()->GetURL( | 194 "/extensions/api_test/extension_resource_request_policy/" |
199 "files/extensions/api_test/extension_resource_request_policy/" | 195 "web_accessible/nonaccessible_resource.html")); |
200 "web_accessible/nonaccessible_resource.html")); | |
201 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource); | 196 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource); |
202 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 197 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
203 browser()->tab_strip_model()->GetActiveWebContents(), | 198 browser()->tab_strip_model()->GetActiveWebContents(), |
204 "window.domAutomationController.send(document.title)", | 199 "window.domAutomationController.send(document.title)", |
205 &result)); | 200 &result)); |
206 EXPECT_EQ("Image failed to load", result); | 201 EXPECT_EQ("Image failed to load", result); |
207 | 202 |
208 GURL nonexistent_resource( | 203 GURL nonexistent_resource(embedded_test_server()->GetURL( |
209 test_server()->GetURL( | 204 "/extensions/api_test/extension_resource_request_policy/" |
210 "files/extensions/api_test/extension_resource_request_policy/" | 205 "web_accessible/nonexistent_resource.html")); |
211 "web_accessible/nonexistent_resource.html")); | |
212 ui_test_utils::NavigateToURL(browser(), nonexistent_resource); | 206 ui_test_utils::NavigateToURL(browser(), nonexistent_resource); |
213 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 207 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
214 browser()->tab_strip_model()->GetActiveWebContents(), | 208 browser()->tab_strip_model()->GetActiveWebContents(), |
215 "window.domAutomationController.send(document.title)", | 209 "window.domAutomationController.send(document.title)", |
216 &result)); | 210 &result)); |
217 EXPECT_EQ("Image failed to load", result); | 211 EXPECT_EQ("Image failed to load", result); |
218 | 212 |
219 GURL nonaccessible_cer_resource( | 213 GURL nonaccessible_cer_resource(embedded_test_server()->GetURL( |
220 test_server()->GetURL( | 214 "/extensions/api_test/extension_resource_request_policy/" |
221 "files/extensions/api_test/extension_resource_request_policy/" | 215 "web_accessible/nonaccessible_chrome_resource_scheme.html")); |
222 "web_accessible/nonaccessible_chrome_resource_scheme.html")); | |
223 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource); | 216 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource); |
224 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 217 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
225 browser()->tab_strip_model()->GetActiveWebContents(), | 218 browser()->tab_strip_model()->GetActiveWebContents(), |
226 "window.domAutomationController.send(document.title)", | 219 "window.domAutomationController.send(document.title)", |
227 &result)); | 220 &result)); |
228 EXPECT_EQ("Loading CER:// failed.", result); | 221 EXPECT_EQ("Loading CER:// failed.", result); |
229 | 222 |
230 GURL newtab_page("chrome://newtab"); | 223 GURL newtab_page("chrome://newtab"); |
231 GURL accessible_newtab_override( | 224 GURL accessible_newtab_override(embedded_test_server()->GetURL( |
232 test_server()->GetURL( | 225 "/extensions/api_test/extension_resource_request_policy/" |
233 "files/extensions/api_test/extension_resource_request_policy/" | 226 "web_accessible/accessible_history_navigation.html")); |
234 "web_accessible/accessible_history_navigation.html")); | |
235 ui_test_utils::NavigateToURL(browser(), newtab_page); | 227 ui_test_utils::NavigateToURL(browser(), newtab_page); |
236 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( | 228 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( |
237 browser(), accessible_newtab_override, 2); | 229 browser(), accessible_newtab_override, 2); |
238 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 230 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
239 browser()->tab_strip_model()->GetActiveWebContents(), | 231 browser()->tab_strip_model()->GetActiveWebContents(), |
240 "window.domAutomationController.send(document.title)", | 232 "window.domAutomationController.send(document.title)", |
241 &result)); | 233 &result)); |
242 EXPECT_EQ("New Tab Page Loaded Successfully", result); | 234 EXPECT_EQ("New Tab Page Loaded Successfully", result); |
243 } | 235 } |
244 | 236 |
245 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, | 237 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, |
246 LinkToWebAccessibleResources) { | 238 LinkToWebAccessibleResources) { |
247 std::string result; | 239 std::string result; |
248 ASSERT_TRUE(test_server()->Start()); | 240 ASSERT_TRUE(embedded_test_server()->Start()); |
249 ASSERT_TRUE(LoadExtension(test_data_dir_ | 241 ASSERT_TRUE(LoadExtension(test_data_dir_ |
250 .AppendASCII("extension_resource_request_policy") | 242 .AppendASCII("extension_resource_request_policy") |
251 .AppendASCII("web_accessible"))); | 243 .AppendASCII("web_accessible"))); |
252 | 244 |
253 GURL accessible_linked_resource( | 245 GURL accessible_linked_resource(embedded_test_server()->GetURL( |
254 test_server()->GetURL( | 246 "/extensions/api_test/extension_resource_request_policy/" |
255 "files/extensions/api_test/extension_resource_request_policy/" | 247 "web_accessible/accessible_link_resource.html")); |
256 "web_accessible/accessible_link_resource.html")); | |
257 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), | 248 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), |
258 accessible_linked_resource, 2); | 249 accessible_linked_resource, 2); |
259 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 250 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
260 browser()->tab_strip_model()->GetActiveWebContents(), | 251 browser()->tab_strip_model()->GetActiveWebContents(), |
261 "window.domAutomationController.send(document.URL)", | 252 "window.domAutomationController.send(document.URL)", |
262 &result)); | 253 &result)); |
263 EXPECT_NE("about:blank", result); | 254 EXPECT_NE("about:blank", result); |
264 | 255 |
265 GURL nonaccessible_linked_resource( | 256 GURL nonaccessible_linked_resource(embedded_test_server()->GetURL( |
266 test_server()->GetURL( | 257 "/extensions/api_test/extension_resource_request_policy/" |
267 "files/extensions/api_test/extension_resource_request_policy/" | 258 "web_accessible/nonaccessible_link_resource.html")); |
268 "web_accessible/nonaccessible_link_resource.html")); | |
269 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), | 259 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), |
270 nonaccessible_linked_resource, 2); | 260 nonaccessible_linked_resource, 2); |
271 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 261 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
272 browser()->tab_strip_model()->GetActiveWebContents(), | 262 browser()->tab_strip_model()->GetActiveWebContents(), |
273 "window.domAutomationController.send(document.URL)", | 263 "window.domAutomationController.send(document.URL)", |
274 &result)); | 264 &result)); |
275 EXPECT_EQ("about:blank", result); | 265 EXPECT_EQ("about:blank", result); |
276 | 266 |
277 GURL accessible_client_redirect_resource( | 267 GURL accessible_client_redirect_resource(embedded_test_server()->GetURL( |
278 test_server()->GetURL( | 268 "/extensions/api_test/extension_resource_request_policy/" |
279 "files/extensions/api_test/extension_resource_request_policy/" | 269 "web_accessible/accessible_redirect_resource.html")); |
280 "web_accessible/accessible_redirect_resource.html")); | |
281 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), | 270 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), |
282 accessible_client_redirect_resource, 2); | 271 accessible_client_redirect_resource, 2); |
283 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 272 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
284 browser()->tab_strip_model()->GetActiveWebContents(), | 273 browser()->tab_strip_model()->GetActiveWebContents(), |
285 "window.domAutomationController.send(document.URL)", | 274 "window.domAutomationController.send(document.URL)", |
286 &result)); | 275 &result)); |
287 EXPECT_NE("about:blank", result); | 276 EXPECT_NE("about:blank", result); |
288 | 277 |
289 GURL nonaccessible_client_redirect_resource( | 278 GURL nonaccessible_client_redirect_resource(embedded_test_server()->GetURL( |
290 test_server()->GetURL( | 279 "/extensions/api_test/extension_resource_request_policy/" |
291 "files/extensions/api_test/extension_resource_request_policy/" | 280 "web_accessible/nonaccessible_redirect_resource.html")); |
292 "web_accessible/nonaccessible_redirect_resource.html")); | |
293 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), | 281 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(browser(), |
294 nonaccessible_client_redirect_resource, 2); | 282 nonaccessible_client_redirect_resource, 2); |
295 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 283 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
296 browser()->tab_strip_model()->GetActiveWebContents(), | 284 browser()->tab_strip_model()->GetActiveWebContents(), |
297 "window.domAutomationController.send(document.URL)", | 285 "window.domAutomationController.send(document.URL)", |
298 &result)); | 286 &result)); |
299 EXPECT_EQ("about:blank", result); | 287 EXPECT_EQ("about:blank", result); |
300 } | 288 } |
301 | 289 |
302 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, | 290 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, |
303 WebAccessibleResourcesWithCSP) { | 291 WebAccessibleResourcesWithCSP) { |
304 std::string result; | 292 std::string result; |
305 ASSERT_TRUE(test_server()->Start()); | 293 ASSERT_TRUE(embedded_test_server()->Start()); |
306 ASSERT_TRUE(LoadExtension(test_data_dir_ | 294 ASSERT_TRUE(LoadExtension(test_data_dir_ |
307 .AppendASCII("extension_resource_request_policy") | 295 .AppendASCII("extension_resource_request_policy") |
308 .AppendASCII("web_accessible"))); | 296 .AppendASCII("web_accessible"))); |
309 | 297 |
310 GURL accessible_resource_with_csp( | 298 GURL accessible_resource_with_csp(embedded_test_server()->GetURL( |
311 test_server()->GetURL( | 299 "/extensions/api_test/extension_resource_request_policy/" |
312 "files/extensions/api_test/extension_resource_request_policy/" | 300 "web_accessible/accessible_resource_with_csp.html")); |
313 "web_accessible/accessible_resource_with_csp.html")); | |
314 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp); | 301 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp); |
315 ASSERT_TRUE(content::ExecuteScriptAndExtractString( | 302 ASSERT_TRUE(content::ExecuteScriptAndExtractString( |
316 browser()->tab_strip_model()->GetActiveWebContents(), | 303 browser()->tab_strip_model()->GetActiveWebContents(), |
317 "window.domAutomationController.send(document.title)", | 304 "window.domAutomationController.send(document.title)", |
318 &result)); | 305 &result)); |
319 EXPECT_EQ("Loaded", result); | 306 EXPECT_EQ("Loaded", result); |
320 } | 307 } |
321 | 308 |
322 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) { | 309 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) { |
323 // Load another extension, which the test one shouldn't be able to get | 310 // Load another extension, which the test one shouldn't be able to get |
324 // resources from. | 311 // resources from. |
325 ASSERT_TRUE(LoadExtension(test_data_dir_ | 312 ASSERT_TRUE(LoadExtension(test_data_dir_ |
326 .AppendASCII("extension_resource_request_policy") | 313 .AppendASCII("extension_resource_request_policy") |
327 .AppendASCII("inaccessible"))); | 314 .AppendASCII("inaccessible"))); |
328 EXPECT_TRUE(RunExtensionSubtest( | 315 EXPECT_TRUE(RunExtensionSubtest( |
329 "extension_resource_request_policy/web_accessible", | 316 "extension_resource_request_policy/web_accessible", |
330 "iframe.html")) << message_; | 317 "iframe.html")) << message_; |
331 } | 318 } |
332 | 319 |
333 #if defined(OS_MACOSX) | 320 #if defined(OS_MACOSX) |
334 #define MAYBE_ExtensionAccessibleResources DISABLED_ExtensionAccessibleResources | 321 #define MAYBE_ExtensionAccessibleResources DISABLED_ExtensionAccessibleResources |
335 #else | 322 #else |
336 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources | 323 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources |
337 #endif | 324 #endif |
338 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, | 325 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, |
339 MAYBE_ExtensionAccessibleResources) { | 326 MAYBE_ExtensionAccessibleResources) { |
340 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_; | 327 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_; |
341 } | 328 } |
OLD | NEW |