c_logger_test.cxx 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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(*appender, write(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(*appender, write(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. auto IsError = Field(&logpacket::level, level::error);
  42. EXPECT_CALL(*appender, write(IsError, _)).Times(1);
  43. t_logger("TEST", pimpl).errorf("%d", 5);
  44. }
  45. TEST_F(CLoggerTest, LogsRawData) {
  46. using testing::_;
  47. EXPECT_CALL(*appender, write(MessageEq("5"), _)).Times(1);
  48. t_logger("", pimpl).error("5");
  49. }
  50. TEST_F(CLoggerTest, DoesNotLogAboveLevel) {
  51. using testing::_;
  52. pimpl->min_log_level = level::fatal;
  53. EXPECT_CALL(*appender, write(_, _)).Times(0);
  54. t_logger("", pimpl).errorf("%d", 5);
  55. }
  56. TEST_F(CLoggerTest, DoesNotRawLogAboveLevel) {
  57. using testing::_;
  58. pimpl->min_log_level = level::fatal;
  59. EXPECT_CALL(*appender, write(_, _)).Times(0);
  60. t_logger("", pimpl).error("5");
  61. }