-IF (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")
- MESSAGE(FATAL_ERROR "Data path must be given when tests are enabled.")
- ENDIF (CLITK_DATA_PATH STREQUAL "CLITK_DATA_PATH-NOTFOUND")
-
- 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/)