Files
daggy/libdaggy/tests/unit_generallogger.cpp

32 lines
707 B
C++

#include <catch2/catch.hpp>
#include <daggy/GeneralLogger.hpp>
#include <iostream>
#include <sstream>
using namespace daggy;
TEST_CASE("General Logger", "[general_logger]")
{
std::stringstream ss;
GeneralLogger logger(ss);
SECTION("Logger logs a message")
{
std::string testMessage = "Test Message";
logger.setLevel(LogLevel::INFO);
logger.warn(testMessage);
logger.shutdown();
auto captured = ss.str();
REQUIRE(!captured.empty());
REQUIRE(captured.find(testMessage) != std::string::npos);
}
SECTION("Logger does not emit messages of higher levels")
{
logger.setLevel(LogLevel::INFO);
logger.debug("Test Message");
REQUIRE(ss.str().empty());
}
}