diff options
Diffstat (limited to 'brillo/syslog_logging_unittest.cc')
-rw-r--r-- | brillo/syslog_logging_unittest.cc | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/brillo/syslog_logging_unittest.cc b/brillo/syslog_logging_unittest.cc new file mode 100644 index 0000000..e852e50 --- /dev/null +++ b/brillo/syslog_logging_unittest.cc @@ -0,0 +1,31 @@ +// Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <base/logging.h> +#include <brillo/syslog_logging.h> +#include <gtest/gtest.h> + +namespace brillo { + +class SyslogLoggingDeathTest : public ::testing::Test { + public: + SyslogLoggingDeathTest() {} + virtual ~SyslogLoggingDeathTest() {} + + private: + DISALLOW_COPY_AND_ASSIGN(SyslogLoggingDeathTest); +}; + +TEST_F(SyslogLoggingDeathTest, FatalLoggingIsFatal) { + int old_flags = GetLogFlags(); + SetLogFlags(kLogToStderr); + EXPECT_DEATH({ LOG(FATAL) << "First Fatality!"; }, "First Fatality!"); + // No flags == don't log to syslog, stderr, or accumulated string. + SetLogFlags(0); + // Still a fatal log message + EXPECT_DEATH({ LOG(FATAL) << "Second Fatality!"; }, "Second Fatality!"); + SetLogFlags(old_flags); +} + +} // namespace brillo |