Salome HOME
Add tests for connection with SHAPERSTUDY
authorvsr <vsr@opencascade.com>
Mon, 13 Apr 2020 16:21:56 +0000 (19:21 +0300)
committervsr <vsr@opencascade.com>
Mon, 13 Apr 2020 16:22:14 +0000 (19:22 +0300)
CMakeLists.txt
doc/salome/examples/testme.py
test/CMakeLists.txt [new file with mode: 0644]

index 3515fa48d53d114b06f583afb45531afb076bc5e..071c3cd5981eb7614807d7d3e6430be570f3e568 100644 (file)
@@ -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
 # ====================
index 59b67d00413638d220c89a379a4c5e0dabfcedb6..653619b9b050af420cc498beb43a794c74551d45 100755 (executable)
@@ -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 (file)
index 0000000..2f16895
--- /dev/null
@@ -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()
+
+# --------------------------------------------------------------------