From d85d605175efca167efafe15543f2212e9702b1b Mon Sep 17 00:00:00 2001 From: vsr Date: Mon, 13 Apr 2020 19:21:56 +0300 Subject: [PATCH] Add tests for connection with SHAPERSTUDY --- CMakeLists.txt | 18 +++++++++++++++ doc/salome/examples/testme.py | 2 +- test/CMakeLists.txt | 42 +++++++++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 test/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 3515fa48d..071c3cd59 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -188,6 +188,21 @@ ELSE(EXISTS ${GEOM_ROOT_DIR}) MESSAGE(FATAL_ERROR "We absolutely need a Salome GEOM, please define GEOM_ROOT_DIR") ENDIF(EXISTS ${GEOM_ROOT_DIR}) +# Find SHAPERSTUDY +# ================ +SET(WITH_SHAPER_STUDY OFF) +SET(SHAPERSTUDY_ROOT_DIR $ENV{SHAPERSTUDY_ROOT_DIR} CACHE PATH "Path to the Salome SHAPERSTUDY") +IF(EXISTS ${SHAPERSTUDY_ROOT_DIR}) + LIST(APPEND CMAKE_MODULE_PATH "${SHAPERSTUDY_ROOT_DIR}/adm_local/cmake_files") + FIND_PACKAGE(SalomeSHAPERSTUDY) + IF(SalomeSHAPERSTUDY_FOUND) + SET(WITH_SHAPER_STUDY ON) + ENDIF() +ENDIF(EXISTS ${SHAPERSTUDY_ROOT_DIR}) +IF(NOT WITH_SHAPER_STUDY AND SALOME_BUILD_TESTS) + MESSAGE(WARNING "SHAPERSTUDY is not found; the corresponding tests will be omitted") +ENDIF() + ## ## SMESH specifics ## @@ -290,6 +305,9 @@ ADD_SUBDIRECTORY(src) IF(SALOME_BUILD_DOC) ADD_SUBDIRECTORY(doc) ENDIF() +IF(SALOME_BUILD_TESTS) + ADD_SUBDIRECTORY(test) +ENDIF() # Header configuration # ==================== diff --git a/doc/salome/examples/testme.py b/doc/salome/examples/testme.py index 59b67d004..653619b9b 100755 --- a/doc/salome/examples/testme.py +++ b/doc/salome/examples/testme.py @@ -31,7 +31,7 @@ class SalomeSession(object): pass sys.argv = [run_script] sys.argv += ["--terminal"] - sys.argv += ["--modules=GEOM,SMESH"] + sys.argv += ["--modules=GEOM,SHAPER,SHAPERSTUDY,SMESH"] sys.argv += ["%s" % script] if sys.platform == 'win32': main_module_path = sys.modules['__main__'].__file__ diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 000000000..2f1689528 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,42 @@ +# Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + +SALOME_GENERATE_TESTS_ENVIRONMENT(_test_env) +SET(_test_helper ${CMAKE_SOURCE_DIR}/doc/salome/examples/testme.py) + +# Tests from RESTRICTED repository ----------------------------------- + +SET(RESTRICTED_ROOT_DIR $ENV{RESTRICTED_ROOT_DIR} CACHE PATH "Path to the restricted repository") + +IF(EXISTS ${RESTRICTED_ROOT_DIR} AND WITH_SHAPER_STUDY) + FILE(GLOB _restricted_tests "${RESTRICTED_ROOT_DIR}/SMESH/*.py") + FOREACH(_test ${_restricted_tests}) + GET_FILENAME_COMPONENT(_test_name ${_test} NAME_WE) + ADD_TEST(NAME ${_test_name} + COMMAND ${PYTHON_EXECUTABLE} -B ${_test_helper} ${_test}) + SET_TESTS_PROPERTIES(${_test_name} PROPERTIES ENVIRONMENT "${_test_env}") + ENDFOREACH() +ELSE() + MESSAGE(WARNING "Tests from RESTRICTED repository aren't available") +ENDIF() + +# --------------------------------------------------------------------