Index: content/browser/memory/memory_coordinator_impl_unittest.cc |
diff --git a/content/browser/memory/memory_coordinator_impl_unittest.cc b/content/browser/memory/memory_coordinator_impl_unittest.cc |
index 785de0482c9c6ec8d31d1a21b180ee9b00474eec..b2d8530fc58154982eaad874ee37260de3901670 100644 |
--- a/content/browser/memory/memory_coordinator_impl_unittest.cc |
+++ b/content/browser/memory/memory_coordinator_impl_unittest.cc |
@@ -9,6 +9,7 @@ |
#include "base/test/scoped_feature_list.h" |
#include "base/test/test_mock_time_task_runner.h" |
#include "content/browser/memory/memory_monitor.h" |
+#include "content/browser/memory/memory_state_updater.h" |
#include "content/public/common/content_features.h" |
#include "testing/gtest/include/gtest/gtest.h" |
@@ -82,12 +83,13 @@ class MemoryCoordinatorImplTest : public testing::Test { |
}; |
TEST_F(MemoryCoordinatorImplTest, CalculateNextState) { |
- coordinator_->expected_renderer_size_ = 10; |
- coordinator_->new_renderers_until_throttled_ = 4; |
- coordinator_->new_renderers_until_suspended_ = 2; |
- coordinator_->new_renderers_back_to_normal_ = 5; |
- coordinator_->new_renderers_back_to_throttled_ = 3; |
- DCHECK(coordinator_->ValidateParameters()); |
+ auto* state_updater = coordinator_->state_updater_.get(); |
+ state_updater->expected_renderer_size_ = 10; |
+ state_updater->new_renderers_until_throttled_ = 4; |
+ state_updater->new_renderers_until_suspended_ = 2; |
+ state_updater->new_renderers_back_to_normal_ = 5; |
+ state_updater->new_renderers_back_to_throttled_ = 3; |
+ DCHECK(state_updater->ValidateParameters()); |
// The default state is NORMAL. |
EXPECT_EQ(base::MemoryState::NORMAL, coordinator_->GetCurrentMemoryState()); |
@@ -103,11 +105,11 @@ TEST_F(MemoryCoordinatorImplTest, CalculateNextState) { |
GetCurrentMemoryState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(50); |
- EXPECT_EQ(base::MemoryState::NORMAL, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::NORMAL, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(40); |
- EXPECT_EQ(base::MemoryState::THROTTLED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::THROTTLED, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(20); |
- EXPECT_EQ(base::MemoryState::SUSPENDED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::SUSPENDED, state_updater->CalculateNextState()); |
// Transitions from THROTTLED |
coordinator_->current_state_ = base::MemoryState::THROTTLED; |
@@ -118,11 +120,11 @@ TEST_F(MemoryCoordinatorImplTest, CalculateNextState) { |
GetCurrentMemoryState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(40); |
- EXPECT_EQ(base::MemoryState::THROTTLED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::THROTTLED, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(50); |
- EXPECT_EQ(base::MemoryState::NORMAL, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::NORMAL, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(20); |
- EXPECT_EQ(base::MemoryState::SUSPENDED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::SUSPENDED, state_updater->CalculateNextState()); |
// Transitions from SUSPENDED |
coordinator_->current_state_ = base::MemoryState::SUSPENDED; |
@@ -135,20 +137,21 @@ TEST_F(MemoryCoordinatorImplTest, CalculateNextState) { |
GetCurrentMemoryState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(20); |
- EXPECT_EQ(base::MemoryState::SUSPENDED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::SUSPENDED, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(30); |
- EXPECT_EQ(base::MemoryState::THROTTLED, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::THROTTLED, state_updater->CalculateNextState()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(50); |
- EXPECT_EQ(base::MemoryState::NORMAL, coordinator_->CalculateNextState()); |
+ EXPECT_EQ(base::MemoryState::NORMAL, state_updater->CalculateNextState()); |
} |
TEST_F(MemoryCoordinatorImplTest, UpdateState) { |
- coordinator_->expected_renderer_size_ = 10; |
- coordinator_->new_renderers_until_throttled_ = 4; |
- coordinator_->new_renderers_until_suspended_ = 2; |
- coordinator_->new_renderers_back_to_normal_ = 5; |
- coordinator_->new_renderers_back_to_throttled_ = 3; |
- DCHECK(coordinator_->ValidateParameters()); |
+ auto* state_updater = coordinator_->state_updater_.get(); |
+ state_updater->expected_renderer_size_ = 10; |
+ state_updater->new_renderers_until_throttled_ = 4; |
+ state_updater->new_renderers_until_suspended_ = 2; |
+ state_updater->new_renderers_back_to_normal_ = 5; |
+ state_updater->new_renderers_back_to_throttled_ = 3; |
+ DCHECK(state_updater->ValidateParameters()); |
{ |
// Transition happens (NORMAL -> THROTTLED). |
@@ -156,7 +159,7 @@ TEST_F(MemoryCoordinatorImplTest, UpdateState) { |
base::MemoryCoordinatorClientRegistry::GetInstance()->Register(&client); |
coordinator_->current_state_ = base::MemoryState::NORMAL; |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(40); |
- coordinator_->UpdateState(); |
+ state_updater->UpdateState(); |
base::RunLoop loop; |
loop.RunUntilIdle(); |
EXPECT_TRUE(client.is_called()); |
@@ -170,7 +173,7 @@ TEST_F(MemoryCoordinatorImplTest, UpdateState) { |
base::MemoryCoordinatorClientRegistry::GetInstance()->Register(&client); |
coordinator_->current_state_ = base::MemoryState::NORMAL; |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(50); |
- coordinator_->UpdateState(); |
+ state_updater->UpdateState(); |
base::RunLoop loop; |
loop.RunUntilIdle(); |
EXPECT_FALSE(client.is_called()); |
@@ -180,12 +183,13 @@ TEST_F(MemoryCoordinatorImplTest, UpdateState) { |
} |
TEST_F(MemoryCoordinatorImplTest, SetMemoryStateForTesting) { |
- coordinator_->expected_renderer_size_ = 10; |
- coordinator_->new_renderers_until_throttled_ = 4; |
- coordinator_->new_renderers_until_suspended_ = 2; |
- coordinator_->new_renderers_back_to_normal_ = 5; |
- coordinator_->new_renderers_back_to_throttled_ = 3; |
- DCHECK(coordinator_->ValidateParameters()); |
+ auto* state_updater = coordinator_->state_updater_.get(); |
+ state_updater->expected_renderer_size_ = 10; |
+ state_updater->new_renderers_until_throttled_ = 4; |
+ state_updater->new_renderers_until_suspended_ = 2; |
+ state_updater->new_renderers_back_to_normal_ = 5; |
+ state_updater->new_renderers_back_to_throttled_ = 3; |
+ DCHECK(state_updater->ValidateParameters()); |
MockMemoryCoordinatorClient client; |
base::MemoryCoordinatorClientRegistry::GetInstance()->Register(&client); |
@@ -220,18 +224,19 @@ TEST_F(MemoryCoordinatorImplTest, SetMemoryStateForTesting) { |
} |
TEST_F(MemoryCoordinatorImplTest, ForceSetGlobalState) { |
- coordinator_->expected_renderer_size_ = 10; |
- coordinator_->new_renderers_until_throttled_ = 4; |
- coordinator_->new_renderers_until_suspended_ = 2; |
- coordinator_->new_renderers_back_to_normal_ = 5; |
- coordinator_->new_renderers_back_to_throttled_ = 3; |
- DCHECK(coordinator_->ValidateParameters()); |
+ auto* state_updater = coordinator_->state_updater_.get(); |
+ state_updater->expected_renderer_size_ = 10; |
+ state_updater->new_renderers_until_throttled_ = 4; |
+ state_updater->new_renderers_until_suspended_ = 2; |
+ state_updater->new_renderers_back_to_normal_ = 5; |
+ state_updater->new_renderers_back_to_throttled_ = 3; |
+ DCHECK(state_updater->ValidateParameters()); |
GetMockMemoryMonitor()->SetFreeMemoryUntilCriticalMB(50); |
base::TimeDelta interval = base::TimeDelta::FromSeconds(5); |
base::TimeDelta minimum_transition = base::TimeDelta::FromSeconds(30); |
- coordinator_->monitoring_interval_ = interval; |
- coordinator_->minimum_transition_period_ = minimum_transition; |
+ state_updater->monitoring_interval_ = interval; |
+ state_updater->minimum_transition_period_ = minimum_transition; |
// Starts updating states. The initial state should be NORMAL with above |
// configuration. |