SET(COMPONENT_NAME MEDCALC)
SET(TIMEOUT 300)
-SUBDIRS(MEDCalculator)
+#SUBDIRS(MEDCalculator)
SUBDIRS(MEDCalc)
IF(SALOME_BUILD_GUI)
ADD_SUBDIRECTORY(gui)
-
- IF(SALOME_MED_WITH_QTTESTING)
- ADD_SUBDIRECTORY(test)
- ENDIF()
-
ENDIF()
+ADD_SUBDIRECTORY(test)
+
IF(SALOME_MED_ENABLE_PYTHON)
ADD_SUBDIRECTORY(tui)
ADD_SUBDIRECTORY(exe)
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-SALOME_CONFIGURE_FILE(medcalc_testutils.py.in ${CMAKE_CURRENT_BINARY_DIR}/medcalc_testutils.py)
+IF(SALOME_BUILD_GUI)
+ IF(SALOME_MED_WITH_QTTESTING)
+ ADD_SUBDIRECTORY(gui)
+ ENDIF()
+ENDIF()
-SET(_test_scripts
- test_scalarmap.py
-)
+IF(SALOME_MED_ENABLE_PYTHON)
+ ADD_SUBDIRECTORY(tui)
+ENDIF()
-SET(_test_scenarii
- scenarios/test_scalarmap.xml
-)
-
-SET(_test_baselines
- baselines/test_scalarmap.png
-)
-
-SET(_test_files
- medfiles/test_scalarmap.med
-)
-
-# Install rules
SET(TEST_INSTALL_DIRECTORY ${SALOME_MED_INSTALL_TEST}/MEDCalc)
-
-SALOME_INSTALL_SCRIPTS(test_qttesting.py ${TEST_INSTALL_DIRECTORY})
-SALOME_INSTALL_SCRIPTS(${CMAKE_CURRENT_BINARY_DIR}/medcalc_testutils.py ${TEST_INSTALL_DIRECTORY})
-
-SALOME_INSTALL_SCRIPTS("${_test_scripts}" ${SALOME_INSTALL_PYTHON}/tests)
-
-INSTALL(FILES ${_test_scenarii} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/scenarios)
-INSTALL(FILES ${_test_baselines} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/baselines)
-INSTALL(FILES ${_test_files} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/medfiles)
-
INSTALL(FILES CTestTestfileInstall.cmake
DESTINATION ${TEST_INSTALL_DIRECTORY}
RENAME CTestTestfile.cmake)
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-SET(TEST_NAMES
- test_qttesting
-)
-
-FOREACH(tfile ${TEST_NAMES})
- SET(TEST_NAME ${COMPONENT_NAME}_${tfile})
- ADD_TEST(${TEST_NAME} python ${tfile}.py)
- SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES
- LABELS "${COMPONENT_NAME}"
- TIMEOUT ${TIMEOUT}
- )
-ENDFOREACH()
+SUBDIRS(gui)
+SUBDIRS(tui)
+++ /dev/null
-test_qttesting.py
-=================
-
-Tests based on QtTesting framework from ParaView.
-Main entry point is test_qttesting.py.
-Each scenario is described in a XML file and can be recorded directly in the GUI via the "Record test" button.
-
-A scneario must save a final screenshot of the ParaView view in a file located in the temp directory (TODO: review
-this). This file is compared against a baseline saved in the baselines subdirectory.
-
-
-guiTester.pro
-=============
-
-This is a simple Qt framework to test the dialog widgets.
-
-To build the project:
-* specify the sources files in the .pro file
-* run qmake, then make
-* run guiTester
-
-To clean the project:
-* run "make clean"
-* remove binary and Makefile
- $ rm guiTester Makefile
+++ /dev/null
-# Copyright (C) 2010-2016 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(TEST_NUMBERS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20)
-
-SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/MEDReader)
-SET(BASELINES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/Baselines")
-
-IF(KW_TESTING_PLATFORM)
-
-cmake_minimum_required(VERSION 2.7)
-
-find_package(ParaView REQUIRED)
-include(${PARAVIEW_USE_FILE})
-
-include(ParaViewTestingMacros)
-include(FindPythonModules)
-
-include(${PROJECT_SOURCE_DIR}/testing/testFunctions.cmake)
-set(PV_PLUGIN_PATH "${CMAKE_BINARY_DIR}/lib/")
-
-include(CTest)
-
-enable_testing()
-
-set(PARAVIEW_BIN_DIR "${ParaView_DIR}/bin" CACHE PATH "ParaView binary path")
-
-set(PVTEST_DRIVER "${PARAVIEW_BIN_DIR}/smTestDriver")
-set(PARAVIEW_CLIENT "${PARAVIEW_BIN_DIR}/paraview")
-set(PARAVIEW_SERVER "${PARAVIEW_BIN_DIR}/pvserver")
-set(PVPYTHON "${PARAVIEW_BIN_DIR}/pvpython")
-
-set(PYTHON_SCRIPTS_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
-set(TEMP_DIR "${CMAKE_CURRENT_BINARY_DIR}/Testing/Temporary")
-
-if(NOT EXISTS ${TEMP_DIR})
- file(MAKE_DIRECTORY ${TEMP_DIR})
-endif()
-
-# Override vtk_add_test_* variables for use with ParaView.
-macro (_myy_override_vtk_dirs)
- set(VTK_TEST_DATA_DIR ${PYTHON_SCRIPTS_DIR})
- set(VTK_BASELINE_DIR ${BASELINES_DIR})
- set(VTK_TEST_OUTPUT_DIR ${TEMP_DIR})
- set(VTK_TEST_DATA_TARGET ParaViewData)
-endmacro ()
-
-function (myy_add_python_test)
- message(STATUS "Add Python test for ${ARGV2}")
- set(VTK_PYTHON_EXE "${PVPYTHON}")
- list(APPEND VTK_PYTHON_ARGS -dr
- ${PARAVIEW_PYTHON_ARGS})
- _myy_override_vtk_dirs()
- myvtk_add_test_python(${ARGN})
-endfunction ()
-
-# Test all python scripts
-file(GLOB scripts "${PYTHON_SCRIPTS_DIR}/*py")
-foreach(file ${scripts})
- get_filename_component(fname ${file} NAME)
- myy_add_python_test(
- NO_DATA NO_RT
- ${fname})
- INSTALL(FILES ${file}
- DESTINATION ${TEST_INSTALL_DIRECTORY})
-endforeach()
-
-ELSE(KW_TESTING_PLATFORM)
-
-SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env)
-
-FOREACH(tfile ${TEST_NUMBERS})
- ADD_TEST(testMEDReader${tfile} ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/testMEDReader${tfile}.py -B ${BASELINES_DIR} )
- SET_TESTS_PROPERTIES(testMEDReader${tfile} PROPERTIES ENVIRONMENT "${tests_env}")
-ENDFOREACH()
-
-ENDIF(KW_TESTING_PLATFORM)
-
-
-# Application tests
-FOREACH(tfile ${TEST_NUMBERS})
- INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/testMEDReader${tfile}.py
- DESTINATION ${TEST_INSTALL_DIRECTORY})
-ENDFOREACH()
-
-FILE(GLOB BASELINE_FILES "${BASELINES_DIR}/*")
-FOREACH(baseline_file ${BASELINE_FILES})
- INSTALL(FILES ${baseline_file} DESTINATION ${TEST_INSTALL_DIRECTORY}/Baselines)
-ENDFOREACH()
-
-INSTALL(FILES CTestTestfileInstall.cmake
- DESTINATION ${TEST_INSTALL_DIRECTORY}
- RENAME CTestTestfile.cmake)
--- /dev/null
+# Copyright (C) 2012-2016 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
+#
+
+SALOME_CONFIGURE_FILE(medcalc_testutils.py.in ${CMAKE_CURRENT_BINARY_DIR}/medcalc_testutils.py)
+
+SET(_test_scripts
+ test_scalarmap.py
+)
+
+SET(_test_scenarii
+ scenarios/test_scalarmap.xml
+)
+
+SET(_test_baselines
+ baselines/test_scalarmap.png
+)
+
+SET(_test_files
+ medfiles/test_scalarmap.med
+)
+
+# Install rules
+SET(TEST_INSTALL_DIRECTORY ${SALOME_MED_INSTALL_TEST}/MEDCalc/gui)
+
+SALOME_INSTALL_SCRIPTS(test_qttesting.py ${TEST_INSTALL_DIRECTORY})
+SALOME_INSTALL_SCRIPTS(${CMAKE_CURRENT_BINARY_DIR}/medcalc_testutils.py ${TEST_INSTALL_DIRECTORY})
+
+SALOME_INSTALL_SCRIPTS("${_test_scripts}" ${SALOME_INSTALL_PYTHON}/tests)
+
+INSTALL(FILES ${_test_scenarii} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/gui/scenarios)
+INSTALL(FILES ${_test_baselines} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/gui/baselines)
+INSTALL(FILES ${_test_files} DESTINATION ${SALOME_MED_INSTALL_RES_DATA}/tests/gui/medfiles)
+
+INSTALL(FILES CTestTestfileInstall.cmake
+ DESTINATION ${TEST_INSTALL_DIRECTORY}
+ RENAME CTestTestfile.cmake)
--- /dev/null
+# Copyright (C) 2016 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(TEST_NAMES
+ test_qttesting
+)
+
+FOREACH(tfile ${TEST_NAMES})
+ SET(TEST_NAME ${COMPONENT_NAME}_${tfile})
+ ADD_TEST(${TEST_NAME} python ${tfile}.py)
+ SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES
+ LABELS "${COMPONENT_NAME}"
+ TIMEOUT ${TIMEOUT}
+ )
+ENDFOREACH()
--- /dev/null
+test_qttesting.py
+=================
+
+Tests based on QtTesting framework from ParaView.
+Main entry point is test_qttesting.py.
+Each scenario is described in a XML file and can be recorded directly in the GUI via the "Record test" button.
+
+A scneario must save a final screenshot of the ParaView view in a file located in the temp directory (TODO: review
+this). This file is compared against a baseline saved in the baselines subdirectory.
+
+
+guiTester.pro
+=============
+
+This is a simple Qt framework to test the dialog widgets.
+
+To build the project:
+* specify the sources files in the .pro file
+* run qmake, then make
+* run guiTester
+
+To clean the project:
+* run "make clean"
+* remove binary and Makefile
+ $ rm guiTester Makefile
--- /dev/null
+# Copyright (C) 2010-2016 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(TEST_NUMBERS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20)
+
+SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/MEDReader)
+SET(BASELINES_DIR "${CMAKE_CURRENT_SOURCE_DIR}/Baselines")
+
+IF(KW_TESTING_PLATFORM)
+
+cmake_minimum_required(VERSION 2.7)
+
+find_package(ParaView REQUIRED)
+include(${PARAVIEW_USE_FILE})
+
+include(ParaViewTestingMacros)
+include(FindPythonModules)
+
+include(${PROJECT_SOURCE_DIR}/testing/testFunctions.cmake)
+set(PV_PLUGIN_PATH "${CMAKE_BINARY_DIR}/lib/")
+
+include(CTest)
+
+enable_testing()
+
+set(PARAVIEW_BIN_DIR "${ParaView_DIR}/bin" CACHE PATH "ParaView binary path")
+
+set(PVTEST_DRIVER "${PARAVIEW_BIN_DIR}/smTestDriver")
+set(PARAVIEW_CLIENT "${PARAVIEW_BIN_DIR}/paraview")
+set(PARAVIEW_SERVER "${PARAVIEW_BIN_DIR}/pvserver")
+set(PVPYTHON "${PARAVIEW_BIN_DIR}/pvpython")
+
+set(PYTHON_SCRIPTS_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
+set(TEMP_DIR "${CMAKE_CURRENT_BINARY_DIR}/Testing/Temporary")
+
+if(NOT EXISTS ${TEMP_DIR})
+ file(MAKE_DIRECTORY ${TEMP_DIR})
+endif()
+
+# Override vtk_add_test_* variables for use with ParaView.
+macro (_myy_override_vtk_dirs)
+ set(VTK_TEST_DATA_DIR ${PYTHON_SCRIPTS_DIR})
+ set(VTK_BASELINE_DIR ${BASELINES_DIR})
+ set(VTK_TEST_OUTPUT_DIR ${TEMP_DIR})
+ set(VTK_TEST_DATA_TARGET ParaViewData)
+endmacro ()
+
+function (myy_add_python_test)
+ message(STATUS "Add Python test for ${ARGV2}")
+ set(VTK_PYTHON_EXE "${PVPYTHON}")
+ list(APPEND VTK_PYTHON_ARGS -dr
+ ${PARAVIEW_PYTHON_ARGS})
+ _myy_override_vtk_dirs()
+ myvtk_add_test_python(${ARGN})
+endfunction ()
+
+# Test all python scripts
+file(GLOB scripts "${PYTHON_SCRIPTS_DIR}/*py")
+foreach(file ${scripts})
+ get_filename_component(fname ${file} NAME)
+ myy_add_python_test(
+ NO_DATA NO_RT
+ ${fname})
+ INSTALL(FILES ${file}
+ DESTINATION ${TEST_INSTALL_DIRECTORY})
+endforeach()
+
+ELSE(KW_TESTING_PLATFORM)
+
+SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env)
+
+FOREACH(tfile ${TEST_NUMBERS})
+ ADD_TEST(testMEDReader${tfile} ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/testMEDReader${tfile}.py -B ${BASELINES_DIR} )
+ SET_TESTS_PROPERTIES(testMEDReader${tfile} PROPERTIES ENVIRONMENT "${tests_env}")
+ENDFOREACH()
+
+ENDIF(KW_TESTING_PLATFORM)
+
+
+# Application tests
+FOREACH(tfile ${TEST_NUMBERS})
+ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/testMEDReader${tfile}.py
+ DESTINATION ${TEST_INSTALL_DIRECTORY})
+ENDFOREACH()
+
+FILE(GLOB BASELINE_FILES "${BASELINES_DIR}/*")
+FOREACH(baseline_file ${BASELINE_FILES})
+ INSTALL(FILES ${baseline_file} DESTINATION ${TEST_INSTALL_DIRECTORY}/Baselines)
+ENDFOREACH()
+
+INSTALL(FILES CTestTestfileInstall.cmake
+ DESTINATION ${TEST_INSTALL_DIRECTORY}
+ RENAME CTestTestfile.cmake)
--- /dev/null
+######################################################################
+# Automatically generated by qmake (2.01a) mer. oct. 6 14:46:48 2010
+######################################################################
+
+TEMPLATE = app
+TARGET =
+DEPENDPATH += .
+INCLUDEPATH += . ../dialogs
+
+# Input
+HEADERS += ../dialogs/DlgAlias.h
+FORMS += ../dialogs/dlgAlias.ui
+SOURCES += ../dialogs/DlgAlias.cxx ../dialogs/dlgTester.cxx
--- /dev/null
+# Copyright (C) 2011-2016 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
+#
+
+import os
+
+def __getRootDir():
+ rootDir = os.environ.get("MED_ROOT_DIR", "")
+ return rootDir
+
+def GetScriptDir():
+ relativeDir = "@SALOME_INSTALL_PYTHON@/tests"
+ return os.path.join(__getRootDir(), relativeDir)
+
+def GetScenarioDir():
+ relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/gui/scenarios"
+ return os.path.join(__getRootDir(), relativeDir)
+
+def GetBaselineDir():
+ relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/gui/baselines"
+ return os.path.join(__getRootDir(), relativeDir)
+
+def GetMEDFileDir():
+ relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/gui/medfiles"
+ return os.path.join(__getRootDir(), relativeDir)
--- /dev/null
+<?xml version="1.0" ?>
+<pqevents>
+ <pqevent object="1STD_TabDesktop0/1QMenuBar0" command="activate" arguments="Fic&hier" />
+ <pqevent object="1QMenu0" command="activate" arguments="LAB_LOCK_TEST" />
+ <pqevent object="1STD_TabDesktop0/DatasourceToolbar/1QToolButton0" command="activate" arguments="" />
+ <pqevent object="Qt-subapplication-app" command="FilesOpen" arguments="/tmp/test_scalarmap.med" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0.0.0" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0.0.0.0.0" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0/qt_scrollarea_vcontainer/1QScrollBar0" command="mouseWheel" arguments="-120,0,0,88,5" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0/qt_scrollarea_vcontainer/1QScrollBar0" command="mouseWheel" arguments="-120,0,0,88,5" />
+ <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="setCurrent" arguments="0.0.0.0.0.0.0.0" />
+ <pqevent object="1STD_TabDesktop0/PresentationToolbar/1QToolButton0" command="activate" arguments="" />
+ <pqevent object="1STD_TabDesktop0/1QMenuBar0" command="activate" arguments="Fic&hier" />
+ <pqevent object="1QMenu0" command="activate" arguments="LAB_SNAP_TEST" />
+ <pqevent object="1STD_TabDesktop0/SaveSnapshotDialog/ok" command="activate" arguments="" />
+ <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog" command="key" arguments="16777248" />
+ <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog/mainSplitter/widget/FileName" command="set_string" arguments="/tmp/test_scalarmap.png" />
+ <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog/mainSplitter/widget/OK" command="activate" arguments="" />
+</pqevents>
--- /dev/null
+# Copyright (C) 2016 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
+#
+# Author: A. Bruneton (CEA)
+
+import unittest, os, shutil
+from posixpath import basename
+
+class MEDGUITest(unittest.TestCase):
+ def __init__(self, methodName='runTest'):
+ unittest.TestCase.__init__(self, methodName=methodName)
+ self._tmpDir = ""
+ self._removeDir = True
+
+ def setUp(self):
+ import tempfile
+ self._tmpDir = tempfile.mkdtemp(prefix="med_gui_tests_")
+ self._removeDir = True # reset for each new test in the TestCase
+
+ def tearDown(self):
+ import shutil
+ unittest.TestCase.tearDown(self)
+ if self._removeDir:
+ shutil.rmtree(self._tmpDir, False)
+
+ def getTestName(self):
+ """ Return name of the test being currently executed. """
+ return self.id().split(".")[-1]
+
+ def launchSalomeWithScript(self, scriptname):
+ """ TODO: review this - what is the nicest way to launch SALOME GUI from a Python script? """
+ from salome_instance import SalomeInstance
+ from medcalc_testutils import GetScriptDir
+ args = "args:%s" % self._tmpDir
+ pth = os.path.join(GetScriptDir(), scriptname)
+ # Launch SALOME with the test script:
+ inst = SalomeInstance.start(with_gui=True, args=[pth, args])
+ # And make sure SALOME is stopped before running next one:
+ inst.stop()
+ status = 0 # TODO review this
+ if status:
+ raise Exception("SALOME exited abnormally for this test!")
+
+ def compareSnapshot(self, basename):
+ """ Compare the screenshot in the current temporary test directory with the reference baseline.
+ Assert if not matching. """
+ import filecmp
+ from medcalc_testutils import GetBaselineDir
+
+ base_pth = os.path.join(GetBaselineDir(), basename)
+ gen_path = os.path.join(self._tmpDir, basename)
+ print base_pth, gen_path
+ try:
+ ret = filecmp.cmp(base_pth, gen_path, shallow=False)
+ except OSError:
+ import traceback
+ traceback.print_exc()
+ ret = False
+ if not ret:
+ # Keep file if comparison fails
+ self._removeDir = False
+ self.assertTrue(ret, "[%s] -- Failed screenshot equality, or unable to open baseline file - directory is kept alive: %s" % (self.getTestName(), self._tmpDir))
+ return ret
+
+ def prepareScenario(self, scenario, baseline, med_file):
+ """ Copy scenario to current temporary test dir and substitute paths inside """
+ from medcalc_testutils import GetScenarioDir, GetMEDFileDir
+ scen_path = os.path.join(GetScenarioDir(), scenario)
+ scen_pth2 = os.path.join(self._tmpDir, scenario)
+ try:
+ shutil.copy(scen_path, scen_pth2)
+ except IOError:
+ raise Exception("Could not copy test scenario '%s' to local test directory!" % scen_path)
+ with open(scen_pth2,'r') as f:
+ filedata = f.read()
+ filedata = filedata.replace("/tmp/%s" % baseline, "%s/%s" % (self._tmpDir, baseline))
+ filedata = filedata.replace("/tmp/%s" % med_file, os.path.join(GetMEDFileDir(), med_file))
+ with open(scen_pth2,'w') as f:
+ f.write(filedata)
+
+ ##
+ ## Now the tests themselves
+ ##
+ def testScalarMap(self):
+ baseline = "test_scalarmap.png"
+ med_file = "test_scalarmap.med" # will change with Cedric's files
+ scenario = "test_scalarmap.xml"
+ self.prepareScenario(scenario, baseline, med_file)
+ self.launchSalomeWithScript("test_scalarmap.py")
+ self.compareSnapshot(baseline)
+
+ def testScalarMap2(self):
+ baseline = "test_scalarmap.png"
+ med_file = "test_scalarmap.med" # will change
+ scenario = "test_scalarmap.xml"
+ self.prepareScenario(scenario, baseline, med_file)
+ self.launchSalomeWithScript("test_scalarmap.py")
+ self.compareSnapshot(baseline)
+
+if __name__ == "__main__":
+ suite = unittest.TestSuite()
+ suite.addTest(MEDGUITest('testScalarMap'))
+ suite.addTest(MEDGUITest('testScalarMap2'))
+# suite.addTest(MEDGUITest('testIsoContour'))
+ unittest.TextTestRunner().run(suite)
+
--- /dev/null
+# Copyright (C) 2011-2016 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
+#
+
+""" Test of the scalarmap.
+
+This script is to be passed as an argument of the ./salome command and will be executed within the SALOME
+Python console.
+"""
+
+import os, sys
+import SalomePyQt
+from medcalc_testutils import GetScenarioDir
+
+sgPyQt = SalomePyQt.SalomePyQt()
+sgPyQt.activateModule('MED')
+
+import medcalc # After module activation !!
+localTestDir = sys.argv[1]
+medcalc.PlayQtTestingScenario(os.path.join(localTestDir, 'test_scalarmap.xml'))
+
+medcalc.RequestSALOMETermination() # not equivalent to quit()!
+++ /dev/null
-######################################################################
-# Automatically generated by qmake (2.01a) mer. oct. 6 14:46:48 2010
-######################################################################
-
-TEMPLATE = app
-TARGET =
-DEPENDPATH += .
-INCLUDEPATH += . ../dialogs
-
-# Input
-HEADERS += ../dialogs/DlgAlias.h
-FORMS += ../dialogs/dlgAlias.ui
-SOURCES += ../dialogs/DlgAlias.cxx ../dialogs/dlgTester.cxx
+++ /dev/null
-# Copyright (C) 2011-2016 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
-#
-
-import os
-
-def __getRootDir():
- rootDir = os.environ.get("MED_ROOT_DIR", "")
- return rootDir
-
-def GetScriptDir():
- relativeDir = "@SALOME_INSTALL_PYTHON@/tests"
- return os.path.join(__getRootDir(), relativeDir)
-
-def GetScenarioDir():
- relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/scenarios"
- return os.path.join(__getRootDir(), relativeDir)
-
-def GetBaselineDir():
- relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/baselines"
- return os.path.join(__getRootDir(), relativeDir)
-
-def GetMEDFileDir():
- relativeDir = "@SALOME_MED_INSTALL_RES_DATA@/tests/medfiles"
- return os.path.join(__getRootDir(), relativeDir)
-
+++ /dev/null
-<?xml version="1.0" ?>
-<pqevents>
- <pqevent object="1STD_TabDesktop0/1QMenuBar0" command="activate" arguments="Fic&hier" />
- <pqevent object="1QMenu0" command="activate" arguments="LAB_LOCK_TEST" />
- <pqevent object="1STD_TabDesktop0/DatasourceToolbar/1QToolButton0" command="activate" arguments="" />
- <pqevent object="Qt-subapplication-app" command="FilesOpen" arguments="/tmp/test_scalarmap.med" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0.0.0" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="expand" arguments="0.0.0.0.0.0" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0/qt_scrollarea_vcontainer/1QScrollBar0" command="mouseWheel" arguments="-120,0,0,88,5" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0/qt_scrollarea_vcontainer/1QScrollBar0" command="mouseWheel" arguments="-120,0,0,88,5" />
- <pqevent object="1STD_TabDesktop0/objectBrowserDock/objectBrowser/1QtxTreeView0" command="setCurrent" arguments="0.0.0.0.0.0.0.0" />
- <pqevent object="1STD_TabDesktop0/PresentationToolbar/1QToolButton0" command="activate" arguments="" />
- <pqevent object="1STD_TabDesktop0/1QMenuBar0" command="activate" arguments="Fic&hier" />
- <pqevent object="1QMenu0" command="activate" arguments="LAB_SNAP_TEST" />
- <pqevent object="1STD_TabDesktop0/SaveSnapshotDialog/ok" command="activate" arguments="" />
- <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog" command="key" arguments="16777248" />
- <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog/mainSplitter/widget/FileName" command="set_string" arguments="/tmp/test_scalarmap.png" />
- <pqevent object="1STD_TabDesktop0/FileSaveScreenshotDialog/mainSplitter/widget/OK" command="activate" arguments="" />
-</pqevents>
+++ /dev/null
-# Copyright (C) 2016 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
-#
-# Author: A. Bruneton (CEA)
-
-import unittest, os, shutil
-from posixpath import basename
-
-class MEDGUITest(unittest.TestCase):
- def __init__(self, methodName='runTest'):
- unittest.TestCase.__init__(self, methodName=methodName)
- self._tmpDir = ""
- self._removeDir = True
-
- def setUp(self):
- import tempfile
- self._tmpDir = tempfile.mkdtemp(prefix="med_gui_tests_")
- self._removeDir = True # reset for each new test in the TestCase
-
- def tearDown(self):
- import shutil
- unittest.TestCase.tearDown(self)
- if self._removeDir:
- shutil.rmtree(self._tmpDir, False)
-
- def getTestName(self):
- """ Return name of the test being currently executed. """
- return self.id().split(".")[-1]
-
- def launchSalomeWithScript(self, scriptname):
- """ TODO: review this - what is the nicest way to launch SALOME GUI from a Python script? """
- from salome_instance import SalomeInstance
- from medcalc_testutils import GetScriptDir
- args = "args:%s" % self._tmpDir
- pth = os.path.join(GetScriptDir(), scriptname)
- # Launch SALOME with the test script:
- inst = SalomeInstance.start(with_gui=True, args=[pth, args])
- # And make sure SALOME is stopped before running next one:
- inst.stop()
- status = 0 # TODO review this
- if status:
- raise Exception("SALOME exited abnormally for this test!")
-
- def compareSnapshot(self, basename):
- """ Compare the screenshot in the current temporary test directory with the reference baseline.
- Assert if not matching. """
- import filecmp
- from medcalc_testutils import GetBaselineDir
-
- base_pth = os.path.join(GetBaselineDir(), basename)
- gen_path = os.path.join(self._tmpDir, basename)
- print base_pth, gen_path
- try:
- ret = filecmp.cmp(base_pth, gen_path, shallow=False)
- except OSError:
- import traceback
- traceback.print_exc()
- ret = False
- if not ret:
- # Keep file if comparison fails
- self._removeDir = False
- self.assertTrue(ret, "[%s] -- Failed screenshot equality, or unable to open baseline file - directory is kept alive: %s" % (self.getTestName(), self._tmpDir))
- return ret
-
- def prepareScenario(self, scenario, baseline, med_file):
- """ Copy scenario to current temporary test dir and substitute paths inside """
- from medcalc_testutils import GetScenarioDir, GetMEDFileDir
- scen_path = os.path.join(GetScenarioDir(), scenario)
- scen_pth2 = os.path.join(self._tmpDir, scenario)
- try:
- shutil.copy(scen_path, scen_pth2)
- except IOError:
- raise Exception("Could not copy test scenario '%s' to local test directory!" % scen_path)
- with open(scen_pth2,'r') as f:
- filedata = f.read()
- filedata = filedata.replace("/tmp/%s" % baseline, "%s/%s" % (self._tmpDir, baseline))
- filedata = filedata.replace("/tmp/%s" % med_file, os.path.join(GetMEDFileDir(), med_file))
- with open(scen_pth2,'w') as f:
- f.write(filedata)
-
- ##
- ## Now the tests themselves
- ##
- def testScalarMap(self):
- baseline = "test_scalarmap.png"
- med_file = "test_scalarmap.med" # will change with Cedric's files
- scenario = "test_scalarmap.xml"
- self.prepareScenario(scenario, baseline, med_file)
- self.launchSalomeWithScript("test_scalarmap.py")
- self.compareSnapshot(baseline)
-
- def testScalarMap2(self):
- baseline = "test_scalarmap.png"
- med_file = "test_scalarmap.med" # will change
- scenario = "test_scalarmap.xml"
- self.prepareScenario(scenario, baseline, med_file)
- self.launchSalomeWithScript("test_scalarmap.py")
- self.compareSnapshot(baseline)
-
-if __name__ == "__main__":
- suite = unittest.TestSuite()
- suite.addTest(MEDGUITest('testScalarMap'))
- suite.addTest(MEDGUITest('testScalarMap2'))
-# suite.addTest(MEDGUITest('testIsoContour'))
- unittest.TextTestRunner().run(suite)
-
+++ /dev/null
-# Copyright (C) 2011-2016 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
-#
-
-""" Test of the scalarmap.
-
-This script is to be passed as an argument of the ./salome command and will be executed within the SALOME
-Python console.
-"""
-
-import os, sys
-import SalomePyQt
-from medcalc_testutils import GetScenarioDir
-
-sgPyQt = SalomePyQt.SalomePyQt()
-sgPyQt.activateModule('MED')
-
-import medcalc # After module activation !!
-localTestDir = sys.argv[1]
-medcalc.PlayQtTestingScenario(os.path.join(localTestDir, 'test_scalarmap.xml'))
-
-medcalc.RequestSALOMETermination() # not equivalent to quit()!
--- /dev/null
+# Copyright (C) 2016 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(TEST_INSTALL_DIRECTORY ${SALOME_MED_INSTALL_TEST}/MEDCalc/tui)
+INSTALL(FILES CTestTestfileInstall.cmake
+ DESTINATION ${TEST_INSTALL_DIRECTORY}
+ RENAME CTestTestfile.cmake)
--- /dev/null
+# Copyright (C) 2016 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
+#