set(BUILD_TESTING ON)

add_executable(test_dbusmenu_types test_dbusmenu_types.cpp
)
target_include_directories(test_dbusmenu_types PRIVATE
    ${CMAKE_SOURCE_DIR}/status-notifier-host/libdbusmenu-qt
    ${CMAKE_SOURCE_DIR}/common
)
target_link_libraries(test_dbusmenu_types PRIVATE
    ukui-sni-host
    Qt${QT_VERSION_MAJOR}::Core
    Qt${QT_VERSION_MAJOR}::Gui
    Qt${QT_VERSION_MAJOR}::DBus
    Qt${QT_VERSION_MAJOR}::Test
    ${UKUI_SNI_EXTERNAL_LIBS}
)
add_test(NAME test_dbusmenu_types
    COMMAND ${CMAKE_COMMAND} -E env QT_QPA_PLATFORM=offscreen $<TARGET_FILE:test_dbusmenu_types>)

add_executable(test_dbusmenu_shortcut test_dbusmenu_shortcut.cpp
)
target_include_directories(test_dbusmenu_shortcut PRIVATE
    ${CMAKE_SOURCE_DIR}/status-notifier-host/libdbusmenu-qt
)
target_link_libraries(test_dbusmenu_shortcut PRIVATE
    ukui-sni-host
    Qt${QT_VERSION_MAJOR}::Core
    Qt${QT_VERSION_MAJOR}::Gui
    Qt${QT_VERSION_MAJOR}::Test
    ${UKUI_SNI_EXTERNAL_LIBS}
)
add_test(NAME test_dbusmenu_shortcut
    COMMAND ${CMAKE_COMMAND} -E env QT_QPA_PLATFORM=offscreen $<TARGET_FILE:test_dbusmenu_shortcut>)

add_executable(test_dbusmenu_shortcut_extra test_dbusmenu_shortcut_extra.cpp
)
target_include_directories(test_dbusmenu_shortcut_extra PRIVATE
    ${CMAKE_SOURCE_DIR}/status-notifier-host/libdbusmenu-qt
)
target_link_libraries(test_dbusmenu_shortcut_extra PRIVATE
    ukui-sni-host
    Qt${QT_VERSION_MAJOR}::Core
    Qt${QT_VERSION_MAJOR}::Gui
    Qt${QT_VERSION_MAJOR}::Test
    ${UKUI_SNI_EXTERNAL_LIBS}
)
add_test(NAME test_dbusmenu_shortcut_extra
    COMMAND ${CMAKE_COMMAND} -E env QT_QPA_PLATFORM=offscreen $<TARGET_FILE:test_dbusmenu_shortcut_extra>)

add_executable(test_dbusmenu_utils test_dbusmenu_utils.cpp
    ${CMAKE_SOURCE_DIR}/status-notifier-host/libdbusmenu-qt/utils.cpp
)
target_include_directories(test_dbusmenu_utils PRIVATE
    ${CMAKE_SOURCE_DIR}/status-notifier-host/libdbusmenu-qt
)
target_link_libraries(test_dbusmenu_utils PRIVATE
    Qt${QT_VERSION_MAJOR}::Core
    Qt${QT_VERSION_MAJOR}::Test
)
add_test(NAME test_dbusmenu_utils COMMAND test_dbusmenu_utils)
