Index: content/browser/web_contents/web_contents_impl_unittest.cc |
diff --git a/content/browser/web_contents/web_contents_impl_unittest.cc b/content/browser/web_contents/web_contents_impl_unittest.cc |
index dfba4445ce83e7aaca117e2f6ce2bbef99f9b330..5e322ef3fe8fcad6d1c4bbe1a6d142d624119e6f 100644 |
--- a/content/browser/web_contents/web_contents_impl_unittest.cc |
+++ b/content/browser/web_contents/web_contents_impl_unittest.cc |
@@ -2884,70 +2884,6 @@ TEST_F(WebContentsImplTest, StartStopEventsBalance) { |
EXPECT_FALSE(observer.is_loading()); |
} |
-// Ensure that WebContentsImpl does not stop loading too early when there still |
-// is a pending renderer. This can happen if a same-process non user-initiated |
-// navigation completes while there is an ongoing cross-process navigation. |
-// TODO(fdegans): Rewrite the test for PlzNavigate when DidStartLoading and |
-// DidStopLoading are properly called. |
-TEST_F(WebContentsImplTest, NoEarlyStop) { |
- const GURL kUrl1("http://www.chromium.org"); |
- const GURL kUrl2("http://www.google.com"); |
- const GURL kUrl3("http://www.wikipedia.org"); |
- |
- contents()->NavigateAndCommit(kUrl1); |
- |
- TestRenderFrameHost* current_rfh = contents()->GetMainFrame(); |
- |
- // Start a browser-initiated cross-process navigation to |kUrl2|. There should |
- // be a pending RenderFrameHost and the WebContents should be loading. |
- controller().LoadURL( |
- kUrl2, Referrer(), ui::PAGE_TRANSITION_TYPED, std::string()); |
- EXPECT_TRUE(contents()->cross_navigation_pending()); |
- TestRenderFrameHost* pending_rfh = contents()->GetPendingMainFrame(); |
- ASSERT_TRUE(pending_rfh); |
- EXPECT_TRUE(contents()->IsLoading()); |
- |
- // The current RenderFrameHost starts a non user-initiated render-initiated |
- // navigation and sends a DidStartLoading IPC. The WebContents should still be |
- // loading. |
- current_rfh->OnMessageReceived( |
- FrameHostMsg_DidStartLoading(current_rfh->GetRoutingID(), false)); |
- EXPECT_TRUE(contents()->IsLoading()); |
- |
- // Simulate the pending RenderFrameHost DidStartLoading. There should still be |
- // a pending RenderFrameHost and the WebContents should still be loading. |
- pending_rfh->PrepareForCommit(); |
- pending_rfh->OnMessageReceived( |
- FrameHostMsg_DidStartLoading(pending_rfh->GetRoutingID(), false)); |
- EXPECT_EQ(contents()->GetPendingMainFrame(), pending_rfh); |
- EXPECT_TRUE(contents()->IsLoading()); |
- |
- // Simulate the commit and DidStopLoading from the renderer-initiated |
- // navigation in the current RenderFrameHost. There should still be a pending |
- // RenderFrameHost and the WebContents should still be loading. |
- current_rfh->SendNavigate(1, kUrl3); |
- current_rfh->OnMessageReceived( |
- FrameHostMsg_DidStopLoading(current_rfh->GetRoutingID())); |
- EXPECT_EQ(contents()->GetPendingMainFrame(), pending_rfh); |
- EXPECT_TRUE(contents()->IsLoading()); |
- |
- // Commit the navigation. The formerly pending RenderFrameHost should now be |
- // the current RenderFrameHost and the WebContents should still be loading. |
- contents()->TestDidNavigate(pending_rfh, 1, kUrl2, |
- ui::PAGE_TRANSITION_TYPED); |
- EXPECT_FALSE(contents()->GetPendingMainFrame()); |
- TestRenderFrameHost* new_current_rfh = contents()->GetMainFrame(); |
- EXPECT_EQ(new_current_rfh, pending_rfh); |
- EXPECT_TRUE(contents()->IsLoading()); |
- |
- // Simulate the new current RenderFrameHost DidStopLoading. The WebContents |
- // should now have stopped loading. |
- new_current_rfh->OnMessageReceived( |
- FrameHostMsg_DidStopLoading(new_current_rfh->GetRoutingID())); |
- EXPECT_EQ(contents()->GetMainFrame(), new_current_rfh); |
- EXPECT_FALSE(contents()->IsLoading()); |
-} |
- |
TEST_F(WebContentsImplTest, MediaPowerSaveBlocking) { |
// PlayerIDs are actually pointers cast to int64, so verify that both negative |
// and positive player ids don't blow up. |