add_executable(archive-manager-core-tests core_test.cpp)
target_link_libraries(archive-manager-core-tests PRIVATE archive-manager-core)
add_test(NAME archive-core COMMAND archive-manager-core-tests)
set_tests_properties(archive-core PROPERTIES PASS_REGULAR_EXPRESSION "Archive core checks passed")
if(ARCHIVE_MANAGER_BUILD_UI)
    add_executable(archive-manager-ui-tests ui_test.cpp)
    target_link_libraries(archive-manager-ui-tests PRIVATE archive-manager-ui)
    add_test(NAME archive-ui COMMAND archive-manager-ui-tests)
    set_tests_properties(archive-ui PROPERTIES PASS_REGULAR_EXPRESSION "Archive SDK UI checks passed")
    add_executable(archive-manager-menu-tests menu_test.cpp)
    target_link_libraries(archive-manager-menu-tests PRIVATE archive-manager-ui)
    find_program(DBUS_RUN_SESSION dbus-run-session REQUIRED)
    add_test(NAME archive-menu COMMAND ${DBUS_RUN_SESSION} -- $<TARGET_FILE:archive-manager-menu-tests>)
    add_executable(archive-manager-global-ui-tests global_menu_ui_test.cpp)
    target_link_libraries(archive-manager-global-ui-tests PRIVATE archive-manager-ui)
    add_test(NAME archive-global-menu-ui COMMAND ${DBUS_RUN_SESSION} -- $<TARGET_FILE:archive-manager-global-ui-tests>)
    set_tests_properties(archive-global-menu-ui PROPERTIES PASS_REGULAR_EXPRESSION "Archive global menu UI integration passed")
    add_executable(archive-manager-capture capture.cpp)
    target_link_libraries(archive-manager-capture PRIVATE archive-manager-ui)
endif()
