X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tests%2FCMakeLists.txt;h=0ad6b8575e4660e93ca988a4642aa433be4fe2c5;hb=03d14f479ef76137ffc1936137462d9739fb28e5;hp=e15b097a4a7660dafa54b1cf983aee760684eb6a;hpb=4a97517996cc04de6f0285cdd4fbbb40b269a6b3;p=clitk.git diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index e15b097..0ad6b85 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,22 +1,51 @@ -# Tests are organized to mirror the clitk directory tree. -# Eacho subdirectory has its own CMakeLists.txt with the compiling directives +cmake_policy(SET CMP0005 NEW) +#========================================================= -IF (CLITK_BUILD_TESTING) - - set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/tests/bin) - - # default data path is searched in the project source tree - FIND_PATH(CLITK_DATA_PATH data PATHS ${PROJECT_SOURCE_DIR}) - IF (CLITK_DATA_PATH STREQUAL "CLITK_DATA_PATH-NOTFOUND" OR CLITK_DATA_PATH STREQUAL "") - MESSAGE("Data path must be given when tests are enabled.") - ENDIF (CLITK_DATA_PATH STREQUAL "CLITK_DATA_PATH-NOTFOUND" OR CLITK_DATA_PATH STREQUAL "") - - set(CLITK_DATA_PATH ${CLITK_DATA_PATH}/data) - ADD_DEFINITIONS(-DCLITK_DATA_PATH='"${CLITK_DATA_PATH}"') +#========================================================= +# Data tests path +ADD_DEFINITIONS(-DCLITK_TEST_DATA_PATH=\"${CLITK_TEST_DATA_PATH}/\") +#========================================================= +#========================================================= +# Google test macro +macro(ADD_GOOGLE_TESTS executable) + foreach ( source ${ARGN} ) + file(READ "${source}" contents) + string(REGEX MATCHALL "TEST_?F?\\(([A-Za-z_0-9 ,]+)\\)" found_tests ${contents}) + foreach(hit ${found_tests}) + string(REGEX REPLACE ".*\\(([A-Za-z_0-9]+)[, ]*([A-Za-z_0-9]+)\\).*" "\\1.\\2" test_name ${hit}) + add_test(${test_name} ${executable} --gtest_filter=${test_name}) + endforeach(hit) + endforeach() +endmacro() +#========================================================= +#========================================================= +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/tests/bin) +SET(BUILDNAME ${CMAKE_SYSTEM_NAME}${CMAKE_OSX_ARCHITECTURES} CACHE INTERNAL DOCSTRING) +#========================================================= +#========================================================= +# GoogleTest framemwork +FIND_PATH(GTEST_DIR gtest) +INCLUDE_DIRECTORIES(${GTEST_DIR}/include/) +FIND_LIBRARY(GTEST_LIB NAMES gtest PATHS ${GTEST_DIR}/build/) +ADD_LIBRARY(gtest UNKNOWN IMPORTED) +SET_PROPERTY(TARGET gtest PROPERTY IMPORTED_LOCATION "${GTEST_LIB}") +#========================================================= +#========================================================= +# Enabled options to test +IF(CLITK_BUILD_TOOLS) ADD_SUBDIRECTORY(tools) - #ADD_SUBDIRECTORY(segmentation) - #ADD_SUBDIRECTORY(registration) - #ADD_SUBDIRECTORY(common) +ENDIF() +IF(CLITK_BUILD_VV) + ADD_SUBDIRECTORY(vv) +ENDIF() +# IF(CLITK_BUILD_SEGMENTATION) +# ADD_SUBDIRECTORY(segmentation) +# ENDIF() +# +# IF(CLITK_BUILD_REGISTATION) +# ADD_SUBDIRECTORY(registration) +# ENDIF() +#ADD_SUBDIRECTORY(common) +#========================================================= -ENDIF(CLITK_BUILD_TESTING)