summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-10-17 13:41:29 (GMT)
committerKitware Robot <kwrobot@kitware.com>2023-10-17 13:41:38 (GMT)
commitec916350db5e45dbd423b7ab93f17004d06b1e7c (patch)
treebe1fc0801209b11cee4311f3aa119f848ea9ef04 /Tests/RunCMake
parentb15d507284dd2f72951de6628d57e0c75b6f00cf (diff)
parent35f031e3b2ed09d3c2a935e61ea621b9a6941af6 (diff)
downloadCMake-ec916350db5e45dbd423b7ab93f17004d06b1e7c.zip
CMake-ec916350db5e45dbd423b7ab93f17004d06b1e7c.tar.gz
CMake-ec916350db5e45dbd423b7ab93f17004d06b1e7c.tar.bz2
Merge topic 'execute_process-output_file-directory' into release-3.28
35f031e3b2 execute_process(): Restore opening files relative to WORKING_DIRECTORY Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8883
Diffstat (limited to 'Tests/RunCMake')
-rw-r--r--Tests/RunCMake/execute_process/InOutErrDirectory.cmake13
-rw-r--r--Tests/RunCMake/execute_process/RunCMakeTest.cmake5
-rw-r--r--Tests/RunCMake/execute_process/StderrNoexist.cmake1
-rw-r--r--Tests/RunCMake/execute_process/StdinNoexist.cmake1
-rw-r--r--Tests/RunCMake/execute_process/StdouStderrNoexist.cmake1
-rw-r--r--Tests/RunCMake/execute_process/StdoutNoexist.cmake1
6 files changed, 22 insertions, 0 deletions
diff --git a/Tests/RunCMake/execute_process/InOutErrDirectory.cmake b/Tests/RunCMake/execute_process/InOutErrDirectory.cmake
new file mode 100644
index 0000000..fe5a836
--- /dev/null
+++ b/Tests/RunCMake/execute_process/InOutErrDirectory.cmake
@@ -0,0 +1,13 @@
+file(MAKE_DIRECTORY dir)
+file(WRITE dir/in.txt "This is a test")
+execute_process(COMMAND ${PRINT_STDIN_EXE} WORKING_DIRECTORY dir INPUT_FILE in.txt OUTPUT_FILE out.txt ERROR_FILE err.txt)
+if(NOT EXISTS dir/out.txt)
+ message(SEND_ERROR "Did not create dir/out.txt")
+endif()
+file(READ dir/out.txt out)
+if(NOT out STREQUAL "This is a test")
+ message(SEND_ERROR "Did not read dir/in.txt")
+endif()
+if(NOT EXISTS dir/err.txt)
+ message(SEND_ERROR "Did not create dir/err.txt")
+endif()
diff --git a/Tests/RunCMake/execute_process/RunCMakeTest.cmake b/Tests/RunCMake/execute_process/RunCMakeTest.cmake
index 1f89829..1e9e10a 100644
--- a/Tests/RunCMake/execute_process/RunCMakeTest.cmake
+++ b/Tests/RunCMake/execute_process/RunCMakeTest.cmake
@@ -35,6 +35,11 @@ run_cmake_command(LastCommandError ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/La
run_cmake_command(LastCommandTimeout ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/LastCommandTimeout.cmake)
run_cmake_command(LastCommandGood ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/LastCommandGood.cmake)
run_cmake_command(Stdin ${CMAKE_COMMAND} -DPRINT_STDIN_EXE=${PRINT_STDIN_EXE} -P ${RunCMake_SOURCE_DIR}/Stdin.cmake)
+run_cmake_command(StdinNoexist ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/StdinNoexist.cmake)
+run_cmake_command(StdoutNoexist ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/StdoutNoexist.cmake)
+run_cmake_command(StderrNoexist ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/StderrNoexist.cmake)
+run_cmake_command(StdoutStderrNoexist ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/StderrNoexist.cmake)
+run_cmake_command(InOutErrDirectory ${CMAKE_COMMAND} -DPRINT_STDIN_EXE=${PRINT_STDIN_EXE} -P ${RunCMake_SOURCE_DIR}/InOutErrDirectory.cmake)
if(UNIX AND Python_EXECUTABLE)
run_cmake_command(AnyCommandAbnormalExit ${CMAKE_COMMAND} -DPython_EXECUTABLE=${Python_EXECUTABLE} -P ${RunCMake_SOURCE_DIR}/AnyCommandAbnormalExit.cmake)
diff --git a/Tests/RunCMake/execute_process/StderrNoexist.cmake b/Tests/RunCMake/execute_process/StderrNoexist.cmake
new file mode 100644
index 0000000..632c4a2
--- /dev/null
+++ b/Tests/RunCMake/execute_process/StderrNoexist.cmake
@@ -0,0 +1 @@
+execute_process(COMMAND ${CMAKE_COMMAND} -E true ERROR_FILE noexist/error.txt)
diff --git a/Tests/RunCMake/execute_process/StdinNoexist.cmake b/Tests/RunCMake/execute_process/StdinNoexist.cmake
new file mode 100644
index 0000000..6421cc8
--- /dev/null
+++ b/Tests/RunCMake/execute_process/StdinNoexist.cmake
@@ -0,0 +1 @@
+execute_process(COMMAND ${CMAKE_COMMAND} -E true INPUT_FILE noexist/input.txt)
diff --git a/Tests/RunCMake/execute_process/StdouStderrNoexist.cmake b/Tests/RunCMake/execute_process/StdouStderrNoexist.cmake
new file mode 100644
index 0000000..5334cdc
--- /dev/null
+++ b/Tests/RunCMake/execute_process/StdouStderrNoexist.cmake
@@ -0,0 +1 @@
+execute_process(COMMAND ${CMAKE_COMMAND} -E true OUTPUT_FILE noexist/merged.txt ERROR_FILE noexist/merged.txt)
diff --git a/Tests/RunCMake/execute_process/StdoutNoexist.cmake b/Tests/RunCMake/execute_process/StdoutNoexist.cmake
new file mode 100644
index 0000000..4f5c33e
--- /dev/null
+++ b/Tests/RunCMake/execute_process/StdoutNoexist.cmake
@@ -0,0 +1 @@
+execute_process(COMMAND ${CMAKE_COMMAND} -E true OUTPUT_FILE noexist/output.txt)