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

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

Issue 1851253002: Remove RFHM::IsPendingDeletion (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix nit. Created 4 years, 8 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 "content/browser/frame_host/render_frame_host_manager.h" 5 #include "content/browser/frame_host/render_frame_host_manager.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 // Use an observer to avoid accessing a deleted renderer later on when the 356 // Use an observer to avoid accessing a deleted renderer later on when the
357 // state is being checked. 357 // state is being checked.
358 RenderFrameDeletedObserver rfh_observer(old_rfh); 358 RenderFrameDeletedObserver rfh_observer(old_rfh);
359 RenderViewHostDeletedObserver rvh_observer(old_rfh->GetRenderViewHost()); 359 RenderViewHostDeletedObserver rvh_observer(old_rfh->GetRenderViewHost());
360 active_rfh->SendNavigate(max_page_id + 1, entry_id, true, url); 360 active_rfh->SendNavigate(max_page_id + 1, entry_id, true, url);
361 361
362 // Make sure that we start to run the unload handler at the time of commit. 362 // Make sure that we start to run the unload handler at the time of commit.
363 if (old_rfh != active_rfh && !rfh_observer.deleted()) { 363 if (old_rfh != active_rfh && !rfh_observer.deleted()) {
364 EXPECT_EQ(RenderFrameHostImpl::STATE_PENDING_SWAP_OUT, 364 EXPECT_EQ(RenderFrameHostImpl::STATE_PENDING_SWAP_OUT,
365 old_rfh->rfh_state()); 365 old_rfh->rfh_state());
366 EXPECT_TRUE(
367 old_rfh->frame_tree_node()->render_manager()->IsPendingDeletion(
368 old_rfh));
369 } 366 }
370 367
371 // Simulate the swap out ACK coming from the pending renderer. This should 368 // Simulate the swap out ACK coming from the pending renderer. This should
372 // either shut down the old RFH or leave it in a swapped out state. 369 // either shut down the old RFH or leave it in a swapped out state.
373 if (old_rfh != active_rfh) { 370 if (old_rfh != active_rfh) {
374 old_rfh->OnSwappedOut(); 371 old_rfh->OnSwappedOut();
375 EXPECT_TRUE(rfh_observer.deleted()); 372 EXPECT_TRUE(rfh_observer.deleted());
376 } 373 }
377 EXPECT_EQ(active_rfh, contents()->GetMainFrame()); 374 EXPECT_EQ(active_rfh, contents()->GetMainFrame());
378 EXPECT_EQ(NULL, contents()->GetPendingMainFrame()); 375 EXPECT_EQ(NULL, contents()->GetPendingMainFrame());
(...skipping 1406 matching lines...) Expand 10 before | Expand all | Expand 10 after
1785 EXPECT_EQ(RenderFrameHostImpl::STATE_DEFAULT, rfh1->rfh_state()); 1782 EXPECT_EQ(RenderFrameHostImpl::STATE_DEFAULT, rfh1->rfh_state());
1786 1783
1787 // The new page commits. 1784 // The new page commits.
1788 contents()->TestDidNavigate(rfh2, 1, entry_id, true, kUrl2, 1785 contents()->TestDidNavigate(rfh2, 1, entry_id, true, kUrl2,
1789 ui::PAGE_TRANSITION_TYPED); 1786 ui::PAGE_TRANSITION_TYPED);
1790 EXPECT_FALSE(contents()->CrossProcessNavigationPending()); 1787 EXPECT_FALSE(contents()->CrossProcessNavigationPending());
1791 EXPECT_EQ(rfh2, contents()->GetMainFrame()); 1788 EXPECT_EQ(rfh2, contents()->GetMainFrame());
1792 EXPECT_TRUE(contents()->GetPendingMainFrame() == NULL); 1789 EXPECT_TRUE(contents()->GetPendingMainFrame() == NULL);
1793 EXPECT_EQ(RenderFrameHostImpl::STATE_DEFAULT, rfh2->rfh_state()); 1790 EXPECT_EQ(RenderFrameHostImpl::STATE_DEFAULT, rfh2->rfh_state());
1794 EXPECT_EQ(RenderFrameHostImpl::STATE_PENDING_SWAP_OUT, rfh1->rfh_state()); 1791 EXPECT_EQ(RenderFrameHostImpl::STATE_PENDING_SWAP_OUT, rfh1->rfh_state());
1795 EXPECT_TRUE(
1796 rfh1->frame_tree_node()->render_manager()->IsPendingDeletion(rfh1));
1797 1792
1798 // Simulate the swap out ack. 1793 // Simulate the swap out ack.
1799 rfh1->OnSwappedOut(); 1794 rfh1->OnSwappedOut();
1800 1795
1801 // rfh1 should have been deleted. 1796 // rfh1 should have been deleted.
1802 EXPECT_TRUE(rfh_deleted_observer.deleted()); 1797 EXPECT_TRUE(rfh_deleted_observer.deleted());
1803 rfh1 = NULL; 1798 rfh1 = NULL;
1804 } 1799 }
1805 1800
1806 // Tests that the RenderFrameHost is properly swapped out when the SwapOut ACK 1801 // Tests that the RenderFrameHost is properly swapped out when the SwapOut ACK
(...skipping 1300 matching lines...) Expand 10 before | Expand all | Expand 10 after
3107 commit_params.should_enforce_strict_mixed_content_checking = false; 3102 commit_params.should_enforce_strict_mixed_content_checking = false;
3108 child_host->SendNavigateWithParams(&commit_params); 3103 child_host->SendNavigateWithParams(&commit_params);
3109 EXPECT_NO_FATAL_FAILURE(CheckMixedContentIPC( 3104 EXPECT_NO_FATAL_FAILURE(CheckMixedContentIPC(
3110 main_test_rfh(), false, proxy_to_parent->GetRoutingID())); 3105 main_test_rfh(), false, proxy_to_parent->GetRoutingID()));
3111 EXPECT_FALSE(root->child_at(0) 3106 EXPECT_FALSE(root->child_at(0)
3112 ->current_replication_state() 3107 ->current_replication_state()
3113 .should_enforce_strict_mixed_content_checking); 3108 .should_enforce_strict_mixed_content_checking);
3114 } 3109 }
3115 3110
3116 } // namespace content 3111 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/render_frame_host_manager_browsertest.cc ('k') | content/browser/site_per_process_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698