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

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

Issue 2856593002: Update a host_resolver()->AddRule in chrome/browser that I missed earlier. (Closed)
Patch Set: fix 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include <memory> 7 #include <memory>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 DISALLOW_COPY_AND_ASSIGN(NavigationCompletedObserver); 174 DISALLOW_COPY_AND_ASSIGN(NavigationCompletedObserver);
175 }; 175 };
176 176
177 // Exists as a browser test because ExtensionHosts are hard to create without 177 // Exists as a browser test because ExtensionHosts are hard to create without
178 // a real browser. 178 // a real browser.
179 class ProcessManagerBrowserTest : public ExtensionBrowserTest { 179 class ProcessManagerBrowserTest : public ExtensionBrowserTest {
180 public: 180 public:
181 ProcessManagerBrowserTest() { 181 ProcessManagerBrowserTest() {
182 guest_view::GuestViewManager::set_factory_for_testing(&factory_); 182 guest_view::GuestViewManager::set_factory_for_testing(&factory_);
183 } 183 }
184
185 void SetUpOnMainThread() override {
186 ExtensionBrowserTest::SetUpOnMainThread();
187 host_resolver()->AddRule("*", "127.0.0.1");
188 }
189
184 // Create an extension with web-accessible frames and an optional background 190 // Create an extension with web-accessible frames and an optional background
185 // page. 191 // page.
186 const Extension* CreateExtension(const std::string& name, 192 const Extension* CreateExtension(const std::string& name,
187 bool has_background_process) { 193 bool has_background_process) {
188 std::unique_ptr<TestExtensionDir> dir(new TestExtensionDir()); 194 std::unique_ptr<TestExtensionDir> dir(new TestExtensionDir());
189 195
190 DictionaryBuilder manifest; 196 DictionaryBuilder manifest;
191 manifest.Set("name", name) 197 manifest.Set("name", name)
192 .Set("version", "1") 198 .Set("version", "1")
193 .Set("manifest_version", 2) 199 .Set("manifest_version", 2)
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 423
418 // Load an extension with a background page. 424 // Load an extension with a background page.
419 scoped_refptr<const Extension> extension = 425 scoped_refptr<const Extension> extension =
420 LoadExtension(test_data_dir_.AppendASCII("api_test") 426 LoadExtension(test_data_dir_.AppendASCII("api_test")
421 .AppendASCII("browser_action") 427 .AppendASCII("browser_action")
422 .AppendASCII("none")); 428 .AppendASCII("none"));
423 429
424 // Set up a test server running at http://[extension-id] 430 // Set up a test server running at http://[extension-id]
425 ASSERT_TRUE(extension.get()); 431 ASSERT_TRUE(extension.get());
426 const std::string& aliased_host = extension->id(); 432 const std::string& aliased_host = extension->id();
427 host_resolver()->AddRule(aliased_host, "127.0.0.1");
428 ASSERT_TRUE(embedded_test_server()->Start()); 433 ASSERT_TRUE(embedded_test_server()->Start());
429 GURL url = 434 GURL url =
430 embedded_test_server()->GetURL("/extensions/test_file_with_body.html"); 435 embedded_test_server()->GetURL("/extensions/test_file_with_body.html");
431 GURL::Replacements replace_host; 436 GURL::Replacements replace_host;
432 replace_host.SetHostStr(aliased_host); 437 replace_host.SetHostStr(aliased_host);
433 url = url.ReplaceComponents(replace_host); 438 url = url.ReplaceComponents(replace_host);
434 439
435 // Load a page from the test host in a new tab. 440 // Load a page from the test host in a new tab.
436 ui_test_utils::NavigateToURLWithDisposition( 441 ui_test_utils::NavigateToURLWithDisposition(
437 browser(), url, WindowOpenDisposition::NEW_FOREGROUND_TAB, 442 browser(), url, WindowOpenDisposition::NEW_FOREGROUND_TAB,
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after
1222 1227
1223 // Test that when a web site has an extension iframe, navigating that iframe to 1228 // Test that when a web site has an extension iframe, navigating that iframe to
1224 // a different web site without --site-per-process will place it in the parent 1229 // a different web site without --site-per-process will place it in the parent
1225 // frame's process. See https://crbug.com/711006. 1230 // frame's process. See https://crbug.com/711006.
1226 IN_PROC_BROWSER_TEST_F(ProcessManagerBrowserTest, 1231 IN_PROC_BROWSER_TEST_F(ProcessManagerBrowserTest,
1227 ExtensionFrameNavigatesToParentSiteInstance) { 1232 ExtensionFrameNavigatesToParentSiteInstance) {
1228 // This test matters only *without* --site-per-process. 1233 // This test matters only *without* --site-per-process.
1229 if (content::AreAllSitesIsolatedForTesting()) 1234 if (content::AreAllSitesIsolatedForTesting())
1230 return; 1235 return;
1231 1236
1232 host_resolver()->AddRule("*", "127.0.0.1");
1233
1234 // Create a simple extension without a background page. 1237 // Create a simple extension without a background page.
1235 const Extension* extension = CreateExtension("Extension", false); 1238 const Extension* extension = CreateExtension("Extension", false);
1236 embedded_test_server()->ServeFilesFromDirectory(extension->path()); 1239 embedded_test_server()->ServeFilesFromDirectory(extension->path());
1237 ASSERT_TRUE(embedded_test_server()->Start()); 1240 ASSERT_TRUE(embedded_test_server()->Start());
1238 1241
1239 // Navigate main tab to a web page with a blank iframe. There should be no 1242 // Navigate main tab to a web page with a blank iframe. There should be no
1240 // extension frames yet. 1243 // extension frames yet.
1241 NavigateToURL(embedded_test_server()->GetURL("a.com", "/blank_iframe.html")); 1244 NavigateToURL(embedded_test_server()->GetURL("a.com", "/blank_iframe.html"));
1242 ProcessManager* pm = ProcessManager::Get(profile()); 1245 ProcessManager* pm = ProcessManager::Get(profile());
1243 EXPECT_EQ(0u, pm->GetAllFrames().size()); 1246 EXPECT_EQ(0u, pm->GetAllFrames().size());
(...skipping 21 matching lines...) Expand all
1265 GURL b_url(embedded_test_server()->GetURL("b.com", "/empty.html")); 1268 GURL b_url(embedded_test_server()->GetURL("b.com", "/empty.html"));
1266 EXPECT_TRUE(content::NavigateIframeToURL(tab, "frame0", b_url)); 1269 EXPECT_TRUE(content::NavigateIframeToURL(tab, "frame0", b_url));
1267 { 1270 {
1268 content::RenderFrameHost* subframe = ChildFrameAt(main_frame, 0); 1271 content::RenderFrameHost* subframe = ChildFrameAt(main_frame, 0);
1269 EXPECT_EQ(subframe->GetProcess(), main_frame->GetProcess()); 1272 EXPECT_EQ(subframe->GetProcess(), main_frame->GetProcess());
1270 EXPECT_EQ(subframe->GetSiteInstance(), main_frame->GetSiteInstance()); 1273 EXPECT_EQ(subframe->GetSiteInstance(), main_frame->GetSiteInstance());
1271 } 1274 }
1272 } 1275 }
1273 1276
1274 } // namespace extensions 1277 } // namespace extensions
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698