summaryrefslogtreecommitdiffstats
path: root/Tests/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/CMakeLists.txt')
-rw-r--r--Tests/CMakeLists.txt50
1 files changed, 47 insertions, 3 deletions
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 7bc8b33..6a08b3c 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1393,26 +1393,45 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
endforeach()
- IF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
+ IF (CMAKE_TESTS_CDASH_SERVER)
+ SET(regex "^([^:]+)://([^/]+)(/.*)$")
+
+ IF ("${CMAKE_TESTS_CDASH_SERVER}" MATCHES "${regex}")
+ SET(protocol "${CMAKE_MATCH_1}")
+ SET(server "${CMAKE_MATCH_2}")
+ SET(path "${CMAKE_MATCH_3}")
+ ELSE ("${CMAKE_TESTS_CDASH_SERVER}" MATCHES "${regex}")
+ SET(protocol "http")
+ SET(server "www.cdash.org")
+ SET(path "/CDash")
+ MESSAGE("warning: CMAKE_TESTS_CDASH_SERVER does not match expected regex...")
+ MESSAGE(" ...using default url='${protocol}://${server}${path}' for CTestTest[23]")
+ ENDIF ("${CMAKE_TESTS_CDASH_SERVER}" MATCHES "${regex}")
+ ENDIF (CMAKE_TESTS_CDASH_SERVER)
+
+
+ IF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS AND CMAKE_TESTS_CDASH_SERVER)
CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest/test.cmake.in"
"${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" @ONLY ESCAPE_QUOTES)
ADD_TEST(CTestTest ${CMAKE_CTEST_COMMAND}
-S "${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" -V
--output-log "${CMake_BINARY_DIR}/Tests/CTestTest/testOutput.log"
)
+
CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest2/test.cmake.in"
"${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" @ONLY ESCAPE_QUOTES)
ADD_TEST(CTestTest2 ${CMAKE_CTEST_COMMAND}
-S "${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" -V
--output-log "${CMake_BINARY_DIR}/Tests/CTestTest2/testOutput.log"
)
+
CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest3/test.cmake.in"
"${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" @ONLY ESCAPE_QUOTES)
ADD_TEST(CTestTest3 ${CMAKE_CTEST_COMMAND}
-S "${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" -V
--output-log "${CMake_BINARY_DIR}/Tests/CTestTest3/testOutput.log"
)
-
+
# these tests take a long time, make sure they have it
# if timeouts have not already been set
GET_TEST_PROPERTY(CTestTest TIMEOUT PREVIOUS_TIMEOUT)
@@ -1432,7 +1451,32 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
SET_TESTS_PROPERTIES ( CTestTest3
PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- ENDIF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
+ ENDIF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS AND CMAKE_TESTS_CDASH_SERVER)
+
+ IF(NOT DEFINED CTEST_RUN_CTestSubmitLargeOutput)
+ SET(CTEST_RUN_CTestSubmitLargeOutput OFF)
+
+ IF (CMAKE_TESTS_CDASH_SERVER AND "${server}" STREQUAL "localhost")
+ SET(CTEST_RUN_CTestSubmitLargeOutput ON)
+ ENDIF (CMAKE_TESTS_CDASH_SERVER AND "${server}" STREQUAL "localhost")
+ ENDIF(NOT DEFINED CTEST_RUN_CTestSubmitLargeOutput)
+
+ IF(CTEST_RUN_CTestSubmitLargeOutput)
+ CONFIGURE_FILE(
+ "${CMake_SOURCE_DIR}/Tests/CTestSubmitLargeOutput/test.cmake.in"
+ "${CMake_BINARY_DIR}/Tests/CTestSubmitLargeOutput/test.cmake"
+ @ONLY ESCAPE_QUOTES
+ )
+ ADD_TEST(CTestSubmitLargeOutput ${CMAKE_CTEST_COMMAND}
+ -S "${CMake_BINARY_DIR}/Tests/CTestSubmitLargeOutput/test.cmake" -V
+ --output-log "${CMake_BINARY_DIR}/Tests/CTestSubmitLargeOutput/testOutput.log"
+ )
+
+ # This test only passes if it fails to submit properly...
+ #
+ SET_TESTS_PROPERTIES(CTestSubmitLargeOutput PROPERTIES
+ PASS_REGULAR_EXPRESSION "Errors occurred during submission")
+ ENDIF(CTEST_RUN_CTestSubmitLargeOutput)
IF (CMAKE_RUN_LONG_TESTS AND TEST_KDE4_STABLE_BRANCH)
IF(UNIX)