25 #ifndef LOG4CPP_MOCKLOGHANDLER_H 26 #define LOG4CPP_MOCKLOGHANDLER_H 28 #include "log4cpp/Logger.h" 29 #include "ser4cpp/util/Uncopyable.h" 42 void log(
ModuleId module,
const char*
id,
LogLevel level,
char const* location,
char const* message)
override 46 std::cout << message << std::endl;
49 lines.push_back(message);
52 bool output_to_stdio =
false;
53 std::deque<std::string> lines;
58 backend(std::make_shared<Backend>()),
59 logger(backend,
ModuleId(0),
id, levels)
64 this->backend->output_to_stdio =
true;
67 virtual void log(
ModuleId module,
const char*
id,
LogLevel level,
char const* location,
char const* message)
override 69 this->backend->log(module,
id, level, location, message);
72 template <
typename... Args>
73 void expect(
const std::string& expected,
const Args& ... args)
75 REQUIRE_FALSE(backend->lines.empty());
76 REQUIRE(expected == backend->lines.front());
77 backend->lines.pop_front();
83 REQUIRE(backend->lines.empty());
87 std::shared_ptr<Backend> backend;
89 MockLogHandler() =
delete;
97 #endif //LOG4CPP_MOCKLOGHANDLER_H
log4cpp header-only library namespace
virtual void log(ModuleId module, const char *id, LogLevel level, char const *location, char const *message) override