From f12adf62b7c939166cc032353319ac9c77f296a1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=A9dric=20Aguerre?= Date: Mon, 19 Jun 2017 10:39:55 +0200 Subject: [PATCH] Share test definition --- doc/salome/examples/CMakeLists.txt | 128 +--------------- .../examples/CTestTestfileInstall.cmake | 116 +-------------- doc/salome/examples/tests.set | 138 ++++++++++++++++++ src/XAO/tests/CMakeLists.txt | 11 +- src/XAO/tests/CTestTestfileInstall.cmake | 25 ++++ 5 files changed, 178 insertions(+), 240 deletions(-) create mode 100644 doc/salome/examples/tests.set create mode 100644 src/XAO/tests/CTestTestfileInstall.cmake diff --git a/doc/salome/examples/CMakeLists.txt b/doc/salome/examples/CMakeLists.txt index 8a6f0cbd0..288d1aa43 100644 --- a/doc/salome/examples/CMakeLists.txt +++ b/doc/salome/examples/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -17,136 +17,14 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -SET(BAD_TESTS - repairing_operations_ex09.py -) - -SET(GOOD_TESTS - 3dsketcher.py - advanced_geom_objs_ex01.py - advanced_geom_objs_ex02.py - advanced_geom_objs_ex03.py - angle.py - arranging_study_objects.py - basic_geom_objs_ex01.py - basic_geom_objs_ex02.py - basic_geom_objs_ex03.py - basic_geom_objs_ex04.py - basic_geom_objs_ex05.py - basic_geom_objs_ex06.py - basic_geom_objs_ex07.py - basic_geom_objs_ex08.py - basic_geom_objs_ex09.py - basic_geom_objs_ex10.py - basic_operations_ex01.py - basic_operations_ex02.py - basic_operations_ex03.py - basic_operations_ex04.py - basic_properties.py - blocks_operations_ex01.py - blocks_operations_ex02.py - blocks_operations_ex03.py - boolean_operations_ex01.py - boolean_operations_ex02.py - boolean_operations_ex03.py - boolean_operations_ex04.py - bounding_box.py - building_by_blocks_ex01.py - building_by_blocks_ex02.py - center_of_mass.py - check_compound_of_blocks.py - check_self_intersections.py - check_shape.py - complex_objs_ex01.py - complex_objs_ex02.py - complex_objs_ex03.py - complex_objs_ex04.py - complex_objs_ex05.py - complex_objs_ex06.py - complex_objs_ex07.py - complex_objs_ex08.py - complex_objs_ex09.py - complex_objs_ex10.py - complex_objs_ex11.py - fast_intersection.py - free_boundaries.py - free_faces.py - GEOM_box.py - get_non_blocks.py - import_export.py - inertia.py - min_distance.py - normal_face.py - notebook_geom.py - polyline.py - point_coordinates.py - primitives_ex01.py - primitives_ex02.py - primitives_ex03.py - primitives_ex04.py - primitives_ex05.py - primitives_ex06.py - primitives_ex07.py - repairing_operations_ex01.py - repairing_operations_ex02.py - repairing_operations_ex03.py - repairing_operations_ex04.py - repairing_operations_ex05.py - repairing_operations_ex06.py - repairing_operations_ex07.py - repairing_operations_ex08.py - repairing_operations_ex10.py - repairing_operations_ex11.py - repairing_operations_ex12.py - sketcher.py - tolerance.py - topological_geom_objs_ex01.py - topological_geom_objs_ex02.py - topological_geom_objs_ex03.py - topological_geom_objs_ex04.py - topological_geom_objs_ex05.py - topological_geom_objs_ex06.py - transformation_operations_ex01.py - transformation_operations_ex02.py - transformation_operations_ex03.py - transformation_operations_ex04.py - transformation_operations_ex05.py - transformation_operations_ex06.py - transformation_operations_ex07.py - transformation_operations_ex08.py - transformation_operations_ex09.py - transformation_operations_ex10.py - transformation_operations_ex11.py - transformation_operations_ex12.py - transformation_operations_ex13.py - transformation_operations_ex14.py - viewing_geom_objs_ex01.py - viewing_geom_objs_ex02.py - viewing_geom_objs_ex03.py - viewing_geom_objs_ex04.py - whatis.py - working_with_groups_ex01.py - working_with_groups_ex02.py - working_with_groups_ex03.py - working_with_groups_ex04.py - working_with_groups_ex05.py - working_with_groups_ex06.py - GEOM_Field.py -) -IF(CAS_VERSION_STR VERSION_GREATER "6.9.0") - LIST(APPEND GOOD_TESTS - check_self_intersections_fast.py - ) -ENDIF() - -SET(EXAMPLES_TESTS ${BAD_TESTS} ${GOOD_TESTS} testme.py) +INCLUDE(tests.set) SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) FOREACH(test ${GOOD_TESTS}) GET_FILENAME_COMPONENT(testname ${test} NAME_WE) ADD_TEST(NAME ${testname} - COMMAND ${PYTHON_EXECUTABLE} -B ${CMAKE_SOURCE_DIR}/doc/salome/examples/testme.py ${CMAKE_CURRENT_SOURCE_DIR}/${test}) + COMMAND ${PYTHON_EXECUTABLE} -B ${CMAKE_SOURCE_DIR}/doc/salome/examples/testme.py ${CMAKE_CURRENT_SOURCE_DIR}/${test}.py) SET_TESTS_PROPERTIES(${testname} PROPERTIES ENVIRONMENT "${tests_env}") ENDFOREACH() diff --git a/doc/salome/examples/CTestTestfileInstall.cmake b/doc/salome/examples/CTestTestfileInstall.cmake index 52755f01b..2a3c70ede 100644 --- a/doc/salome/examples/CTestTestfileInstall.cmake +++ b/doc/salome/examples/CTestTestfileInstall.cmake @@ -1,4 +1,4 @@ -# Copyright (C) 2015-2016 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2015-2017 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -21,119 +21,7 @@ SET(SALOME_TEST_DRIVER "$ENV{ABSOLUTE_APPLI_PATH}/bin/salome/appliskel/salome_te SET(COMPONENT_NAME GEOM) SET(TIMEOUT 300) -SET(GOOD_TESTS - 3dsketcher - advanced_geom_objs_ex01 - advanced_geom_objs_ex02 - advanced_geom_objs_ex03 - angle - arranging_study_objects - basic_geom_objs_ex01 - basic_geom_objs_ex02 - basic_geom_objs_ex03 - basic_geom_objs_ex04 - basic_geom_objs_ex05 - basic_geom_objs_ex06 - basic_geom_objs_ex07 - basic_geom_objs_ex08 - basic_geom_objs_ex09 - basic_geom_objs_ex10 - basic_operations_ex01 - basic_operations_ex02 - basic_operations_ex03 - basic_operations_ex04 - basic_properties - blocks_operations_ex01 - blocks_operations_ex02 - blocks_operations_ex03 - boolean_operations_ex01 - boolean_operations_ex02 - boolean_operations_ex03 - boolean_operations_ex04 - bounding_box - building_by_blocks_ex01 - building_by_blocks_ex02 - center_of_mass - check_compound_of_blocks - check_self_intersections - check_shape - complex_objs_ex01 - complex_objs_ex02 - complex_objs_ex03 - complex_objs_ex04 - complex_objs_ex05 - complex_objs_ex06 - complex_objs_ex07 - complex_objs_ex08 - complex_objs_ex09 - complex_objs_ex10 - complex_objs_ex11 - free_boundaries - free_faces - GEOM_box - get_non_blocks - import_export - inertia - min_distance - normal_face - notebook_geom - polyline - point_coordinates - primitives_ex01 - primitives_ex02 - primitives_ex03 - primitives_ex04 - primitives_ex05 - primitives_ex06 - primitives_ex07 - repairing_operations_ex01 - repairing_operations_ex02 - repairing_operations_ex03 - repairing_operations_ex04 - repairing_operations_ex05 - repairing_operations_ex06 - repairing_operations_ex07 - repairing_operations_ex08 - repairing_operations_ex10 - repairing_operations_ex11 - repairing_operations_ex12 - sketcher - tolerance - topological_geom_objs_ex01 - topological_geom_objs_ex02 - topological_geom_objs_ex03 - topological_geom_objs_ex04 - topological_geom_objs_ex05 - topological_geom_objs_ex06 - transformation_operations_ex01 - transformation_operations_ex02 - transformation_operations_ex03 - transformation_operations_ex04 - transformation_operations_ex05 - transformation_operations_ex06 - transformation_operations_ex07 - transformation_operations_ex08 - transformation_operations_ex09 - transformation_operations_ex10 - transformation_operations_ex11 - transformation_operations_ex12 - transformation_operations_ex13 - transformation_operations_ex14 - viewing_geom_objs_ex01 - viewing_geom_objs_ex02 - viewing_geom_objs_ex03 - viewing_geom_objs_ex04 - whatis - working_with_groups_ex01 - working_with_groups_ex02 - working_with_groups_ex03 - working_with_groups_ex04 - working_with_groups_ex05 - working_with_groups_ex06 - GEOM_Field -) -# CAS_VERSION > "6.8.0" -LIST(APPEND GOOD_TESTS fast_intersection) +INCLUDE(tests.set) FOREACH(tfile ${GOOD_TESTS}) SET(TEST_NAME GEOM_${tfile}) diff --git a/doc/salome/examples/tests.set b/doc/salome/examples/tests.set new file mode 100644 index 000000000..5ced34a56 --- /dev/null +++ b/doc/salome/examples/tests.set @@ -0,0 +1,138 @@ +# Copyright (C) 2017 CEA/DEN, EDF R&D, OPEN CASCADE +# +# 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(BAD_TESTS + repairing_operations_ex09 +) + +SET(GOOD_TESTS + 3dsketcher + advanced_geom_objs_ex01 + advanced_geom_objs_ex02 + advanced_geom_objs_ex03 + angle + arranging_study_objects + basic_geom_objs_ex01 + basic_geom_objs_ex02 + basic_geom_objs_ex03 + basic_geom_objs_ex04 + basic_geom_objs_ex05 + basic_geom_objs_ex06 + basic_geom_objs_ex07 + basic_geom_objs_ex08 + basic_geom_objs_ex09 + basic_geom_objs_ex10 + basic_operations_ex01 + basic_operations_ex02 + basic_operations_ex03 + basic_operations_ex04 + basic_properties + blocks_operations_ex01 + blocks_operations_ex02 + blocks_operations_ex03 + boolean_operations_ex01 + boolean_operations_ex02 + boolean_operations_ex03 + boolean_operations_ex04 + bounding_box + building_by_blocks_ex01 + building_by_blocks_ex02 + center_of_mass + check_compound_of_blocks + check_self_intersections + check_shape + complex_objs_ex01 + complex_objs_ex02 + complex_objs_ex03 + complex_objs_ex04 + complex_objs_ex05 + complex_objs_ex06 + complex_objs_ex07 + complex_objs_ex08 + complex_objs_ex09 + complex_objs_ex10 + complex_objs_ex11 + fast_intersection + free_boundaries + free_faces + GEOM_box + get_non_blocks + import_export + inertia + min_distance + normal_face + notebook_geom + polyline + point_coordinates + primitives_ex01 + primitives_ex02 + primitives_ex03 + primitives_ex04 + primitives_ex05 + primitives_ex06 + primitives_ex07 + repairing_operations_ex01 + repairing_operations_ex02 + repairing_operations_ex03 + repairing_operations_ex04 + repairing_operations_ex05 + repairing_operations_ex06 + repairing_operations_ex07 + repairing_operations_ex08 + repairing_operations_ex10 + repairing_operations_ex11 + repairing_operations_ex12 + sketcher + tolerance + topological_geom_objs_ex01 + topological_geom_objs_ex02 + topological_geom_objs_ex03 + topological_geom_objs_ex04 + topological_geom_objs_ex05 + topological_geom_objs_ex06 + transformation_operations_ex01 + transformation_operations_ex02 + transformation_operations_ex03 + transformation_operations_ex04 + transformation_operations_ex05 + transformation_operations_ex06 + transformation_operations_ex07 + transformation_operations_ex08 + transformation_operations_ex09 + transformation_operations_ex10 + transformation_operations_ex11 + transformation_operations_ex12 + transformation_operations_ex13 + transformation_operations_ex14 + viewing_geom_objs_ex01 + viewing_geom_objs_ex02 + viewing_geom_objs_ex03 + viewing_geom_objs_ex04 + whatis + working_with_groups_ex01 + working_with_groups_ex02 + working_with_groups_ex03 + working_with_groups_ex04 + working_with_groups_ex05 + working_with_groups_ex06 + GEOM_Field + check_self_intersections_fast # OCC > 6.9.0 +) + +SET(EXAMPLES_TESTS ${BAD_TESTS} ${GOOD_TESTS} testme) diff --git a/src/XAO/tests/CMakeLists.txt b/src/XAO/tests/CMakeLists.txt index 9a7226a79..a0c5ee67e 100644 --- a/src/XAO/tests/CMakeLists.txt +++ b/src/XAO/tests/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2016 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2012-2017 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -62,3 +62,12 @@ ADD_TEST(TestXAO TestXAO) SET_TESTS_PROPERTIES(TestXAO PROPERTIES ENVIRONMENT "GEOM_SRC_DIR=${PROJECT_SOURCE_DIR};${tests_env}") INSTALL(TARGETS TestXAO DESTINATION ${SALOME_INSTALL_BINS}) + +# Application tests + +SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test) +INSTALL(FILES TestXAO DESTINATION ${TEST_INSTALL_DIRECTORY}) + +INSTALL(FILES CTestTestfileInstall.cmake + DESTINATION ${TEST_INSTALL_DIRECTORY} + RENAME CTestTestfile.cmake) diff --git a/src/XAO/tests/CTestTestfileInstall.cmake b/src/XAO/tests/CTestTestfileInstall.cmake new file mode 100644 index 000000000..2245e173e --- /dev/null +++ b/src/XAO/tests/CTestTestfileInstall.cmake @@ -0,0 +1,25 @@ +# Copyright (C) 2017 CEA/DEN, EDF R&D, OPEN CASCADE +# +# 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{ABSOLUTE_APPLI_PATH}/bin/salome/appliskel/salome_test_driver.py") +SET(COMPONENT_NAME GEOM) +SET(TIMEOUT 300) + +ADD_TEST(GEOM_TestXAO python ${SALOME_TEST_DRIVER} ${TIMEOUT} TestXAO) +SET_TESTS_PROPERTIES(GEOM_GEOM_TestXAO PROPERTIES LABELS "${COMPONENT_NAME}") -- 2.39.2