# Specify the name of each test (the Test will be appended where needed). set(tests Camera Node SphereGeometry ) find_package(OpenGL REQUIRED) include_directories(SYSTEM ${OPENGL_INCLUDE_DIR}) include_directories("${CMAKE_CURRENT_BINARY_DIR}" "${AvogadroLibs_BINARY_DIR}/avogadro/rendering") # Build up the source file names. set(testSrcs "") foreach(TestName ${tests}) message(STATUS "Adding ${TestName} test.") string(TOLOWER ${TestName} testname) list(APPEND testSrcs ${testname}test.cpp) endforeach() message(STATUS "Test source files: ${testSrcs}") # Add a single executable for all of our tests. add_executable(AvogadroRenderingTests ${testSrcs}) target_link_libraries(AvogadroRenderingTests Avogadro::Rendering ${GTEST_BOTH_LIBRARIES} ${EXTRA_LINK_LIB}) # Now add all of the tests, using the gtest_filter argument so that only those # cases are run in each test invocation. foreach(TestName ${tests}) add_test(NAME "Rendering-${TestName}" COMMAND AvogadroRenderingTests "--gtest_filter=${TestName}Test.*") endforeach()