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

Unified Diff: base/test/mock_log.cc

Issue 2034393004: Allow multiple logging::LogMessage{Handler,Listener}s Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: clean up, MockLog uses listener Created 4 years, 5 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
Index: base/test/mock_log.cc
diff --git a/base/test/mock_log.cc b/base/test/mock_log.cc
index a09000d8ed7f9e3080ff06a64cb060c76fa591f6..eb74352a0c121608e77121c929c2d0f7951e8835 100644
--- a/base/test/mock_log.cc
+++ b/base/test/mock_log.cc
@@ -31,8 +31,7 @@ void MockLog::StartCapturingLogs() {
is_capturing_logs_ = true;
g_instance_ = this;
- previous_handler_ = logging::GetLogMessageHandler();
- logging::SetLogMessageHandler(LogMessageHandler);
+ logging::AddLogMessageListener(LogMessageListener);
}
void MockLog::StopCapturingLogs() {
@@ -45,16 +44,16 @@ void MockLog::StopCapturingLogs() {
RAW_CHECK(g_instance_ == this);
is_capturing_logs_ = false;
- logging::SetLogMessageHandler(previous_handler_);
+ logging::RemoveLogMessageListener(LogMessageListener);
g_instance_ = nullptr;
}
// static
-bool MockLog::LogMessageHandler(int severity,
- const char* file,
- int line,
- size_t message_start,
- const std::string& str) {
+void MockLog::LogMessageListener(int severity,
+ const char* file,
+ int line,
+ size_t message_start,
+ const std::string& str) {
// gMock guarantees thread-safety for calling a mocked method
// (https://github.com/google/googlemock/blob/master/googlemock/docs/CookBook.md#using-google-mock-and-threads)
// but we also need to make sure that Start/StopCapturingLogs are synchronized

Powered by Google App Engine
This is Rietveld 408576698