From db330fdd31ad5c27fdb75b214d15f47ad497fef8 Mon Sep 17 00:00:00 2001 From: Lars Bilke <lars.bilke@ufz.de> Date: Mon, 6 Feb 2017 21:48:51 +0100 Subject: [PATCH] [CMake] Introduced optional VIS parameter on AddTest(). Specify one or more files which be converted to vtk.js if vtkDataConverter is found. https://github.com/Kitware/vtk-js/issues/3#issuecomment-230389315 --- ProcessLib/GroundwaterFlow/CMakeLists.txt | 4 ++-- scripts/cmake/Find.cmake | 2 ++ scripts/cmake/test/AddTest.cmake | 6 +++++- scripts/cmake/test/AddTestTester.cmake | 7 +++++++ 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/ProcessLib/GroundwaterFlow/CMakeLists.txt b/ProcessLib/GroundwaterFlow/CMakeLists.txt index fb16a642ffd..70d2e9f41e1 100644 --- a/ProcessLib/GroundwaterFlow/CMakeLists.txt +++ b/ProcessLib/GroundwaterFlow/CMakeLists.txt @@ -34,6 +34,8 @@ foreach(mesh_size 1e0 1e1 1e2 1e3) ABSTOL 1e-1 RELTOL 1e-1 DIFF_DATA cube_1x1x1_hex_${mesh_size}.vtu cube_${mesh_size}_neumann_pcs_0_ts_1_t_1.000000.vtu D1_left_front_N1_right pressure + VIS + cube_${mesh_size}_neumann_pcs_0_ts_1_t_1.000000.vtu ) endforeach() @@ -558,5 +560,3 @@ foreach(mesh_size 1e1) line_1_line_${mesh_size}.vtu line_${mesh_size}_neumann_pcs_0_ts_1_t_1_000000_0.vtu D1_left_N1_right pressure ) endforeach() - - diff --git a/scripts/cmake/Find.cmake b/scripts/cmake/Find.cmake index ed14e951f76..16901c57036 100644 --- a/scripts/cmake/Find.cmake +++ b/scripts/cmake/Find.cmake @@ -64,6 +64,8 @@ if(CCACHE_FOUND) endif() endif(CCACHE_FOUND) +find_program(VTKJS_CONVERTER vtkDataConverter) + ###################### ### Find libraries ### ###################### diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake index 733de255e47..5a1c83c2330 100644 --- a/scripts/cmake/test/AddTest.cmake +++ b/scripts/cmake/test/AddTest.cmake @@ -15,6 +15,7 @@ # REQUIREMENTS # optional simple boolean expression which has to be true to # enable the test, e.g. # OGS_USE_PETSC AND (OGS_USE_EIGEN OR OGS_USE_LIS) +# VIS <vtu output file(s)> # optional for documentation # ) # # Conditional arguments: @@ -36,7 +37,7 @@ function (AddTest) # parse arguments set(options NONE) set(oneValueArgs EXECUTABLE PATH NAME WRAPPER TESTER ABSTOL RELTOL) - set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS REQUIREMENTS) + set(multiValueArgs EXECUTABLE_ARGS DATA DIFF_DATA WRAPPER_ARGS REQUIREMENTS VIS) cmake_parse_arguments(AddTest "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) @@ -214,6 +215,9 @@ function (AddTest) COMMAND ${CMAKE_COMMAND} -Dcase_path=${AddTest_SOURCE_PATH} -DTESTER_COMMAND=${TESTER_COMMAND} + -DVTKJS_CONVERTER=${VTKJS_CONVERTER} + -DBINARY_PATH=${AddTest_BINARY_PATH} + "-DVIS_FILES=${AddTest_VIS}" -P ${PROJECT_SOURCE_DIR}/scripts/cmake/test/AddTestTester.cmake ) set_tests_properties(${TESTER_NAME} PROPERTIES DEPENDS ${TEST_NAME}) diff --git a/scripts/cmake/test/AddTestTester.cmake b/scripts/cmake/test/AddTestTester.cmake index 806bf527f8b..6fdd3472fec 100644 --- a/scripts/cmake/test/AddTestTester.cmake +++ b/scripts/cmake/test/AddTestTester.cmake @@ -17,3 +17,10 @@ endif() if(NOT EXIT_CODE STREQUAL "0") message(FATAL_ERROR "Error exit code: ${EXIT_CODE}") endif() + +# Run vtk.js converter +foreach(FILE ${VIS_FILES}) + execute_process( + COMMAND ${VTKJS_CONVERTER} -e -i ${BINARY_PATH}/${FILE} -o ${BINARY_PATH}/vtk-js + ) +endforeach() -- GitLab