Updated async tests

pull/3309/head
gabime 9 months ago
parent 1da7eb55d2
commit 80d8186644

@ -1,15 +1,15 @@
#include <tuple>
#include "includes.h" #include "includes.h"
#include "spdlog/sinks/async_sink.h" #include "spdlog/sinks/async_sink.h"
#include "spdlog/sinks/basic_file_sink.h" #include "spdlog/sinks/basic_file_sink.h"
#include "test_sink.h" #include "test_sink.h"
#include <tuple>
#define TEST_FILENAME "test_logs/async_test.log" #define TEST_FILENAME "test_logs/async_test.log"
using spdlog::sinks::sink;
using spdlog::sinks::test_sink_st;
using spdlog::sinks::async_sink_mt; using spdlog::sinks::async_sink_mt;
using spdlog::sinks::sink;
using spdlog::sinks::test_sink_mt;
auto creat_async_logger(size_t queue_size, std::shared_ptr<sink> backend_sink) { auto creat_async_logger(size_t queue_size, std::shared_ptr<sink> backend_sink) {
auto async_sink = std::make_shared<async_sink_mt>(queue_size); auto async_sink = std::make_shared<async_sink_mt>(queue_size);
@ -19,7 +19,7 @@ auto creat_async_logger(size_t queue_size, std::shared_ptr<sink> backend_sink) {
} }
TEST_CASE("basic async test ", "[async]") { TEST_CASE("basic async test ", "[async]") {
const auto test_sink = std::make_shared<test_sink_st>(); const auto test_sink = std::make_shared<test_sink_mt>();
size_t overrun_counter = 0; size_t overrun_counter = 0;
const size_t queue_size = 16; const size_t queue_size = 16;
size_t messages = 256; size_t messages = 256;
@ -38,7 +38,7 @@ TEST_CASE("basic async test ", "[async]") {
} }
TEST_CASE("discard policy ", "[async]") { TEST_CASE("discard policy ", "[async]") {
auto test_sink = std::make_shared<test_sink_st>(); auto test_sink = std::make_shared<test_sink_mt>();
test_sink->set_delay(std::chrono::milliseconds(1)); test_sink->set_delay(std::chrono::milliseconds(1));
size_t queue_size = 4; size_t queue_size = 4;
size_t messages = 1024; size_t messages = 1024;
@ -58,7 +58,7 @@ TEST_CASE("discard policy ", "[async]") {
} }
TEST_CASE("discard policy discard_new ", "[async]") { TEST_CASE("discard policy discard_new ", "[async]") {
auto test_sink = std::make_shared<test_sink_st>(); auto test_sink = std::make_shared<test_sink_mt>();
test_sink->set_delay(std::chrono::milliseconds(1)); test_sink->set_delay(std::chrono::milliseconds(1));
size_t queue_size = 4; size_t queue_size = 4;
size_t messages = 1024; size_t messages = 1024;
@ -77,9 +77,8 @@ TEST_CASE("discard policy discard_new ", "[async]") {
REQUIRE(async_sink->get_discard_counter() == 0); REQUIRE(async_sink->get_discard_counter() == 0);
} }
TEST_CASE("flush", "[async]") { TEST_CASE("flush", "[async]") {
auto test_sink = std::make_shared<test_sink_st>(); auto test_sink = std::make_shared<test_sink_mt>();
size_t queue_size = 256; size_t queue_size = 256;
size_t messages = 256; size_t messages = 256;
{ {
@ -113,7 +112,6 @@ TEST_CASE("wait_dtor ", "[async]") {
REQUIRE(test_sink->msg_counter() == messages); REQUIRE(test_sink->msg_counter() == messages);
REQUIRE(test_sink->flush_counter() == 1); REQUIRE(test_sink->flush_counter() == 1);
} }
TEST_CASE("multi threads", "[async]") { TEST_CASE("multi threads", "[async]") {
@ -161,13 +159,9 @@ TEST_CASE("to_file", "[async]") {
REQUIRE(ends_with(contents, spdlog::fmt_lib::format("Hello message #1023{}", default_eol))); REQUIRE(ends_with(contents, spdlog::fmt_lib::format("Hello message #1023{}", default_eol)));
} }
TEST_CASE("bad_ctor", "[async]") { TEST_CASE("bad_ctor", "[async]") { REQUIRE_THROWS_AS(std::make_shared<async_sink_mt>(0), spdlog::spdlog_ex); }
REQUIRE_THROWS_AS(std::make_shared<async_sink_mt>(0), spdlog::spdlog_ex);
}
TEST_CASE("bad_ctor2", "[async]") { TEST_CASE("bad_ctor2", "[async]") { REQUIRE_THROWS_AS(std::make_shared<async_sink_mt>(-1), spdlog::spdlog_ex); }
REQUIRE_THROWS_AS(std::make_shared<async_sink_mt>(-1), spdlog::spdlog_ex);
}
TEST_CASE("start_stop_clbks", "[async]") { TEST_CASE("start_stop_clbks", "[async]") {
bool start_called = false; bool start_called = false;
@ -219,7 +213,6 @@ TEST_CASE("start_stop_clbks5", "[async]") {
REQUIRE_FALSE(stop_called); REQUIRE_FALSE(stop_called);
} }
TEST_CASE("mutli-sinks", "[async]") { TEST_CASE("mutli-sinks", "[async]") {
prepare_logdir(); prepare_logdir();
auto test_sink1 = std::make_shared<spdlog::sinks::test_sink_mt>(); auto test_sink1 = std::make_shared<spdlog::sinks::test_sink_mt>();
@ -231,7 +224,6 @@ TEST_CASE("mutli-sinks", "[async]") {
async_sink->add_sink(test_sink2); async_sink->add_sink(test_sink2);
async_sink->add_sink(test_sink3); async_sink->add_sink(test_sink3);
for (size_t j = 0; j < messages; j++) { for (size_t j = 0; j < messages; j++) {
logger->info("Hello message #{}", j); logger->info("Hello message #{}", j);
} }
@ -247,7 +239,7 @@ TEST_CASE("no-sinks", "[async]") {
for (int i = 1; i < 101; ++i) { for (int i = 1; i < 101; ++i) {
logger->info("Async message #{}", i); logger->info("Async message #{}", i);
} }
auto test_sink = std::make_shared<test_sink_st>(); auto test_sink = std::make_shared<test_sink_mt>();
async_sink->add_sink(test_sink); async_sink->add_sink(test_sink);
REQUIRE(test_sink->msg_counter() == 0); REQUIRE(test_sink->msg_counter() == 0);
} }

Loading…
Cancel
Save