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

Side by Side Diff: chrome/browser/extensions/extension_resource_request_policy_apitest.cc

Issue 2847313002: Update some host_resolver()->AddRules in chrome/browser. (Closed)
Patch Set: Created 3 years, 7 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 // 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 "build/build_config.h" 7 #include "build/build_config.h"
8 #include "chrome/browser/extensions/extension_apitest.h" 8 #include "chrome/browser/extensions/extension_apitest.h"
9 #include "chrome/browser/ui/browser.h" 9 #include "chrome/browser/ui/browser.h"
10 #include "chrome/browser/ui/tabs/tab_strip_model.h" 10 #include "chrome/browser/ui/tabs/tab_strip_model.h"
(...skipping 11 matching lines...) Expand all
22 #include "net/test/embedded_test_server/embedded_test_server.h" 22 #include "net/test/embedded_test_server/embedded_test_server.h"
23 #include "url/gurl.h" 23 #include "url/gurl.h"
24 24
25 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest { 25 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest {
26 protected: 26 protected:
27 void SetUpCommandLine(base::CommandLine* command_line) override { 27 void SetUpCommandLine(base::CommandLine* command_line) override {
28 ExtensionApiTest::SetUpCommandLine(command_line); 28 ExtensionApiTest::SetUpCommandLine(command_line);
29 command_line->AppendSwitch( 29 command_line->AppendSwitch(
30 extensions::switches::kAllowLegacyExtensionManifests); 30 extensions::switches::kAllowLegacyExtensionManifests);
31 } 31 }
32
33 void SetUpOnMainThread() override {
34 ExtensionApiTest::SetUpOnMainThread();
35 host_resolver()->AddRule("*", "127.0.0.1");
36 ASSERT_TRUE(embedded_test_server()->Start());
37 }
32 }; 38 };
33 39
34 // Note, this mostly tests the logic of chrome/renderer/extensions/ 40 // Note, this mostly tests the logic of chrome/renderer/extensions/
35 // extension_resource_request_policy.*, but we have it as a browser test so that 41 // extension_resource_request_policy.*, but we have it as a browser test so that
36 // can make sure it works end-to-end. 42 // can make sure it works end-to-end.
37 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, OriginPrivileges) { 43 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, OriginPrivileges) {
38 host_resolver()->AddRule("*", "127.0.0.1");
39 ASSERT_TRUE(embedded_test_server()->Start());
40 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_ 44 ASSERT_TRUE(LoadExtensionWithFlags(test_data_dir_
41 .AppendASCII("extension_resource_request_policy") 45 .AppendASCII("extension_resource_request_policy")
42 .AppendASCII("extension"), 46 .AppendASCII("extension"),
43 // Tests manifest_version 1 behavior, so warnings are expected. 47 // Tests manifest_version 1 behavior, so warnings are expected.
44 ExtensionBrowserTest::kFlagIgnoreManifestWarnings)); 48 ExtensionBrowserTest::kFlagIgnoreManifestWarnings));
45 49
46 GURL web_resource(embedded_test_server()->GetURL( 50 GURL web_resource(embedded_test_server()->GetURL(
47 "/extensions/api_test/extension_resource_request_policy/" 51 "/extensions/api_test/extension_resource_request_policy/"
48 "index.html")); 52 "index.html"));
49 53
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 153
150 // This test times out regularly on win_rel trybots. See http://crbug.com/122154 154 // This test times out regularly on win_rel trybots. See http://crbug.com/122154
151 #if defined(OS_WIN) 155 #if defined(OS_WIN)
152 #define MAYBE_WebAccessibleResources DISABLED_WebAccessibleResources 156 #define MAYBE_WebAccessibleResources DISABLED_WebAccessibleResources
153 #else 157 #else
154 #define MAYBE_WebAccessibleResources WebAccessibleResources 158 #define MAYBE_WebAccessibleResources WebAccessibleResources
155 #endif 159 #endif
156 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 160 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
157 MAYBE_WebAccessibleResources) { 161 MAYBE_WebAccessibleResources) {
158 std::string result; 162 std::string result;
159 ASSERT_TRUE(embedded_test_server()->Start());
160 ASSERT_TRUE(LoadExtension(test_data_dir_ 163 ASSERT_TRUE(LoadExtension(test_data_dir_
161 .AppendASCII("extension_resource_request_policy") 164 .AppendASCII("extension_resource_request_policy")
162 .AppendASCII("web_accessible"))); 165 .AppendASCII("web_accessible")));
163 166
164 GURL accessible_resource(embedded_test_server()->GetURL( 167 GURL accessible_resource(embedded_test_server()->GetURL(
165 "/extensions/api_test/extension_resource_request_policy/" 168 "/extensions/api_test/extension_resource_request_policy/"
166 "web_accessible/accessible_resource.html")); 169 "web_accessible/accessible_resource.html"));
167 ui_test_utils::NavigateToURL(browser(), accessible_resource); 170 ui_test_utils::NavigateToURL(browser(), accessible_resource);
168 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 171 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
169 browser()->tab_strip_model()->GetActiveWebContents(), 172 browser()->tab_strip_model()->GetActiveWebContents(),
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 226 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
224 browser()->tab_strip_model()->GetActiveWebContents(), 227 browser()->tab_strip_model()->GetActiveWebContents(),
225 "window.domAutomationController.send(document.title)", 228 "window.domAutomationController.send(document.title)",
226 &result)); 229 &result));
227 EXPECT_EQ("New Tab Page Loaded Successfully", result); 230 EXPECT_EQ("New Tab Page Loaded Successfully", result);
228 } 231 }
229 232
230 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 233 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
231 LinkToWebAccessibleResources) { 234 LinkToWebAccessibleResources) {
232 std::string result; 235 std::string result;
233 ASSERT_TRUE(embedded_test_server()->Start());
234 const extensions::Extension* extension = LoadExtension( 236 const extensions::Extension* extension = LoadExtension(
235 test_data_dir_.AppendASCII("extension_resource_request_policy") 237 test_data_dir_.AppendASCII("extension_resource_request_policy")
236 .AppendASCII("web_accessible")); 238 .AppendASCII("web_accessible"));
237 ASSERT_TRUE(extension); 239 ASSERT_TRUE(extension);
238 240
239 GURL accessible_linked_resource(embedded_test_server()->GetURL( 241 GURL accessible_linked_resource(embedded_test_server()->GetURL(
240 "/extensions/api_test/extension_resource_request_policy/" 242 "/extensions/api_test/extension_resource_request_policy/"
241 "web_accessible/accessible_link_resource.html")); 243 "web_accessible/accessible_link_resource.html"));
242 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( 244 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
243 browser(), accessible_linked_resource, 1); 245 browser(), accessible_linked_resource, 1);
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
287 nonaccessible_observer.Wait(); 289 nonaccessible_observer.Wait();
288 EXPECT_EQ(GURL("about:blank"), browser() 290 EXPECT_EQ(GURL("about:blank"), browser()
289 ->tab_strip_model() 291 ->tab_strip_model()
290 ->GetActiveWebContents() 292 ->GetActiveWebContents()
291 ->GetLastCommittedURL()); 293 ->GetLastCommittedURL());
292 } 294 }
293 295
294 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 296 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
295 WebAccessibleResourcesWithCSP) { 297 WebAccessibleResourcesWithCSP) {
296 std::string result; 298 std::string result;
297 ASSERT_TRUE(embedded_test_server()->Start());
298 ASSERT_TRUE(LoadExtension(test_data_dir_ 299 ASSERT_TRUE(LoadExtension(test_data_dir_
299 .AppendASCII("extension_resource_request_policy") 300 .AppendASCII("extension_resource_request_policy")
300 .AppendASCII("web_accessible"))); 301 .AppendASCII("web_accessible")));
301 302
302 GURL accessible_resource_with_csp(embedded_test_server()->GetURL( 303 GURL accessible_resource_with_csp(embedded_test_server()->GetURL(
303 "/extensions/api_test/extension_resource_request_policy/" 304 "/extensions/api_test/extension_resource_request_policy/"
304 "web_accessible/accessible_resource_with_csp.html")); 305 "web_accessible/accessible_resource_with_csp.html"));
305 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp); 306 ui_test_utils::NavigateToURL(browser(), accessible_resource_with_csp);
306 ASSERT_TRUE(content::ExecuteScriptAndExtractString( 307 ASSERT_TRUE(content::ExecuteScriptAndExtractString(
307 browser()->tab_strip_model()->GetActiveWebContents(), 308 browser()->tab_strip_model()->GetActiveWebContents(),
308 "window.domAutomationController.send(document.title)", 309 "window.domAutomationController.send(document.title)",
309 &result)); 310 &result));
310 EXPECT_EQ("Loaded", result); 311 EXPECT_EQ("Loaded", result);
311 } 312 }
312 313
313 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) { 314 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) {
314 // Load another extension, which the test one shouldn't be able to get 315 // Load another extension, which the test one shouldn't be able to get
315 // resources from. 316 // resources from.
316 ASSERT_TRUE(LoadExtension(test_data_dir_ 317 ASSERT_TRUE(LoadExtension(test_data_dir_
317 .AppendASCII("extension_resource_request_policy") 318 .AppendASCII("extension_resource_request_policy")
318 .AppendASCII("inaccessible"))); 319 .AppendASCII("inaccessible")));
319 EXPECT_TRUE(RunExtensionSubtest( 320 EXPECT_TRUE(RunExtensionSubtest(
320 "extension_resource_request_policy/web_accessible", 321 "extension_resource_request_policy/web_accessible",
321 "iframe.html")) << message_; 322 "iframe.html")) << message_;
322 } 323 }
323 324
324 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 325 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
325 IframeNavigateToInaccessible) { 326 IframeNavigateToInaccessible) {
326 ASSERT_TRUE(embedded_test_server()->Start());
327 ASSERT_TRUE(LoadExtension( 327 ASSERT_TRUE(LoadExtension(
328 test_data_dir_.AppendASCII("extension_resource_request_policy") 328 test_data_dir_.AppendASCII("extension_resource_request_policy")
329 .AppendASCII("some_accessible"))); 329 .AppendASCII("some_accessible")));
330 330
331 GURL iframe_navigate_url(embedded_test_server()->GetURL( 331 GURL iframe_navigate_url(embedded_test_server()->GetURL(
332 "/extensions/api_test/extension_resource_request_policy/" 332 "/extensions/api_test/extension_resource_request_policy/"
333 "iframe_navigate.html")); 333 "iframe_navigate.html"));
334 334
335 ui_test_utils::NavigateToURL(browser(), iframe_navigate_url); 335 ui_test_utils::NavigateToURL(browser(), iframe_navigate_url);
336 336
(...skipping 13 matching lines...) Expand all
350 // The iframe should not load |private_page|, which is not web-accessible. 350 // The iframe should not load |private_page|, which is not web-accessible.
351 // 351 //
352 // TODO(alexmos): The failure mode differs on whether or not 352 // TODO(alexmos): The failure mode differs on whether or not
353 // --isolate-extensions is used: if it is on, the request is canceled and we 353 // --isolate-extensions is used: if it is on, the request is canceled and we
354 // stay on public.html (see https://crbug.com/656752), and if it's off, the 354 // stay on public.html (see https://crbug.com/656752), and if it's off, the
355 // request is blocked in ExtensionNavigationThrottle, which loads an error 355 // request is blocked in ExtensionNavigationThrottle, which loads an error
356 // page into the iframe. This check handles both cases, but we should make 356 // page into the iframe. This check handles both cases, but we should make
357 // the check stricter once --isolate-extensions is on by default. 357 // the check stricter once --isolate-extensions is on by default.
358 EXPECT_NE("Private", content); 358 EXPECT_NE("Private", content);
359 } 359 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_override_apitest.cc ('k') | chrome/browser/extensions/extension_tabs_apitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698