Chromium Code Reviews| Index: base/trace_event/memory_dump_manager_unittest.cc |
| diff --git a/base/trace_event/memory_dump_manager_unittest.cc b/base/trace_event/memory_dump_manager_unittest.cc |
| index ba76b9adec2520105af74807f6a66585ad075207..8b6ee5ef23a5c672cccc0d70930fcaf16b6a7e99 100644 |
| --- a/base/trace_event/memory_dump_manager_unittest.cc |
| +++ b/base/trace_event/memory_dump_manager_unittest.cc |
| @@ -128,32 +128,22 @@ void ProcessDumpCallbackAdapter( |
| callback.Run(dump_guid, success); |
| } |
| -// Testing MemoryDumpManagerDelegate which, by default, short-circuits dump |
| -// requests locally to the MemoryDumpManager instead of performing IPC dances. |
| -class MemoryDumpManagerDelegateForTesting : public MemoryDumpManagerDelegate { |
| +class GlobalMemoryDumpHandler { |
|
Primiano Tucci (use gerrit)
2017/04/19 15:44:34
I'd keep a comment saing: this mocks the ReqGlobal
ssid
2017/04/20 01:18:21
Done.
|
| public: |
| - MemoryDumpManagerDelegateForTesting(bool is_coordinator) |
| - : is_coordinator_(is_coordinator) { |
| + MOCK_METHOD2(RequestGlobalMemoryDump, |
| + void(const MemoryDumpRequestArgs& args, |
| + const GlobalMemoryDumpCallback& callback)); |
| + |
| + GlobalMemoryDumpHandler() { |
| ON_CALL(*this, RequestGlobalMemoryDump(_, _)) |
| .WillByDefault(Invoke([this](const MemoryDumpRequestArgs& args, |
| const GlobalMemoryDumpCallback& callback) { |
| ProcessMemoryDumpCallback process_callback = |
| Bind(&ProcessDumpCallbackAdapter, callback); |
| - CreateProcessDump(args, process_callback); |
| + MemoryDumpManager::GetInstance()->CreateProcessDump(args, |
| + process_callback); |
| })); |
| } |
| - |
| - MOCK_METHOD2(RequestGlobalMemoryDump, |
| - void(const MemoryDumpRequestArgs& args, |
| - const GlobalMemoryDumpCallback& callback)); |
| - |
| - bool IsCoordinator() const override { return is_coordinator_; } |
| - |
| - // Promote the CreateProcessDump to public so it can be used by test fixtures. |
| - using MemoryDumpManagerDelegate::CreateProcessDump; |
| - |
| - private: |
| - bool is_coordinator_; |
| }; |
| class MockMemoryDumpProvider : public MemoryDumpProvider { |
| @@ -244,7 +234,6 @@ class MemoryDumpManagerTest : public testing::Test { |
| void TearDown() override { |
| MemoryDumpManager::SetInstanceForTesting(nullptr); |
| - delegate_ = nullptr; |
| mdm_.reset(); |
| message_loop_.reset(); |
| TraceLog::DeleteForTesting(); |
| @@ -265,8 +254,10 @@ class MemoryDumpManagerTest : public testing::Test { |
| protected: |
| void InitializeMemoryDumpManager(bool is_coordinator) { |
| mdm_->set_dumper_registrations_ignored_for_testing(true); |
| - delegate_ = new MemoryDumpManagerDelegateForTesting(is_coordinator); |
| - mdm_->Initialize(base::WrapUnique(delegate_)); |
| + mdm_->Initialize( |
| + BindRepeating(&GlobalMemoryDumpHandler::RequestGlobalMemoryDump, |
| + Unretained(&global_dump_handler_)), |
| + is_coordinator); |
| } |
| void RequestGlobalDumpAndWait(MemoryDumpType dump_type, |
| @@ -301,7 +292,7 @@ class MemoryDumpManagerTest : public testing::Test { |
| const MemoryDumpProvider::Options kDefaultOptions; |
| std::unique_ptr<MemoryDumpManager> mdm_; |
| - MemoryDumpManagerDelegateForTesting* delegate_; |
| + GlobalMemoryDumpHandler global_dump_handler_; |
| bool last_callback_success_; |
| private: |
| @@ -320,7 +311,7 @@ TEST_F(MemoryDumpManagerTest, SingleDumper) { |
| // Check that the dumper is not called if the memory category is not enabled. |
| EnableTracingWithLegacyCategories("foobar-but-not-memory"); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(0); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(0); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| @@ -329,7 +320,7 @@ TEST_F(MemoryDumpManagerTest, SingleDumper) { |
| // Now repeat enabling the memory category and check that the dumper is |
| // invoked this time. |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(3); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(3); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(3).WillRepeatedly(Return(true)); |
| for (int i = 0; i < 3; ++i) { |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -339,10 +330,10 @@ TEST_F(MemoryDumpManagerTest, SingleDumper) { |
| mdm_->UnregisterDumpProvider(&mdp); |
| - // Finally check the unregister logic: the delegate will be invoked but not |
| - // the dump provider, as it has been unregistered. |
| + // Finally check the unregister logic: the global dump handler will be invoked |
| + // but not the dump provider, as it has been unregistered. |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(3); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(3); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0); |
| for (int i = 0; i < 3; ++i) { |
| @@ -360,7 +351,7 @@ TEST_F(MemoryDumpManagerTest, CheckMemoryDumpArgs) { |
| RegisterDumpProvider(&mdp, ThreadTaskRunnerHandle::Get()); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(IsDetailedDump(), _)).WillOnce(Return(true)); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| @@ -371,7 +362,7 @@ TEST_F(MemoryDumpManagerTest, CheckMemoryDumpArgs) { |
| // OnMemoryDump() call on dump providers. |
| RegisterDumpProvider(&mdp, ThreadTaskRunnerHandle::Get()); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(IsLightDump(), _)).WillOnce(Return(true)); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::LIGHT); |
| @@ -390,7 +381,7 @@ TEST_F(MemoryDumpManagerTest, SharedSessionState) { |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| const MemoryDumpSessionState* session_state = |
| mdm_->session_state_for_testing().get(); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(2); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(2); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)) |
| .Times(2) |
| .WillRepeatedly(Invoke([session_state](const MemoryDumpArgs&, |
| @@ -423,7 +414,7 @@ TEST_F(MemoryDumpManagerTest, MultipleDumpers) { |
| // Enable only mdp1. |
| RegisterDumpProvider(&mdp1, ThreadTaskRunnerHandle::Get()); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| EXPECT_CALL(mdp2, OnMemoryDump(_, _)).Times(0); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -434,7 +425,7 @@ TEST_F(MemoryDumpManagerTest, MultipleDumpers) { |
| mdm_->UnregisterDumpProvider(&mdp1); |
| RegisterDumpProvider(&mdp2, nullptr); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(0); |
| EXPECT_CALL(mdp2, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -444,7 +435,7 @@ TEST_F(MemoryDumpManagerTest, MultipleDumpers) { |
| // Enable both mdp1 and mdp2. |
| RegisterDumpProvider(&mdp1, nullptr); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| EXPECT_CALL(mdp2, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -467,7 +458,7 @@ TEST_F(MemoryDumpManagerTest, MAYBE_RegistrationConsistency) { |
| RegisterDumpProvider(&mdp, ThreadTaskRunnerHandle::Get()); |
| { |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -478,7 +469,7 @@ TEST_F(MemoryDumpManagerTest, MAYBE_RegistrationConsistency) { |
| mdm_->UnregisterDumpProvider(&mdp); |
| { |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -490,7 +481,7 @@ TEST_F(MemoryDumpManagerTest, MAYBE_RegistrationConsistency) { |
| mdm_->UnregisterDumpProvider(&mdp); |
| { |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -503,7 +494,7 @@ TEST_F(MemoryDumpManagerTest, MAYBE_RegistrationConsistency) { |
| RegisterDumpProvider(&mdp, ThreadTaskRunnerHandle::Get()); |
| { |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).WillOnce(Return(true)); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| @@ -546,7 +537,7 @@ TEST_F(MemoryDumpManagerTest, RespectTaskRunnerAffinity) { |
| while (!threads.empty()) { |
| last_callback_success_ = false; |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| EXPECT_TRUE(last_callback_success_); |
| @@ -591,7 +582,7 @@ TEST_F(MemoryDumpManagerTest, PostTaskForSequencedTaskRunner) { |
| EXPECT_CALL(mdps[0], OnMemoryDump(_, _)).Times(0); |
| EXPECT_CALL(mdps[1], OnMemoryDump(_, _)).Times(2); |
| EXPECT_CALL(mdps[2], OnMemoryDump(_, _)).Times(2); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(2); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(2); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| @@ -627,7 +618,8 @@ TEST_F(MemoryDumpManagerTest, DisableFailingDumpers) { |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| const int kNumDumps = 2 * GetMaxConsecutiveFailuresCount(); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(kNumDumps); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| + .Times(kNumDumps); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)) |
| .Times(GetMaxConsecutiveFailuresCount()) |
| @@ -659,7 +651,7 @@ TEST_F(MemoryDumpManagerTest, RegisterDumperWhileDumping) { |
| RegisterDumpProvider(&mdp1, nullptr); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(4); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(4); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)) |
| .Times(4) |
| @@ -695,7 +687,7 @@ TEST_F(MemoryDumpManagerTest, UnregisterDumperWhileDumping) { |
| RegisterDumpProvider(&mdp2, ThreadTaskRunnerHandle::Get(), kDefaultOptions); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(4); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(4); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)) |
| .Times(4) |
| @@ -765,7 +757,7 @@ TEST_F(MemoryDumpManagerTest, UnregisterDumperFromThreadWhileDumping) { |
| last_callback_success_ = false; |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| ASSERT_EQ(1, on_memory_dump_call_count); |
| @@ -867,7 +859,7 @@ TEST_F(MemoryDumpManagerTest, TearDownThreadWhileDumping) { |
| last_callback_success_ = false; |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| ASSERT_EQ(1, on_memory_dump_call_count); |
| @@ -883,7 +875,7 @@ TEST_F(MemoryDumpManagerTest, CallbackCalledOnFailure) { |
| MockMemoryDumpProvider mdp1; |
| RegisterDumpProvider(&mdp1, nullptr); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(0); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(0); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(0); |
| last_callback_success_ = true; |
| @@ -913,7 +905,7 @@ TEST_F(MemoryDumpManagerTest, InitializedAfterStartOfTracing) { |
| { |
| InitializeMemoryDumpManager(false /* is_coordinator */); |
| EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(1); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| EXPECT_TRUE(last_callback_success_); |
| @@ -927,14 +919,14 @@ TEST_F(MemoryDumpManagerTest, InitializedAfterStartOfTracing) { |
| // and the new-style (JSON-based) TraceConfig. |
| TEST_F(MemoryDumpManagerTest, TraceConfigExpectations) { |
| InitializeMemoryDumpManager(false /* is_coordinator */); |
| - MemoryDumpManagerDelegateForTesting& delegate = *delegate_; |
| - // Don't trigger the default behavior of the mock delegate in this test, |
| + // Don't trigger the default behavior of the global dump handler in this test, |
| // which would short-circuit the dump request to the actual |
| // CreateProcessDump(). |
| // We don't want to create any dump in this test, only check whether the dumps |
| // are requested or not. |
| - ON_CALL(delegate, RequestGlobalMemoryDump(_, _)).WillByDefault(Return()); |
| + ON_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| + .WillByDefault(Return()); |
| // Enabling memory-infra in a non-coordinator process should not trigger any |
| // periodic dumps. |
| @@ -953,8 +945,8 @@ TEST_F(MemoryDumpManagerTest, TraceConfigExpectations) { |
| TEST_F(MemoryDumpManagerTest, TraceConfigExpectationsWhenIsCoordinator) { |
| InitializeMemoryDumpManager(true /* is_coordinator */); |
| - MemoryDumpManagerDelegateForTesting& delegate = *delegate_; |
| - ON_CALL(delegate, RequestGlobalMemoryDump(_, _)).WillByDefault(Return()); |
| + ON_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| + .WillByDefault(Return()); |
| // Enabling memory-infra with the legacy TraceConfig (category filter) in |
| // a coordinator process should enable periodic dumps. |
| @@ -992,13 +984,15 @@ TEST_F(MemoryDumpManagerTest, TraceConfigExpectationsWhenIsCoordinator) { |
| const int kHeavyDumpPeriodMs = kHeavyDumpRate * kLightDumpPeriodMs; |
| // The expected sequence with light=1ms, heavy=5ms is H,L,L,L,L,H,... |
| testing::InSequence sequence; |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(IsDetailedDump(), _)); |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(IsLightDump(), _)) |
| + EXPECT_CALL(global_dump_handler_, |
| + RequestGlobalMemoryDump(IsDetailedDump(), _)); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(IsLightDump(), _)) |
| .Times(kHeavyDumpRate - 1); |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(IsDetailedDump(), _)); |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(IsLightDump(), _)) |
| + EXPECT_CALL(global_dump_handler_, |
| + RequestGlobalMemoryDump(IsDetailedDump(), _)); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(IsLightDump(), _)) |
| .Times(kHeavyDumpRate - 2); |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(IsLightDump(), _)) |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(IsLightDump(), _)) |
| .WillOnce(Invoke([test_task_runner, quit_closure]( |
| const MemoryDumpRequestArgs& args, |
| const GlobalMemoryDumpCallback& callback) { |
| @@ -1006,7 +1000,8 @@ TEST_F(MemoryDumpManagerTest, TraceConfigExpectationsWhenIsCoordinator) { |
| })); |
| // Swallow all the final spurious calls until tracing gets disabled. |
| - EXPECT_CALL(delegate, RequestGlobalMemoryDump(_, _)).Times(AnyNumber()); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| + .Times(AnyNumber()); |
| EnableTracingWithTraceConfig( |
| TraceConfigMemoryTestUtil::GetTraceConfig_PeriodicTriggers( |
| @@ -1042,7 +1037,7 @@ TEST_F(MemoryDumpManagerTest, MAYBE_DisableTracingWhileDumping) { |
| RegisterDumpProvider(&unbound_mdp, nullptr, kDefaultOptions); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp_with_affinity, OnMemoryDump(_, _)) |
| .Times(1) |
| .WillOnce( |
| @@ -1091,13 +1086,13 @@ TEST_F(MemoryDumpManagerTest, DisableTracingRightBeforeStartOfDump) { |
| RegisterDumpProvider(&mdp2, mdp_thread->task_runner(), kDefaultOptions); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)) |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| .WillOnce(Invoke([this](const MemoryDumpRequestArgs& args, |
| const GlobalMemoryDumpCallback& callback) { |
| DisableTracing(); |
| ProcessMemoryDumpCallback process_callback = |
| Bind(&ProcessDumpCallbackAdapter, callback); |
| - delegate_->CreateProcessDump(args, process_callback); |
| + mdm_->CreateProcessDump(args, process_callback); |
| })); |
| // If tracing is disabled for current session CreateProcessDump() should NOT |
| @@ -1132,7 +1127,7 @@ TEST_F(MemoryDumpManagerTest, DumpOnBehalfOfOtherProcess) { |
| RegisterDumpProvider(&mdp3, nullptr, options); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true)); |
| EXPECT_CALL(mdp2, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true)); |
| EXPECT_CALL(mdp3, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true)); |
| @@ -1226,7 +1221,7 @@ TEST_F(MemoryDumpManagerTest, UnregisterAndDeleteDumpProviderSoonDuringDump) { |
| })); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(2); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(2); |
| for (int i = 0; i < 2; ++i) { |
| RequestGlobalDumpAndWait(MemoryDumpType::EXPLICITLY_TRIGGERED, |
| MemoryDumpLevelOfDetail::DETAILED); |
| @@ -1245,7 +1240,7 @@ TEST_F(MemoryDumpManagerTest, TestWhitelistingMDP) { |
| EXPECT_CALL(*mdp1, OnMemoryDump(_, _)).Times(0); |
| EXPECT_CALL(*mdp2, OnMemoryDump(_, _)).Times(1).WillOnce(Return(true)); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(1); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)).Times(1); |
| EnableTracingWithLegacyCategories(MemoryDumpManager::kTraceCategory); |
| EXPECT_FALSE(IsPeriodicDumpingEnabled()); |
| @@ -1262,15 +1257,18 @@ TEST_F(MemoryDumpManagerTest, TestBackgroundTracingSetup) { |
| auto quit_closure = run_loop.QuitClosure(); |
| testing::InSequence sequence; |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(IsBackgroundDump(), _)) |
| + EXPECT_CALL(global_dump_handler_, |
| + RequestGlobalMemoryDump(IsBackgroundDump(), _)) |
| .Times(5); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(IsBackgroundDump(), _)) |
| + EXPECT_CALL(global_dump_handler_, |
| + RequestGlobalMemoryDump(IsBackgroundDump(), _)) |
| .WillOnce(Invoke([test_task_runner, quit_closure]( |
| const MemoryDumpRequestArgs& args, |
| const GlobalMemoryDumpCallback& callback) { |
| test_task_runner->PostTask(FROM_HERE, quit_closure); |
| })); |
| - EXPECT_CALL(*delegate_, RequestGlobalMemoryDump(_, _)).Times(AnyNumber()); |
| + EXPECT_CALL(global_dump_handler_, RequestGlobalMemoryDump(_, _)) |
| + .Times(AnyNumber()); |
| EnableTracingWithTraceConfig( |
| TraceConfigMemoryTestUtil::GetTraceConfig_BackgroundTrigger( |