1 function (add_gtest_test NAME EXENAME)
2 if (GTEST_FOUND AND BUILD_TESTING)
3 include_directories(${GTEST_INCLUDE_DIRS})
4 add_executable(${EXENAME} ${ARGN} ${TESTUTILS_DIR}/test_main_gtest.cpp)
5 target_link_libraries(${EXENAME} libgromacs ${TESTUTILS_LIBS} ${GTEST_LIBRARIES})
6 get_target_property(DEFS ${EXENAME} COMPILE_DEFINITIONS)
10 list(APPEND DEFS TEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}")
11 set_target_properties(${EXENAME} PROPERTIES COMPILE_DEFINITIONS ${DEFS})
12 add_test(${NAME} ${EXENAME})
16 function (add_gmock_test NAME EXENAME)
17 if (GMOCK_FOUND AND BUILD_TESTING)
18 include_directories(${GMOCK_INCLUDE_DIRS})
19 add_executable(${EXENAME} ${ARGN} ${TESTUTILS_DIR}/test_main_gmock.cpp)
20 target_link_libraries(${EXENAME} libgromacs ${TESTUTILS_LIBS} ${GMOCK_LIBRARIES})
21 get_target_property(DEFS ${EXENAME} COMPILE_DEFINITIONS)
25 list(APPEND DEFS TEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}")
26 set_target_properties(${EXENAME} PROPERTIES COMPILE_DEFINITIONS ${DEFS})
27 add_test(${NAME} ${EXENAME})
31 function (add_gtest_or_gmock_test NAME EXENAME)
32 if (GTEST_FOUND AND BUILD_TESTING)
33 set(_outvar GTEST_SOURCES)
34 foreach(_source IN ITEMS ${ARGN})
35 if (_source STREQUAL GMOCK_ONLY)
36 set(_outvar GMOCK_SOURCES)
38 list(APPEND ${_outvar} ${_source})
42 set(SOURCES ${GTEST_SOURCES} ${GMOCK_SOURCES})
43 add_gmock_test(${NAME} ${EXENAME} ${SOURCES})
45 add_gtest_test(${NAME} ${EXENAME} ${GTEST_SOURCES})