Salome HOME
Add port manager to ensure concurrent sessions have a unique port each.
[modules/kernel.git] / bin / appliskel / tests / concurrentSession / CMakeLists.txt
1 # Copyright (C) 2013  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 include(CTest)
21 ENABLE_TESTING()
22
23 # define environment for running tests
24 SET(PYTHON_VERSION ${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
25
26 SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "Path to the Salome KERNEL")
27 IF(NOT EXISTS ${KERNEL_ROOT_DIR})
28   MESSAGE(FATAL_ERROR "KERNEL_ROOT_DIR undefined")
29 ENDIF(NOT EXISTS ${KERNEL_ROOT_DIR})
30
31 SET(THIS_PYTHONPATH $ENV{KERNEL_ROOT_DIR}/bin/salome:$ENV{KERNEL_ROOT_DIR}/lib/python$ENV{PYTHON_VERSION}/site-packages/salome:$ENV{KERNEL_ROOT_DIR}/lib64/python$ENV{PYTHON_VERSION}/site-packages/salome:$ENV{PYTHONPATH})
32 SET(THIS_LD_LIBRARY_PATH $ENV{KERNEL_ROOT_DIR}/lib/salome:$ENV{LD_LIBRARY_PATH})
33
34 # add tests (use make test to run)
35 FILE(GLOB tests "${CMAKE_CURRENT_SOURCE_DIR}/Test*.py")
36 FOREACH(file ${tests})
37   GET_FILENAME_COMPONENT(testname ${file} NAME_WE)
38   ADD_TEST(${testname} ${PYTHON_EXECUTABLE} "${file}")
39   SET_PROPERTY(TEST ${testname} APPEND PROPERTY ENVIRONMENT PYTHONPATH=${THIS_PYTHONPATH} LD_LIBRARY_PATH=${THIS_LD_LIBRARY_PATH})
40 ENDFOREACH()
41
42 # install Python scripts
43 FILE(GLOB scripts "${CMAKE_CURRENT_SOURCE_DIR}/*.py")
44 SALOME_INSTALL_SCRIPTS("${scripts}" ${SALOME_INSTALL_SCRIPT_SCRIPTS}/appliskel/tests/concurrentSession)