OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/memory/memory_coordinator_impl.h" | 5 #include "content/browser/memory/memory_coordinator_impl.h" |
6 | 6 |
7 #include "base/memory/memory_coordinator_client_registry.h" | 7 #include "base/memory/memory_coordinator_client_registry.h" |
8 #include "base/memory/memory_coordinator_proxy.h" | 8 #include "base/memory/memory_coordinator_proxy.h" |
9 #include "base/memory/memory_pressure_monitor.h" | 9 #include "base/memory/memory_pressure_monitor.h" |
10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
171 class MemoryCoordinatorImplTest : public base::MultiProcessTest { | 171 class MemoryCoordinatorImplTest : public base::MultiProcessTest { |
172 public: | 172 public: |
173 using MemoryState = base::MemoryState; | 173 using MemoryState = base::MemoryState; |
174 | 174 |
175 void SetUp() override { | 175 void SetUp() override { |
176 base::MultiProcessTest::SetUp(); | 176 base::MultiProcessTest::SetUp(); |
177 scoped_feature_list_.InitAndEnableFeature(features::kMemoryCoordinator); | 177 scoped_feature_list_.InitAndEnableFeature(features::kMemoryCoordinator); |
178 | 178 |
179 task_runner_ = new base::TestMockTimeTaskRunner(); | 179 task_runner_ = new base::TestMockTimeTaskRunner(); |
180 coordinator_.reset(new TestMemoryCoordinatorImpl(task_runner_)); | 180 coordinator_.reset(new TestMemoryCoordinatorImpl(task_runner_)); |
181 | |
182 base::MemoryCoordinatorProxy::GetInstance()-> | |
183 SetGetCurrentMemoryStateCallback(base::Bind( | |
184 &MemoryCoordinatorImpl::GetCurrentMemoryState, | |
185 base::Unretained(coordinator_.get()))); | |
186 base::MemoryCoordinatorProxy::GetInstance()-> | |
187 SetSetCurrentMemoryStateForTestingCallback(base::Bind( | |
188 &MemoryCoordinatorImpl::SetCurrentMemoryStateForTesting, | |
189 base::Unretained(coordinator_.get()))); | |
190 } | 181 } |
191 | 182 |
192 MockMemoryMonitor* GetMockMemoryMonitor() { | 183 MockMemoryMonitor* GetMockMemoryMonitor() { |
193 return static_cast<MockMemoryMonitor*>(coordinator_->memory_monitor()); | 184 return static_cast<MockMemoryMonitor*>(coordinator_->memory_monitor()); |
194 } | 185 } |
195 | 186 |
196 protected: | 187 protected: |
197 std::unique_ptr<TestMemoryCoordinatorImpl> coordinator_; | 188 std::unique_ptr<TestMemoryCoordinatorImpl> coordinator_; |
198 scoped_refptr<base::TestMockTimeTaskRunner> task_runner_; | 189 scoped_refptr<base::TestMockTimeTaskRunner> task_runner_; |
199 base::MessageLoop message_loop_; | 190 base::MessageLoop message_loop_; |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
515 | 506 |
516 EXPECT_TRUE( | 507 EXPECT_TRUE( |
517 coordinator_->SetChildMemoryState(1, MemoryState::THROTTLED)); | 508 coordinator_->SetChildMemoryState(1, MemoryState::THROTTLED)); |
518 EXPECT_EQ(base::MemoryState::THROTTLED, | 509 EXPECT_EQ(base::MemoryState::THROTTLED, |
519 coordinator_->GetStateForProcess(process1.Handle())); | 510 coordinator_->GetStateForProcess(process1.Handle())); |
520 EXPECT_EQ(base::MemoryState::NORMAL, | 511 EXPECT_EQ(base::MemoryState::NORMAL, |
521 coordinator_->GetStateForProcess(process2.Handle())); | 512 coordinator_->GetStateForProcess(process2.Handle())); |
522 } | 513 } |
523 | 514 |
524 } // namespace content | 515 } // namespace content |
OLD | NEW |