CTest: added test for RUN_SERIAL issue #14484
This commit is contained in:
parent
384beffc39
commit
7a665ae7e3
|
@ -2074,6 +2074,8 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
|
||||||
--output-log "${CMake_BINARY_DIR}/Tests/CTestTestParallel/testOutput.log"
|
--output-log "${CMake_BINARY_DIR}/Tests/CTestTestParallel/testOutput.log"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
ADD_TEST_MACRO(CTestTestSerialInDepends ${CMAKE_CTEST_COMMAND} -j 4)
|
||||||
|
|
||||||
if(NOT BORLAND)
|
if(NOT BORLAND)
|
||||||
set(CTestLimitDashJ_EXTRA_OPTIONS --force-new-ctest-process)
|
set(CTestLimitDashJ_EXTRA_OPTIONS --force-new-ctest-process)
|
||||||
add_test_macro(CTestLimitDashJ ${CMAKE_CTEST_COMMAND} -j 4
|
add_test_macro(CTestLimitDashJ ${CMAKE_CTEST_COMMAND} -j 4
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
cmake_minimum_required(VERSION 2.8.12)
|
||||||
|
|
||||||
|
enable_testing()
|
||||||
|
|
||||||
|
function(my_add_test NAME COST)
|
||||||
|
add_test(NAME ${NAME}
|
||||||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
COMMAND ${CMAKE_CTEST_COMMAND} -DTEST_NAME=${NAME}
|
||||||
|
-S ${CMAKE_CURRENT_SOURCE_DIR}/test.ctest)
|
||||||
|
set_tests_properties(${NAME} PROPERTIES COST ${COST})
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
my_add_test(i_like_company 1000)
|
||||||
|
my_add_test(i_like_company_too 0)
|
||||||
|
|
||||||
|
my_add_test(i_have_dependencies 1000)
|
||||||
|
set_tests_properties(i_have_dependencies PROPERTIES
|
||||||
|
DEPENDS "i_want_to_be_alone")
|
||||||
|
|
||||||
|
my_add_test(i_want_to_be_alone 100)
|
||||||
|
set_tests_properties(i_want_to_be_alone PROPERTIES RUN_SERIAL 1)
|
|
@ -0,0 +1,16 @@
|
||||||
|
set(CTEST_RUN_CURRENT_SCRIPT 0)
|
||||||
|
|
||||||
|
set(LOCK_FILE "${TEST_NAME}.lock")
|
||||||
|
|
||||||
|
if("${TEST_NAME}" STREQUAL "i_want_to_be_alone")
|
||||||
|
file(GLOB LOCK_FILES *.lock)
|
||||||
|
if(LOCK_FILES)
|
||||||
|
message(FATAL_ERROR "found lock files of other tests even though this test should be running by itself: ${LOCK_FILES}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
file(WRITE "${LOCK_FILE}")
|
||||||
|
ctest_sleep(3)
|
||||||
|
file(REMOVE "${LOCK_FILE}")
|
||||||
|
|
||||||
|
return()
|
Loading…
Reference in New Issue