qt6-bb10/tests
Volker Hilsheimer a085a14d76 Generate JNI signature strings at compile time
Introduce an internal QtJniTypes namespace with types that allow us to
concatenate string literals at compile time. This makes it possible to
generate arbitrary strings based on types, which we can then use as
signatures to JNI method calls.

Move some of the private members of QJniObject into the QtJniTypes
namespace for consistency, and to allow further template specialization
by user code to make other types and their JNI signature string known.
Remove the "Jni" prefix from names.

Use the compile-time generated string in QJniObject methods that created
the signature string at runtime, which involved a temporary memory
allocation.

Treat 'void' as a primitive type (with signature string 'V'), and
remove redundant template specializations.

Add a test case to verify the the strings are constructed correctly
at compile time.

Change-Id: I5e3895a97f7dc1b86961f7a7855b899d9203037d
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2022-05-05 07:29:25 +02:00
..
auto Generate JNI signature strings at compile time 2022-05-05 07:29:25 +02:00
baseline Improve surface format request for baseline test of GL painter 2022-04-06 12:44:40 +02:00
benchmarks benchmarks: fix deprecation warnings 2022-04-06 12:44:40 +02:00
global
libfuzzer Fuzzing: Add fuzzer for QJsonDocument::fromJson 2022-01-17 09:46:40 +01:00
manual wasm: add fps counter to the rasterwindow test 2022-04-19 14:46:18 +02:00
shared tst_qstring: properly fix the build when LC_MEASUREMENTS is not defined 2022-02-24 15:45:53 -08:00
testserver CI: QNX qemu need docker service ports explicitly defined for visibility 2022-03-21 22:30:01 +02:00
CMakeLists.txt CMake: Refactor optimization flag handling and add optimize_full 2020-10-06 10:07:05 +02:00
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.