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

Unified Diff: base/trace_event/trace_event_unittest.cc

Issue 2034393004: Allow multiple logging::LogMessage{Handler,Listener}s Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 3 years, 11 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/test/mock_log.cc ('k') | chrome/browser/media/webrtc/webrtc_browsertest_base.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/trace_event/trace_event_unittest.cc
diff --git a/base/trace_event/trace_event_unittest.cc b/base/trace_event/trace_event_unittest.cc
index c22f660b43c183af60f21e055ffa975b11ee0f9b..1170d7a27a8475e817bae3c259f4d72ef8949918 100644
--- a/base/trace_event/trace_event_unittest.cc
+++ b/base/trace_event/trace_event_unittest.cc
@@ -2824,18 +2824,21 @@ TEST_F(TraceEventTestFixture, ThreadOnceBlocking) {
}
std::string* g_log_buffer = NULL;
-bool MockLogMessageHandler(int, const char*, int, size_t,
- const std::string& str) {
- if (!g_log_buffer)
- g_log_buffer = new std::string();
- g_log_buffer->append(str);
- return false;
-}
+class MockLogMessageListener : logging::LogMessageListener {
+ public:
+ void OnMessage(int severity,
+ const char* file,
+ int line,
+ size_t message_start,
+ const std::string& str) override {
+ if (!g_log_buffer)
+ g_log_buffer = new std::string();
+ g_log_buffer->append(str);
+ }
+};
TEST_F(TraceEventTestFixture, EchoToConsole) {
- logging::LogMessageHandlerFunction old_log_message_handler =
- logging::GetLogMessageHandler();
- logging::SetLogMessageHandler(MockLogMessageHandler);
+ MockLogMessageListener l;
TraceLog::GetInstance()->SetEnabled(
TraceConfig(kRecordAllCategoryFilter, ECHO_TO_CONSOLE),
@@ -2858,20 +2861,22 @@ TEST_F(TraceEventTestFixture, EchoToConsole) {
EndTraceAndFlush();
delete g_log_buffer;
- logging::SetLogMessageHandler(old_log_message_handler);
g_log_buffer = NULL;
}
-bool LogMessageHandlerWithTraceEvent(int, const char*, int, size_t,
- const std::string&) {
- TRACE_EVENT0("log", "trace_event");
- return false;
-}
+class LogMessageListenerWithTraceEvent : logging::LogMessageListener {
+ public:
+ void OnMessage(int severity,
+ const char* file,
+ int line,
+ size_t message_start,
+ const std::string& str) override {
+ TRACE_EVENT0("log", "trace_event");
+ }
+};
TEST_F(TraceEventTestFixture, EchoToConsoleTraceEventRecursion) {
- logging::LogMessageHandlerFunction old_log_message_handler =
- logging::GetLogMessageHandler();
- logging::SetLogMessageHandler(LogMessageHandlerWithTraceEvent);
+ LogMessageListenerWithTraceEvent l;
TraceLog::GetInstance()->SetEnabled(
TraceConfig(kRecordAllCategoryFilter, ECHO_TO_CONSOLE),
@@ -2882,7 +2887,6 @@ TEST_F(TraceEventTestFixture, EchoToConsoleTraceEventRecursion) {
}
EndTraceAndFlush();
- logging::SetLogMessageHandler(old_log_message_handler);
}
TEST_F(TraceEventTestFixture, TimeOffset) {
« no previous file with comments | « base/test/mock_log.cc ('k') | chrome/browser/media/webrtc/webrtc_browsertest_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698