mirror of
https://github.com/gabime/spdlog.git
synced 2025-09-28 17:19:34 +08:00
Updated systemd sink and tests
This commit is contained in:
@@ -1,3 +1,8 @@
|
||||
find_package(PkgConfig)
|
||||
if(PkgConfig_FOUND)
|
||||
pkg_check_modules(systemd libsystemd)
|
||||
endif()
|
||||
|
||||
set(SPDLOG_UTESTS_SOURCES
|
||||
test_errors.cpp
|
||||
test_file_helper.cpp
|
||||
@@ -17,6 +22,10 @@ set(SPDLOG_UTESTS_SOURCES
|
||||
test_stdout_api.cpp
|
||||
test_dup_filter.cpp)
|
||||
|
||||
if(systemd_FOUND)
|
||||
set(SPDLOG_UTESTS_SOURCES ${SPDLOG_UTESTS_SOURCES} test_systemd.cpp)
|
||||
endif()
|
||||
|
||||
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/logs")
|
||||
enable_testing()
|
||||
|
||||
@@ -25,11 +34,14 @@ if(SPDLOG_BUILD_TESTS)
|
||||
add_executable(spdlog-utests ${SPDLOG_UTESTS_SOURCES})
|
||||
spdlog_enable_warnings(spdlog-utests)
|
||||
target_link_libraries(spdlog-utests PRIVATE spdlog)
|
||||
|
||||
if(systemd_FOUND)
|
||||
target_link_libraries(spdlog-utests PRIVATE ${systemd_LIBRARIES})
|
||||
endif()
|
||||
if(SPDLOG_SANITIZE_ADDRESS)
|
||||
spdlog_enable_sanitizer(spdlog-utests)
|
||||
endif()
|
||||
add_test(NAME spdlog-utests COMMAND spdlog-utests)
|
||||
|
||||
endif()
|
||||
|
||||
# The header-only library version tests
|
||||
@@ -37,6 +49,9 @@ if(SPDLOG_BUILD_HO_TESTS)
|
||||
add_executable(spdlog-utests-ho ${SPDLOG_UTESTS_SOURCES})
|
||||
spdlog_enable_warnings(spdlog-utests-ho)
|
||||
target_link_libraries(spdlog-utests-ho PRIVATE spdlog::spdlog_header_only)
|
||||
if(systemd_FOUND)
|
||||
target_link_libraries(spdlog-utests-ho PRIVATE ${systemd_LIBRARIES})
|
||||
endif()
|
||||
if(SPDLOG_SANITIZE_ADDRESS)
|
||||
spdlog_set_address_sanitizer(spdlog-utests-ho)
|
||||
endif()
|
||||
|
@@ -1,13 +1,15 @@
|
||||
#include "includes.h"
|
||||
#include <spdlog/sinks/systemd_sink.h>
|
||||
#include "spdlog/sinks/systemd_sink.h"
|
||||
|
||||
TEST_CASE("systemd", "[all]")
|
||||
{
|
||||
auto systemd_sink = std::make_shared<spdlog::sinks::systemd_sink_st>();
|
||||
systemd_sink->set_level(spdlog::level::level_enum::err);
|
||||
spdlog::logger logger("spdlog_systemd_test", systemd_sink);
|
||||
|
||||
logger.debug("test debug");
|
||||
SPDLOG_LOGGER_ERROR((&logger), "test error");
|
||||
logger.info("test info");
|
||||
logger.set_level(spdlog::level::trace);
|
||||
logger.trace("test spdlog trace");
|
||||
logger.debug("test spdlog debug");
|
||||
SPDLOG_LOGGER_INFO((&logger), "test spdlog info");
|
||||
SPDLOG_LOGGER_WARN((&logger), "test spdlog warn");
|
||||
SPDLOG_LOGGER_ERROR((&logger), "test spdlog error");
|
||||
SPDLOG_LOGGER_CRITICAL((&logger), "test spdlog critical");
|
||||
}
|
||||
|
Reference in New Issue
Block a user