Chromium Code Reviews| Index: content/browser/renderer_host/render_view_host_browsertest.cc |
| diff --git a/content/browser/renderer_host/render_view_host_browsertest.cc b/content/browser/renderer_host/render_view_host_browsertest.cc |
| index 8fb43e567f2c64aa9fa75551f066b8d740af9415..974dd99b73a57453b9499c8d69f8abe70e32ba76 100644 |
| --- a/content/browser/renderer_host/render_view_host_browsertest.cc |
| +++ b/content/browser/renderer_host/render_view_host_browsertest.cc |
| @@ -92,4 +92,35 @@ IN_PROC_BROWSER_TEST_F(RenderViewHostTest, BaseURLParam) { |
| EXPECT_EQ("http://www.google.com/", observer.base_url().spec()); |
| } |
| +// This test ensures a RenderFrameHost object is created for the top level frame |
| +// in each RenderViewHost. |
| +IN_PROC_BROWSER_TEST_F(RenderViewHostTest, BasicRenderFrameHost) { |
| + ASSERT_TRUE(embedded_test_server()->InitializeAndWaitUntilReady()); |
| + |
| + GURL test_url = embedded_test_server()->GetURL("/simple_page.html"); |
| + NavigateToURL(shell(), test_url); |
| + |
| + RenderViewHostImpl* rvh = static_cast<RenderViewHostImpl*>( |
| + shell()->web_contents()->GetRenderViewHost()); |
| + EXPECT_TRUE(rvh->main_render_frame_host_.get()); |
| + |
| + // Since we allocate the routing ids for the RenderViewHost and the top-level |
| + // RenderFrameHost together, we expect them to be sequential. This will not |
| + // be true for subframes or if we change how routing ids are allocated. |
| + EXPECT_EQ(rvh->GetRoutingID() + 1, |
|
jam
2013/05/31 17:40:04
nit: ditto from my comment about the other test.
nasko
2013/05/31 17:58:30
See the other test comment.
|
| + rvh->main_render_frame_host_->routing_id()); |
| + |
| + ShellAddedObserver new_shell_observer; |
| + EXPECT_TRUE(ExecuteScript(shell()->web_contents(), "window.open();")); |
| + Shell* new_shell = new_shell_observer.GetShell(); |
| + RenderViewHostImpl* new_rvh = static_cast<RenderViewHostImpl*>( |
| + new_shell->web_contents()->GetRenderViewHost()); |
| + |
| + EXPECT_TRUE(new_rvh->main_render_frame_host_.get()); |
| + EXPECT_EQ(new_rvh->GetRoutingID() + 1, |
| + new_rvh->main_render_frame_host_->routing_id()); |
|
jam
2013/05/31 17:40:04
ditto
nasko
2013/05/31 17:58:30
See the other test comment.
|
| + EXPECT_NE(rvh->main_render_frame_host_->routing_id(), |
| + new_rvh->main_render_frame_host_->routing_id()); |
| +} |
| + |
| } // namespace content |