src.dualinventive.com/dinet/sec-multi-proxy/libdipp/tests/debug.cpp

52 lines
1.0 KiB
C++

#include <fstream>
#include <memory>
#include <di/Log.h>
#include <gtest/gtest.h>
using namespace Di;
using namespace std;
static const char *test_logfile = "/tmp/libdipp_tests_debug.log";
TEST(Debug, setLevel) {
Log::setLevel("<invalid>");
Log::setLevel("debug");
Log::setLevel("info");
Log::setLevel("warn");
Log::setLevel("err");
Log::setLevel("crit");
}
TEST(Debug, logToFile) {
std::string line;
int linecount = 0;
Log::setLogfile(test_logfile);
Log::setLevel("debug");
Log::debug("Debug message");
Log::info("Info message");
Log::warning("Warning message");
Log::err("Error message");
Log::crit("Critical message");
std::ifstream myfile(test_logfile);
while (std::getline(myfile, line))
++linecount;
EXPECT_EQ(5, linecount);
unlink(test_logfile);
}
TEST(Debug, logToStdout) {
Log::setLogfile("");
Log::setLevel("debug");
Log::debug("Debug message");
Log::info("Info message");
Log::warning("Warning message");
Log::err("Error message");
Log::crit("Critical message");
}