logger_test.cxx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // logger_test.cxx
  3. // logger
  4. //
  5. // Created by Sam Jaffe on 3/31/19.
  6. //
  7. #include "mock_logger.h"
  8. #include "logger/logger.h"
  9. using namespace logging;
  10. namespace {
  11. struct t_logger : public logger {
  12. t_logger(std::string const & name, std::shared_ptr<logger_impl> impl)
  13. : logger(name, impl) {}
  14. };
  15. }
  16. TEST_F(LoggerTest, FlushesOnClose) {
  17. EXPECT_CALL(*appender, flush()).Times(1);
  18. t_logger("", pimpl);
  19. }
  20. TEST_F(LoggerTest, FlushesOnFlushCall) {
  21. EXPECT_CALL(*appender, flush()).Times(2);
  22. t_logger("", pimpl).flush();
  23. }
  24. TEST_F(LoggerTest, LogsWithBraceFmtCode) {
  25. using testing::_;
  26. EXPECT_CALL(*appender, write(MessageEq("5"), _)).Times(1);
  27. t_logger("", pimpl).log(level::error, "{}", 5);
  28. }
  29. TEST_F(LoggerTest, DoesNotLogAboveLevel) {
  30. using testing::_;
  31. pimpl->min_log_level = level::fatal;
  32. EXPECT_CALL(*appender, write(_, _)).Times(0);
  33. t_logger("", pimpl).log(level::error, "{}", 5);
  34. }
  35. TEST_F(LoggerTest, LogCurlyBraceLiteralByDoubling) {
  36. using testing::_;
  37. EXPECT_CALL(*appender, write(MessageEq("{}"), _)).Times(1);
  38. t_logger("", pimpl).log(level::error, "{{}}", 5);
  39. }