c_logger_test.cxx 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. //
  2. // c_logger_test.cxx
  3. // logger_test
  4. //
  5. // Created by Sam Jaffe on 4/2/19.
  6. //
  7. #include "mock_logger.h"
  8. #include "logger/c_logger.h"
  9. using namespace logging;
  10. namespace {
  11. struct t_logger : public c_logger {
  12. t_logger(std::string const & name, std::shared_ptr<logger_impl> impl)
  13. : c_logger(name, impl) {}
  14. };
  15. }
  16. using CLoggerTest = LoggerTest;
  17. TEST_F(CLoggerTest, FlushesOnClose) {
  18. EXPECT_CALL(*appender, flush()).Times(1);
  19. t_logger("", pimpl);
  20. }
  21. TEST_F(CLoggerTest, FlushesOnFlushCall) {
  22. EXPECT_CALL(*appender, flush()).Times(2);
  23. t_logger("", pimpl).flush();
  24. }
  25. TEST_F(CLoggerTest, LogsWithFmtCode) {
  26. using testing::_;
  27. EXPECT_CALL(*layout, format(MessageEq("5"))).Times(1);
  28. t_logger("", pimpl).errorf("%d", 5);
  29. }
  30. // TODO: This is wrong
  31. TEST_F(CLoggerTest, FmtLogHasNameInHeader) {
  32. using testing::_;
  33. using testing::Field;
  34. EXPECT_CALL(*layout, format(Field(&logpacket::logger, "TEST"))).Times(1);
  35. t_logger("TEST", pimpl).errorf("%d", 5);
  36. }
  37. // TODO: This is wrong
  38. TEST_F(CLoggerTest, FmtLogHasLevelInHeader) {
  39. using testing::_;
  40. using testing::Field;
  41. EXPECT_CALL(*layout, format(Field(&logpacket::level, level::error))).Times(1);
  42. t_logger("TEST", pimpl).errorf("%d", 5);
  43. }
  44. TEST_F(CLoggerTest, LogsRawData) {
  45. using testing::_;
  46. EXPECT_CALL(*layout, format(MessageEq("5"))).Times(1);
  47. t_logger("", pimpl).error("5");
  48. }
  49. TEST_F(CLoggerTest, DoesNotLogAboveLevel) {
  50. using testing::_;
  51. pimpl->min_log_level = level::fatal;
  52. EXPECT_CALL(*appender, write(_)).Times(0);
  53. t_logger("", pimpl).errorf("%d", 5);
  54. }
  55. TEST_F(CLoggerTest, DoesNotRawLogAboveLevel) {
  56. using testing::_;
  57. pimpl->min_log_level = level::fatal;
  58. EXPECT_CALL(*appender, write(_)).Times(0);
  59. t_logger("", pimpl).error("5");
  60. }