Index: base/logging_unittest.cc |
diff --git a/base/logging_unittest.cc b/base/logging_unittest.cc |
index 4996abc2240661939217ad04a9ce6d8d35aa1931..c227bbccbff73cce880eb1ac875370785c7d0e2f 100644 |
--- a/base/logging_unittest.cc |
+++ b/base/logging_unittest.cc |
@@ -17,12 +17,6 @@ using ::testing::Return; |
// Needs to be global since log assert handlers can't maintain state. |
int log_sink_call_count = 0; |
-#if !LOGGING_IS_OFFICIAL_BUILD |
-void LogSink(const std::string& str) { |
- ++log_sink_call_count; |
-} |
-#endif // !LOGGING_IS_OFFICIAL_BUILD |
- |
// Class to make sure any manipulations we do to the min log level are |
// contained (i.e., do not affect other unit tests). |
class LogStateSaver { |
@@ -43,6 +37,12 @@ class LogStateSaver { |
}; |
class LoggingTest : public testing::Test { |
+ protected: |
+ // Placed here to avoid unused function warning for some build configurations. |
Nico
2014/03/07 22:58:35
Can't you change the #if above to defined(DCHECK_A
Xianzhu
2014/03/07 23:29:36
Also needs "!defined(OFFICIAL_BUILD) ||" because t
|
+ static void LogSink(const std::string& str) { |
+ ++log_sink_call_count; |
+ } |
+ |
private: |
LogStateSaver log_state_saver_; |
}; |
@@ -169,7 +169,7 @@ TEST_F(LoggingTest, LoggingIsLazy) { |
} |
// Official builds have CHECKs directly call BreakDebugger. |
-#if !LOGGING_IS_OFFICIAL_BUILD |
+#if !defined(OFFICIAL_BUILD) |
TEST_F(LoggingTest, CheckStreamsAreLazy) { |
MockLogSource mock_log_source, uncalled_mock_log_source; |
@@ -204,40 +204,34 @@ TEST_F(LoggingTest, DebugLoggingReleaseBehavior) { |
TEST_F(LoggingTest, DcheckStreamsAreLazy) { |
MockLogSource mock_log_source; |
EXPECT_CALL(mock_log_source, Log()).Times(0); |
-#if !LOGGING_IS_OFFICIAL_BUILD && defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) |
- // Unofficial release build without dcheck enabled. |
- set_dcheck_state(DISABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
- DCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
- DPCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
- DCHECK_EQ(0, 0) << mock_log_source.Log(); |
- DCHECK_EQ(mock_log_source.Log(), static_cast<const char*>(NULL)) |
- << mock_log_source.Log(); |
-#endif |
+ if (DCHECK_IS_ON()) { |
+ DCHECK(true) << mock_log_source.Log(); |
+ DCHECK_EQ(0, 0) << mock_log_source.Log(); |
+ } else { |
+ DCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
+ DPCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
+ DCHECK_EQ(0, 0) << mock_log_source.Log(); |
+ DCHECK_EQ(mock_log_source.Log(), static_cast<const char*>(NULL)) |
+ << mock_log_source.Log(); |
+ } |
} |
TEST_F(LoggingTest, Dcheck) { |
-#if LOGGING_IS_OFFICIAL_BUILD |
- // Official build. |
+#if defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) |
+ // Release build. |
EXPECT_FALSE(DCHECK_IS_ON()); |
EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
-#elif defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) |
- // Unofficial release build. |
- set_dcheck_state(ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
- SetLogReportHandler(&LogSink); |
- EXPECT_TRUE(DCHECK_IS_ON()); |
- EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
#elif defined(NDEBUG) && defined(DCHECK_ALWAYS_ON) |
- // Unofficial release build with real DCHECKS. |
- set_dcheck_state(ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
+ // Release build with real DCHECKS. |
SetLogAssertHandler(&LogSink); |
EXPECT_TRUE(DCHECK_IS_ON()); |
EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
#else |
- // Unofficial debug build. |
+ // Debug build. |
SetLogAssertHandler(&LogSink); |
EXPECT_TRUE(DCHECK_IS_ON()); |
EXPECT_TRUE(DLOG_IS_ON(DCHECK)); |
-#endif // defined(LOGGING_IS_OFFICIAL_BUILD) |
+#endif |
EXPECT_EQ(0, log_sink_call_count); |
DCHECK(false); |