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
3 // found in the LICENSE file.
5 #include "mojo/public/c/environment/logger.h"
6 #include "mojo/public/cpp/environment/environment.h"
7 #include "testing/gtest/include/gtest/gtest.h"
12 TEST(LoggerTest, Basic) {
13 Environment environment;
14 const MojoLogger* const logger = Environment::GetDefaultLogger();
16 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, "Logged at VERBOSE-1 level");
17 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, "Logged at VERBOSE level");
18 logger->LogMessage(MOJO_LOG_LEVEL_INFO, "Logged at INFO level");
19 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, "Logged at WARNING level");
20 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, "Logged at ERROR level");
22 // This should kill us:
23 EXPECT_DEATH_IF_SUPPORTED(
24 { logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level"); },
28 TEST(LoggerTest, LogLevels) {
29 Environment environment;
30 const MojoLogger* const logger = Environment::GetDefaultLogger();
32 for (MojoLogLevel log_level = MOJO_LOG_LEVEL_VERBOSE - 1;
33 log_level <= MOJO_LOG_LEVEL_FATAL + 1;
35 logger->SetMinimumLogLevel(log_level);
37 if (log_level <= MOJO_LOG_LEVEL_FATAL)
38 EXPECT_EQ(log_level, logger->GetMinimumLogLevel());
40 EXPECT_EQ(MOJO_LOG_LEVEL_FATAL, logger->GetMinimumLogLevel());
42 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE - 1, "Logged at VERBOSE-1 level");
43 logger->LogMessage(MOJO_LOG_LEVEL_VERBOSE, "Logged at VERBOSE level");
44 logger->LogMessage(MOJO_LOG_LEVEL_INFO, "Logged at INFO level");
45 logger->LogMessage(MOJO_LOG_LEVEL_WARNING, "Logged at WARNING level");
46 logger->LogMessage(MOJO_LOG_LEVEL_ERROR, "Logged at ERROR level");
48 // This should kill us:
49 EXPECT_DEATH_IF_SUPPORTED(
50 { logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level"); },