summaryrefslogtreecommitdiffstats
path: root/tests/auto/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/CMakeLists.txt')
-rw-r--r--tests/auto/CMakeLists.txt102
1 files changed, 71 insertions, 31 deletions
diff --git a/tests/auto/CMakeLists.txt b/tests/auto/CMakeLists.txt
index c16c8b197b..2a75fb44d5 100644
--- a/tests/auto/CMakeLists.txt
+++ b/tests/auto/CMakeLists.txt
@@ -1,10 +1,45 @@
-# special case begin
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
# Order by dependency [*], then alphabetic. [*] If bugs in part A of
# our source would break tests of part B, then test A before B.
-# Build only corelib and gui tests when targeting uikit (iOS),
-# because the script can't handle the SUBDIRS assignment well.
-if (UIKIT)
+set(run_dbus_tests OFF)
+if (QT_FEATURE_dbus)
+ set(run_dbus_tests ON)
+ if(NOT CMAKE_CROSSCOMPILING AND TARGET Qt::DBus)
+ execute_process(COMMAND dbus-send --session --type=signal / local.AutotestCheck.Hello
+ TIMEOUT 5
+ RESULT_VARIABLE dbus_session_test
+ OUTPUT_QUIET ERROR_QUIET)
+ if(NOT "${dbus_session_test}" STREQUAL "0")
+ set(run_dbus_tests OFF)
+ if(QT_FEATURE_dbus_linked)
+ message(WARNING
+ " QtDBus is enabled but session bus is not available for testing.\n"
+ " Please check the installation. Skipping QtDBus tests.")
+ else()
+ message(WARNING
+ " QtDBus is enabled with runtime support, but session bus is not available.\n"
+ " Skipping QtDBus tests.")
+ endif()
+ endif()
+ endif()
+endif()
+
+if(UIKIT)
+ # For now, only build CMake auto tests when QT_BUILD_MINIMAL_STATIC_TEST
+ # is a requested (which is basically what CI will build).
+ # The reason is that qt_internal_add_test doesn't use qt_add_executable
+ # at the moment, which means none of the required iOS specific finalizers
+ # are run.
+ if(QT_BUILD_MINIMAL_STATIC_TESTS)
+ add_subdirectory(cmake)
+ return()
+ endif()
+
+ # Build only corelib and gui tests when targeting uikit (iOS),
+ # because the script can't handle the SUBDIRS assignment well.
add_subdirectory(corelib)
if (TARGET Qt::Gui)
add_subdirectory(gui)
@@ -12,16 +47,43 @@ if (UIKIT)
return()
endif()
+# Limit set of tests to run for Android multi-ABI Qt builds.
+if(QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS)
+ add_subdirectory(cmake)
+ add_subdirectory(corelib/kernel/qmath)
+ add_subdirectory(widgets/effects/qpixmapfilter)
+ add_subdirectory(corelib/platform)
+ return()
+endif()
+
+if(QT_BUILD_WASM_BATCHED_TESTS)
+ add_subdirectory(corelib/io/qdiriterator)
+ add_subdirectory(corelib/io/largefile)
+ add_subdirectory(corelib/io/qdataurl)
+ add_subdirectory(corelib/io/qbuffer)
+ add_subdirectory(corelib/io/qabstractfileengine)
+ add_subdirectory(corelib/io/qsettings)
+ add_subdirectory(corelib/io/qfileselector)
+ add_subdirectory(corelib/io/qfile)
+ add_subdirectory(corelib/serialization)
+ add_subdirectory(corelib/text)
+ add_subdirectory(corelib/thread)
+ add_subdirectory(wasm)
+ return()
+endif()
+
+if(WASM)
+ add_subdirectory(wasm)
+endif()
+
add_subdirectory(testlib)
-if (NOT CMAKE_CROSSCOMPILE AND QT_FEATURE_process)
+if(NOT CMAKE_CROSSCOMPILING AND QT_FEATURE_process)
add_subdirectory(tools)
endif()
add_subdirectory(corelib)
-# special case begin
if (TARGET Qt::Xml AND TARGET Qt::Sql AND TARGET Qt::Network)
add_subdirectory(cmake)
endif()
-# special case end
# Limit set of tests to run for static Qt builds.
if(QT_BUILD_MINIMAL_STATIC_TESTS)
@@ -32,28 +94,8 @@ if (TARGET Qt::Concurrent)
add_subdirectory(concurrent)
endif()
-if (QT_FEATURE_dbus)
- set(run_dbus_tests ON)
- if(NOT CMAKE_CROSSCOMPILING AND TARGET Qt::DBus)
- execute_process(COMMAND dbus-send --session --type=signal / local.AutotestCheck.Hello
- RESULT_VARIABLE dbus_session_test
- OUTPUT_QUIET ERROR_QUIET)
- if(NOT "${dbus_session_test}" STREQUAL "0")
- set(run_dbus_tests OFF)
- if(QT_FEATURE_dbus_linked)
- message(WARNING
- " QtDBus is enabled but session bus is not available for testing.\n"
- " Please check the installation. Skipping QtDBus tests.")
- else()
- message(WARNING
- " QtDBus is enabled with runtime support, but session bus is not available.\n"
- " Skipping QtDBus tests.")
- endif()
- endif()
- endif()
- if(run_dbus_tests)
- add_subdirectory(dbus)
- endif()
+if(run_dbus_tests)
+ add_subdirectory(dbus)
endif()
if (TARGET Qt::Gui)
@@ -79,5 +121,3 @@ if (TARGET Qt::Xml)
endif()
# add_subdirectory(installed_cmake) ## FIXME: Does this still make sense in this form?
add_subdirectory(other)
-
-# special case end