diff --git a/webrtc/test/test.gyp b/webrtc/test/test.gyp index 31ba4ea01c..4e01b25d76 100644 --- a/webrtc/test/test.gyp +++ b/webrtc/test/test.gyp @@ -47,6 +47,7 @@ 'dependencies': [ '<(DEPTH)/testing/gtest.gyp:gtest', '<(DEPTH)/testing/gmock.gyp:gmock', + '<(DEPTH)/third_party/gflags/gflags.gyp:gflags', '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers', ], 'sources': [ diff --git a/webrtc/test/test_suite.cc b/webrtc/test/test_suite.cc index 2ef305bfa4..1917605b18 100644 --- a/webrtc/test/test_suite.cc +++ b/webrtc/test/test_suite.cc @@ -10,11 +10,14 @@ #include "webrtc/test/test_suite.h" +#include "gflags/gflags.h" #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" #include "webrtc/test/testsupport/fileutils.h" #include "webrtc/test/testsupport/trace_to_stderr.h" +DEFINE_bool(logs, false, "print logs to stderr"); + namespace webrtc { namespace test { @@ -22,6 +25,9 @@ TestSuite::TestSuite(int argc, char** argv) : trace_to_stderr_(NULL) { SetExecutablePath(argv[0]); testing::InitGoogleMock(&argc, argv); // Runs InitGoogleTest() internally. + // ParseCommandLineFlags fails on unrecognized flags. Call it last so that + // any flags inteded for gtest are already filtered out. + google::ParseCommandLineFlags(&argc, &argv, true); } TestSuite::~TestSuite() { @@ -35,8 +41,8 @@ int TestSuite::Run() { } void TestSuite::Initialize() { - // Create TraceToStderr here so the behavior can be overridden. - trace_to_stderr_.reset(new TraceToStderr); + if (FLAGS_logs) + trace_to_stderr_.reset(new TraceToStderr); } void TestSuite::Shutdown() {