qt6-bb10/tests/auto/testlib/selftests
Thiago Macieira c14f399d2a QTest: rip out qxp::function_ref from reportResult()
This is causing huge code bloat because everything is a local lambda.
Instead, pass direct type-erased function and data pointers to the
replacement function. Testing with tst_qcborvalue, this reduces the
compilation time and the output binary size significantly:

                   Before                   After
Compiler        Time      Size          Time     Size
GCC 13.2        136.99 s  202.3 MB      13.88 s  14.3 MB
GCC 14.0        131.49 s  202.7 MB      14.69 s  14.4 MB
Clang 17        77.2 s    146.7 MB      13.62 s  12.2 MB
Clang 18        141.9 s   187.1 MB      13.62 s  12.4 MB

This causes a difference in how toString() overloads are
found. Previously it would match far more overloads because the
toString() calls were expanded by the macro. Now, we depend on
Argument-Dependent Lookup and associated namespaces, so toString()
overloads should not be in the QTest namespace any more.

With this patch applied, the testlib testcase of tst_selftest
started failing, because nullptr is now handled differently.
However, I consider it as a bugfix, because previously it was
falling back to a default implementation, and now it is using
the QTest::toString(std::nullptr_t) overload, which is a
desired behavior. Update the reference files for tst_selftest
with the new expected output.

Task-number: QTBUG-124272
Change-Id: Ie28eadac333c4bcd8c08fffd17c5484186accdf6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
2024-04-26 18:19:36 +02:00
..
assert Change license for tests files 2024-02-04 09:56:42 +01:00
badxml Change license for tests files 2024-02-04 09:56:42 +01:00
benchlibcallgrind Change license for tests files 2024-02-04 09:56:42 +01:00
benchlibcounting Change license for tests files 2024-02-04 09:56:42 +01:00
benchlibeventcounter Change license for tests files 2024-02-04 09:56:42 +01:00
benchliboptions Port two tests' QAbstractEventDispatcher overrides to V2 2024-03-13 17:29:13 -08:00
benchlibtickcounter Change license for tests files 2024-02-04 09:56:42 +01:00
benchlibwalltime Change license for tests files 2024-02-04 09:56:42 +01:00
blacklisted Change license for tests files 2024-02-04 09:56:42 +01:00
cmptest QTest: allow passing chrono literal as QTRY_ timeout 2024-02-07 12:15:09 +00:00
commandlinedata Change license for tests files 2024-02-04 09:56:42 +01:00
counting Change license for tests files 2024-02-04 09:56:42 +01:00
crashes Change license for tests files 2024-02-04 09:56:42 +01:00
datatable Change license for tests files 2024-02-04 09:56:42 +01:00
datetime Change license for tests files 2024-02-04 09:56:42 +01:00
deleteLater Change license for tests files 2024-02-04 09:56:42 +01:00
deleteLater_noApp Change license for tests files 2024-02-04 09:56:42 +01:00
differentexec Change license for tests files 2024-02-04 09:56:42 +01:00
eventloop Change license for tests files 2024-02-04 09:56:42 +01:00
exceptionthrow Change license for tests files 2024-02-04 09:56:42 +01:00
expectfail Change license for tests files 2024-02-04 09:56:42 +01:00
extendedcompare QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
failcleanup Change license for tests files 2024-02-04 09:56:42 +01:00
failcleanuptestcase Change license for tests files 2024-02-04 09:56:42 +01:00
faildatatype Change license for tests files 2024-02-04 09:56:42 +01:00
failfetchtype Change license for tests files 2024-02-04 09:56:42 +01:00
failinit Change license for tests files 2024-02-04 09:56:42 +01:00
failinitdata Change license for tests files 2024-02-04 09:56:42 +01:00
fetchbogus Change license for tests files 2024-02-04 09:56:42 +01:00
findtestdata Change license for tests files 2024-02-04 09:56:42 +01:00
float Change license for tests files 2024-02-04 09:56:42 +01:00
globaldata Change license for tests files 2024-02-04 09:56:42 +01:00
junit Change license for tests files 2024-02-04 09:56:42 +01:00
keyboard Change license for tests files 2024-02-04 09:56:42 +01:00
longstring Change license for tests files 2024-02-04 09:56:42 +01:00
maxwarnings Change license for tests files 2024-02-04 09:56:42 +01:00
mouse Change license for tests files 2024-02-04 09:56:42 +01:00
multiexec Change license for tests files 2024-02-04 09:56:42 +01:00
pairdiagnostics Change license for tests files 2024-02-04 09:56:42 +01:00
pass Change license for tests files 2024-02-04 09:56:42 +01:00
patches Catch2: upgrade to 2.13.8 2022-01-31 09:26:00 +02:00
printdatatags Change license for tests files 2024-02-04 09:56:42 +01:00
printdatatagswithglobaltags Change license for tests files 2024-02-04 09:56:42 +01:00
qexecstringlist Change license for tests files 2024-02-04 09:56:42 +01:00
signaldumper Change license for tests files 2024-02-04 09:56:42 +01:00
silent Change license for tests files 2024-02-04 09:56:42 +01:00
silent_fatal Change license for tests files 2024-02-04 09:56:42 +01:00
singleskip Change license for tests files 2024-02-04 09:56:42 +01:00
skip Change license for tests files 2024-02-04 09:56:42 +01:00
skipblacklisted Change license for tests files 2024-02-04 09:56:42 +01:00
skipcleanup Change license for tests files 2024-02-04 09:56:42 +01:00
skipcleanuptestcase Change license for tests files 2024-02-04 09:56:42 +01:00
skipinit Change license for tests files 2024-02-04 09:56:42 +01:00
skipinitdata Change license for tests files 2024-02-04 09:56:42 +01:00
sleep Change license for tests files 2024-02-04 09:56:42 +01:00
strcmp Change license for tests files 2024-02-04 09:56:42 +01:00
subtest Change license for tests files 2024-02-04 09:56:42 +01:00
testlib Change license for tests files 2024-02-04 09:56:42 +01:00
tuplediagnostics Change license for tests files 2024-02-04 09:56:42 +01:00
verbose1 QTest: add opt-in changing QCOMPARE etc to exit with throw, not return 2024-01-27 22:56:12 +01:00
verbose2 QTest: add opt-in changing QCOMPARE etc to exit with throw, not return 2024-01-27 22:56:12 +01:00
verifyexceptionthrown Change license for tests files 2024-02-04 09:56:42 +01:00
warnings Change license for tests files 2024-02-04 09:56:42 +01:00
watchdog Change license for tests files 2024-02-04 09:56:42 +01:00
.gitignore
CATCH_LICENSE.txt Rewrite Qt Testlib selftest to not rely on Qt Testlib itself 2020-05-11 15:42:28 +02:00
CMakeLists.txt qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
README selftests: document how to run subtests from Windows' cmd.exe 2023-10-17 12:26:07 +08:00
catch.cpp Change license for tests files 2024-02-04 09:56:42 +01:00
catch_p.h Change license for tests files 2024-02-04 09:56:42 +01:00
catch_p_p.h Update Catch2 to v2.13.10 2022-10-17 14:07:43 +02:00
expected_assert.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_assert.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_assert.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_assert.teamcity testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_assert.txt testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_assert.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_badxml.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_badxml.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_badxml.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibcallgrind_0.txt Fix x86 preprocessor check in testlib selftests 2021-12-09 20:54:25 +01:00
expected_benchlibcallgrind_1.txt Fix x86 preprocessor check in testlib selftests 2021-12-09 20:54:25 +01:00
expected_benchlibcallgrind_2.txt Fix x86 preprocessor check in testlib selftests 2021-12-09 20:54:25 +01:00
expected_benchlibcounting.csv
expected_benchlibcounting.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_benchlibcounting.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibcounting.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_benchlibcounting.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_benchlibcounting.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibeventcounter.csv
expected_benchlibeventcounter.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_benchlibeventcounter.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibeventcounter.tap testlib: Add Test Anything Protocol (TAP) reporter 2018-03-14 14:28:36 +00:00
expected_benchlibeventcounter.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_benchlibeventcounter.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchliboptions.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_benchlibtickcounter.csv Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_benchlibtickcounter.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_benchlibtickcounter.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibtickcounter.tap testlib: Add Test Anything Protocol (TAP) reporter 2018-03-14 14:28:36 +00:00
expected_benchlibtickcounter.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_benchlibtickcounter.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibwalltime.csv
expected_benchlibwalltime.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_benchlibwalltime.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_benchlibwalltime.tap testlib: Add Test Anything Protocol (TAP) reporter 2018-03-14 14:28:36 +00:00
expected_benchlibwalltime.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_benchlibwalltime.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_blacklisted.junitxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_blacklisted.lightxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_blacklisted.tap TAP test logger: report B?XFAIL (mostly) as a message 2022-03-29 22:21:58 +02:00
expected_blacklisted.teamcity Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_blacklisted.txt Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_blacklisted.xml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_cmptest.junitxml Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_cmptest.lightxml Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_cmptest.tap Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_cmptest.teamcity Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_cmptest.txt Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_cmptest.xml Increase QTest failure message limit 2023-10-19 10:57:21 +08:00
expected_commandlinedata.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_commandlinedata.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_commandlinedata.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_commandlinedata.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_commandlinedata.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_commandlinedata.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_counting.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_counting.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_counting.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_counting.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_counting.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_counting.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_crashes_1.txt
expected_crashes_2.txt
expected_datatable.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_datatable.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_datatable.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_datatable.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_datatable.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_datatable.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_datetime.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_datetime.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_datetime.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_datetime.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_datetime.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_datetime.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_deleteLater.junitxml Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_deleteLater.tap Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater.teamcity Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater.txt Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_deleteLater_noApp.junitxml Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater_noApp.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_deleteLater_noApp.tap Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater_noApp.teamcity Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater_noApp.txt Match up testlib selftest's lists of generated files 2021-12-09 20:54:25 +01:00
expected_deleteLater_noApp.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_differentexec.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_eventloop.junitxml Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_eventloop.lightxml Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_eventloop.tap Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_eventloop.teamcity Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_eventloop.txt Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_eventloop.xml Skip early return from test loops during cleanup() 2022-09-22 17:34:51 +02:00
expected_exceptionthrow.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_exceptionthrow.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_exceptionthrow.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_exceptionthrow.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_exceptionthrow.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_exceptionthrow.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_expectfail.junitxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_expectfail.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_expectfail.tap TAP test logger: report B?XFAIL (mostly) as a message 2022-03-29 22:21:58 +02:00
expected_expectfail.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_expectfail.txt Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_expectfail.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_extendedcompare.junitxml QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_extendedcompare.lightxml QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_extendedcompare.tap QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_extendedcompare.teamcity QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_extendedcompare.txt QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_extendedcompare.xml QTest: Rename QCOMPARE_XX parameters to add meaning 2023-03-08 15:10:21 +01:00
expected_failcleanup.junitxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanup.lightxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanup.tap Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanup.teamcity Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanup.txt Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanup.xml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.junitxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.lightxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.tap Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.teamcity Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.txt Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_failcleanuptestcase.xml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_faildatatype.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_faildatatype.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_faildatatype.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_faildatatype.teamcity testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_faildatatype.txt testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_faildatatype.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failfetchtype.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_failfetchtype.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failfetchtype.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_failfetchtype.teamcity testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_failfetchtype.txt testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_failfetchtype.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failinit.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_failinit.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failinit.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_failinit.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_failinit.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_failinit.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failinitdata.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_failinitdata.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_failinitdata.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_failinitdata.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_failinitdata.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_failinitdata.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_fetchbogus.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_fetchbogus.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_fetchbogus.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_fetchbogus.teamcity testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_fetchbogus.txt testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_fetchbogus.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_findtestdata.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_findtestdata.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_findtestdata.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_findtestdata.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_findtestdata.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_findtestdata.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_float.txt Update float16 part of TestLib selftest 2021-07-28 21:26:55 +02:00
expected_globaldata.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_globaldata.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_globaldata.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_globaldata.teamcity Include global data tags in teamcity's test function names 2022-09-13 14:51:00 +02:00
expected_globaldata.txt Fix the skip-check in TestMethods::invokeTest() 2019-03-29 14:00:03 +00:00
expected_globaldata.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_junit.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_keyboard.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_keyboard.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_keyboard.tap Add self-tests for QTest::keyPress() and QTest::keyRelease() 2018-05-07 14:53:18 +00:00
expected_keyboard.teamcity Add self-tests for QTest::keyPress() and QTest::keyRelease() 2018-05-07 14:53:18 +00:00
expected_keyboard.txt Add self-tests for QTest::keyPress() and QTest::keyRelease() 2018-05-07 14:53:18 +00:00
expected_keyboard.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_longstring.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_longstring.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_longstring.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_longstring.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_longstring.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_longstring.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_maxwarnings.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_maxwarnings.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_maxwarnings.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_maxwarnings.teamcity testlib: Rename QAbstractTestLogger::QSystem to QCritical 2021-08-10 18:06:36 +02:00
expected_maxwarnings.txt testlib: Rename QAbstractTestLogger::QSystem to QCritical 2021-08-10 18:06:36 +02:00
expected_maxwarnings.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_mouse.junitxml testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_mouse.lightxml testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_mouse.tap testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_mouse.teamcity testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_mouse.txt testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_mouse.xml testlib: make it possible to test double-clicks with discrete events 2022-10-16 08:36:03 +02:00
expected_multiexec.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_pairdiagnostics.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_pairdiagnostics.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_pairdiagnostics.tap QTest: fix -Wformat-overflow GCC warning 2021-07-01 06:44:30 +02:00
expected_pairdiagnostics.teamcity QTest: fix -Wformat-overflow GCC warning 2021-07-01 06:44:30 +02:00
expected_pairdiagnostics.txt QTest: fix -Wformat-overflow GCC warning 2021-07-01 06:44:30 +02:00
expected_pairdiagnostics.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_pass.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_pass.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_pass.tap Add 'pass' test to testlib selftests 2020-03-05 15:18:04 +01:00
expected_pass.teamcity Add 'pass' test to testlib selftests 2020-03-05 15:18:04 +01:00
expected_pass.txt Add 'pass' test to testlib selftests 2020-03-05 15:18:04 +01:00
expected_pass.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_printdatatags.txt
expected_printdatatagswithglobaltags.txt
expected_qexecstringlist.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_signaldumper.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_signaldumper.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_signaldumper.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_signaldumper.teamcity testlib: Defer signal dumper start until tests are ready to run 2020-07-22 23:23:16 +02:00
expected_signaldumper.txt testlib: Defer signal dumper start until tests are ready to run 2020-07-22 23:23:16 +02:00
expected_signaldumper.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_silent.txt tst_selftests: split the qFatal() test away from tst_Silent 2023-09-06 12:36:06 -07:00
expected_silent_fatal.txt tst_selftests: split the qFatal() test away from tst_Silent 2023-09-06 12:36:06 -07:00
expected_singleskip.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_singleskip.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_singleskip.tap testlib: Add Test Anything Protocol (TAP) reporter 2018-03-14 14:28:36 +00:00
expected_singleskip.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_singleskip.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_singleskip.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_skip.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_skip.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_skip.tap TAP test logger: move messages into the diagnostics block 2022-03-29 00:05:12 +01:00
expected_skip.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_skip.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_skip.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_skipblacklisted.junitxml qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipblacklisted.lightxml qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipblacklisted.tap qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipblacklisted.teamcity qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipblacklisted.txt qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipblacklisted.xml qtestlib: Add option to skip blacklisted tests 2023-11-22 20:09:34 +02:00
expected_skipcleanup.junitxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanup.lightxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanup.tap Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanup.teamcity Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanup.txt Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanup.xml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.junitxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.lightxml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.tap Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.teamcity Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.txt Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipcleanuptestcase.xml Test skip and fail in cleanup() as well as in cleanupTestCase() 2022-07-25 19:29:07 +02:00
expected_skipinit.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_skipinit.lightxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_skipinit.tap Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_skipinit.teamcity Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_skipinit.txt Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_skipinit.xml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_skipinitdata.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_skipinitdata.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_skipinitdata.tap testlib: Add Test Anything Protocol (TAP) reporter 2018-03-14 14:28:36 +00:00
expected_skipinitdata.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_skipinitdata.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_skipinitdata.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_sleep.txt Fix integer overflows in QDeadlineTimer 2019-05-08 17:19:44 +00:00
expected_strcmp.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_strcmp.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_strcmp.tap TAP test logger: report B?XFAIL (mostly) as a message 2022-03-29 22:21:58 +02:00
expected_strcmp.teamcity generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_strcmp.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_strcmp.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_subtest.junitxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_subtest.lightxml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_subtest.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_subtest.teamcity Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_subtest.txt Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_subtest.xml Make counts of various types of test result add up correctly 2022-01-13 19:47:22 +01:00
expected_testlib.junitxml QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_testlib.lightxml QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_testlib.tap QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_testlib.teamcity QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_testlib.txt QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_testlib.xml QTest: rip out qxp::function_ref from reportResult() 2024-04-26 18:19:36 +02:00
expected_tuplediagnostics.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_tuplediagnostics.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_tuplediagnostics.tap testlib selftest: rebaseline tap results to not include line numbers 2020-07-22 23:23:01 +02:00
expected_tuplediagnostics.teamcity Eliminate some stray misleading paths from expected output files 2019-01-16 18:47:41 +00:00
expected_tuplediagnostics.txt Eliminate some stray misleading paths from expected output files 2019-01-16 18:47:41 +00:00
expected_tuplediagnostics.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verbose1.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_verbose1.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verbose1.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_verbose1.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_verbose1.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_verbose1.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verbose2.junitxml testlib: Don't write redundant log message information in JUnit reporter 2021-08-10 18:06:36 +02:00
expected_verbose2.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verbose2.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_verbose2.teamcity Make Skip an incident in test logging 2021-12-09 20:54:26 +01:00
expected_verbose2.txt generate_expected_output.py: update generated expected_* files 2017-10-11 09:59:44 +00:00
expected_verbose2.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verifyexceptionthrown.junitxml Long live QVERIFY_THROWS_NO_EXCEPTION! 2021-11-26 18:28:50 +01:00
expected_verifyexceptionthrown.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_verifyexceptionthrown.tap Long live QVERIFY_THROWS_NO_EXCEPTION! 2021-11-26 18:28:50 +01:00
expected_verifyexceptionthrown.teamcity Long live QVERIFY_THROWS_NO_EXCEPTION! 2021-11-26 18:28:50 +01:00
expected_verifyexceptionthrown.txt Long live QVERIFY_THROWS_NO_EXCEPTION! 2021-11-26 18:28:50 +01:00
expected_verifyexceptionthrown.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_warnings.junitxml QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_warnings.lightxml QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_warnings.tap QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_warnings.teamcity QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_warnings.txt QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_warnings.xml QTest: make failOnWarning() functional on temp objects destruction 2023-11-22 20:15:38 +00:00
expected_watchdog.junitxml testlib: Move stdout/stderr reporting into individual <testcase> elements 2021-08-10 18:06:36 +02:00
expected_watchdog.lightxml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
expected_watchdog.tap Move TAP's messages block to after the primary report details 2022-03-29 22:21:58 +02:00
expected_watchdog.teamcity testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_watchdog.txt testlib: Pass on file location on failure, but don't assume we have one 2021-08-04 17:31:51 +00:00
expected_watchdog.xml Properly indent qtestlib's XML output 2021-12-17 07:03:26 +01:00
generate_expected_output.py Correct license for tools files 2024-03-05 12:59:21 +01:00
qt_attribution.json Update Catch2 to v2.13.10 2022-10-17 14:07:43 +02:00
tst_selftests.cpp Change license for tests files 2024-02-04 09:56:42 +01:00

README

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Running the QtTestLib selftests with Catch2
===========================================

Catch2 [1] is a header only test framework that we use to allow
testing QtTestLib without relying on any part of testlib itself.

To run the test suite, execute 'make check' or './tst_selftests'
as normal. This should print:

    ===================================================================
    All tests passed (2453 assertions in 5 test cases)

To run specific tests, first lists the available tests:

     ./tst_selftests -l
    All available test cases:
      Loggers support both old and new style arguments
      Loggers can output to both file and stdout
      Logging to file and stdout at the same time
      All loggers can be enabled at the same time
      Scenario: Test output of the loggers is as expected
    5 test cases

Then pass the name of the test in quotes as the first argument:

     ./tst_selftests "Loggers support both old and new style arguments"
    Filters: Loggers support both old and new style arguments
    ==================================================================
    All tests passed (96 assertions in 1 test case)

You can find the tests in the sources as individual TEST_CASE
entries. Note that each of these tests run the tests once per
logger, and in the case of the test log check also all sub tests,
so the amount of actual test assertions is much higher than the
five tests listed above.

To see what the tests is actually doing, pass the -s option.
This will result in very verbose output. Each leaf test is
prefixed with a heading:

    ---------------------------------------------------------------
          Given: The QTestLog::TAP logger
           When: Passing arguments with new style
    ---------------------------------------------------------------

You can choose a specific subtest by passing the -c option:

     ./tst_selftests "Scenario: Test output of the loggers is as expected" \
        -c "Given: The QTestLog::Plain logger" \
        -c 'And given: The "skip" subtest'

Note that on Windows, when using cmd.exe, you cannot use single
quotes, so the command above becomes:

     ./tst_selftests "Scenario: Test output of the loggers is as expected" \
        -c "Given: The QTestLog::Plain logger" \
        -c "And given: The ""skip"" subtest"

It's possible to pass only the first -c options, to e.g. run all
tests with the Plain logger, but it's unfortunately not possible
to pass only the last -c option, to run the 'skip' subtest with
all loggers.

If a test fails it will print the expected, actual, and difference.
The test results are also left in a temporary directory for closer
inspection.

Add new tests by modifying selftest.pri and CMakeLists.txt, adding
a new subprogram.

Generating new test expectations is done using the python script
in this directory (generate_expected_output.py). In the future this
will be done with the --rebase option to ./tst_selftest, but this
is not fleshed out yet.

[1] https://github.com/catchorg/Catch2