X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=tests%2FCMakeLists.txt;h=0b0ad3eac8c729c40cd519761c52cbbf092d7397;hb=bca9dd03f26ae0e48378d756e9981ff63ca7b760;hp=1e5595b07cc56f4bea60ade0954faa05d3781c27;hpb=573d80d0f7a17607d2ee883c21c940c0ba020282;p=clitk.git diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1e5595b..0b0ad3e 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,22 +1,40 @@ -# 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 (BUILD_TESTING) - set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/tests/bin) +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) +SET(CLITK_DATA_PATH ${PROJECT_BINARY_DIR}/tests/data/ CACHE STRING "dataTest path") +#todo test if data test path exists - # 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") - MESSAGE(FATAL_ERROR "Data path must be given when tests are enabled.") - ENDIF (CLITK_DATA_PATH STREQUAL "CLITK_DATA_PATH-NOTFOUND") +ADD_DEFINITIONS(-DCLITK_DATA_PATH=\"${CLITK_DATA_PATH}\") - set(CLITK_DATA_PATH ${CLITK_DATA_PATH}/data) - ADD_DEFINITIONS(-DCLITK_DATA_PATH='"${CLITK_DATA_PATH}"') +add_library(gtest UNKNOWN IMPORTED) +set(GTEST_DIR ${ITK_DIR}/../gtest/ CACHE STRING "gtestDir") +#if windows gtestLibName=gtest.dll else libgtest.a +set(gtestLibName libgtest.a) +set(GTEST_LIB ${GTEST_DIR}/build/${gtestLibName}) +#message(gtestlib name = ${GTEST_LIB}) +set_property(TARGET gtest PROPERTY IMPORTED_LOCATION "${GTEST_LIB}") +include_directories(${GTEST_DIR}/include/) +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() +# ADD_SUBDIRECTORY(segmentation) +# ADD_SUBDIRECTORY(registration) +# ADD_SUBDIRECTORY(common) + -ENDIF(BUILD_TESTING)