From 6375e4cdd236c6e370163b4b514779db53d02635 Mon Sep 17 00:00:00 2001 From: Aliaksandr Adziareika Date: Tue, 3 Mar 2026 08:46:49 +0100 Subject: [PATCH] Rework tests to be compilable with installed openDAQ - Replace daq::test_utils with installable daq::opendaq_test_utils - Fetch GTest/GMock separately via opendaq_module_setup_gtest() - Remove daq::test_utils from asam_cmp_common_lib production dependencies - Update test_app instances with daq::ModuleManager() factory call - Guard coverage setup with to avoid errors when building against installed SDK - Remove unused variables in tests to avoid compile time warning/errors --- external/CMakeLists.txt | 5 +++++ .../tests/CMakeLists.txt | 7 ++++--- .../tests/test_app.cpp | 19 ++++++------------- .../asam_cmp_data_sink/tests/CMakeLists.txt | 6 ++++-- modules/asam_cmp_data_sink/tests/test_app.cpp | 19 ++++++++----------- .../asam_cmp_common_lib/src/CMakeLists.txt | 1 - .../asam_cmp_common_lib/tests/CMakeLists.txt | 6 ++++-- .../asam_cmp_common_lib/tests/test_app.cpp | 13 ++++++------- 8 files changed, 37 insertions(+), 39 deletions(-) diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index 84779fd..65e8bd4 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -1,5 +1,10 @@ set(CMAKE_FOLDER external) list(APPEND CMAKE_MESSAGE_CONTEXT external) +if (${REPO_OPTION_PREFIX}_ENABLE_TESTS AND NOT TARGET gtest) + set(BUILD_GMOCK ON) + opendaq_module_setup_gtest(1.12.1) +endif() + add_subdirectory(PcapPlusPlus) add_subdirectory(AsamCmpLib) diff --git a/modules/asam_cmp_capture_module/tests/CMakeLists.txt b/modules/asam_cmp_capture_module/tests/CMakeLists.txt index c60fa2d..b4a620a 100644 --- a/modules/asam_cmp_capture_module/tests/CMakeLists.txt +++ b/modules/asam_cmp_capture_module/tests/CMakeLists.txt @@ -27,8 +27,9 @@ endif() add_executable(${TEST_APP} ${TEST_SOURCES} ${TEST_HEADERS} ) -target_link_libraries(${TEST_APP} PRIVATE daq::opendaq - daq::test_utils +target_link_libraries(${TEST_APP} PRIVATE ${OPENDAQ_SDK_TARGET_NAMESPACE}::opendaq_test_utils + gtest + gmock asam_cmp_capture_module_lib ) @@ -38,6 +39,6 @@ add_test(NAME ${TEST_APP} set_target_properties(${TEST_APP} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY $) -if (OPENDAQ_ENABLE_COVERAGE) +if (COMMAND setup_target_for_coverage AND OPENDAQ_ENABLE_COVERAGE) setup_target_for_coverage(${TEST_APP}coverage ${TEST_APP} ${TEST_APP}coverage) endif() diff --git a/modules/asam_cmp_capture_module/tests/test_app.cpp b/modules/asam_cmp_capture_module/tests/test_app.cpp index 4f40a88..dc17e02 100644 --- a/modules/asam_cmp_capture_module/tests/test_app.cpp +++ b/modules/asam_cmp_capture_module/tests/test_app.cpp @@ -1,27 +1,20 @@ +#include + #include #include -#include -#include -#include -#include -#include -#include -#include - int main(int argc, char** args) { using namespace daq; - daq::daqInitializeCoreObjectsTesting(); - daqInitModuleManagerLibrary(); + { + daq::ModuleManager("."); + } testing::InitGoogleTest(&argc, args); testing::TestEventListeners& listeners = testing::UnitTest::GetInstance()->listeners(); listeners.Append(new DaqMemCheckListener()); - auto res = RUN_ALL_TESTS(); - - return res; + return RUN_ALL_TESTS(); } diff --git a/modules/asam_cmp_data_sink/tests/CMakeLists.txt b/modules/asam_cmp_data_sink/tests/CMakeLists.txt index 2c1f980..37fc1fd 100644 --- a/modules/asam_cmp_data_sink/tests/CMakeLists.txt +++ b/modules/asam_cmp_data_sink/tests/CMakeLists.txt @@ -18,7 +18,9 @@ endif() add_executable(${TEST_APP} ${TEST_SOURCES} ) -target_link_libraries(${TEST_APP} PRIVATE daq::test_utils +target_link_libraries(${TEST_APP} PRIVATE ${OPENDAQ_SDK_TARGET_NAMESPACE}::opendaq_test_utils + gtest + gmock asam_cmp_data_sink_lib ) @@ -28,6 +30,6 @@ add_test(NAME ${TEST_APP} set_target_properties(${TEST_APP} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY $) -if (OPENDAQ_ENABLE_COVERAGE) +if (COMMAND setup_target_for_coverage AND OPENDAQ_ENABLE_COVERAGE) setup_target_for_coverage(${TEST_APP}coverage ${TEST_APP} ${TEST_APP}coverage) endif() diff --git a/modules/asam_cmp_data_sink/tests/test_app.cpp b/modules/asam_cmp_data_sink/tests/test_app.cpp index 87f8b95..25384c1 100644 --- a/modules/asam_cmp_data_sink/tests/test_app.cpp +++ b/modules/asam_cmp_data_sink/tests/test_app.cpp @@ -1,19 +1,18 @@ +#include + #include #include -#include -#include -#include -#include -#include -#include +#include +#include int main(int argc, char** args) { using namespace daq; - daqInitializeCoreObjectsTesting(); - daqInitModuleManagerLibrary(); + { + daq::ModuleManager("."); + } testing::InitGoogleTest(&argc, args); @@ -25,7 +24,5 @@ int main(int argc, char** args) testing::TestEventListeners& listeners = testing::UnitTest::GetInstance()->listeners(); listeners.Append(new DaqMemCheckListener()); - auto res = RUN_ALL_TESTS(); - - return res; + return RUN_ALL_TESTS(); } diff --git a/shared/libraries/asam_cmp_common_lib/src/CMakeLists.txt b/shared/libraries/asam_cmp_common_lib/src/CMakeLists.txt index fddd28b..c5e66fa 100644 --- a/shared/libraries/asam_cmp_common_lib/src/CMakeLists.txt +++ b/shared/libraries/asam_cmp_common_lib/src/CMakeLists.txt @@ -42,7 +42,6 @@ endif() target_link_libraries(${PROJECT_NAME} PUBLIC daq::opendaq Pcap++ asam_cmp - daq::test_utils ) target_include_directories(${PROJECT_NAME} PUBLIC $ diff --git a/shared/libraries/asam_cmp_common_lib/tests/CMakeLists.txt b/shared/libraries/asam_cmp_common_lib/tests/CMakeLists.txt index 02a0f48..c607cfe 100644 --- a/shared/libraries/asam_cmp_common_lib/tests/CMakeLists.txt +++ b/shared/libraries/asam_cmp_common_lib/tests/CMakeLists.txt @@ -7,7 +7,9 @@ set(TEST_SOURCES test_app.cpp add_executable(${TEST_APP} ${TEST_SOURCES} ) -target_link_libraries(${TEST_APP} PRIVATE daq::test_utils +target_link_libraries(${TEST_APP} PRIVATE ${OPENDAQ_SDK_TARGET_NAMESPACE}::opendaq_test_utils + gtest + gmock asam_cmp_data_sink ) @@ -17,6 +19,6 @@ add_test(NAME ${TEST_APP} set_target_properties(${TEST_APP} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY $) -if (OPENDAQ_ENABLE_COVERAGE) +if (COMMAND setup_target_for_coverage AND OPENDAQ_ENABLE_COVERAGE) setup_target_for_coverage(${TEST_APP}coverage ${TEST_APP} ${TEST_APP}coverage) endif() diff --git a/shared/libraries/asam_cmp_common_lib/tests/test_app.cpp b/shared/libraries/asam_cmp_common_lib/tests/test_app.cpp index 063e0b3..8237d8c 100644 --- a/shared/libraries/asam_cmp_common_lib/tests/test_app.cpp +++ b/shared/libraries/asam_cmp_common_lib/tests/test_app.cpp @@ -1,21 +1,20 @@ +#include + #include #include -#include -#include int main(int argc, char** args) { using namespace daq; - daqInitializeCoreObjectsTesting(); - daqInitModuleManagerLibrary(); + { + daq::ModuleManager("."); + } testing::InitGoogleTest(&argc, args); testing::TestEventListeners& listeners = testing::UnitTest::GetInstance()->listeners(); listeners.Append(new DaqMemCheckListener()); - auto res = RUN_ALL_TESTS(); - - return res; + return RUN_ALL_TESTS(); }