1 function (add_gtest_test NAME EXENAME)
2 if (GMX_USE_GTEST 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})
13 COMMAND ${EXENAME} --gtest_output=xml:${CMAKE_BINARY_DIR}/Testing/Temporary/${EXENAME}.xml)
14 set_tests_properties(${NAME} PROPERTIES LABELS "GTest")
15 add_dependencies(tests ${EXENAME})
19 function (add_gmock_test NAME EXENAME)
20 if (GMX_USE_GMOCK AND BUILD_TESTING)
21 include_directories(${GMOCK_INCLUDE_DIRS})
22 add_executable(${EXENAME} ${ARGN} ${TESTUTILS_DIR}/test_main_gmock.cpp)
23 target_link_libraries(${EXENAME} libgromacs ${TESTUTILS_LIBS} ${GMOCK_LIBRARIES})
24 get_target_property(DEFS ${EXENAME} COMPILE_DEFINITIONS)
28 list(APPEND DEFS TEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}")
29 set_target_properties(${EXENAME} PROPERTIES COMPILE_DEFINITIONS ${DEFS})
31 COMMAND ${EXENAME} --gtest_output=xml:${CMAKE_BINARY_DIR}/Testing/Temporary/${EXENAME}.xml)
32 set_tests_properties(${NAME} PROPERTIES LABELS "GTest")
33 add_dependencies(tests ${EXENAME})
37 function (add_gtest_or_gmock_test NAME EXENAME)
38 if (GMX_USE_GTEST AND BUILD_TESTING)
39 set(_outvar GTEST_SOURCES)
40 foreach(_source IN ITEMS ${ARGN})
41 if (_source STREQUAL GMOCK_ONLY)
42 set(_outvar GMOCK_SOURCES)
44 list(APPEND ${_outvar} ${_source})
48 set(SOURCES ${GTEST_SOURCES} ${GMOCK_SOURCES})
49 add_gmock_test(${NAME} ${EXENAME} ${SOURCES})
51 add_gtest_test(${NAME} ${EXENAME} ${GTEST_SOURCES})