From 60d4d2e9405b093fa8d312fb29627c0791d5d91c Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Mon, 1 Feb 2016 10:53:41 +0100
Subject: [PATCH] Node partitioned mesh tests run.

---
 SimpleTests/MeshTests/MPI/CMakeLists.txt                | 5 ++---
 SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp | 7 +++++--
 scripts/cmake/test/AddTest.cmake                        | 4 ++--
 3 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/SimpleTests/MeshTests/MPI/CMakeLists.txt b/SimpleTests/MeshTests/MPI/CMakeLists.txt
index 6ba0f5d7ce4..1190c8e07dd 100644
--- a/SimpleTests/MeshTests/MPI/CMakeLists.txt
+++ b/SimpleTests/MeshTests/MPI/CMakeLists.txt
@@ -23,7 +23,7 @@ AddTest(
 	NAME NodePartitionedMeshTestASCII
 	PATH NodePartitionedMesh/ASCII
 	EXECUTABLE test_node_partitioned_mesh
-	EXECUTABLE_ARGS mesh_3d
+	EXECUTABLE_ARGS "mesh_3d ${Data_BINARY_DIR}/NodePartitionedMesh/ASCII"
 	WRAPPER mpirun
 	WRAPPER_ARGS "-np 3"
 	TESTER diff
@@ -34,7 +34,7 @@ AddTest(
 	NAME NodePartitionedMeshTestBinary
 	PATH NodePartitionedMesh/Binary
 	EXECUTABLE test_node_partitioned_mesh
-	EXECUTABLE_ARGS mesh_3d
+	EXECUTABLE_ARGS "mesh_3d ${Data_BINARY_DIR}/NodePartitionedMesh/Binary"
 	WRAPPER mpirun
 	WRAPPER_ARGS "-np 3"
 	TESTER diff
@@ -80,4 +80,3 @@ AddTest(
 		cube_1e3_neumann_result_pcs_0_ts_1_1.vtu
 		cube_1e3_neumann_result_pcs_0_ts_1_2.vtu
 )
-
diff --git a/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp b/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp
index 911482af4b7..2e816c183d4 100644
--- a/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp
+++ b/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp
@@ -23,6 +23,7 @@
 
 #include "logog/include/logog.hpp"
 
+#include "BaseLib/FileTools.h"
 #include "BaseLib/LogogCustomCout.h"
 #include "BaseLib/TemplateLogogFormatterSuppressedGCC.h"
 
@@ -53,6 +54,9 @@ int main(int argc, char *argv[])
     out->SetFormatter(*fmt);
 
     const std::string file_name = argv[1];
+    std::string output_dir = "";
+    if (argc > 2)
+      output_dir = argv[2];
 
     NodePartitionedMesh *mesh = nullptr;
     {
@@ -69,7 +73,7 @@ int main(int argc, char *argv[])
     MPI_Comm_rank(MPI_COMM_WORLD, &rank);
     const std::string rank_str = std::to_string(rank);
     const std::string ofile_name = file_name + "_partition_" + rank_str + ".msh";
-    std::ofstream os(ofile_name.data(), std::ios::trunc);
+    std::ofstream os(BaseLib::joinPaths(output_dir, ofile_name), std::ios::trunc);
 
     // Output nodes
     os.setf(std::ios::scientific, std::ios::floatfield);
@@ -111,4 +115,3 @@ int main(int argc, char *argv[])
 
     LOGOG_SHUTDOWN();
 }
-
diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake
index b3948ae53c0..fb9498e2241 100644
--- a/scripts/cmake/test/AddTest.cmake
+++ b/scripts/cmake/test/AddTest.cmake
@@ -8,8 +8,9 @@
 #   NAME <name of the the test>
 #   PATH <working directory> # relative to SourceDir/Tests/Data
 #   EXECUTABLE <executable target> # optional, defaults to ogs
-#   EXECUTABLE_ARGS <arguments> # files referenced in the DATA argument can be used here
+#   EXECUTABLE_ARGS <arguments>
 #   WRAPPER <time|memcheck|callgrind> # optional, defaults to time
+#   WRAPPER_ARGS <arguments> # optional
 #   TESTER <diff|memcheck> # optional
 #   DATA <list of all required data files, white-space separated, have to be in PATH>
 # )
@@ -37,7 +38,6 @@ function (AddTest)
 	set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS)
 	cmake_parse_arguments(AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
 
-	# TODO set to submodule
 	set(AddTest_SOURCE_PATH "${Data_SOURCE_DIR}/${AddTest_PATH}")
 	set(AddTest_BINARY_PATH "${Data_BINARY_DIR}/${AddTest_PATH}")
 	file(MAKE_DIRECTORY ${AddTest_BINARY_PATH})
-- 
GitLab