diff options
Diffstat (limited to 'tests/auto/CMakeLists.txt')
-rw-r--r-- | tests/auto/CMakeLists.txt | 108 |
1 files changed, 79 insertions, 29 deletions
diff --git a/tests/auto/CMakeLists.txt b/tests/auto/CMakeLists.txt index 2452e1a5d8..1297db9b8a 100644 --- a/tests/auto/CMakeLists.txt +++ b/tests/auto/CMakeLists.txt @@ -1,35 +1,15 @@ -# 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) - add_subdirectory(corelib) - if (TARGET Qt::Gui) - add_subdirectory(gui) - endif() - return() -endif() - -add_subdirectory(testlib) -if (NOT CMAKE_CROSSCOMPILE 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 -if (TARGET Qt::Concurrent) - add_subdirectory(concurrent) -endif() - +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") @@ -45,9 +25,81 @@ if (QT_FEATURE_dbus) endif() endif() endif() - if(run_dbus_tests) - add_subdirectory(dbus) +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) endif() + 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) + if(TARGET Qt::Concurrent) + add_subdirectory(corelib/io/qurl) + endif() + 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/qstandardpaths) + 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_CROSSCOMPILING AND QT_FEATURE_process) + add_subdirectory(tools) +endif() +add_subdirectory(corelib) +if (TARGET Qt::Xml AND TARGET Qt::Sql AND TARGET Qt::Network) + add_subdirectory(cmake) +endif() + +# Limit set of tests to run for static Qt builds. +if(QT_BUILD_MINIMAL_STATIC_TESTS) + return() +endif() + +if (TARGET Qt::Concurrent) + add_subdirectory(concurrent) +endif() + +if(run_dbus_tests) + add_subdirectory(dbus) endif() if (TARGET Qt::Gui) @@ -73,5 +125,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 |