I'm surprised that this passed the CI on Windows, because Q_AUTOTEST_EXPORT is Q_DECL_EXPORT, which is __declspec(dllexport) and all dllexport'ed functions must be defined in the current DLL, not imported from elsewhere. This is similar on Unix systems with the no_direct_extern_access mode, because then Q_DECL_EXPORT behaves like on Windows. That means Qt modules can't call a Q_AUTOTEST_EXPORT function from another module (only tests can). Solve this by providing a function that is properly exported with Q_CORE_EXPORT. Amends commit 3d08816f4c4245f08a53307775fe3c4ed31a7a32. Task-number: QTBUG-28246 Task-number: QTBUG-31103 Change-Id: I2ba317ab34bda8c18954fffd28395f7354cb54f2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit fbe61def33a2708e35e5e6a796e88976b04941f7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> |
||
|---|---|---|
| .. | ||
| auto | ||
| baseline | ||
| benchmarks | ||
| global | ||
| libfuzzer | ||
| manual | ||
| shared | ||
| testserver | ||
| CMakeLists.txt | ||
| README | ||
README
This directory contains autotests and benchmarks based on Qt Test. In order
to run the autotests reliably, you need to configure a desktop to match the
test environment that these tests are written for.
Linux X11:
* The user must be logged in to an active desktop; you can't run the
autotests without a valid DISPLAY that allows X11 connections.
* The tests are run against a KDE3 or KDE4 desktop.
* Window manager uses "click to focus", and not "focus follows mouse". Many
tests move the mouse cursor around and expect this to not affect focus
and activation.
* Disable "click to activate", i.e., when a window is opened, the window
manager should automatically activate it (give it input focus) and not
wait for the user to click the window.