# Test targets are added per module; all run offscreen via ctest.
function(diag_add_test NAME)
    add_executable(${NAME} ${NAME}.cpp)
    target_link_libraries(${NAME} PRIVATE ${ARGN} Qt6::Test)
    add_test(NAME ${NAME} COMMAND ${NAME})
    set_tests_properties(${NAME} PROPERTIES ENVIRONMENT "QT_QPA_PLATFORM=offscreen")
endfunction()

diag_add_test(tst_model diagcore)
diag_add_test(tst_properties diagcore)
diag_add_test(tst_router diagcore)
diag_add_test(tst_solver diagcore)
diag_add_test(tst_json diagcore)
diag_add_test(tst_undo diagscene)
diag_add_test(tst_scene diagscene)
