add_executable(luma-test
  test.cpp
)
find_package(Threads REQUIRED)
target_include_directories(luma-test PRIVATE
  ${CMAKE_CURRENT_SOURCE_DIR}
)
target_link_libraries(luma-test PRIVATE
  luma::luma
  Threads::Threads
)
target_compile_features(luma-test PRIVATE cxx_std_23)
target_compile_definitions(luma-test PRIVATE
  $<$<CONFIG:Debug>:LUMA_EXPECT_DEBUG_ASSERTS>
  $<$<CONFIG:Release>:LUMA_EXPECT_NDEBUG>
  $<$<CONFIG:RelWithDebInfo>:LUMA_EXPECT_NDEBUG>
  $<$<CONFIG:MinSizeRel>:LUMA_EXPECT_NDEBUG>
)
add_test(NAME luma COMMAND luma-test)
set_tests_properties(luma PROPERTIES TIMEOUT 20)
add_custom_target(check
  COMMAND ${CMAKE_CTEST_COMMAND}
    --test-dir ${CMAKE_BINARY_DIR}
    -R ^luma$
    --output-on-failure
    --timeout 20
  USES_TERMINAL
)
