From d9962243d56f350115916ab07d23fcf13eb4553d Mon Sep 17 00:00:00 2001
From: Christoph Lehmann <christoph.lehmann@ufz.de>
Date: Thu, 20 Jul 2017 11:46:22 +0200
Subject: [PATCH] [cmake] print test commands before run

---
 scripts/cmake/test/AddTestTester.cmake  |  2 ++
 scripts/cmake/test/AddTestWrapper.cmake | 11 +++++++++++
 2 files changed, 13 insertions(+)

diff --git a/scripts/cmake/test/AddTestTester.cmake b/scripts/cmake/test/AddTestTester.cmake
index 11278220a52..534d298c040 100644
--- a/scripts/cmake/test/AddTestTester.cmake
+++ b/scripts/cmake/test/AddTestTester.cmake
@@ -8,6 +8,8 @@ if(VIS_FILES AND VTKJS_CONVERTER)
     endforeach()
 endif()
 
+message(STATUS "running command checking test results: cd ${case_path} && ${TESTER_COMMAND}")
+
 if(WIN32)
     execute_process(
         COMMAND cmd /C ${TESTER_COMMAND}
diff --git a/scripts/cmake/test/AddTestWrapper.cmake b/scripts/cmake/test/AddTestWrapper.cmake
index cb9a21562a8..bdfda7ffeee 100644
--- a/scripts/cmake/test/AddTestWrapper.cmake
+++ b/scripts/cmake/test/AddTestWrapper.cmake
@@ -4,6 +4,17 @@ foreach(FILE ${FILES_TO_DELETE})
     file(REMOVE ${BINARY_PATH}/${FILE})
 endforeach()
 
+# taken from https://stackoverflow.com/a/7216542
+function(JOIN VALUES GLUE OUTPUT)
+  string (REGEX REPLACE "([^\\]|^);" "\\1${GLUE}" _TMP_STR "${VALUES}")
+  string (REGEX REPLACE "[\\](.)" "\\1" _TMP_STR "${_TMP_STR}") #fixes escaping
+  set (${OUTPUT} "${_TMP_STR}" PARENT_SCOPE)
+endfunction()
+
+JOIN("${WRAPPER_ARGS}" " " WRAPPER_ARGS_STR)
+JOIN("${EXECUTABLE_ARGS}" " " EXECUTABLE_ARGS_STR)
+
+message(STATUS "running command generating test results: cd ${case_path} && ${WRAPPER_COMMAND} ${WRAPPER_ARGS_STR} ${EXECUTABLE} ${EXECUTABLE_ARGS_STR}")
 execute_process(
     COMMAND ${WRAPPER_COMMAND} ${WRAPPER_ARGS} ${EXECUTABLE} ${EXECUTABLE_ARGS}
     WORKING_DIRECTORY ${case_path}
-- 
GitLab