diff --git a/cmake/common/gtest.cmake b/cmake/common/gtest.cmake index 454708daaa5..3d82e211a99 100644 --- a/cmake/common/gtest.cmake +++ b/cmake/common/gtest.cmake @@ -107,7 +107,8 @@ macro(add_gtest) # add filtering statement if required if(GTEST_IGNORE) - set(gtest_filter "--gtest_filter=${GTEST_IGNORE}") + list(JOIN GTEST_IGNORE ":" gtest_filter) + string(PREPEND gtest_filter "--gtest_filter=-") endif() add_test(NAME ${test} COMMAND ${command} ${gtest_filter}) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index e8e940a068e..db22b0b23c5 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -27,12 +27,18 @@ set(MEMORYCHECK_SUPPRESSIONS_FILE ${MEMORYCHECK_SUPPRESSIONS_FILE_TMP} CACHE FIL # Check if /etc/hosts file has been modified to add dummy host test subjects if(WIN32) - execute_process(COMMAND powershell -C Resolve-DNSName www.acme.com.test + execute_process(COMMAND powershell -C Resolve-DNSName -Name www.acme.com.test -CacheOnly RESULT_VARIABLE EPROSIMA_TEST_DNS_NOT_SET_UP OUTPUT_QUIET ERROR_QUIET) -else(WIN32) +elseif(APPLE) + execute_process( + COMMAND dscacheutil -q host -a name www.acme.com.test + COMMAND grep www.acme.com.test + RESULT_VARIABLE EPROSIMA_TEST_DNS_NOT_SET_UP OUTPUT_QUIET ERROR_QUIET) +else() execute_process(COMMAND getent hosts www.acme.com.test RESULT_VARIABLE EPROSIMA_TEST_DNS_NOT_SET_UP OUTPUT_QUIET ERROR_QUIET) -endif(WIN32) +endif() +message(STATUS "EPROSIMA_TEST_DNS_NOT_SET_UP: '${EPROSIMA_TEST_DNS_NOT_SET_UP}'") ############################################################################### # Testing diff --git a/test/blackbox/CMakeLists.txt b/test/blackbox/CMakeLists.txt index f8ac58eadee..f0dadc15a87 100644 --- a/test/blackbox/CMakeLists.txt +++ b/test/blackbox/CMakeLists.txt @@ -160,7 +160,8 @@ macro(add_blackbox_gtest) # add filtering statement if required if(GTEST_IGNORE) - set(gtest_filter "--gtest_filter=${GTEST_IGNORE}") + list(JOIN GTEST_IGNORE ":" gtest_filter) + string(PREPEND gtest_filter "--gtest_filter=-") endif() add_test(NAME ${test} COMMAND ${command} ${gtest_filter}) @@ -232,12 +233,18 @@ if(NOT LibP11_FOUND) if(GTEST_INDIVIDUAL) set(pkcs_filter "[Pp][Kk][Cc][Ss]") else() - set(pkcs_filter "-*pkcs*") + set(pkcs_filter "*pkcs*") endif() # GTEST_INDIVIDUAL + message(STATUS "Ignoring tests: '${pkcs_filter}'") endif() # LibP11_FOUND if(EPROSIMA_TEST_DNS_NOT_SET_UP) - set(dns_filter "-*ServerClientEnvironmentSetUpDNS*") + if(GTEST_INDIVIDUAL) + set(dns_filter "ServerClientEnvironmentSetUpDNS") + else() + set(dns_filter "*ServerClientEnvironmentSetUpDNS*") + endif() # GTEST_INDIVIDUAL + message(STATUS "Ignoring tests: '${dns_filter}'") endif() if(SECURITY) diff --git a/test/unittest/dds/participant/CMakeLists.txt b/test/unittest/dds/participant/CMakeLists.txt index 9d3b8c74adb..872b6a46ea3 100644 --- a/test/unittest/dds/participant/CMakeLists.txt +++ b/test/unittest/dds/participant/CMakeLists.txt @@ -47,7 +47,8 @@ target_link_libraries(ParticipantTests fastrtps fastcdr foonathan_memory ${CMAKE_DL_LIBS}) if(EPROSIMA_TEST_DNS_NOT_SET_UP) - set(dns_filter "-ParticipantTests.SimpleParticipantRemoteServerListConfigurationDNS") + set(dns_filter "ParticipantTests.SimpleParticipantRemoteServerListConfigurationDNS") + message(STATUS "Ignoring tests: '${dns_filter}'") endif() add_gtest(ParticipantTests SOURCES ${PARTICIPANTTESTS_SOURCE} IGNORE ${dns_filter}) diff --git a/test/unittest/utils/CMakeLists.txt b/test/unittest/utils/CMakeLists.txt index 893eaeb519c..8cd3eca9286 100644 --- a/test/unittest/utils/CMakeLists.txt +++ b/test/unittest/utils/CMakeLists.txt @@ -116,17 +116,10 @@ if(QNX) endif() if(EPROSIMA_TEST_DNS_NOT_SET_UP) set(IGNORE_COMMAND LocatorDNSTests) + message(STATUS "Ignoring tests: '${IGNORE_COMMAND}'") endif() add_gtest(LocatorTests SOURCES ${LOCATORTESTS_SOURCE} IGNORE ${IGNORE_COMMAND}) unset(IGNORE_COMMAND) -# Skip DNS related tests when not running on our CI -if(NOT(EPROSIMA_BUILD)) - message(STATUS "Ignoring DNS tests") - set(CTEST_CUSTOM_TESTS_IGNORE - ${CTEST_CUSTOM_TESTS_IGNORE} - LocatorDNSTests - ) -endif() add_executable(FixedSizeQueueTests ${FIXEDSIZEQUEUETESTS_SOURCE}) target_include_directories(FixedSizeQueueTests PRIVATE