Chromium Code Reviews| Index: base/debug/trace_event_unittest.cc |
| diff --git a/base/debug/trace_event_unittest.cc b/base/debug/trace_event_unittest.cc |
| index 445118b6374bd1751df1468d175f7f35db6d8927..83b60d1c729af1e1af56475122a3fdf73cb7eedd 100644 |
| --- a/base/debug/trace_event_unittest.cc |
| +++ b/base/debug/trace_event_unittest.cc |
| @@ -71,7 +71,8 @@ class TraceEventTestFixture : public testing::Test { |
| } |
| void EndTraceAndFlush() { |
| - TraceLog::GetInstance()->SetDisabled(); |
| + while (TraceLog::GetInstance()->IsEnabled()) |
| + TraceLog::GetInstance()->SetDisabled(); |
| TraceLog::GetInstance()->Flush( |
| base::Bind(&TraceEventTestFixture::OnTraceDataCollected, |
| base::Unretained(this))); |
| @@ -696,11 +697,14 @@ TEST_F(TraceEventTestFixture, EnabledObserverDoesntFireOnSecondEnable) { |
| // Cleanup. |
| TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); |
| TraceLog::GetInstance()->SetEnabled(false); |
| + TraceLog::GetInstance()->SetEnabled(false); |
| } |
| -TEST_F(TraceEventTestFixture, EnabledObserverDoesntFireOnUselessDisable) { |
| +TEST_F(TraceEventTestFixture, EnabledObserverDoesntFireOnNestedDisable) { |
| ManualTestSetUp(); |
| + TraceLog::GetInstance()->SetEnabled(true); |
| + TraceLog::GetInstance()->SetEnabled(true); |
| testing::StrictMock<MockEnabledStateChangedObserver> observer; |
| TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| @@ -714,6 +718,7 @@ TEST_F(TraceEventTestFixture, EnabledObserverDoesntFireOnUselessDisable) { |
| // Cleanup. |
| TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); |
| + TraceLog::GetInstance()->SetEnabled(false); |
| } |
| TEST_F(TraceEventTestFixture, EnabledObserverFiresOnDisable) { |
| @@ -1337,5 +1342,25 @@ TEST_F(TraceEventTestFixture, TraceResultBuffer) { |
| EXPECT_STREQ(json_output_.json_output.c_str(), "[bla1,bla2,bla3,bla4]"); |
| } |
| +TEST_F(TraceEventTestFixture, TraceEnableDisable) { |
| + ManualTestSetUp(); |
|
nduca
2013/01/08 21:27:39
How does enabling work with çategories? I think we
|
| + |
| + TraceLog* trace_log = TraceLog::GetInstance(); |
| + trace_log->SetEnabled(std::string()); |
| + EXPECT_TRUE(trace_log->IsEnabled()); |
| + trace_log->SetDisabled(); |
| + EXPECT_FALSE(trace_log->IsEnabled()); |
| + |
| + trace_log->SetEnabled(true); |
| + EXPECT_TRUE(trace_log->IsEnabled()); |
| + const std::vector<std::string> empty; |
| + trace_log->SetEnabled(empty, empty); |
| + EXPECT_TRUE(trace_log->IsEnabled()); |
| + trace_log->SetEnabled(false); |
| + EXPECT_TRUE(trace_log->IsEnabled()); |
| + trace_log->SetDisabled(); |
| + EXPECT_FALSE(trace_log->IsEnabled()); |
| +} |
| + |
| } // namespace debug |
| } // namespace base |