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.
4
5 #include "mojo/public/c/environment/logger.h"
6 #include "mojo/public/cpp/environment/environment.h"
7 #include "testing/gtest/include/gtest/gtest.h"
8
9 namespace mojo {
10 namespace {
11
TEST(LoggerTest,Basic)12 TEST(LoggerTest, Basic) {
13 Environment environment;
14 const MojoLogger* const logger = Environment::GetDefaultLogger();
15
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");
21
22 // This should kill us:
23 EXPECT_DEATH({
24 logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level");
25 }, "");
26 }
27
TEST(LoggerTest,LogLevels)28 TEST(LoggerTest, LogLevels) {
29 Environment environment;
30 const MojoLogger* const logger = Environment::GetDefaultLogger();
31
32 for (MojoLogLevel log_level = MOJO_LOG_LEVEL_VERBOSE-1;
33 log_level <= MOJO_LOG_LEVEL_FATAL+1;
34 log_level++) {
35 logger->SetMinimumLogLevel(log_level);
36
37 if (log_level <= MOJO_LOG_LEVEL_FATAL)
38 EXPECT_EQ(log_level, logger->GetMinimumLogLevel());
39 else
40 EXPECT_EQ(MOJO_LOG_LEVEL_FATAL, logger->GetMinimumLogLevel());
41
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");
47
48 // This should kill us:
49 EXPECT_DEATH({
50 logger->LogMessage(MOJO_LOG_LEVEL_FATAL, "Logged at FATAL level");
51 }, "");
52 }
53 }
54
55 } // namespace
56 } // namespace mojo
57