cmake/Tests/CMakeTests/CMakeLists.txt

77 lines
2.4 KiB
CMake
Raw Normal View History

2013-03-16 19:13:01 +02:00
set(CMAKE_EXECUTABLE "${CMake_BIN_DIR}/cmake")
2013-03-16 19:13:01 +02:00
macro(AddCMakeTest TestName PreArgs)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/${TestName}Test.cmake.in"
2014-08-03 19:52:23 +02:00
"${CMAKE_CURRENT_BINARY_DIR}/${TestName}Test.cmake" @ONLY)
2013-03-16 19:13:01 +02:00
add_test(NAME CMake.${TestName}
COMMAND ${CMAKE_EXECUTABLE} ${PreArgs}
-P "${CMAKE_CURRENT_BINARY_DIR}/${TestName}Test.cmake" ${ARGN})
2021-09-14 00:13:48 +02:00
set_tests_properties("CMake.${TestName}" PROPERTIES LABELS "CMake;command")
2013-03-16 19:13:01 +02:00
endmacro()
AddCMakeTest(List "")
AddCMakeTest(VariableWatch "")
AddCMakeTest(Include "")
AddCMakeTest(FindBase "")
AddCMakeTest(Toolchain "")
2009-05-01 17:43:35 +03:00
AddCMakeTest(GetFilenameComponentRealpath "")
2009-10-04 10:30:41 +03:00
AddCMakeTest(Version "")
AddCMakeTest(Message "")
AddCMakeTest(File "")
AddCMakeTest(ImplicitLinkInfo "")
AddCMakeTest(ModuleNotices "")
2012-04-19 19:04:21 +03:00
AddCMakeTest(GetProperty "")
2009-11-06 22:07:41 +02:00
AddCMakeTest(If "")
2009-10-11 10:55:36 +03:00
AddCMakeTest(String "")
AddCMakeTest(Math "")
AddCMakeTest(CMakeMinimumRequired "")
2010-03-17 14:00:29 +02:00
AddCMakeTest(CompilerIdVendor "")
2013-03-16 19:13:01 +02:00
AddCMakeTest(ProcessorCount "-DKWSYS_TEST_EXE=$<TARGET_FILE:cmsysTestsCxx>")
2012-02-18 12:40:36 +02:00
AddCMakeTest(PushCheckState "")
2012-04-19 19:04:21 +03:00
AddCMakeTest(While "")
2009-10-11 10:55:36 +03:00
2010-06-23 01:18:35 +03:00
AddCMakeTest(FileDownload "")
2020-08-30 11:54:41 +02:00
set_tests_properties(CMake.FileDownload PROPERTIES
2010-06-23 01:18:35 +03:00
PASS_REGULAR_EXPRESSION "file already exists with expected MD5 sum"
2021-09-14 00:13:48 +02:00
FAIL_REGULAR_EXPRESSION "Unexpected status|incorrectly interpreted"
2010-06-23 01:18:35 +03:00
)
2014-08-03 19:52:23 +02:00
AddCMakeTest(FileDownloadBadHash "")
set_property(TEST CMake.FileDownloadBadHash PROPERTY
WILL_FAIL TRUE
)
2010-06-23 01:18:35 +03:00
2011-06-19 15:41:06 +03:00
AddCMakeTest(FileUpload "")
2013-03-16 19:13:01 +02:00
set(EndStuff_PreArgs
2009-10-11 10:55:36 +03:00
"-Ddir:STRING=${CMAKE_CURRENT_BINARY_DIR}/EndStuffTest"
)
AddCMakeTest(EndStuff "${EndStuff_PreArgs}")
2017-07-20 19:35:53 +02:00
AddCMakeTest(GetPrerequisites "-DConfiguration:STRING=$<CONFIGURATION>")
2009-10-04 10:30:41 +03:00
2014-08-03 19:52:23 +02:00
if(GIT_EXECUTABLE)
set(PolicyCheck_PreArgs
"-DCMake_BINARY_DIR:PATH=${CMake_BINARY_DIR}"
"-DCMake_SOURCE_DIR:PATH=${CMake_SOURCE_DIR}"
"-DGIT_EXECUTABLE:STRING=${GIT_EXECUTABLE}"
)
AddCMakeTest(PolicyCheck "${PolicyCheck_PreArgs}")
endif()
2009-10-04 10:30:41 +03:00
# Run CheckSourceTree as the very last test in the CMake/CTest/CPack test
# suite. It detects if any changes have been made to the CMake source tree
# by any previous configure, build or test steps.
#
2012-04-19 19:04:21 +03:00
if(GIT_EXECUTABLE)
2010-03-17 14:00:29 +02:00
string(REPLACE "\\" "/" ENV_HOME "$ENV{HOME}")
2009-10-04 10:30:41 +03:00
set(CheckSourceTree_PreArgs
"-DCMake_BINARY_DIR:PATH=${CMake_BINARY_DIR}"
"-DCMake_SOURCE_DIR:PATH=${CMake_SOURCE_DIR}"
2010-06-23 01:18:35 +03:00
"-DGIT_EXECUTABLE:STRING=${GIT_EXECUTABLE}"
2010-03-17 14:00:29 +02:00
"-DHOME:STRING=${ENV_HOME}"
)
2009-10-04 10:30:41 +03:00
AddCMakeTest(CheckSourceTree "${CheckSourceTree_PreArgs}")
2012-04-19 19:04:21 +03:00
endif()