@@ -4,26 +4,32 @@ option(BUILD_SLICK_LOGGER_TESTING "Build tests" ON)
44if (BUILD_SLICK_LOGGER_TESTING)
55 find_package (GTest QUIET )
66
7- if (GTest_FOUND)
8- add_executable (slick_logger_tests test_logger.cpp)
9- target_include_directories (slick_logger_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
10- target_link_libraries (slick_logger_tests slick_logger GTest::gtest_main)
11- add_test (NAME slick_logger_tests COMMAND slick_logger_tests)
7+ if (NOT GTest_FOUND)
8+ include (FetchContent)
9+ FetchContent_Declare(
10+ googletest
11+ URL https://github.com/google/googletest/archive/03597a01ee50ed33e9dfd640b249b4be3799d395.zip
12+ )
13+ # For Windows: Prevent overriding the parent project's compiler/linker settings
14+ set (gtest_force_shared_crt ON CACHE BOOL "" FORCE)
15+ FetchContent_MakeAvailable(googletest)
16+ endif ()
1217
13- add_executable (slick_logger_sink_tests test_sinks .cpp)
14- target_include_directories (slick_logger_sink_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
15- target_link_libraries (slick_logger_sink_tests slick_logger GTest::gtest_main)
16- add_test (NAME slick_logger_sink_tests COMMAND slick_logger_sink_tests )
18+ add_executable (slick_logger_tests test_logger .cpp)
19+ target_include_directories (slick_logger_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
20+ target_link_libraries (slick_logger_tests slick_logger GTest::gtest_main)
21+ add_test (NAME slick_logger_tests COMMAND slick_logger_tests )
1722
18- add_executable (slick_logger_timestamp_tests test_timestamp.cpp)
19- target_include_directories (slick_logger_timestamp_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
20- target_link_libraries (slick_logger_timestamp_tests slick_logger GTest::gtest_main)
21- add_test (NAME slick_logger_timestamp_tests COMMAND slick_logger_timestamp_tests)
22-
23- message (STATUS "GTest found - building slick_logger tests" )
24- else ()
25- message (STATUS "GTest not found - skipping tests" )
26- endif ()
23+ add_executable (slick_logger_sink_tests test_sinks.cpp)
24+ target_include_directories (slick_logger_sink_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
25+ target_link_libraries (slick_logger_sink_tests slick_logger GTest::gtest_main)
26+ add_test (NAME slick_logger_sink_tests COMMAND slick_logger_sink_tests)
27+
28+ add_executable (slick_logger_timestamp_tests test_timestamp.cpp)
29+ target_include_directories (slick_logger_timestamp_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /include )
30+ target_link_libraries (slick_logger_timestamp_tests slick_logger GTest::gtest_main)
31+ add_test (NAME slick_logger_timestamp_tests COMMAND slick_logger_timestamp_tests)
32+
2733else ()
2834 message (STATUS "Testing disabled - skipping slick_logger tests" )
2935endif ()
0 commit comments