| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "mojo/public/c/environment/logger.h" | 5 #include "mojo/public/c/environment/logger.h" |
| 6 #include "mojo/public/cpp/environment/environment.h" | 6 #include "mojo/public/cpp/environment/environment.h" |
| 7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
| 8 | 8 |
| 9 namespace mojo { | 9 namespace mojo { |
| 10 namespace { | 10 namespace { |
| 11 | 11 |
| 12 TEST(LoggerTest, Basic) { | 12 TEST(LoggerTest, Basic) { |
| 13 const char kPath[] = "/fake/path/to/file.cc"; |
| 14 |
| 13 Environment environment; | 15 Environment environment; |
| 14 const MojoLogger* const logger = Environment::GetDefaultLogger(); | 16 const MojoLogger* const logger = Environment::GetDefaultLogger(); |
| 15 | 17 |
| 16 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, "Logged at VERBOSE-1 level"); | 18 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, kPath, 123, |
| 17 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, "Logged at VERBOSE level"); | 19 "Logged at VERBOSE-1 level"); |
| 18 logger->LogMessage(MOJO_LOG_LEVEL_INFO, "Logged at INFO level"); | 20 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, kPath, 123, |
| 19 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, "Logged at WARNING level"); | 21 "Logged at VERBOSE level"); |
| 20 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, "Logged at ERROR level"); | 22 logger->LogMessage(MOJO_LOG_LEVEL_INFO, kPath, 123, "Logged at INFO level"); |
| 23 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, kPath, 123, |
| 24 "Logged at WARNING level"); |
| 25 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, kPath, 123, "Logged at ERROR level"); |
| 21 | 26 |
| 22 // This should kill us: | 27 // This should kill us: |
| 23 EXPECT_DEATH_IF_SUPPORTED( | 28 EXPECT_DEATH_IF_SUPPORTED({ |
| 24 { logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level"); }, | 29 logger->LogMessage(MOJO_LOG_LEVEL_FATAL, kPath, 123, |
| 25 ""); | 30 "Logged at FATAL level"); |
| 31 }, ""); |
| 26 } | 32 } |
| 27 | 33 |
| 28 TEST(LoggerTest, LogLevels) { | 34 TEST(LoggerTest, LogLevels) { |
| 35 const char kPath[] = "/fake/path/to/file.cc"; |
| 36 |
| 29 Environment environment; | 37 Environment environment; |
| 30 const MojoLogger* const logger = Environment::GetDefaultLogger(); | 38 const MojoLogger* const logger = Environment::GetDefaultLogger(); |
| 31 | 39 |
| 32 for (MojoLogLevel log_level = MOJO_LOG_LEVEL_VERBOSE - 1; | 40 for (MojoLogLevel log_level = MOJO_LOG_LEVEL_VERBOSE - 1; |
| 33 log_level <= MOJO_LOG_LEVEL_FATAL + 1; | 41 log_level <= MOJO_LOG_LEVEL_FATAL + 1; |
| 34 log_level++) { | 42 log_level++) { |
| 35 logger->SetMinimumLogLevel(log_level); | 43 logger->SetMinimumLogLevel(log_level); |
| 36 | 44 |
| 37 if (log_level <= MOJO_LOG_LEVEL_FATAL) | 45 if (log_level <= MOJO_LOG_LEVEL_FATAL) |
| 38 EXPECT_EQ(log_level, logger->GetMinimumLogLevel()); | 46 EXPECT_EQ(log_level, logger->GetMinimumLogLevel()); |
| 39 else | 47 else |
| 40 EXPECT_EQ(MOJO_LOG_LEVEL_FATAL, logger->GetMinimumLogLevel()); | 48 EXPECT_EQ(MOJO_LOG_LEVEL_FATAL, logger->GetMinimumLogLevel()); |
| 41 | 49 |
| 42 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, "Logged at VERBOSE-1 level"); | 50 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, kPath, 123, |
| 43 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, "Logged at VERBOSE level"); | 51 "Logged at VERBOSE-1 level"); |
| 44 logger->LogMessage(MOJO_LOG_LEVEL_INFO, "Logged at INFO level"); | 52 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, kPath, 123, |
| 45 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, "Logged at WARNING level"); | 53 "Logged at VERBOSE level"); |
| 46 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, "Logged at ERROR level"); | 54 logger->LogMessage(MOJO_LOG_LEVEL_INFO, kPath, 123, "Logged at INFO level"); |
| 55 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, kPath, 123, |
| 56 "Logged at WARNING level"); |
| 57 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, kPath, 123, |
| 58 "Logged at ERROR level"); |
| 47 | 59 |
| 48 // This should kill us: | 60 // This should kill us: |
| 49 EXPECT_DEATH_IF_SUPPORTED( | 61 EXPECT_DEATH_IF_SUPPORTED({ |
| 50 { logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level"); }, | 62 logger->LogMessage(MOJO_LOG_LEVEL_FATAL, kPath, 123, |
| 51 ""); | 63 "Logged at FATAL level"); |
| 64 }, ""); |
| 52 } | 65 } |
| 53 } | 66 } |
| 54 | 67 |
| 68 TEST(LoggerTest, NoFile) { |
| 69 Environment environment; |
| 70 const MojoLogger* const logger = Environment::GetDefaultLogger(); |
| 71 |
| 72 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, nullptr, 0, |
| 73 "Logged at VERBOSE-1 level"); |
| 74 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, nullptr, 0, |
| 75 "Logged at VERBOSE level"); |
| 76 logger->LogMessage(MOJO_LOG_LEVEL_INFO, nullptr, 0, "Logged at INFO level"); |
| 77 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, nullptr, 0, |
| 78 "Logged at WARNING level"); |
| 79 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, nullptr, 0, "Logged at ERROR level"); |
| 80 |
| 81 // This should kill us: |
| 82 EXPECT_DEATH_IF_SUPPORTED({ |
| 83 logger->LogMessage(MOJO_LOG_LEVEL_FATAL, nullptr, 0, |
| 84 "Logged at FATAL level"); |
| 85 }, ""); |
| 86 } |
| 87 |
| 55 } // namespace | 88 } // namespace |
| 56 } // namespace mojo | 89 } // namespace mojo |
| OLD | NEW |