diff --git a/.gitmodules b/.gitmodules
index 7f6c8f2b244b751a7c08c692ee6350735dfe5a91..72031ae442a7d58acd066da8f19efce23e5160a4 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -19,3 +19,6 @@
 [submodule "ThirdParty/cmake-modules"]
 	path = ThirdParty/cmake-modules
 	url = https://github.com/ufz/cmake-modules.git
+[submodule "Tests/Data"]
+	path = Tests/Data
+	url = https://github.com/ufz/ogs-data
diff --git a/Applications/CLI/CMakeLists.txt b/Applications/CLI/CMakeLists.txt
index 25432ff0db8ec85be012f083a608fe4ae6a2d084..8324aba968de1d4b7f64607eff7f7aa339a23d7f 100644
--- a/Applications/CLI/CMakeLists.txt
+++ b/Applications/CLI/CMakeLists.txt
@@ -14,9 +14,7 @@ if(OGS_USE_PETSC)
     target_link_libraries(ogs ${PETSC_LIBRARIES})
 endif()
 
-if(NOT OGS_USE_MPI)
-    include(Tests.cmake)
-endif()
+include(Tests.cmake)
 
 ####################
 ### Installation ###
diff --git a/Applications/CLI/Tests.cmake b/Applications/CLI/Tests.cmake
index f061bbfd946a22e2211e2332d7c8a86719f67dff..93582dea96bed208af09f4f1bac2737b53d26f5f 100644
--- a/Applications/CLI/Tests.cmake
+++ b/Applications/CLI/Tests.cmake
@@ -2,125 +2,167 @@
 add_test(NAME ogs_no_args COMMAND ogs)
 set_tests_properties(ogs_no_args PROPERTIES WILL_FAIL TRUE)
 
-# CUBE 1x1x1 GROUNDWATER FLOW TESTS
-foreach(mesh_size 1e0 1e1 1e2 1e3)
-	AddTest(
-		NAME GroundWaterFlowProcess_cube_1x1x1_${mesh_size}
-		PATH Elliptic/cube_1x1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS cube_${mesh_size}.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA cube_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
-		DATA cube_${mesh_size}.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
-	)
+if(NOT OGS_USE_MPI)
+	# CUBE 1x1x1 GROUNDWATER FLOW TESTS
+	foreach(mesh_size 1e0 1e1 1e2 1e3)
+		AddTest(
+			NAME GroundWaterFlowProcess_cube_1x1x1_${mesh_size}
+			PATH Elliptic/cube_1x1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS cube_${mesh_size}.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA cube_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
+			DATA cube_${mesh_size}.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
+		)
 
-	AddTest(
-		NAME GroundWaterFlowProcess_cube_1x1x1_Neumann_${mesh_size}
-		PATH Elliptic/cube_1x1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS cube_${mesh_size}_neumann.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA cube_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_front_N1_right Result
-		DATA cube_${mesh_size}_neumann.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
-	)
-endforeach()
+		AddTest(
+			NAME GroundWaterFlowProcess_cube_1x1x1_Neumann_${mesh_size}
+			PATH Elliptic/cube_1x1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS cube_${mesh_size}_neumann.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA cube_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_front_N1_right Result
+			DATA cube_${mesh_size}_neumann.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
+		)
+	endforeach()
 
-foreach(mesh_size 1e4 2e4 3e4 4e4 5e4 1e5 1e6)
-	AddTest(
-		NAME LARGE_GroundWaterFlowProcess_cube_1x1x1_${mesh_size}
-		PATH Elliptic/cube_1x1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS cube_${mesh_size}.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA cube_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
-		DATA cube_${mesh_size}.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
-	)
+	foreach(mesh_size 1e4 2e4 3e4 4e4 5e4 1e5 1e6)
+		AddTest(
+			NAME LARGE_GroundWaterFlowProcess_cube_1x1x1_${mesh_size}
+			PATH Elliptic/cube_1x1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS cube_${mesh_size}.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA cube_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
+			DATA cube_${mesh_size}.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
+		)
 
-	AddTest(
-		NAME LARGE_GroundWaterFlowProcess_cube_1x1x1_Neumann_${mesh_size}
-		PATH Elliptic/cube_1x1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS cube_${mesh_size}_neumann.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA cube_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_front_N1_right Result
-		DATA cube_${mesh_size}_neumann.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
-	)
-endforeach()
+		AddTest(
+			NAME LARGE_GroundWaterFlowProcess_cube_1x1x1_Neumann_${mesh_size}
+			PATH Elliptic/cube_1x1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS cube_${mesh_size}_neumann.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA cube_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_front_N1_right Result
+			DATA cube_${mesh_size}_neumann.prj cube_1x1x1_hex_${mesh_size}.vtu cube_1x1x1.gml
+		)
+	endforeach()
 
-# SQUARE 1x1 GROUNDWATER FLOW TESTS
-foreach(mesh_size 1e0 1e1 1e2 1e3 1e4)
-	AddTest(
-		NAME GroundWaterFlowProcess_square_1x1_${mesh_size}
-		PATH Elliptic/square_1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS square_${mesh_size}.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA square_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
-		DATA square_${mesh_size}.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
-	)
+	# SQUARE 1x1 GROUNDWATER FLOW TESTS
+	foreach(mesh_size 1e0 1e1 1e2 1e3 1e4)
+		AddTest(
+			NAME GroundWaterFlowProcess_square_1x1_${mesh_size}
+			PATH Elliptic/square_1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS square_${mesh_size}.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA square_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
+			DATA square_${mesh_size}.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
+		)
 
-	AddTest(
-		NAME GroundWaterFlowProcess_square_1x1_Neumann_${mesh_size}
-		PATH Elliptic/square_1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS square_${mesh_size}_neumann.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA square_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_bottom_N1_right Result
-		DATA square_${mesh_size}_neumann.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
-	)
-endforeach()
+		AddTest(
+			NAME GroundWaterFlowProcess_square_1x1_Neumann_${mesh_size}
+			PATH Elliptic/square_1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS square_${mesh_size}_neumann.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA square_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_bottom_N1_right Result
+			DATA square_${mesh_size}_neumann.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
+		)
+	endforeach()
 
-foreach(mesh_size 1e5 1e6)
-	AddTest(
-		NAME LARGE_GroundWaterFlowProcess_square_1x1_${mesh_size}
-		PATH Elliptic/square_1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS square_${mesh_size}.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA square_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
-		DATA square_${mesh_size}.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
-	)
+	foreach(mesh_size 1e5 1e6)
+		AddTest(
+			NAME LARGE_GroundWaterFlowProcess_square_1x1_${mesh_size}
+			PATH Elliptic/square_1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS square_${mesh_size}.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA square_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
+			DATA square_${mesh_size}.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
+		)
+
+		AddTest(
+			NAME LARGE_GroundWaterFlowProcess_square_1x1_Neumann_${mesh_size}
+			PATH Elliptic/square_1x1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS square_${mesh_size}_neumann.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA square_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_bottom_N1_right Result
+			DATA square_${mesh_size}_neumann.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
+		)
+	endforeach()
+
+	# LINE 1 GROUNDWATER FLOW TESTS
+	foreach(mesh_size 1e1)
+		AddTest(
+			NAME GroundWaterFlowProcess_line_1_${mesh_size}
+			PATH Elliptic/line_1_GroundWaterFlow
+			EXECUTABLE ogs
+			EXECUTABLE_ARGS line_${mesh_size}.prj
+			WRAPPER time
+			TESTER vtkdiff
+			DIFF_DATA line_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
+			DATA line_${mesh_size}.prj line_1_line_${mesh_size}.vtu line_1.gml
+		)
 
+		AddTest(
+					NAME GroundWaterFlowProcess_line_1_Neumann_${mesh_size}
+					PATH Elliptic/line_1_GroundWaterFlow
+					EXECUTABLE ogs
+					EXECUTABLE_ARGS line_${mesh_size}_neumann.prj
+					WRAPPER time
+					TESTER vtkdiff
+					DIFF_DATA line_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_N1_right Result
+					DATA line_${mesh_size}_neumann.prj line_1_line_${mesh_size}.vtu line_1.gml
+				)
+		endforeach()
+else()
+	# MPI groundwater flow tests
 	AddTest(
-		NAME LARGE_GroundWaterFlowProcess_square_1x1_Neumann_${mesh_size}
-		PATH Elliptic/square_1x1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS square_${mesh_size}_neumann.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA square_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_bottom_N1_right Result
-		DATA square_${mesh_size}_neumann.prj square_1x1_quad_${mesh_size}.vtu square_1x1.gml
+		NAME ParallelFEM_GroundWaterFlow2D
+		PATH EllipticPETSc
+		EXECUTABLE_ARGS quad_20x10_GroundWaterFlow.prj -- -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10
+		WRAPPER mpirun
+		WRAPPER_ARGS -np 3
+		TESTER diff
+		DIFF_DATA
+			quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_0.vtu
+			quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_1.vtu
+			quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_2.vtu
 	)
-endforeach()
 
-# LINE 1 GROUNDWATER FLOW TESTS
-foreach(mesh_size 1e1)
 	AddTest(
-		NAME GroundWaterFlowProcess_line_1_${mesh_size}
-		PATH Elliptic/line_1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS line_${mesh_size}.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA line_${mesh_size}_pcs_0_ts_1.vtu Linear_1_to_minus1 Result
-		DATA line_${mesh_size}.prj line_1_line_${mesh_size}.vtu line_1.gml
+		NAME ParallelFEM_GroundWaterFlow3D_DirichletBC
+		PATH EllipticPETSc
+		EXECUTABLE_ARGS cube_1e3.prj -- -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10
+		WRAPPER mpirun
+		WRAPPER_ARGS -np 3
+		TESTER diff
+		DIFF_DATA
+			cube_1e3_pcs_0_ts_1_0.vtu
+			cube_1e3_pcs_0_ts_1_1.vtu
+			cube_1e3_pcs_0_ts_1_2.vtu
 	)
 
 	AddTest(
-        NAME GroundWaterFlowProcess_line_1_Neumann_${mesh_size}
-		PATH Elliptic/line_1_GroundWaterFlow
-		EXECUTABLE ogs
-		EXECUTABLE_ARGS line_${mesh_size}_neumann.prj
-		WRAPPER time
-		TESTER vtkdiff
-		DIFF_DATA line_${mesh_size}_neumann_pcs_0_ts_1.vtu D1_left_N1_right Result
-		DATA line_${mesh_size}_neumann.prj line_1_line_${mesh_size}.vtu line_1.gml
+		NAME ParallelFEM_GroundWaterFlow3D_NeumannBC
+		PATH EllipticPETSc
+		EXECUTABLE_ARGS cube_1e3_neumann.prj -- -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10
+		WRAPPER mpirun
+		WRAPPER_ARGS -np 3
+		TESTER diff
+		DIFF_DATA
+			cube_1e3_neumann_pcs_0_ts_1_0.vtu
+			cube_1e3_neumann_pcs_0_ts_1_1.vtu
+			cube_1e3_neumann_pcs_0_ts_1_2.vtu
 	)
-endforeach()
+endif()
diff --git a/Applications/CLI/ogs.cpp b/Applications/CLI/ogs.cpp
index 1b502e02e5178582be190eafa40ecf74bd066b44..0551cc5e432ec833b84803838f41dfc6842cd3f9 100644
--- a/Applications/CLI/ogs.cpp
+++ b/Applications/CLI/ogs.cpp
@@ -25,7 +25,7 @@
 
 #include "ProcessLib/NumericsConfig.h"
 
-void solveProcesses(ProjectData &project)
+void solveProcesses(ProjectData &project, const std::string &outdir)
 {
 	INFO("Solve processes.");
 
@@ -58,8 +58,9 @@ void solveProcesses(ProjectData &project)
 			}
 
 			std::string const output_file_name =
-			    out_pref + "_pcs_" + std::to_string(i) + "_ts_" +
-			    std::to_string(timestep) + ".vtu";
+				BaseLib::joinPaths(outdir, out_pref) +
+				"_pcs_" + std::to_string(i) + "_ts_" +
+				std::to_string(timestep) + ".vtu";
 			(*p)->postTimestep(output_file_name, timestep);
 
 			++i;
@@ -90,6 +91,14 @@ int main(int argc, char *argv[])
 		"PROJECT FILE");
 	cmd.add(project_arg);
 
+	TCLAP::ValueArg<std::string> outdir_arg(
+		"o", "output-directory",
+		"the output directory to write to",
+		false,
+		"",
+		"output directory");
+	cmd.add(outdir_arg);
+
 	TCLAP::SwitchArg nonfatal_arg("",
 		"config-warnings-nonfatal",
 		"warnings from parsing the configuration file will not trigger program abortion");
@@ -117,9 +126,8 @@ int main(int argc, char *argv[])
 		(*p_it)->initialize();
 	}
 
-	std::string const output_file_name(project.getOutputFilePrefix() + ".vtu");
 
-	solveProcesses(project);
+	solveProcesses(project, outdir_arg.getValue());
 
 	return 0;
 }
diff --git a/BaseLib/BuildInfo.cpp.in b/BaseLib/BuildInfo.cpp.in
index 20059a38dd5e581571deb2887acb4ceb9953e54c..20bd9ba5f81c3beab06727c246e63732eb835c05 100644
--- a/BaseLib/BuildInfo.cpp.in
+++ b/BaseLib/BuildInfo.cpp.in
@@ -31,6 +31,8 @@ namespace BuildInfo
     const std::string ogs_version("@OGS_VERSION@");
 
     const std::string source_path("@CMAKE_CURRENT_SOURCE_DIR@");
+    const std::string data_path("@Data_SOURCE_DIR@");
+    const std::string data_binary_path("@Data_BINARY_DIR@");
     const std::string tests_tmp_path("@PROJECT_BINARY_DIR@/Tests/");
 
 }
diff --git a/BaseLib/BuildInfo.h b/BaseLib/BuildInfo.h
index ec953b89e9b4319ae7bbb3b32e779d5e7329fb36..5f55223a8838363a4d81cdcd36d9b451ba53b57f 100644
--- a/BaseLib/BuildInfo.h
+++ b/BaseLib/BuildInfo.h
@@ -33,6 +33,8 @@ namespace BuildInfo
     extern const std::string ogs_version;
 
     extern const std::string source_path;
+    extern const std::string data_path;
+    extern const std::string data_binary_path;
     extern const std::string tests_tmp_path;
 }
 }
diff --git a/BaseLib/FileTools.cpp b/BaseLib/FileTools.cpp
index b7a8cb3b7faf8be79f596dfd83ba99fef6b89a78..4bdb248ad23a01397879fb2ff697b23dc67dfbce 100644
--- a/BaseLib/FileTools.cpp
+++ b/BaseLib/FileTools.cpp
@@ -133,4 +133,28 @@ std::string extractPath(std::string const& pathname)
 	const std::size_t pos = findLastPathSeparator(pathname);
 	return pathname.substr(0, pos + 1);
 }
+const char * pathSeparator =
+#ifdef _WIN32
+                            "\\";
+#else
+                            "/";
+#endif
+
+std::string appendPathSeparator(std::string const& path)
+{
+	if(findLastPathSeparator(path) == path.length() - 1)
+		return path;
+	return path + pathSeparator;
+}
+
+std::string joinPaths(std::string const& pathA, std::string const& pathB)
+{
+	std::string tmpB(pathB);
+	if(tmpB.substr(0, 1) == ".")
+		tmpB = tmpB.substr(1);
+	if(tmpB.substr(0, 1) == pathSeparator)
+		tmpB = tmpB.substr(1);
+	return appendPathSeparator(pathA) + tmpB;
+}
+
 } // end namespace BaseLib
diff --git a/BaseLib/FileTools.h b/BaseLib/FileTools.h
index d3e17dcdf10e4f8e2bc4a3a485b4970e3f54518e..a24f8aa25629668dbc78677e67940bb749ca52b5 100644
--- a/BaseLib/FileTools.h
+++ b/BaseLib/FileTools.h
@@ -152,6 +152,17 @@ std::string copyPathToFileName(const std::string &file_name,
  * Returns a string up to the last path separator not including it.
  */
 std::string extractPath(std::string const& pathname);
+
+/**
+ * Appends a platform-dependent path separator (/ or \) if missing
+ */
+std::string appendPathSeparator(std::string const& path);
+
+/**
+ * Concat two paths. Does not check for validity.
+ */
+std::string joinPaths(std::string const& pathA, std::string const& pathB);
+
 } // end namespace BaseLib
 
 #endif // FILETOOLS_H
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 756546b9945c5f216ff136fac7a00fee559189c1..2a110f6e2690ff86ad18cd2d4f2128081d229587 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -136,6 +136,11 @@ if(OGS_USE_EIGEN)
 	endif()
 endif()
 
+if(OGS_BUILD_TESTS)
+	set(Data_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Tests/Data CACHE INTERNAL "")
+	set(Data_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/Tests/Data CACHE INTERNAL "")
+endif()
+
 ######################
 ### Subdirectories ###
 ######################
@@ -189,12 +194,6 @@ if( OGS_BUILD_TESTS AND NOT IS_SUBPROJECT )
 			add_subdirectory( SimpleTests/SolverTests )
 		endif()
 	endif()
-
-	# Create a target 'data', which downloads all referenced data sets into the build tree
-	# This has to be defined after all tests are defined
-	ExternalData_Add_Target(data)
-	set_target_properties(data PROPERTIES EXCLUDE_FROM_ALL 1)
-	add_dependencies(ctest data)
 endif() # OGS_BUILD_TESTS
 
 # The configuration must be called from the source dir and not BaseLib/.
diff --git a/ProcessLib/Process.h b/ProcessLib/Process.h
index ae2c5a9f490a61492d0c9d469d1984c1bc7ec968..ce7c9abcbc2323f1695de488991b9ea44790f892 100644
--- a/ProcessLib/Process.h
+++ b/ProcessLib/Process.h
@@ -278,6 +278,7 @@ private:
 #endif
 
 		// Write output file
+		DBUG("Writing output to \'%s\'.", file_name.c_str());
 		FileIO::VtuInterface vtu_interface(&_mesh, vtkXMLWriter::Binary, true);
 		vtu_interface.writeToFile(file_name);
 	}
diff --git a/SimpleTests/MeshTests/MPI/CMakeLists.txt b/SimpleTests/MeshTests/MPI/CMakeLists.txt
index f22354771c492947bf654ce57b6a5811f8985bdb..ce6812080df875b9556918c2ac9268a86f6b194d 100644
--- a/SimpleTests/MeshTests/MPI/CMakeLists.txt
+++ b/SimpleTests/MeshTests/MPI/CMakeLists.txt
@@ -19,41 +19,24 @@ if(OGS_USE_MPI)
 	target_link_libraries(test_node_partitioned_mesh ${MPI_CXX_LIBRARIES})
 endif()
 
-set(FilePath "DATA{${ExternalData_SOURCE_ROOT}/NodePartitionedMesh/ASCII/,REGEX:.*}")
-set(MPITestParameters -np 3 "${PROJECT_BINARY_DIR}/bin/test_node_partitioned_mesh" "${FilePath}/mesh_3d")
-ExternalData_Add_Test(
-	data
+AddTest(
 	NAME NodePartitionedMeshTestASCII
-	COMMAND "mpirun" ${MPITestParameters}
+	PATH NodePartitionedMesh/ASCII
+	EXECUTABLE test_node_partitioned_mesh
+	EXECUTABLE_ARGS mesh_3d ${Data_BINARY_DIR}/NodePartitionedMesh/ASCII
+	WRAPPER mpirun
+	WRAPPER_ARGS -np 3
+	TESTER diff
+	DIFF_DATA mesh_3d_partition_0.msh mesh_3d_partition_1.msh mesh_3d_partition_2.msh
 )
 
-set(FilePath "DATA{${ExternalData_SOURCE_ROOT}/NodePartitionedMesh/Binary/,REGEX:.*}")
-set(MPITestParameters -np 3 "${PROJECT_BINARY_DIR}/bin/test_node_partitioned_mesh" "${FilePath}/mesh_3d")
-ExternalData_Add_Test(
-	data
+AddTest(
 	NAME NodePartitionedMeshTestBinary
-	COMMAND  "mpirun" ${MPITestParameters}
-)
-
-## FEM#PETSc solver tests
-set(FilePath "DATA{${ExternalData_SOURCE_ROOT}/EllipticPETSc/,REGEX:.*}")
-set(MPITestParameters -np 3 "${PROJECT_BINARY_DIR}/bin/ogs" "${FilePath}/quad_20x10_GroundWaterFlow.prj" --  -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10)
-ExternalData_Add_Test(
-    data
-    NAME ParallelFEM_GroundWaterFlow2D
-    COMMAND  "mpirun" ${MPITestParameters} ${SolverType}
-)
-
-set(MPITestParameters -np 3 "${PROJECT_BINARY_DIR}/bin/ogs" "${FilePath}/cube_1e3.prj" --  -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10)
-ExternalData_Add_Test(
-    data
-    NAME ParallelFEM_GroundWaterFlow3D_DirichletBC
-    COMMAND  "mpirun" ${MPITestParameters} ${SolverType}
-)
-
-set(MPITestParameters -np 3 "${PROJECT_BINARY_DIR}/bin/ogs" "${FilePath}/cube_1e3_neumann.prj" --  -gw_ksp_type bcgs -gw_pc_type bjacobi -gw_ksp_atol 1.e-10)
-ExternalData_Add_Test(
-    data
-    NAME ParallelFEM_GroundWaterFlow3D_NeumannBC
-    COMMAND  "mpirun" ${MPITestParameters} ${SolverType}
+	PATH NodePartitionedMesh/Binary
+	EXECUTABLE test_node_partitioned_mesh
+	EXECUTABLE_ARGS mesh_3d ${Data_BINARY_DIR}/NodePartitionedMesh/Binary
+	WRAPPER mpirun
+	WRAPPER_ARGS -np 3
+	TESTER diff
+	DIFF_DATA mesh_3d_partition_0.msh mesh_3d_partition_1.msh mesh_3d_partition_2.msh
 )
diff --git a/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp b/SimpleTests/MeshTests/MPI/NodePartitionedMeshTester.cpp
index 911482af4b74a4cdf501ace8f3c7063e4ab7fd1f..2e816c183d434a810e9371f8afd8354291f1c544 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/Tests/BaseLib/TestFilePathStringManipulation.cpp b/Tests/BaseLib/TestFilePathStringManipulation.cpp
index fecceb7d962ef96aa9e3a8b55d0ce916d16cd606..404071db495ce3eba6ed890801151783f52da995 100644
--- a/Tests/BaseLib/TestFilePathStringManipulation.cpp
+++ b/Tests/BaseLib/TestFilePathStringManipulation.cpp
@@ -387,3 +387,16 @@ TEST(BaseLib, ExtractPathUnix)
 	ASSERT_EQ ( BaseLib::extractPath("/path/path/file.ext"), "/path/path/" );
 	ASSERT_EQ ( BaseLib::extractPath("/path/path/path.ext/"), "/path/path/path.ext/" );
 }
+
+TEST(BaseLib, JoinPaths)
+{
+#if _WIN32
+	ASSERT_EQ ( "\\path\\path", BaseLib::joinPaths("\\path", "path") );
+	ASSERT_EQ ( "\\path\\path", BaseLib::joinPaths("\\path", "\\path") );
+	ASSERT_EQ ( "\\path\\path", BaseLib::joinPaths("\\path", ".\\path") );
+#else
+	ASSERT_EQ ( "/path/path", BaseLib::joinPaths("/path", "path") );
+	ASSERT_EQ ( "/path/path", BaseLib::joinPaths("/path", "/path") );
+	ASSERT_EQ ( "/path/path", BaseLib::joinPaths("/path", "./path") );
+#endif
+}
diff --git a/Tests/Data b/Tests/Data
new file mode 160000
index 0000000000000000000000000000000000000000..31851c9b3b7470869a34e25029bdd75edb607bd4
--- /dev/null
+++ b/Tests/Data
@@ -0,0 +1 @@
+Subproject commit 31851c9b3b7470869a34e25029bdd75edb607bd4
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0.prj.md5
deleted file mode 100644
index b41594a3dd6cc3d7492344a39797f424cb778c3f..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-c23e83e26532f2528fe62e15db04e4eb
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_neumann.prj.md5
deleted file mode 100644
index 1c7f243495f5efeb09f54500d883aa9d97adf775..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-1ba9d311230b59a02b6eb3e4c8dd614f
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_result_expected.dat.md5
deleted file mode 100644
index e69a92f29cad2749b7a498c433ca97507deddb47..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e0_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-d331f4b4ecef4e8c0026245e84a78bd9
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1.prj.md5
deleted file mode 100644
index df3d5254505a2363a0d5f60a6d48f76bd343e3b3..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-14615d9b9a63d4d4ddde10bdf3f12f35
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_neumann.prj.md5
deleted file mode 100644
index c54a61615ad8c481c77848d7a7c0d5ef24699ae5..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-65a6fc3456234ef0edb828dbb025560d
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_result_expected.dat.md5
deleted file mode 100644
index e51f0315ddfd88e47a06430b719928e4a24710a7..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e1_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-e0b2bff06d79f6160b3aa9bf30632a7d
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2.prj.md5
deleted file mode 100644
index dc6ff992a9a476ab3c4ae172b53c7aeded3bad23..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-1c2d597dedec859f69b46b6ae13f18be
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_neumann.prj.md5
deleted file mode 100644
index c9404140a0ad364014e85ee0c5bdcd70c2d0bb2e..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-c4ceb3a3530e4572bd3c25eb40630df7
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_result_expected.dat.md5
deleted file mode 100644
index 6dc0501406d91ae0b3fe00bd08e724eb6d2450d0..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e2_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-7e07f449440af59156f116e1cf7a8609
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3.prj.md5
deleted file mode 100644
index e80a8121d156e56f406a443f42bd08eb0911715d..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-e5476e440e75264615418a0fca7bc502
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_neumann.prj.md5
deleted file mode 100644
index 03e44246d8a1b41f4e7153bc375b6732fc00f4ec..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-71368d4a6d84663b724f5a0ea2f80d1f
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_result_expected.dat.md5
deleted file mode 100644
index 0a472fe87ab2b531454f044cdd012d9cbdb68b3c..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e3_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-bf5a52137b827b263d2f7380682501d2
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4.prj.md5
deleted file mode 100644
index 8e537234fef6629cb0cf16207efc7401fa59858e..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-042f137f349f363e360002ff78c5db0a
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_neumann.prj.md5
deleted file mode 100644
index 13cbcb4452193997b4c83618e1a21c18beaba148..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-970a2eb2a5e0d497b7864598976efd34
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_result_expected.dat.md5
deleted file mode 100644
index 0b359e0ea8006ca2929a1965fa5df73b549e023b..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-b688ff83ab5a8dddcd47bb9044911d9b
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5.prj.md5
deleted file mode 100644
index 810189d6dbec2aef5b86fc4e6a5b9b8a85bac3d3..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-24d213a93db4a027ad9f50aedbaada1f
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_neumann.prj.md5
deleted file mode 100644
index 8d8b248642dbd8f11c9a7c4514fa5ae52dee4391..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-9c8581116e62729e2bafdc347fce39cd
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_result_expected.dat.md5
deleted file mode 100644
index 21118e65ccc24fb8837a694b0f100c9a3ada5b42..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e5_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-b40eb5be7115774116bfa4d58a62c1cd
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6.prj.md5
deleted file mode 100644
index 95d041f6ca616375a91322aced9fae8565cce458..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-9727f9fb1a1608afadcbe9c25fc48e22
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_neumann.prj.md5
deleted file mode 100644
index c0c5a1895b0164d049c4d7fc1e478481d2d5a956..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-ea64dde28f296dda790650469f913629
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_result_expected.dat.md5
deleted file mode 100644
index 632cb71b1e70f7d0013baefef50307c868d6adb8..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1e6_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-f79148c2d88f045e0b30b3dfc323479f
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1.gml.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1.gml.md5
deleted file mode 100644
index 699d887fc64ec1459248f5b9c6232734afdac118..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1.gml.md5
+++ /dev/null
@@ -1 +0,0 @@
-1a31691ad2af86018942cd34feb80b8d
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e0.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e0.vtu.md5
deleted file mode 100644
index 9727e731eceee4bfcec825ba0579cff3d3fa5d19..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e0.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-42d21af5d700672dbca380b9ff392f16
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e1.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e1.vtu.md5
deleted file mode 100644
index 9fa97eb13ec7b50f30888c626f93c45eb370e7e3..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-f1bb40a7d5277976ba8d100929eb2934
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e2.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e2.vtu.md5
deleted file mode 100644
index 9819590bf785b3755b67cf5ecc10d7ca97efabd7..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e2.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-669ad19f5b59718b2c7af5a84a7e2614
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e3.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e3.vtu.md5
deleted file mode 100644
index ba8cd3ba224c86dc36e2ba63fc1305b5a08efa0b..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e3.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-93edceded9619355818b263d82187254
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e4.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e4.vtu.md5
deleted file mode 100644
index 0d4bad3024ec7d6a65cbb3d4d39a991757f2bd1a..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-0b0a9a01697178fb60dfabc2ad938006
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e5.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e5.vtu.md5
deleted file mode 100644
index 412cb4b4981d3aaf56402b4545410bb98d1fb63a..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e5.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-4ea257dd8d96e0ff4f94fd044db1d954
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e6.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e6.vtu.md5
deleted file mode 100644
index 5c9a94065ce6466052605d91a6df667d72bc5930..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_1e6.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-e99f0f0fc59bc5bd0c8e1b5434914d62
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_2e4.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_2e4.vtu.md5
deleted file mode 100644
index 372fd461f6070c54ac5eb36840759d9e3a3a280b..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_2e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-70f4f50592840a928c81faebc36e3aff
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_3e4.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_3e4.vtu.md5
deleted file mode 100644
index d724edb19d790ddda86a5dc979cce03a38567f45..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_3e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-1dd0310e6f7aba9d090e75c31aabb351
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_4e4.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_4e4.vtu.md5
deleted file mode 100644
index 09114bc4c36883395a561439275e1356cb7c23fc..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_4e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-89ad8065222c9ee63da44f9268a01cea
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_5e4.vtu.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_5e4.vtu.md5
deleted file mode 100644
index 488e55af330e0a52659b68e18d62129296994d44..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_1x1x1_hex_5e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-ab96fe3dec6516129d2c1318efa9dad5
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4.prj.md5
deleted file mode 100644
index 9861622f750e05afcf1fd7a10bb600ca1434be91..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-49198804af8caeacedb17651ee5f5a88
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_neumann.prj.md5
deleted file mode 100644
index 347b0156e8f55ef899a5c86ac07b3b8107db7d28..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-e55d4d041beeb3c4ac04a28d0caf87c9
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_result_expected.dat.md5
deleted file mode 100644
index 2125b4f58448b15d83a73eab4f6f7a73430b9c62..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_2e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-0938634d809af03c7f9416598c0e9c88
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4.prj.md5
deleted file mode 100644
index 77fafda27afa8334c9ea2bf2dc75cbbd5acd4c60..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-d15982b99f02f5e26870859bd99a2b52
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_neumann.prj.md5
deleted file mode 100644
index aa42076915e312a0527793e0c5f13d33fae1f12f..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-ac070657fb8e8f57d0e976e4d2e8ecc8
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_result_expected.dat.md5
deleted file mode 100644
index 26c5a87fd4bb1405c648b6067dbc2bb42ee33a13..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_3e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-468ea130391c1166a217a749b94bb22d
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4.prj.md5
deleted file mode 100644
index 7b4e009f7b3a1aed702ebfe97bf27a1ef7d02c23..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-a785f1952fa89d5a318a715b63d55ae1
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_neumann.prj.md5
deleted file mode 100644
index ad8d82aec8bc1c693b9e5f3291ff240754d25838..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-38284d5144b7718309286a39725d9193
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_result_expected.dat.md5
deleted file mode 100644
index 6ac561c74aa439e8837367ca340998c8eddd6f34..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_4e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-e3f751b2d6fe781d665c41b43bb979b6
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4.prj.md5
deleted file mode 100644
index 77503e9ef2d4094676ec1ad8cc1807f79ccb672a..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-b2a9dc3f32ca9c92dc5f7427e299ed75
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_neumann.prj.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_neumann.prj.md5
deleted file mode 100644
index eca028639540ac857f3f423ebc71892476a0e6e9..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-a30ebf47a78d7edc4907b2bd9889e52d
diff --git a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_result_expected.dat.md5 b/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_result_expected.dat.md5
deleted file mode 100644
index 7936c7c114ffbb16bceded10746d03716deeee21..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/cube_1x1x1_GroundWaterFlow/cube_5e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-48ec5b23588a4eff869af05aa05a7927
diff --git a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1.gml.md5 b/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1.gml.md5
deleted file mode 100644
index 2fdd2fda0d910aee6737f0e716c12c92f6ffe0c2..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1.gml.md5
+++ /dev/null
@@ -1 +0,0 @@
-4ec0050b42a34e66c9fd5eeca418e1e0
diff --git a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1_line_1e1.vtu.md5 b/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1_line_1e1.vtu.md5
deleted file mode 100644
index e0b70e052cc1961e5e63933c6b6d7c05f3405210..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1_line_1e1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-043336d543300ea41fd5afd8412df4db
diff --git a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1.prj.md5 b/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1.prj.md5
deleted file mode 100644
index f46644965315046eadb514287ccba018d9886797..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-18d6324d41260c1ddca2480e820a2887
diff --git a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1_neumann.prj.md5 b/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1_neumann.prj.md5
deleted file mode 100644
index d75399938ef0f98e9ccfa12b6d73a017a90afab1..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/line_1_GroundWaterFlow/line_1e1_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-ddca9dd94509dcffc3c6f669a5a3f1d4
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0.prj.md5
deleted file mode 100644
index 1c615f2e979e4512d5a83713ee55ee5714257b4d..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-eb83b4cea41bf7167dbf05300bc7c415
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_neumann.prj.md5
deleted file mode 100644
index 877d5b94647e2e39b64bd9f976f3b7adf63e7cbf..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-ceb411c3d2297d2e6b9fdbd9e72ea85a
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_result_expected.dat.md5
deleted file mode 100644
index 41d2c5d2d2158f7fa6bbdc62502266ca11a3b07b..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e0_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-ff49481af89e8f09e3b932365f38c277
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1.prj.md5
deleted file mode 100644
index 46c2b376c13562a40e08190ec03534898d8258c6..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-5a06f0a306c3c565b83b33ac2da1f9c0
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_neumann.prj.md5
deleted file mode 100644
index c24bedc59bd03d1a716ec072de61fc12ba2c095e..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-118e2448f801e36c4786d140d098a32c
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_result_expected.dat.md5
deleted file mode 100644
index 913d84506479341778313d0cd896c909f8696209..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e1_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-4c098c03acb41c18350572b3c617e5a8
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2.prj.md5
deleted file mode 100644
index 862dd730a0dde7ca37bc51e70dcdb0a4f66b24ac..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-9704e85b9ef7355cc55e45ec1ed7a9c2
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_neumann.prj.md5
deleted file mode 100644
index 5f05d5a20568249395ab9b3c031fff8569fa7675..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-502f8e2ab7b820a1559971e258a18017
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_result_expected.dat.md5
deleted file mode 100644
index 5ca6a31a732760c2716646356c7d8fe7e4d68632..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e2_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-2e2f9fc54fee07d50ac2226561417b27
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3.prj.md5
deleted file mode 100644
index ee5d853f9221701a54ee6839e1f9d55b53a3b171..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-142f4d265d498b7813505ac07ed0d546
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_neumann.prj.md5
deleted file mode 100644
index 871c9cb5bd4210f2c680123109b8ac5cb94d665f..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-791acf1d83beb1c746b85b545eccfcb8
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_result_expected.dat.md5
deleted file mode 100644
index 219323cc6ed0926ea725eeaabfdd2ab841ca4000..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e3_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-5d673c0d01b6121e3540f16685c69bb0
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4.prj.md5
deleted file mode 100644
index b27fd3a041658f5c548c92c71762ce83a3600df4..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-4e145be574e75278dd5d9b8159f88484
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_neumann.prj.md5
deleted file mode 100644
index dab35e142cd4706205eeb8ccf14be51e8c9f2a2a..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-0fd6334f4dd6c3ae98930dd0cca83d4f
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_result_expected.dat.md5
deleted file mode 100644
index b3a8b3ece9ef7704f709ec879322088022df9831..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e4_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-7dd12a27fabf38235fb4b9d147044ec4
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5.prj.md5
deleted file mode 100644
index 11afab0c488dd2d72c2d1e3968ee5cab8dfa3ebf..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-8540c58ecb9153ac83813b1fbdc9faa7
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_neumann.prj.md5
deleted file mode 100644
index 4a3ded29bcce48d24d297d731cb7bf4388f76b08..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-7874c34584330644d215f1914c495ad7
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_result_expected.dat.md5
deleted file mode 100644
index 6f61da64cf536cc5be490a6ab56f9dcac70440e4..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e5_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-6fd0467e571d761e08317399c32f5b02
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6.prj.md5
deleted file mode 100644
index 8de9849ba340a5af49abf95e13317f03d3382268..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-364f2b90ef41482ff2277feff80e0801
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_neumann.prj.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_neumann.prj.md5
deleted file mode 100644
index 89eb82ad890688f8c6f36092ceedbf38695f4005..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-f66cdcf8d9e0eb32436dce69c9bd470a
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_result_expected.dat.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_result_expected.dat.md5
deleted file mode 100644
index 2a845f7eb1560c471f6cbf17e5cad52b8b73b15a..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1e6_result_expected.dat.md5
+++ /dev/null
@@ -1 +0,0 @@
-83ae72b75a90097ee467362a0797cace
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1.gml.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1.gml.md5
deleted file mode 100644
index 2045256586a6c295d907910aac46dc832ce7e1cd..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1.gml.md5
+++ /dev/null
@@ -1 +0,0 @@
-d9a462f7e3957fc649a4e9e8830ebe15
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e0.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e0.vtu.md5
deleted file mode 100644
index 963ff874d80790a2a14b9cb50082ed540014d17f..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e0.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-6ac6f0fac249d14949a823133fa119bb
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e1.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e1.vtu.md5
deleted file mode 100644
index 708457cf2070358cfdc89174728fb71ea5d1d1d3..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-608265248f96e67550f56f51b4523302
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e2.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e2.vtu.md5
deleted file mode 100644
index 4d21603396c3f9b4b7098468689bf9e7647da210..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e2.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-88a09b0c9baabd8879ec43c97bdcfa71
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e3.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e3.vtu.md5
deleted file mode 100644
index 7f60c1357c7851f65e9e34e6c45794dd88a9df38..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e3.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-50ae0f0c5db0b60d631b069e88687164
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e4.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e4.vtu.md5
deleted file mode 100644
index 0b216ae9ffc168b9b8645a8c40207e78225b30df..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e4.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-92759160a34fe5f1f29376aa0c347067
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e5.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e5.vtu.md5
deleted file mode 100644
index f04cc42b3f413eb468d8846429d826e0e14d7d88..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e5.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-3cdbb5b5b0d20a985caa4ce96f18e8c3
diff --git a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e6.vtu.md5 b/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e6.vtu.md5
deleted file mode 100644
index a0913c8ed103f237acc43b58d3a356eef190f127..0000000000000000000000000000000000000000
--- a/Tests/Data/Elliptic/square_1x1_GroundWaterFlow/square_1x1_quad_1e6.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-205cd06f75967893a883c31959b8f01c
diff --git a/Tests/Data/EllipticPETSc/cube_1e3.prj.md5 b/Tests/Data/EllipticPETSc/cube_1e3.prj.md5
deleted file mode 100644
index 2387326873a5deb2927e273e8a56a3b89a03bfa6..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-b7c923be54f8fc354056bae476eab178
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_neumann.prj.md5 b/Tests/Data/EllipticPETSc/cube_1e3_neumann.prj.md5
deleted file mode 100644
index 03e44246d8a1b41f4e7153bc375b6732fc00f4ec..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_neumann.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-71368d4a6d84663b724f5a0ea2f80d1f
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_0.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_0.vtu.md5
deleted file mode 100644
index d8cba3bcd256a1058532ece17b072a5f1a8016ba..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_0.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-0b5b4152c3386e477255f977e6874857
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_1.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_1.vtu.md5
deleted file mode 100644
index bd31c774001f55552d890f77a6d4e3f0d8bfd02a..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-5a18f0845ec4f3b8afc95470876bce93
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_2.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_2.vtu.md5
deleted file mode 100644
index 804cdde5cce379d6dfeef488c5407eac3620b7e6..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_1_expected_2.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-604618acd4c20ff4e79e42f6ad5ab6c6
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_expected.pvtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_expected.pvtu.md5
deleted file mode 100644
index a987c6f495265d1009db2a8fa9d77f2486361928..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_neumann_pcs_0_ts_expected.pvtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-b769cb4ebbbe83f545ace09ec80eb5aa
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected.pvtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected.pvtu.md5
deleted file mode 100644
index 1c0d79f92c8f475e5be2cf6dc61d3104f179bad7..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected.pvtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-4dc7f4f860e2d1d94251af43d0f07e47
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_0.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_0.vtu.md5
deleted file mode 100644
index 8d77f6843f8492d39f92f31a75fdba3776efd057..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_0.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-c4d6f997e6246f2fb5ac6b36f06d5f6b
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_1.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_1.vtu.md5
deleted file mode 100644
index d665aaee70e3320e46c8d28217c5c9c96688e6a4..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-aadd2e7c1dde99774bd6e128d424567c
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_2.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_2.vtu.md5
deleted file mode 100644
index 75911af1485896ad9e7fd73989b6370bb8b2fbc1..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_2.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-4b79003505b499adfced027292c94fb9
diff --git a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_visual.pvtu.md5 b/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_visual.pvtu.md5
deleted file mode 100644
index 2b34f779f0588ee6a60fafef5425537638db9e5a..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1e3_pcs_0_ts_1_expected_visual.pvtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-5a6726fb2142a57d401fa553d4374c8e
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1.gml.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1.gml.md5
deleted file mode 100644
index 699d887fc64ec1459248f5b9c6232734afdac118..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1.gml.md5
+++ /dev/null
@@ -1 +0,0 @@
-1a31691ad2af86018942cd34feb80b8d
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3.vtu.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3.vtu.md5
deleted file mode 100644
index ba8cd3ba224c86dc36e2ba63fc1305b5a08efa0b..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-93edceded9619355818b263d82187254
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_cfg3.bin.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_cfg3.bin.md5
deleted file mode 100644
index f6517b74ff3393b53d6efe88c6745a25e85440e9..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_cfg3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-bc06a4c006e9e52de81661326af0a661
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele3.bin.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele3.bin.md5
deleted file mode 100644
index da794df1202cfc6544898cc301733168930578d7..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-86bee4c193fd3eb1cd3c6763ca9baaac
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele_g3.bin.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele_g3.bin.md5
deleted file mode 100644
index db9e642c417ae74f36703370fd5d2e4362c9e9a7..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_ele_g3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-34c859ccc558369b42858fce5b1b883a
diff --git a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_nod3.bin.md5 b/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_nod3.bin.md5
deleted file mode 100644
index 792059c6572058b10aa40656eb2814f7256d77f5..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/cube_1x1x1_hex_1e3_partitioned_msh_nod3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-638cd9a14726006b108f429b7e4e95e8
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.prj.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.prj.md5
deleted file mode 100644
index 3ea51ace8a310259683e44dd8adc683c3c3b726a..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.prj.md5
+++ /dev/null
@@ -1 +0,0 @@
-07c41ae6d4c47aa4e6b30aa4100def7f
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.vtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.vtu.md5
deleted file mode 100644
index 44477647c7282c92362ff917655886bc99a09f98..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-5def96fad11b40ac3aa3922804d483a2
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_cfg3.bin.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_cfg3.bin.md5
deleted file mode 100644
index 8b0cf6b35b33fa1f6eff898b3a1af9c89e7bef03..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_cfg3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-b8f1fcdee506243dfbd501cdaef67ecc
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele3.bin.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele3.bin.md5
deleted file mode 100644
index 27c04e626d92118b44659ca1175f1c461a4ab50e..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-ae85212f20fd03039536fc96a347ba26
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele_g3.bin.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele_g3.bin.md5
deleted file mode 100644
index 1f97c70d2c4ed48672d7c047114e76fc4de5b4ba..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_ele_g3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-c2599030cc0e415f0930dd20971a4e9b
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_nod3.bin.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_nod3.bin.md5
deleted file mode 100644
index 67db885e78aaeb68ca19569717b0acda8e49b43b..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_partitioned_msh_nod3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-5081cdb210f9ee8643378914eb69da64
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected.pvtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected.pvtu.md5
deleted file mode 100644
index 19dc56a075e4dcfc6c0eb7be078c63d17156df21..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected.pvtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-e43258acc375fefa0ccd6cfe00880106
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_0.vtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_0.vtu.md5
deleted file mode 100644
index 89f26c4d2a67bfb0573cf78a9f8609a11a8a6674..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_0.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-939b0e414d7a5451c3769491719df604
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_1.vtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_1.vtu.md5
deleted file mode 100644
index 1944426161b4490e94c2e97b9866c27af05c9380..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_1.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-3bf40ad619b154b80c5e7fbdc79d8098
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_2.vtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_2.vtu.md5
deleted file mode 100644
index 5ace7d8e04894ccf6983022fffcbd4b081bbb7a6..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_2.vtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-c396c6e80ef685e0950062d6226f6d1e
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_visual.pvtu.md5 b/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_visual.pvtu.md5
deleted file mode 100644
index 19dc56a075e4dcfc6c0eb7be078c63d17156df21..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_GroundWaterFlow_result_pcs_0_ts_1_expected_visual.pvtu.md5
+++ /dev/null
@@ -1 +0,0 @@
-e43258acc375fefa0ccd6cfe00880106
diff --git a/Tests/Data/EllipticPETSc/quad_20x10_left_right.gml.md5 b/Tests/Data/EllipticPETSc/quad_20x10_left_right.gml.md5
deleted file mode 100644
index 6c6e44e78bcfd97fa791f335c5f4775f5b01552a..0000000000000000000000000000000000000000
--- a/Tests/Data/EllipticPETSc/quad_20x10_left_right.gml.md5
+++ /dev/null
@@ -1 +0,0 @@
-07a029d1604f0b2a0b441dbf2a3ed383
diff --git a/Tests/Data/EmptyProject.xml.md5 b/Tests/Data/EmptyProject.xml.md5
deleted file mode 100644
index a88b3bf302e772e3108792ab23e378089e41b022..0000000000000000000000000000000000000000
--- a/Tests/Data/EmptyProject.xml.md5
+++ /dev/null
@@ -1 +0,0 @@
-ec9e4b48ac57b1fa7ea3113cef7f9935
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_0_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_0_expected.msh.md5
deleted file mode 100644
index d9d8cfdd98e88c3d5198e74470d658a356aec1d1..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_0_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-f43c7017faaca0dd53f8744ab7e95114
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_1_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_1_expected.msh.md5
deleted file mode 100644
index fd3b84b904531598d4359105c673d21a9b66399e..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_1_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-d9779534d96135d184846087bd586f20
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_2_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_2_expected.msh.md5
deleted file mode 100644
index 78e14adbdf8aad72e80919da511da787a3a1ee4e..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partition_2_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-db836357eeecc68dc3af584fb50cf86e
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_cfg3.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_cfg3.msh.md5
deleted file mode 100644
index 04f5132e0bf4208099095a6f1ab309fe6dde1398..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_cfg3.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-8ad0e3b2eacfcab16be08de60b5cade5
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_elems_3.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_elems_3.msh.md5
deleted file mode 100644
index b4065e7507950d036407488a981d1c5c204cadde..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_elems_3.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-50b429cc1b9d6cb2b4aa10081668186a
diff --git a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_nodes_3.msh.md5 b/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_nodes_3.msh.md5
deleted file mode 100644
index bdc2b3b8faf26a74bd7ee63c2fad076eb999621a..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/ASCII/mesh_3d_partitioned_nodes_3.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-c159f1bdcc3aaca1181308becae69b28
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_0_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_0_expected.msh.md5
deleted file mode 100644
index d9d8cfdd98e88c3d5198e74470d658a356aec1d1..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_0_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-f43c7017faaca0dd53f8744ab7e95114
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_1_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_1_expected.msh.md5
deleted file mode 100644
index fd3b84b904531598d4359105c673d21a9b66399e..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_1_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-d9779534d96135d184846087bd586f20
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_2_expected.msh.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_2_expected.msh.md5
deleted file mode 100644
index 78e14adbdf8aad72e80919da511da787a3a1ee4e..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partition_2_expected.msh.md5
+++ /dev/null
@@ -1 +0,0 @@
-db836357eeecc68dc3af584fb50cf86e
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_cfg3.bin.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_cfg3.bin.md5
deleted file mode 100644
index 10eb2a4ea9d2de18f64d60a5a7e46d6e772dd6cb..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_cfg3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-72156584f69f583e2872573c4d009dcc
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele3.bin.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele3.bin.md5
deleted file mode 100644
index e480881e9be77d8d9d2dab47bddee69dc11ab083..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-bf09ec494dc3eba5dc6f98680403ff63
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele_g3.bin.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele_g3.bin.md5
deleted file mode 100644
index 90b04a9d2f6c26a3ec2169501dfb2590bae424de..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_ele_g3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-ee36676d86d139b66e2bb4c5adecdb17
diff --git a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_nod3.bin.md5 b/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_nod3.bin.md5
deleted file mode 100644
index da3915d102229ea5e8eeae210b00231e345db04d..0000000000000000000000000000000000000000
--- a/Tests/Data/NodePartitionedMesh/Binary/mesh_3d_partitioned_msh_nod3.bin.md5
+++ /dev/null
@@ -1 +0,0 @@
-620f4135adad12086246693232369a8d
diff --git a/scripts/cmake/SubmoduleSetup.cmake b/scripts/cmake/SubmoduleSetup.cmake
index f3d81e2d4d7fc423a1be9ad4db4b67fea6828d6b..5ffb0a1e0141ec722548b879c1ef02ca7e2c52af 100644
--- a/scripts/cmake/SubmoduleSetup.cmake
+++ b/scripts/cmake/SubmoduleSetup.cmake
@@ -12,6 +12,9 @@ set(REQUIRED_SUBMODULES
 	ThirdParty/tetgen
 	${OGS_ADDITIONAL_SUBMODULES_TO_CHECKOUT}
 )
+if(OGS_BUILD_TESTS)
+	list(APPEND REQUIRED_SUBMODULES Tests/Data)
+endif()
 
 foreach(SUBMODULE ${REQUIRED_SUBMODULES})
 	if(WIN32)
diff --git a/scripts/cmake/packaging/InstallDependencies.cmake b/scripts/cmake/packaging/InstallDependencies.cmake
index 4660884b242a808147bbae36b035851385c985a9..9756823ecf7ed02f39d45b425be156f288d1b727 100644
--- a/scripts/cmake/packaging/InstallDependencies.cmake
+++ b/scripts/cmake/packaging/InstallDependencies.cmake
@@ -1,10 +1,6 @@
 macro(InstallDependencies TARGET INSTALL_COMPONENT)
 
-	if(MSVC)
-		set(TARGET_EXE ${EXECUTABLE_OUTPUT_PATH}/Release/${TARGET}.exe)
-	else()
-		set(TARGET_EXE ${EXECUTABLE_OUTPUT_PATH}/${TARGET})
-	endif()
+	set(TARGET_EXE ${RUNTIME_OUTPUT_DIRECTORY}/${TARGET}${CMAKE_EXECUTABLE_SUFFIX})
 
 	if(EXISTS ${TARGET_EXE})
 		include(GetPrerequisites)
diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake
index 25907696c85781362cd736216e2858834e0fb2e9..32556c535f05918d6827a89a30e042d425c755d4 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>
 # )
@@ -36,32 +37,25 @@ function (AddTest)
 	set(oneValueArgs EXECUTABLE PATH NAME WRAPPER TESTER)
 	set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS)
 	cmake_parse_arguments(AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
-	set(AddTest_SOURCE_PATH "${ExternalData_SOURCE_ROOT}/${AddTest_PATH}")
-	set(AddTest_BINARY_PATH "${ExternalData_BINARY_ROOT}/${AddTest_PATH}")
+
+	set(AddTest_SOURCE_PATH "${Data_SOURCE_DIR}/${AddTest_PATH}")
+	set(AddTest_BINARY_PATH "${Data_BINARY_DIR}/${AddTest_PATH}")
+	file(MAKE_DIRECTORY ${AddTest_BINARY_PATH})
+	file(TO_NATIVE_PATH "${AddTest_BINARY_PATH}" AddTest_BINARY_PATH_NATIVE)
 
 	# set defaults
 	if(NOT AddTest_EXECUTABLE)
 		set(AddTest_EXECUTABLE ogs)
 	endif()
 
+	if("${AddTest_EXECUTABLE}" STREQUAL "ogs")
+		set(AddTest_EXECUTABLE_ARGS -o ${AddTest_BINARY_PATH_NATIVE} ${AddTest_EXECUTABLE_ARGS})
+	endif()
+
 	if(NOT AddTest_WRAPPER)
 		set(AddTest_WRAPPER time)
 	endif()
 
-	# replace arguments which reference test data files with the correct DATA{}-path
-	foreach(ARG ${AddTest_EXECUTABLE_ARGS})
-		string(REGEX MATCH ".*${ARG}.*" ARG_FOUND ${AddTest_DATA} )
-		if(ARG_FOUND)
-			set(AddTest_EXECUTABLE_ARGS_PARSED ${AddTest_EXECUTABLE_ARGS_PARSED} DATA{${AddTest_SOURCE_PATH}/${ARG}})
-		else()
-			set(AddTest_EXECUTABLE_ARGS_PARSED ${AddTest_EXECUTABLE_ARGS_PARSED} ${ARG}})
-		endif()
-	endforeach()
-
-	string(REPLACE ";" "," AddTest_DATA "${AddTest_DATA}")
-	set(AddTest_DATA "${AddTest_SOURCE_PATH}/${AddTest_DATA}")
-
-
 	# --- Implement wrappers ---
 	# check requirements, disable if not met
 	if(AddTest_WRAPPER STREQUAL "time" AND NOT TIME_TOOL_PATH)
@@ -86,7 +80,7 @@ function (AddTest)
 		set(WRAPPER_COMMAND "${VALGRIND_TOOL_PATH} --tool=callgrind --branch-sim=yes --cache-sim=yes --dump-instr=yes --collect-jumps=yes")
 		unset(tester)
 	elseif(AddTest_WRAPPER STREQUAL "mpirun")
-		set(WRAPPER_COMMAND "${MPIRUN_TOOL_PATH} ${AddTest_WRAPPER_ARGS}")
+		set(WRAPPER_COMMAND ${MPIRUN_TOOL_PATH})
 	endif()
 
 	# --- Implement testers ---
@@ -124,7 +118,9 @@ function (AddTest)
 			get_filename_component(FILE_NAME ${FILE} NAME_WE)
 			get_filename_component(FILE_EXT ${FILE} EXT)
 			set(FILE_EXPECTED ${FILE_NAME}_expected${FILE_EXT})
-			set(TESTER_COMMAND ${TESTER_COMMAND} "${SELECTED_DIFF_TOOL_PATH} ${TESTER_ARGS} DATA{${AddTest_SOURCE_PATH}/${FILE_EXPECTED}} ${AddTest_BINARY_PATH}/${FILE}")
+			set(TESTER_COMMAND ${TESTER_COMMAND} "${SELECTED_DIFF_TOOL_PATH} \
+				${TESTER_ARGS} ${AddTest_SOURCE_PATH}/${FILE_EXPECTED} \
+				${AddTest_BINARY_PATH}/${FILE}")
 			if(AddTest_DIFF_DATA_PARSED)
 				set(AddTest_DIFF_DATA_PARSED "${AddTest_DIFF_DATA_PARSED},${FILE_EXPECTED}")
 			else()
@@ -143,7 +139,8 @@ function (AddTest)
 		list(GET AddTest_DIFF_DATA 2 NAME_B)
 
 		set(TESTER_COMMAND ${TESTER_COMMAND} "${SELECTED_DIFF_TOOL_PATH} \
-			${AddTest_BINARY_PATH}/${VTK_FILE} -a ${NAME_A} -b ${NAME_B} \
+			${AddTest_BINARY_PATH}/${VTK_FILE} \
+			-a ${NAME_A} -b ${NAME_B} \
 			${TESTER_ARGS}")
 		string(REPLACE ";" " && " TESTER_COMMAND "${TESTER_COMMAND}")
 	elseif(tester STREQUAL "memcheck")
@@ -158,17 +155,15 @@ function (AddTest)
 	endif()
 
 	# Run the wrapper
-	ExternalData_Add_Test(data
+	Add_Test(
 		NAME "${AddTest_EXECUTABLE}-${AddTest_NAME}-${AddTest_WRAPPER}"
 		COMMAND ${CMAKE_COMMAND}
 		-DEXECUTABLE=${AddTest_EXECUTABLE_PARSED}
-		-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS_PARSED}
+		"-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}"
 		-Dcase_path=${AddTest_SOURCE_PATH}
-		-Dcase_name=${AddTest_NAME}
 		-DWRAPPER_COMMAND=${WRAPPER_COMMAND}
-		-DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}
+		"-DWRAPPER_ARGS=${AddTest_WRAPPER_ARGS}"
 		-P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestWrapper.cmake
-		DATA{${AddTest_DATA}}
 	)
 
 	if(NOT AddTest_TESTER)
@@ -177,13 +172,11 @@ function (AddTest)
 
 	# Run the tester
 	if(AddTest_TESTER STREQUAL "diff" OR AddTest_TESTER STREQUAL "numdiff")
-		ExternalData_Add_Test(data
+		Add_Test(
 			NAME "${AddTest_EXECUTABLE}-${AddTest_NAME}-${AddTest_WRAPPER}-${AddTest_TESTER}"
 			COMMAND ${CMAKE_COMMAND}
 			-Dcase_path=${AddTest_SOURCE_PATH}
-			-Dcase_name=${AddTest_NAME}
 			-DTESTER_COMMAND=${TESTER_COMMAND}
-			-DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}
 			-P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
 			DATA{${AddTest_DIFF_DATA_PARSED}}
 		)
@@ -192,9 +185,7 @@ function (AddTest)
 			NAME "${AddTest_EXECUTABLE}-${AddTest_NAME}-${AddTest_WRAPPER}-${AddTest_TESTER}"
 			COMMAND ${CMAKE_COMMAND}
 			-Dcase_path=${AddTest_SOURCE_PATH}
-			-Dcase_name=${AddTest_NAME}
 			-DTESTER_COMMAND=${TESTER_COMMAND}
-			-DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}
 			-P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
 		)
 	else()
@@ -202,9 +193,7 @@ function (AddTest)
 			NAME "${AddTest_EXECUTABLE}-${AddTest_NAME}-${AddTest_WRAPPER}-${AddTest_TESTER}"
 			COMMAND ${CMAKE_COMMAND}
 			-Dcase_path=${AddTest_SOURCE_PATH}
-			-Dcase_name=${AddTest_NAME}
 			-DTESTER_COMMAND=${TESTER_COMMAND}
-			-DCMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}
 			-P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake
 		)
 	endif()
@@ -212,3 +201,4 @@ function (AddTest)
 		PROPERTIES DEPENDS ${AddTest_EXECUTABLE}-${AddTest_NAME}-${AddTest_WRAPPER})
 
 endfunction()
+
diff --git a/scripts/cmake/test/AddTestTester.cmake b/scripts/cmake/test/AddTestTester.cmake
index c91e1380cad975d31e410fd5124cee0ad5d681d4..15adfbe41ef92a63e3b0347cdc2ede4616775e9e 100644
--- a/scripts/cmake/test/AddTestTester.cmake
+++ b/scripts/cmake/test/AddTestTester.cmake
@@ -1,9 +1,3 @@
-#message("tester: ${TESTER_COMMAND}")
-#string(REPLACE " " ";" TESTER_COMMAND ${TESTER_COMMAND})
-#set(list ${TESTER_COMMAND})
-#message("tester: ${list}")
-
-
 execute_process(
 	COMMAND bash -c ${TESTER_COMMAND}
 	WORKING_DIRECTORY ${case_path}
diff --git a/scripts/cmake/test/AddTestWrapper.cmake b/scripts/cmake/test/AddTestWrapper.cmake
index 54cfd25710efa71cb2df178005f02069856859f1..eb23e6d35c518cfcd04556c6608cf39b75211bff 100644
--- a/scripts/cmake/test/AddTestWrapper.cmake
+++ b/scripts/cmake/test/AddTestWrapper.cmake
@@ -1,6 +1,7 @@
-string(REPLACE " " ";" WRAPPER_COMMAND ${WRAPPER_COMMAND})
+# IMPORTANT: multiple arguments in one variables have to be in list notation (;)
+# and have to be quoted when passed "-DEXECUTABLE_ARGS=${AddTest_EXECUTABLE_ARGS}"
 execute_process(
-	COMMAND ${WRAPPER_COMMAND} ${EXECUTABLE} ${EXECUTABLE_ARGS}
+	COMMAND ${WRAPPER_COMMAND} ${WRAPPER_ARGS} ${EXECUTABLE} ${EXECUTABLE_ARGS}
 	WORKING_DIRECTORY ${case_path}
 	RESULT_VARIABLE EXIT_CODE
 )
diff --git a/scripts/cmake/test/Data.cmake b/scripts/cmake/test/Data.cmake
deleted file mode 100644
index 7cbdb55e4312d1d4f7e43bc8cd6f1c93b50275e6..0000000000000000000000000000000000000000
--- a/scripts/cmake/test/Data.cmake
+++ /dev/null
@@ -1,59 +0,0 @@
-include(ExternalData)
-
-set(ExternalData_LOCAL_FOLDER ogs6-data)
-
-set(ExternalData_OBJECT_STORES "${ExternalData_OBJECT_STORES_DEFAULT}" CACHE STRING
-	"Semicolon-separated list of local directories holding test data files in the layout %(algo)/%(hash).")
-mark_as_advanced(ExternalData_OBJECT_STORES)
-if(NOT ExternalData_OBJECT_STORES)
-	set(ExternalData_OBJECT_STORES "${CMAKE_SOURCE_DIR}/../${ExternalData_LOCAL_FOLDER}")
-	file(MAKE_DIRECTORY "${ExternalData_OBJECT_STORES}")
-endif()
-
-set(ExternalData_SOURCE_ROOT ${CMAKE_SOURCE_DIR}/Tests/Data)
-set(ExternalData_BINARY_ROOT ${CMAKE_BINARY_DIR}/Tests/Data)
-set(ExternalData_LINK_CONTENT MD5)
-
-# Amazon S3 config
-set(ExternalData_S3_Bucket opengeosys)
-
-set(ExternalData_URL_TEMPLATES
-	"http://www.opengeosys.org/images/dev/%(algo)/%(hash)"
-	"http://${ExternalData_S3_Bucket}.s3.amazonaws.com/${ExternalData_LOCAL_FOLDER}/%(algo)/%(hash)"
-)
-
-add_custom_target(
-	move-data
-	COMMAND ${CMAKE_COMMAND}
-	-DExternalData_SOURCE_ROOT=${ExternalData_SOURCE_ROOT}
-	-DExternalData_LINK_CONTENT=${ExternalData_LINK_CONTENT}
-	-DExternalData_OBJECT_STORES=${ExternalData_OBJECT_STORES}
-	-P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/MoveDataToStore.cmake
-	VERBATIM
-)
-
-if(S3CMD_TOOL_PATH)
-	add_custom_target(
-		upload-data
-		COMMAND ${S3CMD_TOOL_PATH} sync --acl-public --skip-existing --no-check-md5
-			${CMAKE_SOURCE_DIR}/../${ExternalData_LOCAL_FOLDER} s3://${ExternalData_S3_Bucket}
-	)
-endif()
-
-if(HOSTNAME STREQUAL "envinf1.eve.ufz.de")
-	add_custom_target(
-		sync-data
-		COMMAND ${CMAKE_COMMAND} -E copy_directory
-		${CMAKE_SOURCE_DIR}/../${ExternalData_LOCAL_FOLDER}
-		/data/ogs/${ExternalData_LOCAL_FOLDER}
-	)
-	if(CURL_TOOL_PATH)
-		add_custom_command(
-			TARGET sync-data POST_BUILD
-			COMMAND ${CURL_TOOL_PATH} --insecure 'https://svn.ufz.de:8443/buildByToken/build?job=Tmp_Trigger&token=ogsbuild&cause=Triggered_by_sync-data_target_on_envinf1'
-			COMMENT "Triggered sync to opengeosys.org, see https://svn.ufz.de:8443/job/OGS-6/job/SyncExternalData"
-		)
-	else()
-		message(STATUS "curl tool was not found but is required for the sync-data target!")
-	endif()
-endif()
diff --git a/scripts/cmake/test/Test.cmake b/scripts/cmake/test/Test.cmake
index d1d596a092b7d7adc51b7f28953550ab67c5ef12..3e6c86b30925b6a88ff63de0fdab9a3f693f60b0 100644
--- a/scripts/cmake/test/Test.cmake
+++ b/scripts/cmake/test/Test.cmake
@@ -40,7 +40,6 @@ configure_file(
 )
 
 include(${CMAKE_CURRENT_SOURCE_DIR}/scripts/cmake/test/AddTest.cmake)
-include(${CMAKE_CURRENT_SOURCE_DIR}/scripts/cmake/test/Data.cmake)
 
 if(CMAKE_CONFIGURATION_TYPES)
 	set(CONFIG_PARAMETER --build-config "$<CONFIGURATION>")
@@ -53,7 +52,7 @@ add_custom_target(
 	--output-on-failure --output-log Tests/ctest.log
 	--exclude-regex LARGE
 	${CONFIG_PARAMETER} --parallel ${NUM_PROCESSORS} --test-action test
-	DEPENDS data ogs vtkdiff ctest-cleanup
+	DEPENDS ogs vtkdiff ctest-cleanup
 )
 add_custom_target(ctest-large-cleanup ${CMAKE_COMMAND} -E remove Tests/ctest-large.log)
 add_custom_target(
diff --git a/scripts/jenkins/clang.groovy b/scripts/jenkins/clang.groovy
index c8598d18118ba9906fcc3be59735ed22e85e82e9..c19857445ae28b9a8eb2526ec69260adf911e99d 100644
--- a/scripts/jenkins/clang.groovy
+++ b/scripts/jenkins/clang.groovy
@@ -9,7 +9,7 @@ node('docker')
 
 	// Multiple configurations are build in parallel
 	parallel linux: {
-		docker.image('ogs6/clang-ogs-base:latest').inside
+		docker.image('ogs6/clang-ogs-base:latest').inside('-v /home/core/.ccache:/usr/src/.ccache')
 		{
 			catchError {
 				build 'build', '-DOGS_ADDRESS_SANITIZER=ON -DOGS_UNDEFINED_BEHAVIOR_SANITIZER=ON', ''
diff --git a/scripts/jenkins/gcc.groovy b/scripts/jenkins/gcc.groovy
index fe653775eea879e529589228b112e80704d4adb3..49267b3787f57d0fa0df122d44ec853556efe5a2 100644
--- a/scripts/jenkins/gcc.groovy
+++ b/scripts/jenkins/gcc.groovy
@@ -8,7 +8,7 @@ node('docker')
   	}
 
 	stage 'Build'
-	docker.image('ogs6/gcc-ogs-base:latest').inside {
+	docker.image('ogs6/gcc-ogs-base:latest').inside('-v /home/core/.ccache:/usr/src/.ccache') {
 		build 'build', '', 'package tests ctest'
 	}