Warning, /plasma/plasma-integration/qt5/autotests/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 include(ECMMarkAsTest) 0002 include(ECMMarkNonGuiExecutable) 0003 0004 find_package(Qt5Test ${QT5_MIN_VERSION} CONFIG QUIET) 0005 find_package(Qt5Qml ${QT5_MIN_VERSION} CONFIG QUIET) 0006 0007 if(NOT Qt5Test_FOUND) 0008 message(STATUS "Qt5Test not found, autotests will not be built.") 0009 return() 0010 endif() 0011 0012 if(NOT Qt5Qml_FOUND) 0013 message(STATUS "Qt5Qml not found, QML autotests will not be built.") 0014 endif() 0015 0016 set(CONFIGFILE "${CMAKE_CURRENT_SOURCE_DIR}/kdeplatformtheme_kdeglobals") 0017 set(CHANGED_CONFIGFILE "${CMAKE_CURRENT_SOURCE_DIR}/kdeplatformtheme_changed_kdeglobals") 0018 configure_file(kdeplatformtheme_config.h.in ${CMAKE_CURRENT_BINARY_DIR}/kdeplatformtheme_config.h) 0019 0020 remove_definitions(-DQT_NO_CAST_FROM_ASCII) 0021 # qdbusmenubar uses them 0022 remove_definitions(-DQT_NO_SIGNALS_SLOTS_KEYWORDS) 0023 0024 macro(FRAMEWORKINTEGRATION_TESTS _testname) 0025 add_executable(${_testname}5 ${_testname}.cpp ${ARGN}) 0026 set_target_properties(${_testname}5 PROPERTIES COMPILE_FLAGS "-DUNIT_TEST") 0027 add_test(NAME frameworkintegration-${_testname}5 COMMAND ${_testname}5) 0028 ecm_mark_as_test(${_testname}5) 0029 ecm_mark_nongui_executable(${_testname}5) 0030 target_include_directories(${_testname}5 PRIVATE ${CMAKE_BINARY_DIR}/qt5/src/platformtheme) 0031 target_link_libraries(${_testname}5 0032 Qt5::GuiPrivate 0033 Qt5::Test 0034 Qt5::DBus 0035 Qt5::QuickControls2 0036 ${QT5PLATFORMSUPPORT_LIBS} 0037 KF5::ConfigWidgets 0038 KF5::ConfigCore 0039 KF5::IconThemes 0040 KF5::KIOFileWidgets 0041 KF5::I18n 0042 KF5::Notifications 0043 KF5::WindowSystem 0044 KF5::GuiAddons 0045 Qt5::WaylandClient 0046 XCB::XCB 0047 Wayland::Client 0048 KF5::WaylandClient 0049 KF5::XmlGui 0050 Qt5::X11Extras 0051 ) 0052 endmacro() 0053 0054 set(dbus_interface) 0055 qt5_add_dbus_interface(dbus_interface ../src/platformtheme/org.kde.StatusNotifierWatcher.xml statusnotifierwatcher_interface) 0056 0057 frameworkintegration_tests( 0058 kdeplatformtheme_unittest 0059 ) 0060 set(wayland_interfaces) 0061 ecm_add_qtwayland_client_protocol(wayland_interfaces 0062 PROTOCOL ${PLASMA_WAYLAND_PROTOCOLS_DIR}/appmenu.xml 0063 BASENAME appmenu 0064 ) 0065 0066 ecm_add_qtwayland_client_protocol(wayland_interfaces 0067 PROTOCOL ${PLASMA_WAYLAND_PROTOCOLS_DIR}/server-decoration-palette.xml 0068 BASENAME server-decoration-palette 0069 ) 0070 0071 target_sources(kdeplatformtheme_unittest5 PRIVATE 0072 ../src/platformtheme/kdeplatformtheme.cpp ../src/platformtheme/kdeplatformtheme.h 0073 ../src/platformtheme/kfontsettingsdata.cpp ../src/platformtheme/kfontsettingsdata.h 0074 ../src/platformtheme/khintssettings.cpp ../src/platformtheme/khintssettings.h 0075 ../src/platformtheme/kdeplatformfiledialoghelper.cpp ../src/platformtheme/kdeplatformfiledialoghelper.h 0076 ../src/platformtheme/kdeplatformfiledialogbase.cpp 0077 ../src/platformtheme/kdeplatformsystemtrayicon.cpp ../src/platformtheme/kdeplatformsystemtrayicon.h 0078 ../src/platformtheme/kdirselectdialog.cpp 0079 ../src/platformtheme/kfiletreeview.cpp 0080 ../src/platformtheme/kwaylandintegration.cpp ../src/platformtheme/kwaylandintegration.h 0081 ../src/platformtheme/x11integration.cpp ../src/platformtheme/x11integration.h 0082 ../src/platformtheme/qxdgdesktopportalfiledialog.cpp 0083 ${dbus_interface} 0084 ${wayland_interfaces} 0085 ) 0086 target_sources(kdeplatformtheme_unittest5 PRIVATE 0087 ../src/platformtheme/qdbusmenubar.cpp # fork of Qt's qdbusmenubar with some added setters for our convenience 0088 ) 0089 0090 frameworkintegration_tests( 0091 kfontsettingsdata_unittest 0092 ../src/platformtheme/kfontsettingsdata.cpp ../src/platformtheme/kfontsettingsdata.h 0093 ) 0094 0095 frameworkintegration_tests( 0096 kfiledialog_unittest 0097 ) 0098 0099 frameworkintegration_tests( 0100 ksni_unittest 0101 ) 0102 0103 frameworkintegration_tests( 0104 kdeplatformsystemtrayicon_unittest 0105 ../src/platformtheme/kdeplatformsystemtrayicon.cpp ../src/platformtheme/kdeplatformsystemtrayicon.h 0106 ${dbus_interface} 0107 ) 0108 0109 frameworkintegration_tests( 0110 kdirselectdialog_unittest 0111 ../src/platformtheme/kdeplatformfiledialogbase.cpp 0112 ../src/platformtheme/kdirselectdialog.cpp 0113 ../src/platformtheme/kfiletreeview.cpp 0114 ) 0115 0116 frameworkintegration_tests( 0117 khintssettings_unittest 0118 ../src/platformtheme/khintssettings.cpp ../src/platformtheme/khintssettings.h 0119 ) 0120 0121 if(Qt5Qml_FOUND) 0122 add_test(NAME qmltests5 COMMAND qmltestrunner WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) 0123 0124 frameworkintegration_tests(kfiledialogqml_unittest) 0125 target_link_libraries(kfiledialogqml_unittest5 Qt5::Qml) 0126 endif()