INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}../include)

FILE(GLOB TEST_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp")
FOREACH(TEST_FILENAME ${TEST_SOURCES})
  GET_FILENAME_COMPONENT(TEST_NAME ${TEST_FILENAME} NAME_WE)
  ADD_EXECUTABLE(${TEST_NAME} ${TEST_FILENAME})

  TARGET_INCLUDE_DIRECTORIES(
    ${TEST_NAME}
    PUBLIC
      ${CMAKE_CURRENT_SOURCE_DIR}/../include
  )

  TARGET_COMPILE_FEATURES(
    ${TEST_NAME}
    PUBLIC
      cxx_std_17
  )

  TARGET_LINK_LIBRARIES(
    ${TEST_NAME}
    ${PROJECT_NAME}
  )

  ADD_TEST(NAME ${TEST_NAME} COMMAND ${TEST_NAME})
ENDFOREACH()