When using plain text output of Qt and Quick tests we are able
to correct possible mis-parsings of the output.
These merely can happen if the test application produces output
on stdout on its own which may interfere with the normal test
output and confuses the parser.
If XML output is used this handling is impossible as we do not
get any summary, but interfering the output with user stuff
would end up in a parse error and a fatal anyhow.
Task-number: QTCREATORBUG-25112
Change-Id: I84f5e542aa3faeb6470963c784e92ed1b2584b61
Reviewed-by: David Schulz <david.schulz@qt.io>
Preparation for an additional simpler test configuration
which needs to have the same common base.
Change-Id: I1800ed5d7301f1aea99eba6ef588a204697bd569
Reviewed-by: David Schulz <david.schulz@qt.io>
Change from QStringRef to QStringView at various places.
Task-number: QTCREATORBUG-24098
Change-Id: Ia7a634fa26464fbb2962724d5f0e188cecc68801
Reviewed-by: hjk <hjk@qt.io>
Instead of transforming forth and back the output
try to handle the output once correctly and pass it
line-wise around.
This also ensures that we always get a single line
when appending the output which will be necessary
later on.
Change-Id: I3e9c6db5f81172997dfe566eee9a86bfe2f17a1f
Reviewed-by: David Schulz <david.schulz@qt.io>
If tests prints out non-XML data to stdout the XML parser gets
nuts and refuses to handle the result.
Ignore unexpected output as it will be printed out on the
command line view anyhow.
Task-number: QTCREATORBUG-22354
Change-Id: I96f453fadd834d21572080857c86d25b2d6f6aa9
Reviewed-by: David Schulz <david.schulz@qt.io>
The regex in decode() was simplified as follows:
* [[:xdigit:]] matches case-insensitive, therefore this
option can be removed
* The non-greedy behavior is not needed, as [[:xdigit:]]
and [0-9] cannot consume greedy, they stop at the first
character not in their set
Change-Id: I6cada7d875a67f4048e14a747223f77d4dc394e6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Blacklisted XPass and blacklisted XFail have been added to
QTest. Add the respective handling to the plugin.
Change-Id: I96b85fa045bdf51abd8e295b075f9ab1ed95eb66
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
This patch amends 3056105c66. This patch fixes
handling of output while debugging and appending
to the "real" output if the user interacts with
the output while the test is running.
Change-Id: I1db54382f1df3e2b9a5a860002aac8fb208ee5b9
Reviewed-by: David Schulz <david.schulz@qt.io>
CDATA sections that have line breaks at their line ends
within a multiline CDATA section should get handled
that these (inner) line breaks do not get lost.
This patch fixes displaying failed Qt tests when using
the XML output.
Change-Id: I3aa7100836613372ac5b2b409c5cfacfb34209ba
Reviewed-by: David Schulz <david.schulz@qt.io>
* use nullptr
* override
* remove old style casts
* fix most of the code model warnings
Change-Id: Ia08e846f9326ae28ca7e7d66748e25a8b817b9b1
Reviewed-by: Xing Xiong
Reviewed-by: David Schulz <david.schulz@qt.io>
Rename member to better reflect its meaning. It is used
as an identifier and might be something else than an
executable.
Change-Id: I082e3caaa3d94fcd7ab26ebc43bb0eb6da136d57
Reviewed-by: David Schulz <david.schulz@qt.io>
When using XML as output for QuickTests we get a special
message coming from QmlDebug before the XML document and
we are failing when trying to handle this as XML.
Ignore this message if it occurs before we have read anything.
Change-Id: I090aa33079bff99468b8ecd1abeac7ee7e948314
Reviewed-by: David Schulz <david.schulz@qt.io>
Although Quick tests are using the output functionality of
normal Qt tests some output messages are passed encoded
differently which in turn results in failing XML parser.
Handle the different encoding inside the output parser.
Task-number: QTCREATORBUG-20105
Change-Id: Ib65edf46f9becff6f6bdef8b75f7761785bc4ceb
Reviewed-by: David Schulz <david.schulz@qt.io>
Add a pure virtual function to TestOutputReader returning
a pointer to a default constructed result.
Change-Id: Icd8090346f2c5115a7c548da7ba69ea54fe39fc4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
If searching for a test tree item matching a QtTestResult
we can safely limit searching to the subtree holding
QtTests or QuickTests.
Additionally store information whether it is a Quick or
pure Qt test into the result to limit it to a single root.
Change-Id: I240e778448d99434d188d90a110dfa4f1934c950
Reviewed-by: David Schulz <david.schulz@qt.io>
This functionality had been added for GTest, enable it
for QTest and Quick Test as well.
Task-number: QTCREATORBUG-16695
Change-Id: I5a8b219e140926325da3658a0ebe3149896a172d
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
If the test executable cannot be started or it seems
not to be the correct one or wrong arguments have been
passed to it the user now gets a respective message
inside the results pane.
Task-number: QTCREATORBUG-18955
Change-Id: Ica68cdbb9e401c8d48a9ce8b23b65d5410d2075a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
If two test cases had the same name but came from a different
executable the results pane still might have shown any later one
(badly) cascaded inside the first one. Avoid this by providing
an additional unique information (the respective executable for
the test case)
Task-number: QTCREATORBUG-18502
Change-Id: Ib071e389758b6269a9a90cc4c4afbcf86ca583ac
Reviewed-by: David Schulz <david.schulz@qt.io>
Add options allowing verbose benchmarks and logging
of signals and slots inside Qt tests.
Beside this fixing a typo (recognition of results
of type info) inside the plain text reader.
Change-Id: Iaba7112c55bf30213584e56858d096c8f78307d0
Reviewed-by: David Schulz <david.schulz@qt.io>
* remove unnecessary QLatin1String where possible
* foreach
* nullptr
* bad naming of static members
Change-Id: If0f7c6839be4d2efbfef6f7f0775d2034775bd90
Reviewed-by: David Schulz <david.schulz@qt.io>
Avoid adding test functions again and put further data tags
directly below the respective test function.
Change-Id: I29775b836cc4584358ee67b5f07744986c6a6591
Reviewed-by: David Schulz <david.schulz@qt.io>
Provide a way to control how the results tree will be
generated for the respective test framework and use
this information to construct a real tree.
Basically this changes the layout of Qt test results,
but keeps the former layout of Google test results.
Task-number: QTCREATORBUG-17104
Change-Id: I7fca4d8e365bfebcca4cf7855cf6a882e5379143
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
At least display results for using gdb or lldb and inform
user that we are not able to do so when using cdb.
Task-number: QTCREATORBUG-16693
Change-Id: I1a98a79aaf76de47b5dcb58d4dca9247f1642d36
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Handle getting output from application's process inside base class
and just process output inside the sub classes.
Additionally this is a preparation for being able to process output
for debugging tests as well.
Change-Id: I8a2289dc7faab25afe08530b5021a0318f3ba6a6
Reviewed-by: David Schulz <david.schulz@qt.io>
...into files and respective sub folders.
Change-Id: Ic80d693bd73993a6e74b6d422349e47276e8cb6e
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>