OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/logging.h" | 6 #include "base/logging.h" |
7 | 7 |
8 #include "testing/gmock/include/gmock/gmock.h" | 8 #include "testing/gmock/include/gmock/gmock.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
198 DPLOG_IF(INFO, debug_only_variable) << "test"; | 198 DPLOG_IF(INFO, debug_only_variable) << "test"; |
199 DVLOG_IF(1, debug_only_variable) << "test"; | 199 DVLOG_IF(1, debug_only_variable) << "test"; |
200 } | 200 } |
201 | 201 |
202 TEST_F(LoggingTest, DcheckStreamsAreLazy) { | 202 TEST_F(LoggingTest, DcheckStreamsAreLazy) { |
203 MockLogSource mock_log_source; | 203 MockLogSource mock_log_source; |
204 EXPECT_CALL(mock_log_source, Log()).Times(0); | 204 EXPECT_CALL(mock_log_source, Log()).Times(0); |
205 #if !defined(LOGGING_IS_OFFICIAL_BUILD) && defined(NDEBUG) && \ | 205 #if !defined(LOGGING_IS_OFFICIAL_BUILD) && defined(NDEBUG) && \ |
206 !defined(DCHECK_ALWAYS_ON) | 206 !defined(DCHECK_ALWAYS_ON) |
207 // Unofficial release build without dcheck enabled. | 207 // Unofficial release build without dcheck enabled. |
208 g_dcheck_state = DISABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS; | 208 set_dcheck_state(DISABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
209 DCHECK(mock_log_source.Log()) << mock_log_source.Log(); | 209 DCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
210 DPCHECK(mock_log_source.Log()) << mock_log_source.Log(); | 210 DPCHECK(mock_log_source.Log()) << mock_log_source.Log(); |
211 DCHECK_EQ(0, 0) << mock_log_source.Log(); | 211 DCHECK_EQ(0, 0) << mock_log_source.Log(); |
212 DCHECK_EQ(mock_log_source.Log(), static_cast<const char*>(NULL)) | 212 DCHECK_EQ(mock_log_source.Log(), static_cast<const char*>(NULL)) |
213 << mock_log_source.Log(); | 213 << mock_log_source.Log(); |
214 #endif | 214 #endif |
215 } | 215 } |
216 | 216 |
217 TEST_F(LoggingTest, Dcheck) { | 217 TEST_F(LoggingTest, Dcheck) { |
218 #if LOGGING_IS_OFFICIAL_BUILD | 218 #if LOGGING_IS_OFFICIAL_BUILD |
219 // Official build. | 219 // Official build. |
220 EXPECT_FALSE(DCHECK_IS_ON()); | 220 EXPECT_FALSE(DCHECK_IS_ON()); |
221 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); | 221 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
222 #elif defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) | 222 #elif defined(NDEBUG) && !defined(DCHECK_ALWAYS_ON) |
223 // Unofficial release build. | 223 // Unofficial release build. |
224 g_dcheck_state = ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS; | 224 set_dcheck_state(ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
225 SetLogReportHandler(&LogSink); | 225 SetLogReportHandler(&LogSink); |
226 EXPECT_TRUE(DCHECK_IS_ON()); | 226 EXPECT_TRUE(DCHECK_IS_ON()); |
227 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); | 227 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
228 #elif defined(NDEBUG) && defined(DCHECK_ALWAYS_ON) | 228 #elif defined(NDEBUG) && defined(DCHECK_ALWAYS_ON) |
229 // Unofficial release build with real DCHECKS. | 229 // Unofficial release build with real DCHECKS. |
230 g_dcheck_state = ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS; | 230 set_dcheck_state(ENABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS); |
231 SetLogAssertHandler(&LogSink); | 231 SetLogAssertHandler(&LogSink); |
232 EXPECT_TRUE(DCHECK_IS_ON()); | 232 EXPECT_TRUE(DCHECK_IS_ON()); |
233 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); | 233 EXPECT_FALSE(DLOG_IS_ON(DCHECK)); |
234 #else | 234 #else |
235 // Unofficial debug build. | 235 // Unofficial debug build. |
236 SetLogAssertHandler(&LogSink); | 236 SetLogAssertHandler(&LogSink); |
237 EXPECT_TRUE(DCHECK_IS_ON()); | 237 EXPECT_TRUE(DCHECK_IS_ON()); |
238 EXPECT_TRUE(DLOG_IS_ON(DCHECK)); | 238 EXPECT_TRUE(DLOG_IS_ON(DCHECK)); |
239 #endif // defined(LOGGING_IS_OFFICIAL_BUILD) | 239 #endif // defined(LOGGING_IS_OFFICIAL_BUILD) |
240 | 240 |
(...skipping 11 matching lines...) Expand all Loading... |
252 // These should still reference |some_variable| so we don't get | 252 // These should still reference |some_variable| so we don't get |
253 // unused variable warnings. | 253 // unused variable warnings. |
254 DCHECK(some_variable) << "test"; | 254 DCHECK(some_variable) << "test"; |
255 DPCHECK(some_variable) << "test"; | 255 DPCHECK(some_variable) << "test"; |
256 DCHECK_EQ(some_variable, 1) << "test"; | 256 DCHECK_EQ(some_variable, 1) << "test"; |
257 } | 257 } |
258 | 258 |
259 } // namespace | 259 } // namespace |
260 | 260 |
261 } // namespace logging | 261 } // namespace logging |
OLD | NEW |