Test all waitFor...() methods when trying to run a non-existing
executable.
Change-Id: I958e1dd5ac1731788b6d0e94d9eb277c9e15c4e4
Reviewed-by: hjk <hjk@qt.io>
Wizard nowadays expects a Qt version we do not provide by
default.
Change-Id: If0f2b3aa5755a549bd63fc258fd78b1a40337a8a
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
When outputting a commands stdout / stderr / exitcode,
the shell was free to interlace different outputs.
This could trip the parsing of the output, leading
to the shell missing the exit code of a command.
When that happened, the caller might wait indefinitely
for a result that would never come.
To workaround, the shell script now writes each command output
to a temporary file first, which is then written to stdout
by a single subshell, that way guaranteeing that the output
of multiple commands will not interleave
Change-Id: I9d8e7e788f5922c612ff533e5ba063f61a22aa8c
Reviewed-by: hjk <hjk@qt.io>
The bundled "base64" tool of macos < 10.15 did not support
the "-d" option ( only -D ). We disable the tests running
on the local shell to keep them from failing.
Change-Id: I6af353869033ed15cefedc03e2562621d1ea9904
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Depending on context, callgrind sees contributions of >8% to
the total cost of project parsing for these functions. The
functional are actualy executed executed out-of-line, often
for a function body of one "payload" instruction only.
Inlining removes the call/endbr64/ret overhead.
Change-Id: I6886f08e322fcaa4e0f54d424279e0a8c24e4718
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Because the unit tests are not self contained anymore we can use the
Sqlite library from the creator build.
Change-Id: I89dde09e6fcfb8dda002b6e2bf11528a0933cde7
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
When we reparent to a new node that was created
during the same transaction, then this node has
no position. In this case we have to delete the
reparented nodes and they will be created
as part of the creation of the new node, since they
are children.
Change-Id: Icd1d02f29f529fc0f00809f7ecebf3eabfdc9a5c
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
As on it, correct the handling of the launcher interface.
This still does not work due to wrong call of valgrind-fake.
Change-Id: Id835e84eee29720579ac2947906bb95f84377185
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
instead of QTEST_MAIN. Reduces the initialization that is done by the Qt
test applications, and can also reduce interference with normal OS
operations like the current window loosing focus.
Change-Id: If88f289281aa1c8703ac7d4dbe0799d067c16588
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
On (debian based) linux the "command -v base64" did fail to find
the base64 exectuable. Instead we now use "which".
Change-Id: I9b57527d93952b08bcb9abc7484a7e6891aa664c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The quitBlockingProcess() test examines different types
of process quitting and illustrates differences in
behavior.
Change-Id: I9209f00576e03eef66fbdf5665351138ed437ac9
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Previously the runInShell and outputForRunInShell methods were
exclusively processed single threaded, meaning all calls
were processed sequentially. With the multiplexed
helper script we can now run multiple processes simultaneously.
( see tst_manual_deviceshell )
Additionally the new script allows us to capture both
stdout and stderr from commands which was not possible previously.
Change-Id: I52f4fb46d872dc274edb9c11872d2f6543741b34
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
These python scripts cannot be executed directly anyway.
Change-Id: I9ac3170450c4f8be4063b02ee8ec9df28f90cec5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Generating ui headers in a well-known path and then including that one
in the compilation database does not work in the presence of multiple ui
files with the same name.
As it turns out, we don't have to generate any files at all; instead, we
pass the file contents directly to clangd, which then uses them when
parsing includes of the respective header.
User-visible behavior change apart from the abovementioned bug fix:
Tooltips and "follow symbol" on the include directive now always use the
actual location of the header provided by the build system.
Fixes: QTCREATORBUG-27584
Change-Id: I6b13e12cb3a365199567b0bc824d12b373117697
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
Round 1 - focus on headers.
For classes with initial in range [T-Z].
Replace QT_FORWARD_DECLARE_CLASS with QT_BEGIN_NAMESPACE and
QT_END_NAMESPACE and forward declare inside.
Change-Id: I4ac3a8391e6167aa2db3973a9f94a45ac3c8ebd1
Reviewed-by: hjk <hjk@qt.io>