diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake index 7410ca33ceb00483841472c981f7cfc9bc984ac0..6c9f67af01b0a0549c7314012c0dded352cd9ac0 100644 --- a/scripts/cmake/test/AddTest.cmake +++ b/scripts/cmake/test/AddTest.cmake @@ -95,7 +95,10 @@ function(AddTest) if(NOT DEFINED AddTest_REQUIREMENTS) set(AddTest_REQUIREMENTS TRUE) endif() - if(NOT DEFINED AddTest_RUNTIME) + set(timeout ${ogs.ctest.large_runtime}) + if(DEFINED AddTest_RUNTIME) + math(EXPR timeout "${AddTest_RUNTIME} * 3") + else() set(AddTest_RUNTIME 1) endif() if(NOT DEFINED AddTest_WORKING_DIRECTORY) @@ -410,9 +413,13 @@ Use six arguments version of AddTest with absolute and relative tolerances" endif() current_dir_as_list(ProcessLib DIR_LABELS) - set_tests_properties( - ${TEST_NAME} PROPERTIES COST ${AddTest_RUNTIME} DISABLED - ${AddTest_DISABLED} LABELS "${DIR_LABELS}" + + set_tests_properties( ${TEST_NAME} + PROPERTIES + COST ${AddTest_RUNTIME} + DISABLED ${AddTest_DISABLED} + LABELS "${DIR_LABELS}" + TIMEOUT ${timeout} ) add_dependencies(ctest ${AddTest_EXECUTABLE}) diff --git a/scripts/cmake/test/Test.cmake b/scripts/cmake/test/Test.cmake index a26a61b0f75b969beec8b5f8723fc65d4e39694f..e8be884df48e4ae2e49fcffcd0950e01828fb759 100644 --- a/scripts/cmake/test/Test.cmake +++ b/scripts/cmake/test/Test.cmake @@ -63,7 +63,7 @@ add_custom_target( COMMAND ${CMAKE_CTEST_COMMAND} -T Test --force-new-ctest-process --output-on-failure --output-log Tests/ctest.log --exclude-regex LARGE - ${CONFIG_PARAMETER} --timeout 900 # 15 minutes + ${CONFIG_PARAMETER} DEPENDS ${test_dependencies} ctest-cleanup USES_TERMINAL ) @@ -77,7 +77,7 @@ add_custom_target( COMMAND ${CMAKE_CTEST_COMMAND} -T Test --force-new-ctest-process --output-on-failure --output-log Tests/ctest-large.log --tests-regex - LARGE ${CONFIG_PARAMETER} --timeout 5400 # 90 minutes + LARGE ${CONFIG_PARAMETER} DEPENDS ${test_dependencies} ctest-large-cleanup USES_TERMINAL )