diff --git a/cmake/modules/TestSuite.cmake b/cmake/modules/TestSuite.cmake --- a/cmake/modules/TestSuite.cmake +++ b/cmake/modules/TestSuite.cmake @@ -52,10 +52,14 @@ endmacro() set(TEST_RUNNER_TEMPLATE "${CMAKE_CURRENT_LIST_DIR}/../templates/TestRunner.cmake.in") -function(add_test_runner SUITE NAME EXECUTABLE) +function(add_test_runner SUITE NAME RUN_SERIAL EXECUTABLE) get_target_from_suite(${SUITE} SUITE_TARGET) set(TARGET "${SUITE_TARGET}-${NAME}") + if(RUN_SERIAL) + set(SHOULD_RUN_SERIAL USES_TERMINAL) + endif() + add_test_custom_target(${TARGET} TEST_COMMAND "${CMAKE_SOURCE_DIR}/cmake/utils/test_wrapper.sh" @@ -65,13 +69,16 @@ COMMENT "${SUITE}: testing ${NAME}" DEPENDS ${EXECUTABLE} VERBATIM + ${SHOULD_RUN_SERIAL} ) add_dependencies(${SUITE_TARGET} ${TARGET}) endfunction() function(add_test_to_suite SUITE NAME) - add_executable(${NAME} EXCLUDE_FROM_ALL ${ARGN}) - add_test_runner(${SUITE} ${NAME} ${NAME}) + cmake_parse_arguments(ARG "RUN_SERIAL" "" "" ${ARGN}) + + add_executable(${NAME} EXCLUDE_FROM_ALL ${ARG_UNPARSED_ARGUMENTS}) + add_test_runner(${SUITE} ${NAME} ${ARG_RUN_SERIAL} ${NAME}) get_target_from_suite(${SUITE} TARGET) set_property( @@ -82,7 +89,7 @@ function(add_boost_unit_tests_to_suite SUITE NAME) cmake_parse_arguments(ARG - "" + "RUN_SERIAL" "" "TESTS" ${ARGN} @@ -98,6 +105,7 @@ add_test_runner( ${SUITE} ${_test_name} + ${ARG_RUN_SERIAL} ${NAME} -t "${_test_name}" -l test_suite ) set_property( diff --git a/src/leveldb/CMakeLists.txt b/src/leveldb/CMakeLists.txt --- a/src/leveldb/CMakeLists.txt +++ b/src/leveldb/CMakeLists.txt @@ -198,7 +198,11 @@ target_link_libraries(leveldb_test_base leveldb) function(create_leveldb_test NAME FILES) - add_test_to_suite(leveldb ${NAME} EXCLUDE_FROM_ALL ${FILES}) + add_test_to_suite(leveldb + ${NAME} + RUN_SERIAL + ${FILES} + ) target_link_libraries(${NAME} leveldb_test_base) endfunction() diff --git a/src/test/CMakeLists.txt b/src/test/CMakeLists.txt --- a/src/test/CMakeLists.txt +++ b/src/test/CMakeLists.txt @@ -230,6 +230,7 @@ add_test_runner( ${SUITE_UPGRADE_ACTIVATED} "${_test_name}" + OFF # RUN_SERIAL ${EXECUTABLE} -t "${_test_name}" # Dec. 1st, 2019 at 00:00:00 -- -phononactivationtime=1575158400