diff options
author | Kevin Puetz <PuetzKevinA@JohnDeere.com> | 2020-04-03 20:07:01 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2020-08-26 15:27:05 (GMT) |
commit | 6a6f1d1edd73902053d215ce3dc12267f05501e2 (patch) | |
tree | 9485d231fb1020279f1bc5bba862c33881bdf9be /Tests/RunCMake/CTest | |
parent | 6cbaa8eb931950b8a834acc0c6f78a7290c4d3d9 (diff) | |
download | CMake-6a6f1d1edd73902053d215ce3dc12267f05501e2.zip CMake-6a6f1d1edd73902053d215ce3dc12267f05501e2.tar.gz CMake-6a6f1d1edd73902053d215ce3dc12267f05501e2.tar.bz2 |
CTest: exit nonzero after message(SEND_ERROR|FATAL_ERROR)
Fixes: #21004
Diffstat (limited to 'Tests/RunCMake/CTest')
-rw-r--r-- | Tests/RunCMake/CTest/RunCMakeTest.cmake | 9 | ||||
-rw-r--r-- | Tests/RunCMake/CTest/TestfileErrors-Script.cmake | 4 | ||||
-rw-r--r-- | Tests/RunCMake/CTest/TestfileErrors-test-result.txt | 1 | ||||
-rw-r--r-- | Tests/RunCMake/CTest/TestfileErrors-test-stderr.txt | 11 | ||||
-rw-r--r-- | Tests/RunCMake/CTest/TestfileErrors.cmake | 3 |
5 files changed, 28 insertions, 0 deletions
diff --git a/Tests/RunCMake/CTest/RunCMakeTest.cmake b/Tests/RunCMake/CTest/RunCMakeTest.cmake index 761224a..62606f8 100644 --- a/Tests/RunCMake/CTest/RunCMakeTest.cmake +++ b/Tests/RunCMake/CTest/RunCMakeTest.cmake @@ -18,3 +18,12 @@ function(run_CMakeCTestArguments) run_cmake_command(CMakeCTestArguments-test ${CMAKE_COMMAND} --build . --config Debug --target "${test}") endfunction() run_CMakeCTestArguments() + +function(run_TestfileErrors) + set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/TestfileErrors-build) + run_cmake(TestfileErrors) + set(RunCMake_TEST_NO_CLEAN 1) + run_cmake_command(TestfileErrors-build ${CMAKE_COMMAND} --build . --config Debug) + run_cmake_command(TestfileErrors-test ${CMAKE_CTEST_COMMAND} -C Debug) +endfunction() +run_TestfileErrors() diff --git a/Tests/RunCMake/CTest/TestfileErrors-Script.cmake b/Tests/RunCMake/CTest/TestfileErrors-Script.cmake new file mode 100644 index 0000000..d9fc7c8 --- /dev/null +++ b/Tests/RunCMake/CTest/TestfileErrors-Script.cmake @@ -0,0 +1,4 @@ +message(SEND_ERROR "SEND_ERROR") +message(FATAL_ERROR "FATAL_ERROR") +# This shouldn't get printed because the script aborts on FATAL_ERROR +message(SEND_ERROR "reaching the unreachable") diff --git a/Tests/RunCMake/CTest/TestfileErrors-test-result.txt b/Tests/RunCMake/CTest/TestfileErrors-test-result.txt new file mode 100644 index 0000000..d197c91 --- /dev/null +++ b/Tests/RunCMake/CTest/TestfileErrors-test-result.txt @@ -0,0 +1 @@ +[^0] diff --git a/Tests/RunCMake/CTest/TestfileErrors-test-stderr.txt b/Tests/RunCMake/CTest/TestfileErrors-test-stderr.txt new file mode 100644 index 0000000..a3a476b --- /dev/null +++ b/Tests/RunCMake/CTest/TestfileErrors-test-stderr.txt @@ -0,0 +1,11 @@ +CMake Error at [^ +]*/Tests/RunCMake/CTest/TestfileErrors-Script.cmake:1 \(message\): + SEND_ERROR +Call Stack \(most recent call first\): + CTestTestfile.cmake:[0-9]+ \(include\) ++ +CMake Error at [^ +]*/Tests/RunCMake/CTest/TestfileErrors-Script.cmake:2 \(message\): + FATAL_ERROR +Call Stack \(most recent call first\): + CTestTestfile.cmake:[0-9]+ \(include\) diff --git a/Tests/RunCMake/CTest/TestfileErrors.cmake b/Tests/RunCMake/CTest/TestfileErrors.cmake new file mode 100644 index 0000000..676eb47 --- /dev/null +++ b/Tests/RunCMake/CTest/TestfileErrors.cmake @@ -0,0 +1,3 @@ +include(CTest) +add_test(NAME "unreachable" COMMAND ${CMAKE_COMMAND} -E true) +set_property(DIRECTORY PROPERTY TEST_INCLUDE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/TestfileErrors-Script.cmake) |