From da28b85497357330be5bc4ac034a6997c5c84fcc Mon Sep 17 00:00:00 2001 From: Dennis Klein Date: Thu, 29 Aug 2019 17:22:11 +0200 Subject: [PATCH] Tests.SDK: Add optional DDS Tools API stability tests --- test/CMakeLists.txt | 16 ++++++++++++++-- test/DDSToolsAPIStabilityTest.cmake.in | 24 ++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 test/DDSToolsAPIStabilityTest.cmake.in diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 1816e0b4..c42e6428 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -299,8 +299,20 @@ if(BUILD_SDK) DDS::dds_tools_lib INCLUDES ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} - TIMEOUT 15 - RUN_SERIAL ON + TIMEOUT 30 ${definitions} ) + + if(DDS_TESTS) + foreach(i RANGE 1 ${DDS_TESTS}) + add_test(NAME DDSToolsAPIStabilityTest_${i} + COMMAND ${CMAKE_CURRENT_BINARY_DIR}/testsuite_SDK --gtest_filter=TopologyHelper.MakeTopology --gtest_also_run_disabled_tests + ) + set_tests_properties(DDSToolsAPIStabilityTest_${i} PROPERTIES TIMEOUT 10) + endforeach() + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/DDSToolsAPIStabilityTest.cmake.in + ${CMAKE_BINARY_DIR}/DDSToolsAPIStabilityTest.cmake + @ONLY + ) + endif() endif() diff --git a/test/DDSToolsAPIStabilityTest.cmake.in b/test/DDSToolsAPIStabilityTest.cmake.in new file mode 100644 index 00000000..468b8b2e --- /dev/null +++ b/test/DDSToolsAPIStabilityTest.cmake.in @@ -0,0 +1,24 @@ +################################################################################ +# Copyright (C) 2019 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH # +# # +# This software is distributed under the terms of the # +# GNU Lesser General Public Licence (LGPL) version 3, # +# copied verbatim in the file "LICENSE" # +################################################################################ + +include(@CMAKE_SOURCE_DIR@/CTestConfig.cmake) + +cmake_host_system_information(RESULT fqdn QUERY FQDN) +set(CTEST_SITE ${fqdn}) +set(CTEST_BUILD_NAME "@CMAKE_SYSTEM@ - @CMAKE_CXX_COMPILER_ID@ @CMAKE_CXX_COMPILER_VERSION@ - DDS Stability Test (@DDS_TESTS@ iterations, DDS: @DDS_VERSION@, FairMQ: @PROJECT_GIT_VERSION@, Boost: @Boost_VERSION@)") +set(CTEST_SOURCE_DIRECTORY @CMAKE_SOURCE_DIR@) +set(CTEST_BINARY_DIRECTORY @CMAKE_BINARY_DIR@) +file(REMOVE_RECURSE ${CTEST_BINARY_DIRECTORY}/test/.DDS) + +ctest_start(Experimental) +ctest_test(INCLUDE "DDSToolsAPIStabilityTest") +ctest_submit() + +set(dds_logs @CMAKE_BINARY_DIR@/dds_logs.tar.gz) +execute_process(COMMAND ${CMAKE_COMMAND} -E tar "cfvz" "${dds_logs}" "@CMAKE_BINARY_DIR@/test/.DDS" OUTPUT_QUIET) +message("DDS logs packed: ${dds_logs}")