From ed5dfdabd0a7726d4456947f228efa857b6f59af Mon Sep 17 00:00:00 2001 From: Artem Zhidkov Date: Fri, 23 Oct 2020 22:15:00 +0300 Subject: [PATCH] Rework HDF testing procedure --- CMakeLists.txt | 38 ++++++++------ src/CTestTestfileInstall.cmake | 27 ++++++++++ src/ConnectorAPI/Test/CMakeLists.txt | 15 +----- test.hdfs/CMakeLists.txt | 77 +++++++++++----------------- test.hdfs/CTestTestfileInstall.cmake | 32 ++++++++++++ test.hdfs/__main__.py | 24 +++++++++ test.hdfs/{test.py => testme.py} | 20 ++++++++ test.hdfs/tests.set | 52 +++++++++++++++++++ 8 files changed, 209 insertions(+), 76 deletions(-) create mode 100644 src/CTestTestfileInstall.cmake create mode 100644 test.hdfs/CTestTestfileInstall.cmake create mode 100644 test.hdfs/__main__.py rename test.hdfs/{test.py => testme.py} (57%) create mode 100644 test.hdfs/tests.set diff --git a/CMakeLists.txt b/CMakeLists.txt index 8baa2bfec..2d8fef60e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -61,6 +61,11 @@ IF(${HAVE_SALOME}) ELSE(EXISTS ${KERNEL_ROOT_DIR}) MESSAGE(FATAL_ERROR "We absolutely need a Salome KERNEL, please define KERNEL_ROOT_DIR") ENDIF(EXISTS ${KERNEL_ROOT_DIR}) + SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "Path to the Salome GUI") + IF(EXISTS ${GUI_ROOT_DIR}) + LIST(APPEND CMAKE_MODULE_PATH "${GUI_ROOT_DIR}/salome_adm/cmake_files") + FIND_PACKAGE(SalomeGUI REQUIRED) + ENDIF(EXISTS ${GUI_ROOT_DIR}) INCLUDE(SalomeSetupPlatform) # From CONFIGURATION FIND_PACKAGE(SalomePythonInterp REQUIRED) @@ -125,24 +130,18 @@ ENDIF(${HAVE_SALOME}) # Test environment # =================== -IF(WIN32) - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_BIN}") - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}") - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}") - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK "${SUIT_LIB_DIR}") - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK "${SALOME_KERNEL_LIBDIR}") -ELSE(WIN32) - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_BIN}") - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}") - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}") - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${SUIT_LIB_DIR}") - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${SALOME_KERNEL_LIBDIR}") -ENDIF(WIN32) +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_BIN}") +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}") +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}") +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${SUIT_LIB_DIR}") +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK "${SALOME_KERNEL_LIBDIR}") SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}") SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}") SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_ADDONS}") +SET(SALOME_SHAPER_INSTALL_TESTS "${SHAPER_INSTALL_PYTHON_FILES}/test" CACHE PATH "Path to tests directory") + # Sketcher: Change radius of circular edges while dragging a point on the edge SET(SKETCHER_CHANGE_RADIUS_WHEN_MOVE TRUE) @@ -218,9 +217,16 @@ IF(ADD_COMPATIBILITY_TESTS) ADD_CUSTOM_TARGET(run_compatibility_tests COMMAND ${CMAKE_CTEST_COMMAND} -C "${CMAKE_BUILD_TYPE}" -LE "tests_compatibility") ENDIF(ADD_COMPATIBILITY_TESTS) -IF(ADD_HDF_TESTS) - ADD_SUBDIRECTORY (test.hdfs) -ENDIF(ADD_HDF_TESTS) +IF(${HAVE_SALOME}) + IF(ADD_HDF_TESTS) + ADD_SUBDIRECTORY (test.hdfs) + ENDIF(ADD_HDF_TESTS) + + INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/CTestTestfileInstall.cmake + DESTINATION ${SALOME_SHAPER_INSTALL_TESTS} + RENAME CTestTestfile.cmake) +ENDIF(${HAVE_SALOME}) + IF(SHAPER_BUILD_DOC) INCLUDE(FindSphinx) diff --git a/src/CTestTestfileInstall.cmake b/src/CTestTestfileInstall.cmake new file mode 100644 index 000000000..c4e4606f1 --- /dev/null +++ b/src/CTestTestfileInstall.cmake @@ -0,0 +1,27 @@ +# Copyright (C) 2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +SET(SALOME_TEST_DRIVER "$ENV{KERNEL_ROOT_DIR}/bin/salome/appliskel/salome_test_driver.py") + +SET(COMPONENT_NAME SHAPER) + +# Add all test subdirs +SUBDIRS(ConnectorAPI + HDFs +) diff --git a/src/ConnectorAPI/Test/CMakeLists.txt b/src/ConnectorAPI/Test/CMakeLists.txt index cc288b03a..7e0b4846d 100644 --- a/src/ConnectorAPI/Test/CMakeLists.txt +++ b/src/ConnectorAPI/Test/CMakeLists.txt @@ -21,19 +21,8 @@ INCLUDE(tests.set) SET(COMPONENT_NAME SHAPER) -SET(SALOME_SHAPER_INSTALL_TESTS "${SHAPER_INSTALL_PYTHON_FILES}/test") -SET(TEST_INSTALL_DIRECTORY ${SALOME_SHAPER_INSTALL_TESTS}) - -# make test -SET(SALOME_INSTALL_LIBS "lib/salome") -# Adding KERNEL and GUI libraries to environment so that Salome launches correctly -if (WIN32) - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK ${KERNEL_ROOT_DIR}/${SALOME_INSTALL_LIBS}) - SALOME_ACCUMULATE_ENVIRONMENT(PATH NOCHECK ${GUI_ROOT_DIR}/${SALOME_INSTALL_LIBS}) -else() - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK ${KERNEL_ROOT_DIR}/${SALOME_INSTALL_LIBS}) - SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK ${GUI_ROOT_DIR}/${SALOME_INSTALL_LIBS}) -endif() +SET(TEST_INSTALL_DIRECTORY "${SALOME_SHAPER_INSTALL_TESTS}/ConnectorAPI") + SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) diff --git a/test.hdfs/CMakeLists.txt b/test.hdfs/CMakeLists.txt index 1ec952253..eeb8fe240 100644 --- a/test.hdfs/CMakeLists.txt +++ b/test.hdfs/CMakeLists.txt @@ -19,57 +19,40 @@ ENABLE_TESTING() -SET(RESTRICTED_ROOT_DIR $ENV{RESTRICTED_ROOT_DIR} CACHE PATH "Path to the restricted repository") +INCLUDE(tests.set) -set(hdfFilesRestr "") -if (EXISTS ${RESTRICTED_ROOT_DIR}) - file(GLOB hdfFilesRestr "${RESTRICTED_ROOT_DIR}/SHAPER/test.hdfs/*.hdf") -endif() +SET(COMPONENT_NAME SHAPER) +SET(TIMEOUT 600) -file(GLOB hdfFilesCur "${CMAKE_CURRENT_SOURCE_DIR}/*.hdf") -set(hdfFilesRestr ${hdfFilesCur} ${hdfFilesRestr}) +SET(TEST_INSTALL_DIRECTORY "${SALOME_SHAPER_INSTALL_TESTS}/HDFs") -if (WIN32) # different separators and path to libraries variable name - SET(_JUSTPATH "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_BIN};${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG};${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES};${SUIT_LIB_DIR};$ENV{PATH}") - STRING(REPLACE "\\" "/" _JUSTPATH "${_JUSTPATH}") - STRING(REPLACE ";" "\\;" _JUSTPATH "${_JUSTPATH}") - SET(_PYTHONPATH "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG};${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES};${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_ADDONS};$ENV{PYTHONPATH}") - STRING(REPLACE "\\" "/" _PYTHONPATH "${_PYTHONPATH}") - STRING(REPLACE ";" "\\;" _PYTHONPATH "${_PYTHONPATH}") -else() - SET(_LD_LIBRARY_PATH "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_BIN}:${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}:${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}:${SUIT_LIB_DIR}:$ENV{LD_LIBRARY_PATH}") - SET(_PYTHONPATH "${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_SWIG}:${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_PLUGIN_FILES}:${CMAKE_INSTALL_PREFIX}/${SHAPER_INSTALL_ADDONS}:$ENV{PYTHONPATH}") -endif() +SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) -foreach(eachFilePath ${hdfFilesRestr}) - # Strip the ".hdf" suffix - GET_FILENAME_COMPONENT(aTestName ${eachFilePath} NAME_WE) - # Check corresponding ".py" file with reference data exists - IF(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${aTestName}.py") - MESSAGE(WARNING "File ${aTestName}.py containing reference data does not exist") - continue() - ENDIF() +FOREACH(tfile ${TEST_NAMES}) + SET(TEST_NAME ${COMPONENT_NAME}_HDF_${tfile}) + GET_HDF(HDF_TEST_FILE ${tfile}) + ADD_TEST(NAME ${TEST_NAME} + COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/testme.py" "$ENV{KERNEL_ROOT_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}" "${HDF_TEST_FILE}") + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES ENVIRONMENT "${tests_env};SHAPER_UNIT_TEST_IN_PROGRESS=1") + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES LABELS "${COMPONENT_NAME};models_hdf") + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES TIMEOUT ${TIMEOUT}) +ENDFOREACH() - # Add "SubprojectName_" prefix - GET_FILENAME_COMPONENT(aSubprojectName ${CMAKE_CURRENT_SOURCE_DIR} NAME) - SET(aTestName "${aSubprojectName}_${aTestName}") +ADD_CUSTOM_TARGET(run_hdf_tests COMMAND ${CMAKE_CTEST_COMMAND} -C "${CMAKE_BUILD_TYPE}" -L "models_hdf") - # Full path to the python test file being executed - SET(aTestFilePath "${eachFilePath}") - IF(EXISTS ${aTestFilePath}) - ADD_TEST(NAME ${aTestName} COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/test.py" "$ENV{KERNEL_ROOT_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}" "${aTestFilePath}") - if (WIN32) # different path to libraries variable name - SET_TESTS_PROPERTIES(${aTestName} PROPERTIES ENVIRONMENT "PATH=${_JUSTPATH};PYTHONPATH=${_PYTHONPATH};SHAPER_UNIT_TEST_IN_PROGRESS=1" - LABELS "models_hdf") - else() - SET_TESTS_PROPERTIES(${aTestName} PROPERTIES ENVIRONMENT "LD_LIBRARY_PATH=${_LD_LIBRARY_PATH};PYTHONPATH=${_PYTHONPATH};SHAPER_UNIT_TEST_IN_PROGRESS=1" - LABELS "models_hdf") - endif() - # Debug output... - # MESSAGE(STATUS "Test added: ${aTestName} file: ${aTestFilePath}") - ELSE(EXISTS ${aTestFilePath}) - MESSAGE(WARNING "Can not find the test file: ${aTestFilePath}") - ENDIF(EXISTS ${aTestFilePath}) -endforeach(eachFilePath ${ARGN}) +# salome test +FOREACH(tfile ${TEST_NAMES}) + INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${tfile}.py + DESTINATION ${TEST_INSTALL_DIRECTORY}) + IF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${tfile}.hdf") + INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${tfile}.hdf + DESTINATION ${TEST_INSTALL_DIRECTORY}) + ENDIF() +ENDFOREACH() -ADD_CUSTOM_TARGET(run_hdf_tests COMMAND ${CMAKE_CTEST_COMMAND} -C "${CMAKE_BUILD_TYPE}" -L "models_hdf") +INSTALL(FILES CTestTestfileInstall.cmake + DESTINATION ${TEST_INSTALL_DIRECTORY} + RENAME CTestTestfile.cmake) + +INSTALL(FILES testme.py DESTINATION ${TEST_INSTALL_DIRECTORY}) +INSTALL(FILES tests.set DESTINATION ${TEST_INSTALL_DIRECTORY}) diff --git a/test.hdfs/CTestTestfileInstall.cmake b/test.hdfs/CTestTestfileInstall.cmake new file mode 100644 index 000000000..ad8cb7d2f --- /dev/null +++ b/test.hdfs/CTestTestfileInstall.cmake @@ -0,0 +1,32 @@ +# Copyright (C) 2016-2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +INCLUDE(tests.set) + +SET(COMPONENT_NAME SHAPER) +SET(TIMEOUT 600) + +FOREACH(tfile ${TEST_NAMES}) + SET(TEST_NAME ${COMPONENT_NAME}_HDF_${tfile}) + GET_HDF(HDF_TEST_FILE ${tfile}) + ADD_TEST(NAME ${TEST_NAME} + COMMAND python "${CMAKE_CURRENT_SOURCE_DIR}/testme.py" "$ENV{KERNEL_ROOT_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}" "${HDF_TEST_FILE}") + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES LABELS "${COMPONENT_NAME}") + SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES TIMEOUT ${TIMEOUT}) +ENDFOREACH() diff --git a/test.hdfs/__main__.py b/test.hdfs/__main__.py new file mode 100644 index 000000000..02a198310 --- /dev/null +++ b/test.hdfs/__main__.py @@ -0,0 +1,24 @@ +# Copyright (C) 2016-2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +# ============================================================ # +# # +# Attention: Keep this file for correct execution on Windows # +# # +# ============================================================ # diff --git a/test.hdfs/test.py b/test.hdfs/testme.py similarity index 57% rename from test.hdfs/test.py rename to test.hdfs/testme.py index 669d238ef..395c6c062 100644 --- a/test.hdfs/test.py +++ b/test.hdfs/testme.py @@ -1,4 +1,24 @@ +# Copyright (C) 2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + #!/usr/bin/env python + if __name__ == '__main__': import subprocess diff --git a/test.hdfs/tests.set b/test.hdfs/tests.set new file mode 100644 index 000000000..1e7956a8d --- /dev/null +++ b/test.hdfs/tests.set @@ -0,0 +1,52 @@ +# Copyright (C) 2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +set(RESTRICTED_ROOT_DIR $ENV{RESTRICTED_ROOT_DIR} CACHE PATH "Path to the restricted repository") + +# get all restricted HDF tests +set(hdfFilesRestr "") +if (EXISTS ${RESTRICTED_ROOT_DIR}) + file(GLOB hdfFilesRestr "${RESTRICTED_ROOT_DIR}/SHAPER/test.hdfs/*.hdf") +endif() + +# get all HDF tests from the current drectory +file(GLOB hdfFilesCur "${CMAKE_CURRENT_SOURCE_DIR}/*.hdf") +set(hdfFilesRestr ${hdfFilesCur} ${hdfFilesRestr}) + +# collect test names +set(TEST_NAMES "") +foreach(eachFilePath ${hdfFilesRestr}) + # Strip the ".hdf" suffix + get_filename_component(aTestName ${eachFilePath} NAME_WE) + # Check corresponding ".py" file with reference data exists + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${aTestName}.py") + set(TEST_NAMES ${aTestName} ${TEST_NAMES}) + else() + message(WARNING "File ${aTestName}.py containing reference data for ${aTestName}.hdf does not exist") + endif() +endforeach() + +# return full path to HDF file related to the given test name +function(GET_HDF hdfFullPath testName) + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${testName}.hdf") + set(${hdfFullPath} "${CMAKE_CURRENT_SOURCE_DIR}/${testName}.hdf" PARENT_SCOPE) + elseif(EXISTS "${RESTRICTED_ROOT_DIR}/SHAPER/test.hdfs/${testName}.hdf") + set(${hdfFullPath} "${RESTRICTED_ROOT_DIR}/SHAPER/test.hdfs/${testName}.hdf" PARENT_SCOPE) + endif() +endfunction(GET_HDF) \ No newline at end of file -- 2.39.2