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

Unified Diff: base/trace_event/memory_dump_manager_unittest.cc

Issue 1262333005: [tracing] Introduce MemoryDumpArgs to enable light and heavy dumps (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « base/trace_event/memory_dump_manager.cc ('k') | base/trace_event/memory_dump_provider.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 26a226e5ab824e7b08d456a0f5553ef0f82900a8..2fcdff6b8f931e4c0d48026079878af24776c404 100644
--- a/base/trace_event/memory_dump_manager_unittest.cc
+++ b/base/trace_event/memory_dump_manager_unittest.cc
@@ -99,16 +99,19 @@ class MockDumpProvider : public MemoryDumpProvider {
virtual ~MockDumpProvider() {}
- MOCK_METHOD1(OnMemoryDump, bool(ProcessMemoryDump* pmd));
+ MOCK_METHOD2(OnMemoryDump,
+ bool(const MemoryDumpArgs& args, ProcessMemoryDump* pmd));
// OnMemoryDump() override for the RespectTaskRunnerAffinity test.
- bool OnMemoryDump_CheckTaskRunner(ProcessMemoryDump* pmd) {
+ bool OnMemoryDump_CheckTaskRunner(const MemoryDumpArgs& args,
+ ProcessMemoryDump* pmd) {
EXPECT_TRUE(task_runner_->RunsTasksOnCurrentThread());
return true;
}
// OnMemoryDump() override for the SharedSessionState test.
- bool OnMemoryDump_CheckSessionState(ProcessMemoryDump* pmd) {
+ bool OnMemoryDump_CheckSessionState(const MemoryDumpArgs& args,
+ ProcessMemoryDump* pmd) {
MemoryDumpSessionState* cur_session_state = pmd->session_state().get();
if (last_session_state_)
EXPECT_EQ(last_session_state_, cur_session_state);
@@ -117,14 +120,16 @@ class MockDumpProvider : public MemoryDumpProvider {
}
// OnMemoryDump() override for the RegisterDumperWhileDumping test.
- bool OnMemoryDump_RegisterExtraDumpProvider(ProcessMemoryDump* pmd) {
+ bool OnMemoryDump_RegisterExtraDumpProvider(const MemoryDumpArgs& args,
+ ProcessMemoryDump* pmd) {
MemoryDumpManager::GetInstance()->RegisterDumpProvider(
dump_provider_to_register_or_unregister);
return true;
}
// OnMemoryDump() override for the UnegisterDumperWhileDumping test.
- bool OnMemoryDump_UnregisterDumpProvider(ProcessMemoryDump* pmd) {
+ bool OnMemoryDump_UnregisterDumpProvider(const MemoryDumpArgs& args,
+ ProcessMemoryDump* pmd) {
MemoryDumpManager::GetInstance()->UnregisterDumpProvider(
dump_provider_to_register_or_unregister);
return true;
@@ -144,14 +149,14 @@ TEST_F(MemoryDumpManagerTest, SingleDumper) {
// Check that the dumper is not called if the memory category is not enabled.
EnableTracing("foo-and-bar-but-not-memory");
- EXPECT_CALL(mdp, OnMemoryDump(_)).Times(0);
+ EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0);
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
DisableTracing();
// Now repeat enabling the memory category and check that the dumper is
// invoked this time.
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp, OnMemoryDump(_)).Times(3).WillRepeatedly(Return(true));
+ EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(3).WillRepeatedly(Return(true));
for (int i = 0; i < 3; ++i)
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
DisableTracing();
@@ -160,7 +165,7 @@ TEST_F(MemoryDumpManagerTest, SingleDumper) {
// Finally check the unregister logic (no calls to the mdp after unregister).
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp, OnMemoryDump(_)).Times(0);
+ EXPECT_CALL(mdp, OnMemoryDump(_, _)).Times(0);
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
TraceLog::GetInstance()->SetDisabled();
}
@@ -172,11 +177,11 @@ TEST_F(MemoryDumpManagerTest, SharedSessionState) {
mdm_->RegisterDumpProvider(&mdp2);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_))
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _))
.Times(2)
.WillRepeatedly(
Invoke(&mdp1, &MockDumpProvider::OnMemoryDump_CheckSessionState));
- EXPECT_CALL(mdp2, OnMemoryDump(_))
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _))
.Times(2)
.WillRepeatedly(
Invoke(&mdp2, &MockDumpProvider::OnMemoryDump_CheckSessionState));
@@ -194,8 +199,8 @@ TEST_F(MemoryDumpManagerTest, MultipleDumpers) {
// Enable only mdp1.
mdm_->RegisterDumpProvider(&mdp1);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_)).Times(1).WillRepeatedly(Return(true));
- EXPECT_CALL(mdp2, OnMemoryDump(_)).Times(0);
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true));
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _)).Times(0);
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
DisableTracing();
@@ -203,16 +208,16 @@ TEST_F(MemoryDumpManagerTest, MultipleDumpers) {
mdm_->UnregisterDumpProvider(&mdp1);
mdm_->RegisterDumpProvider(&mdp2);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_)).Times(0);
- EXPECT_CALL(mdp2, OnMemoryDump(_)).Times(1).WillRepeatedly(Return(true));
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(0);
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true));
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
DisableTracing();
// Enable both mdp1 and mdp2.
mdm_->RegisterDumpProvider(&mdp1);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_)).Times(1).WillRepeatedly(Return(true));
- EXPECT_CALL(mdp2, OnMemoryDump(_)).Times(1).WillRepeatedly(Return(true));
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true));
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _)).Times(1).WillRepeatedly(Return(true));
mdm_->RequestGlobalDump(MemoryDumpType::EXPLICITLY_TRIGGERED);
DisableTracing();
}
@@ -236,7 +241,7 @@ TEST_F(MemoryDumpManagerTest, RespectTaskRunnerAffinity) {
mdps.push_back(new MockDumpProvider(threads.back()->task_runner()));
MockDumpProvider* mdp = mdps.back();
mdm_->RegisterDumpProvider(mdp, threads.back()->task_runner());
- EXPECT_CALL(*mdp, OnMemoryDump(_))
+ EXPECT_CALL(*mdp, OnMemoryDump(_, _))
.Times(i)
.WillRepeatedly(
Invoke(mdp, &MockDumpProvider::OnMemoryDump_CheckTaskRunner));
@@ -288,11 +293,11 @@ TEST_F(MemoryDumpManagerTest, DisableFailingDumpers) {
mdm_->RegisterDumpProvider(&mdp2);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_))
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _))
.Times(MemoryDumpManager::kMaxConsecutiveFailuresCount)
.WillRepeatedly(Return(false));
- EXPECT_CALL(mdp2, OnMemoryDump(_))
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _))
.Times(1 + MemoryDumpManager::kMaxConsecutiveFailuresCount)
.WillOnce(Return(false))
.WillRepeatedly(Return(true));
@@ -314,7 +319,7 @@ TEST_F(MemoryDumpManagerTest, RegisterDumperWhileDumping) {
mdm_->RegisterDumpProvider(&mdp1);
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_))
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _))
.Times(4)
.WillOnce(Return(true))
.WillOnce(Invoke(
@@ -323,7 +328,7 @@ TEST_F(MemoryDumpManagerTest, RegisterDumperWhileDumping) {
// Depending on the insertion order (before or after mdp1), mdp2 might be
// called also immediately after it gets registered.
- EXPECT_CALL(mdp2, OnMemoryDump(_))
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _))
.Times(Between(2, 3))
.WillRepeatedly(Return(true));
@@ -344,16 +349,16 @@ TEST_F(MemoryDumpManagerTest, UnregisterDumperWhileDumping) {
mdp1.dump_provider_to_register_or_unregister = &mdp2;
EnableTracing(kTraceCategory);
- EXPECT_CALL(mdp1, OnMemoryDump(_))
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _))
.Times(4)
.WillOnce(Return(true))
- .WillOnce(Invoke(&mdp1,
- &MockDumpProvider::OnMemoryDump_UnregisterDumpProvider))
+ .WillOnce(
+ Invoke(&mdp1, &MockDumpProvider::OnMemoryDump_UnregisterDumpProvider))
.WillRepeatedly(Return(true));
// Depending on the insertion order (before or after mdp1), mdp2 might have
// been already called when OnMemoryDump_UnregisterDumpProvider happens.
- EXPECT_CALL(mdp2, OnMemoryDump(_))
+ EXPECT_CALL(mdp2, OnMemoryDump(_, _))
.Times(Between(1, 2))
.WillRepeatedly(Return(true));
@@ -370,7 +375,7 @@ TEST_F(MemoryDumpManagerTest, CallbackCalledOnFailure) {
MockDumpProvider mdp1;
mdm_->RegisterDumpProvider(&mdp1);
- EXPECT_CALL(mdp1, OnMemoryDump(_)).Times(0);
+ EXPECT_CALL(mdp1, OnMemoryDump(_, _)).Times(0);
last_callback_success_ = true;
{
« no previous file with comments | « base/trace_event/memory_dump_manager.cc ('k') | base/trace_event/memory_dump_provider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698