This commit is contained in:
gabime
2018-06-10 23:22:31 +03:00
parent 66b5772b61
commit 032035e72f
6 changed files with 255 additions and 259 deletions

View File

@@ -12,10 +12,10 @@ class failing_sink : public spdlog::sinks::sink
throw std::runtime_error("some error happened during log");
}
void flush() override
{
throw std::runtime_error("some error happened during flush");
}
void flush() override
{
throw std::runtime_error("some error happened during flush");
}
};
using namespace std;
TEST_CASE("default_error_handler", "[errors]]")
@@ -67,10 +67,10 @@ TEST_CASE("default_error_handler2", "[errors]]")
TEST_CASE("flush_error_handler", "[errors]]")
{
spdlog::drop_all();
auto logger = spdlog::create<failing_sink>("failed_logger");
logger->set_error_handler([=](const std::string &) { throw custom_ex(); });
REQUIRE_THROWS_AS(logger->flush(), custom_ex);
spdlog::drop_all();
auto logger = spdlog::create<failing_sink>("failed_logger");
logger->set_error_handler([=](const std::string &) { throw custom_ex(); });
REQUIRE_THROWS_AS(logger->flush(), custom_ex);
}
TEST_CASE("async_error_handler", "[errors]]")
@@ -115,10 +115,10 @@ TEST_CASE("async_error_handler2", "[errors]]")
throw std::runtime_error("Failed open logs/custom_err2.txt");
ofs << err_msg;
});
logger->info("Hello failure");
logger->info("Hello failure");
spdlog::drop("failed_logger"); // force logger to drain the queue and shutdown
spdlog::set_sync_mode();
logger.reset();
logger.reset();
}
REQUIRE(file_contents("logs/custom_err2.txt") == err_msg);

View File

@@ -70,7 +70,7 @@ TEST_CASE("rotating_file_logger1", "[rotating_logger]]")
TEST_CASE("rotating_file_logger2", "[rotating_logger]]")
{
prepare_logdir();
size_t max_size = 10 * 1024;
size_t max_size = 10 * 1024;
std::string basename = "logs/rotating_log.txt";
auto logger = spdlog::rotating_logger_mt("logger", basename, max_size, 1);
for (int i = 0; i < 10; ++i)
@@ -90,7 +90,7 @@ TEST_CASE("rotating_file_logger2", "[rotating_logger]]")
logger->flush();
REQUIRE(get_filesize(filename) <= max_size);
auto filename1 = "logs/rotating_log.1.txt";
auto filename1 = "logs/rotating_log.1.txt";
REQUIRE(get_filesize(filename1) <= max_size);
}