|
|
include_directories(include)
|
|
|
FILE (GLOB_RECURSE amdaplugin_SRCS
|
|
|
include/*.h
|
|
|
src/*.cpp
|
|
|
resources/*.qrc
|
|
|
)
|
|
|
|
|
|
|
|
|
set(AMDA_server_type hybrid CACHE STRING "AMDA server type selected at CMake configure time")
|
|
|
|
|
|
set(AMDA_SERVER_TYPE "hybrid;amdatest;localhost" CACHE STRING
|
|
|
"List of possible for AMDA server type")
|
|
|
|
|
|
set_property(CACHE AMDA_server_type PROPERTY STRINGS ${AMDA_SERVER_TYPE})
|
|
|
add_definitions(-DSCIQLOP_AMDA_SERVER="${AMDA_server_type}")
|
|
|
add_definitions(-DAMDAPLUGIN_LIB)
|
|
|
add_definitions(-DAMDA_LIB)
|
|
|
|
|
|
add_definitions(-DQT_PLUGIN)
|
|
|
add_definitions(-DSCIQLOP_PLUGIN_JSON_FILE_PATH="${CMAKE_CURRENT_SOURCE_DIR}/resources/amda.json")
|
|
|
if(NOT BUILD_SHARED_LIBS)
|
|
|
add_definitions(-DQT_STATICPLUGIN)
|
|
|
endif()
|
|
|
|
|
|
add_library(amdaplugin ${amdaplugin_SRCS})
|
|
|
SET_TARGET_PROPERTIES(amdaplugin PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
|
|
|
|
|
|
target_link_libraries(amdaplugin PUBLIC sciqlopgui)
|
|
|
|
|
|
install(TARGETS amdaplugin
|
|
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/SciQLop
|
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/SciQLop
|
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}/SciQLop)
|
|
|
|
|
|
include(sciqlop_tests)
|
|
|
|
|
|
add_definitions(-DAMDA_TESTS_RESOURCES_DIR="${CMAKE_CURRENT_LIST_DIR}/tests-resources")
|
|
|
|
|
|
declare_test(TestAmdaParser TestAmdaParser tests/TestAmdaParser.cpp "amdaplugin;Qt5::Test")
|
|
|
declare_test(TestAmdaResultParser TestAmdaResultParser tests/TestAmdaResultParser.cpp "amdaplugin;Qt5::Test")
|
|
|
declare_test(TestAmdaAcquisition TestAmdaAcquisition tests/TestAmdaAcquisition.cpp "amdaplugin;Qt5::Test")
|
|
|
declare_test(TestAmdaFuzzing TestAmdaFuzzing "tests/TestAmdaFuzzing.cpp;tests/FuzzingValidators.cpp;tests/FuzzingUtils.cpp;tests/FuzzingOperations.cpp;tests/FuzzingDefs.cpp" "amdaplugin;Qt5::Test")
|
|
|
|
|
|
|
|
|
if(PyWrappers)
|
|
|
if(MINGW)
|
|
|
add_definitions(-D_hypot=hypot)
|
|
|
endif()
|
|
|
pybind11_add_module(pytestamda tests/PyTestAmdaWrapper.cpp)
|
|
|
target_link_libraries(pytestamda PUBLIC amdaplugin)
|
|
|
target_link_libraries(pytestamda PUBLIC pysciqlop)
|
|
|
|
|
|
|
|
|
#pybind11_add_module(pytestamdalib SHARED tests/PyTestAmdaWrapper.cpp)
|
|
|
add_library(pytestamdalib tests/PyTestAmdaWrapper.cpp)
|
|
|
target_link_libraries(pytestamdalib PUBLIC pybind11::module)
|
|
|
target_link_libraries(pytestamdalib PUBLIC pybind11::embed)
|
|
|
target_link_libraries(pytestamdalib PUBLIC amdaplugin)
|
|
|
target_link_libraries(pytestamdalib PUBLIC pysciqlop)
|
|
|
|
|
|
GET_PROPERTY(CORE_PYTHON_PATH GLOBAL PROPERTY CORE_PYTHON_PATH)
|
|
|
|
|
|
declare_test(TestAmdaFileParserEmbed TestAmdaFileParserEmbed "tests/PyTestAmdaWrapperExe.cpp" "pytestamdalib")
|
|
|
target_compile_definitions(TestAmdaFileParserEmbed PRIVATE -DPYTESTAMDA_SCRIPT="${CMAKE_CURRENT_LIST_DIR}/tests/TestAmdaFileParser.py")
|
|
|
set_tests_properties(TestAmdaFileParserEmbed PROPERTIES ENVIRONMENT PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CORE_PYTHON_PATH})
|
|
|
|
|
|
|
|
|
declare_test(TestAmdaDownloadEmbed TestAmdaDownloadEmbed "tests/PyTestAmdaWrapperExe.cpp" "pytestamdalib")
|
|
|
target_compile_definitions(TestAmdaDownloadEmbed PRIVATE -DPYTESTAMDA_SCRIPT="${CMAKE_CURRENT_LIST_DIR}/tests/TestAmdaDownload.py")
|
|
|
set_tests_properties(TestAmdaDownloadEmbed PROPERTIES ENVIRONMENT PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CORE_PYTHON_PATH})
|
|
|
|
|
|
|
|
|
declare_test(TestAmdaMiniFuzzEmbed TestAmdaMiniFuzzEmbed "tests/PyTestAmdaWrapperExe.cpp" "pytestamdalib")
|
|
|
target_compile_definitions(TestAmdaMiniFuzzEmbed PRIVATE -DPYTESTAMDA_SCRIPT="${CMAKE_CURRENT_LIST_DIR}/tests/TestAmdaMiniFuzz.py")
|
|
|
set_tests_properties(TestAmdaMiniFuzzEmbed PROPERTIES ENVIRONMENT PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CORE_PYTHON_PATH})
|
|
|
|
|
|
|
|
|
find_package(PythonInterp 3 REQUIRED)
|
|
|
|
|
|
add_test(NAME TestAmdaFileParser
|
|
|
COMMAND ${PYTHON_EXECUTABLE}
|
|
|
${CMAKE_CURRENT_LIST_DIR}/tests/TestAmdaFileParser.py
|
|
|
TestAmdaFileParser)
|
|
|
set_tests_properties(TestAmdaFileParser PROPERTIES ENVIRONMENT PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CORE_PYTHON_PATH})
|
|
|
|
|
|
|
|
|
add_test(NAME TestAmdaDownload
|
|
|
COMMAND ${PYTHON_EXECUTABLE}
|
|
|
${CMAKE_CURRENT_LIST_DIR}/tests/TestAmdaDownload.py
|
|
|
TestAmdaDownload)
|
|
|
set_tests_properties(TestAmdaDownload PROPERTIES ENVIRONMENT PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CORE_PYTHON_PATH})
|
|
|
|
|
|
endif(PyWrappers)
|
|
|
|