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

Side by Side Diff: content/browser/frame_host/render_frame_host_manager_browsertest.cc

Issue 1208143002: Move existing kSitePerProcess checks to a policy-oracle object (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@swapped_out_cmdline_checks
Patch Set: Attempt to fix compile. Created 5 years, 4 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 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 <set> 5 #include <set>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/json/json_reader.h" 8 #include "base/json/json_reader.h"
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 Shell* new_shell = new_shell_observer.GetShell(); 321 Shell* new_shell = new_shell_observer.GetShell();
322 322
323 // Wait for the cross-site transition in the new tab to finish. 323 // Wait for the cross-site transition in the new tab to finish.
324 EXPECT_TRUE(WaitForLoadStop(new_shell->web_contents())); 324 EXPECT_TRUE(WaitForLoadStop(new_shell->web_contents()));
325 EXPECT_EQ("/files/title2.html", 325 EXPECT_EQ("/files/title2.html",
326 new_shell->web_contents()->GetLastCommittedURL().path()); 326 new_shell->web_contents()->GetLastCommittedURL().path());
327 327
328 // Should have the same SiteInstance unless we're in site-per-process mode. 328 // Should have the same SiteInstance unless we're in site-per-process mode.
329 scoped_refptr<SiteInstance> blank_site_instance( 329 scoped_refptr<SiteInstance> blank_site_instance(
330 new_shell->web_contents()->GetSiteInstance()); 330 new_shell->web_contents()->GetSiteInstance());
331 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( 331 if (AreAllSitesIsolatedForTesting())
332 switches::kSitePerProcess)) 332 EXPECT_NE(orig_site_instance, blank_site_instance);
333 else
333 EXPECT_EQ(orig_site_instance, blank_site_instance); 334 EXPECT_EQ(orig_site_instance, blank_site_instance);
334 else
335 EXPECT_NE(orig_site_instance, blank_site_instance);
336 } 335 }
337 336
338 // Test for crbug.com/24447. Following a cross-site link with rel=noreferrer 337 // Test for crbug.com/24447. Following a cross-site link with rel=noreferrer
339 // and no target=_blank should not create a new SiteInstance. 338 // and no target=_blank should not create a new SiteInstance.
340 IN_PROC_BROWSER_TEST_F(RenderFrameHostManagerTest, 339 IN_PROC_BROWSER_TEST_F(RenderFrameHostManagerTest,
341 DontSwapProcessWithOnlyRelNoreferrer) { 340 DontSwapProcessWithOnlyRelNoreferrer) {
342 StartServer(); 341 StartServer();
343 342
344 // Load a page with links that open in a new window. 343 // Load a page with links that open in a new window.
345 std::string replacement_path; 344 std::string replacement_path;
(...skipping 20 matching lines...) Expand all
366 WaitForLoadStop(shell()->web_contents()); 365 WaitForLoadStop(shell()->web_contents());
367 366
368 // Opens in same window. 367 // Opens in same window.
369 EXPECT_EQ(1u, Shell::windows().size()); 368 EXPECT_EQ(1u, Shell::windows().size());
370 EXPECT_EQ("/files/title2.html", 369 EXPECT_EQ("/files/title2.html",
371 shell()->web_contents()->GetLastCommittedURL().path()); 370 shell()->web_contents()->GetLastCommittedURL().path());
372 371
373 // Should have the same SiteInstance unless we're in site-per-process mode. 372 // Should have the same SiteInstance unless we're in site-per-process mode.
374 scoped_refptr<SiteInstance> noref_site_instance( 373 scoped_refptr<SiteInstance> noref_site_instance(
375 shell()->web_contents()->GetSiteInstance()); 374 shell()->web_contents()->GetSiteInstance());
376 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( 375 if (AreAllSitesIsolatedForTesting())
377 switches::kSitePerProcess)) 376 EXPECT_NE(orig_site_instance, noref_site_instance);
377 else
378 EXPECT_EQ(orig_site_instance, noref_site_instance); 378 EXPECT_EQ(orig_site_instance, noref_site_instance);
379 else
380 EXPECT_NE(orig_site_instance, noref_site_instance);
381 } 379 }
382 380
383 // Test for crbug.com/116192. Targeted links should still work after the 381 // Test for crbug.com/116192. Targeted links should still work after the
384 // named target window has swapped processes. 382 // named target window has swapped processes.
385 IN_PROC_BROWSER_TEST_F(RenderFrameHostManagerTest, 383 IN_PROC_BROWSER_TEST_F(RenderFrameHostManagerTest,
386 AllowTargetedNavigationsAfterSwap) { 384 AllowTargetedNavigationsAfterSwap) {
387 StartServer(); 385 StartServer();
388 386
389 // Load a page with links that open in a new window. 387 // Load a page with links that open in a new window.
390 std::string replacement_path; 388 std::string replacement_path;
(...skipping 1540 matching lines...) Expand 10 before | Expand all | Expand 10 after
1931 EXPECT_FALSE(opener_rfph->is_render_frame_proxy_live()); 1929 EXPECT_FALSE(opener_rfph->is_render_frame_proxy_live());
1932 1930
1933 // Re-navigate the popup to the same URL and check that this recreates the 1931 // Re-navigate the popup to the same URL and check that this recreates the
1934 // opener's swapped out RVH and proxy in the foo.com SiteInstance. 1932 // opener's swapped out RVH and proxy in the foo.com SiteInstance.
1935 EXPECT_TRUE(NavigateToURL(new_shell, cross_site_url)); 1933 EXPECT_TRUE(NavigateToURL(new_shell, cross_site_url));
1936 EXPECT_TRUE(opener_rvh->IsRenderViewLive()); 1934 EXPECT_TRUE(opener_rvh->IsRenderViewLive());
1937 EXPECT_TRUE(opener_rfph->is_render_frame_proxy_live()); 1935 EXPECT_TRUE(opener_rfph->is_render_frame_proxy_live());
1938 } 1936 }
1939 1937
1940 } // namespace content 1938 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698