summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/WorkingDirectory
diff options
context:
space:
mode:
authorCraig Scott <craig.scott@crascit.com>2018-03-04 10:30:35 (GMT)
committerCraig Scott <craig.scott@crascit.com>2018-03-04 11:27:59 (GMT)
commite654622aee22655c418a9c663fad79243ca0c819 (patch)
tree059f37f02283b368388e50f360ffbace9e8f0a49 /Tests/RunCMake/WorkingDirectory
parenta865f0beb2e9f8d92e021855c773ab90eaf24581 (diff)
downloadCMake-e654622aee22655c418a9c663fad79243ca0c819.zip
CMake-e654622aee22655c418a9c663fad79243ca0c819.tar.gz
CMake-e654622aee22655c418a9c663fad79243ca0c819.tar.bz2
Tests: Add --build-and-test test case
Checks that giving an invalid build directory to ctest --build-and-test will fail.
Diffstat (limited to 'Tests/RunCMake/WorkingDirectory')
-rw-r--r--Tests/RunCMake/WorkingDirectory/RunCMakeTest.cmake6
-rw-r--r--Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-check.cmake3
-rw-r--r--Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-result.txt1
-rw-r--r--Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir.cmake7
4 files changed, 17 insertions, 0 deletions
diff --git a/Tests/RunCMake/WorkingDirectory/RunCMakeTest.cmake b/Tests/RunCMake/WorkingDirectory/RunCMakeTest.cmake
index a57cacb..a7685ae 100644
--- a/Tests/RunCMake/WorkingDirectory/RunCMakeTest.cmake
+++ b/Tests/RunCMake/WorkingDirectory/RunCMakeTest.cmake
@@ -1,3 +1,9 @@
include(RunCTest)
run_ctest(dirNotExist)
+run_ctest(buildAndTestNoBuildDir
+ --build-and-test
+ ${RunCMake_BINARY_DIR}/buildAndTestNoBuildDir
+ ${RunCMake_BINARY_DIR}/buildAndTestNoBuildDir/CMakeLists.txt # Deliberately a file
+ --build-generator "${RunCMake_GENERATOR}"
+)
diff --git a/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-check.cmake b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-check.cmake
new file mode 100644
index 0000000..fcfe461
--- /dev/null
+++ b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-check.cmake
@@ -0,0 +1,3 @@
+if(EXISTS ${RunCMake_TEST_BINARY_DIR}/CMakeCache.txt)
+ set(RunCMake_TEST_FAILED "Default build dir ${RunCMake_TEST_BINARY_DIR} was used, should not have been")
+endif()
diff --git a/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-result.txt b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-result.txt
new file mode 100644
index 0000000..0617a38
--- /dev/null
+++ b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir-result.txt
@@ -0,0 +1 @@
+^[^0][0-9]*$
diff --git a/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir.cmake b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir.cmake
new file mode 100644
index 0000000..ad795c4
--- /dev/null
+++ b/Tests/RunCMake/WorkingDirectory/buildAndTestNoBuildDir.cmake
@@ -0,0 +1,7 @@
+# We want a single test that always passes. We should never actually get to
+# configure with this file, so we use a successful configure-build-test
+# sequence to denote failure of the test case.
+include(CTest)
+add_test(NAME willPass
+ COMMAND ${CMAKE_COMMAND} -E touch someFile.txt
+)