2017-02-23 20:41:27 +05:00
|
|
|
if(USE_PYTHON)
|
2022-05-15 09:29:37 +05:00
|
|
|
if(ENABLE_UNIT_TESTS)
|
|
|
|
set(PYTHON_UNIT_TESTS TRUE)
|
|
|
|
# check for prerequisite modules
|
|
|
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import pytest; print(pytest.__file__)"
|
|
|
|
OUTPUT_VARIABLE pytest_path RESULT_VARIABLE pytest_result)
|
|
|
|
if(NOT ${pytest_result} EQUAL 0)
|
|
|
|
message(WARNING "python module 'pytest' not found.")
|
|
|
|
set(PYTHON_UNIT_TESTS FALSE)
|
|
|
|
endif()
|
|
|
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import pytest_check; print(pytest_check.__file__)"
|
|
|
|
OUTPUT_VARIABLE pycheck_path RESULT_VARIABLE pycheck_result)
|
|
|
|
if(NOT ${pytest_result} EQUAL 0)
|
|
|
|
message(WARNING "python module 'pytest_check' not found.")
|
|
|
|
set(PYTHON_UNIT_TESTS FALSE)
|
|
|
|
endif()
|
|
|
|
if(PYTHON_UNIT_TESTS)
|
|
|
|
add_test(NAME pytest COMMAND ${PYTHON_EXECUTABLE} -m pytest WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
add_custom_target(pytest ${PYTHON_EXECUTABLE} -m pytest WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
set_tests_properties ( pytest PROPERTIES TIMEOUT 18000 )
|
|
|
|
if(USE_MPI AND USE_MPI4PY)
|
|
|
|
add_test(NAME pytest-mpi COMMAND ${MPIEXEC_EXECUTABLE} --allow-run-as-root -np 4 ${PYTHON_EXECUTABLE} -m pytest --with-mpi test_mpi4py.py WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
endif(USE_MPI AND USE_MPI4PY)
|
|
|
|
else()
|
|
|
|
message(WARNING "Unable to perform unit tests on netgen python modules.")
|
|
|
|
endif()
|
|
|
|
endif()
|
2017-02-23 20:41:27 +05:00
|
|
|
endif(USE_PYTHON)
|