summaryrefslogtreecommitdiffstats
path: root/tests/auto/testlib/selftests
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/testlib/selftests')
-rw-r--r--tests/auto/testlib/selftests/CMakeLists.txt19
-rw-r--r--tests/auto/testlib/selftests/README7
-rw-r--r--tests/auto/testlib/selftests/assert/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/assert/tst_assert.cpp2
-rw-r--r--tests/auto/testlib/selftests/badxml/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/badxml/tst_badxml.cpp31
-rw-r--r--tests/auto/testlib/selftests/benchlibcallgrind/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp6
-rw-r--r--tests/auto/testlib/selftests/benchlibcounting/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchlibcounting/tst_benchlibcounting.cpp4
-rw-r--r--tests/auto/testlib/selftests/benchlibeventcounter/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp4
-rw-r--r--tests/auto/testlib/selftests/benchliboptions/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp15
-rw-r--r--tests/auto/testlib/selftests/benchlibtickcounter/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp4
-rw-r--r--tests/auto/testlib/selftests/benchlibwalltime/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp2
-rw-r--r--tests/auto/testlib/selftests/blacklisted/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp7
-rw-r--r--tests/auto/testlib/selftests/catch.cpp2
-rw-r--r--tests/auto/testlib/selftests/catch_p.h2
-rw-r--r--tests/auto/testlib/selftests/catch_p_p.h34
-rw-r--r--tests/auto/testlib/selftests/cmptest/CMakeLists.txt14
-rw-r--r--tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp201
-rw-r--r--tests/auto/testlib/selftests/commandlinedata/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp2
-rw-r--r--tests/auto/testlib/selftests/counting/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/counting/tst_counting.cpp2
-rw-r--r--tests/auto/testlib/selftests/crashes/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/crashes/tst_crashes.cpp14
-rw-r--r--tests/auto/testlib/selftests/datatable/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/datatable/tst_datatable.cpp2
-rw-r--r--tests/auto/testlib/selftests/datetime/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/datetime/tst_datetime.cpp9
-rw-r--r--tests/auto/testlib/selftests/deleteLater/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/deleteLater/tst_deleteLater.cpp2
-rw-r--r--tests/auto/testlib/selftests/deleteLater_noApp/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/deleteLater_noApp/tst_deleteLater_noApp.cpp2
-rw-r--r--tests/auto/testlib/selftests/differentexec/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp2
-rw-r--r--tests/auto/testlib/selftests/eventloop/CMakeLists.txt17
-rw-r--r--tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp106
-rw-r--r--tests/auto/testlib/selftests/exceptionthrow/CMakeLists.txt11
-rw-r--r--tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp2
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.junitxml46
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.lightxml58
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.tap193
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.teamcity27
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.txt32
-rw-r--r--tests/auto/testlib/selftests/expected_cmptest.xml58
-rw-r--r--tests/auto/testlib/selftests/expected_crashes_3.txt8
-rw-r--r--tests/auto/testlib/selftests/expected_crashes_4.txt6
-rw-r--r--tests/auto/testlib/selftests/expected_crashes_5.txt5
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.junitxml17
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.lightxml30
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.tap17
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.teamcity14
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.txt11
-rw-r--r--tests/auto/testlib/selftests/expected_eventloop.xml33
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.junitxml526
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.lightxml746
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.tap1022
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.teamcity396
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.txt396
-rw-r--r--tests/auto/testlib/selftests/expected_extendedcompare.xml749
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.junitxml6
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.lightxml8
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.tap8
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.teamcity2
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.txt4
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanup.xml8
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.junitxml13
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.lightxml20
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.tap20
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.teamcity9
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.txt8
-rw-r--r--tests/auto/testlib/selftests/expected_failcleanuptestcase.xml23
-rw-r--r--tests/auto/testlib/selftests/expected_globaldata.teamcity90
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.junitxml3
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.lightxml4
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.tap9
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.teamcity2
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.txt3
-rw-r--r--tests/auto/testlib/selftests/expected_mouse.xml4
-rw-r--r--tests/auto/testlib/selftests/expected_silent.txt5
-rw-r--r--tests/auto/testlib/selftests/expected_silent_fatal.txt5
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.junitxml18
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.lightxml36
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.tap13
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.teamcity19
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.txt11
-rw-r--r--tests/auto/testlib/selftests/expected_skipblacklisted.xml39
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.junitxml6
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.lightxml8
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.tap4
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.teamcity2
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.txt4
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanup.xml8
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.junitxml13
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.lightxml20
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.tap9
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.teamcity9
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.txt8
-rw-r--r--tests/auto/testlib/selftests/expected_skipcleanuptestcase.xml23
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.junitxml5
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.lightxml4
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.tap7
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.teamcity2
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.txt2
-rw-r--r--tests/auto/testlib/selftests/expected_testlib.xml4
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.junitxml7
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.lightxml7
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.tap16
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.teamcity3
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.txt5
-rw-r--r--tests/auto/testlib/selftests/expected_warnings.xml7
-rw-r--r--tests/auto/testlib/selftests/expectfail/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp2
-rw-r--r--tests/auto/testlib/selftests/extendedcompare/CMakeLists.txt14
-rw-r--r--tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp336
-rw-r--r--tests/auto/testlib/selftests/failcleanup/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp8
-rw-r--r--tests/auto/testlib/selftests/failcleanuptestcase/CMakeLists.txt18
-rw-r--r--tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp25
-rw-r--r--tests/auto/testlib/selftests/faildatatype/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/faildatatype/tst_faildatatype.cpp2
-rw-r--r--tests/auto/testlib/selftests/failfetchtype/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/failfetchtype/tst_failfetchtype.cpp2
-rw-r--r--tests/auto/testlib/selftests/failinit/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/failinit/tst_failinit.cpp2
-rw-r--r--tests/auto/testlib/selftests/failinitdata/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp2
-rw-r--r--tests/auto/testlib/selftests/fetchbogus/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp2
-rw-r--r--tests/auto/testlib/selftests/findtestdata/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/findtestdata/findtestdata.cpp6
-rw-r--r--tests/auto/testlib/selftests/float/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/float/tst_float.cpp2
-rwxr-xr-xtests/auto/testlib/selftests/generate_expected_output.py27
-rw-r--r--tests/auto/testlib/selftests/globaldata/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp2
-rw-r--r--tests/auto/testlib/selftests/junit/CMakeLists.txt9
-rw-r--r--tests/auto/testlib/selftests/junit/tst_junit.cpp2
-rw-r--r--tests/auto/testlib/selftests/keyboard/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/keyboard/tst_keyboard.cpp2
-rw-r--r--tests/auto/testlib/selftests/longstring/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/longstring/tst_longstring.cpp2
-rw-r--r--tests/auto/testlib/selftests/maxwarnings/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp2
-rw-r--r--tests/auto/testlib/selftests/mouse/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/mouse/tst_mouse.cpp51
-rw-r--r--tests/auto/testlib/selftests/multiexec/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp2
-rw-r--r--tests/auto/testlib/selftests/pairdiagnostics/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/pairdiagnostics/tst_pairdiagnostics.cpp2
-rw-r--r--tests/auto/testlib/selftests/pass/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/pass/tst_pass.cpp2
-rw-r--r--tests/auto/testlib/selftests/printdatatags/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp2
-rw-r--r--tests/auto/testlib/selftests/printdatatagswithglobaltags/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp2
-rw-r--r--tests/auto/testlib/selftests/qexecstringlist/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp2
-rw-r--r--tests/auto/testlib/selftests/qt_attribution.json2
-rw-r--r--tests/auto/testlib/selftests/signaldumper/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/signaldumper/tst_signaldumper.cpp2
-rw-r--r--tests/auto/testlib/selftests/silent/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/silent/tst_silent.cpp24
-rw-r--r--tests/auto/testlib/selftests/silent_fatal/CMakeLists.txt15
-rw-r--r--tests/auto/testlib/selftests/silent_fatal/tst_silent_fatal.cpp28
-rw-r--r--tests/auto/testlib/selftests/singleskip/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp2
-rw-r--r--tests/auto/testlib/selftests/skip/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/skip/tst_skip.cpp2
-rw-r--r--tests/auto/testlib/selftests/skipblacklisted/BLACKLIST6
-rw-r--r--tests/auto/testlib/selftests/skipblacklisted/CMakeLists.txt18
-rw-r--r--tests/auto/testlib/selftests/skipblacklisted/tst_skipblacklisted.cpp51
-rw-r--r--tests/auto/testlib/selftests/skipcleanup/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp8
-rw-r--r--tests/auto/testlib/selftests/skipcleanuptestcase/CMakeLists.txt18
-rw-r--r--tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp25
-rw-r--r--tests/auto/testlib/selftests/skipinit/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp2
-rw-r--r--tests/auto/testlib/selftests/skipinitdata/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp2
-rw-r--r--tests/auto/testlib/selftests/sleep/CMakeLists.txt13
-rw-r--r--tests/auto/testlib/selftests/sleep/tst_sleep.cpp33
-rw-r--r--tests/auto/testlib/selftests/strcmp/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp2
-rw-r--r--tests/auto/testlib/selftests/subtest/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/subtest/tst_subtest.cpp6
-rw-r--r--tests/auto/testlib/selftests/testlib/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/testlib/tst_testlib.cpp16
-rw-r--r--tests/auto/testlib/selftests/tst_selftests.cpp150
-rw-r--r--tests/auto/testlib/selftests/tuplediagnostics/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp2
-rw-r--r--tests/auto/testlib/selftests/verbose1/CMakeLists.txt14
-rw-r--r--tests/auto/testlib/selftests/verbose2/CMakeLists.txt14
-rw-r--r--tests/auto/testlib/selftests/verifyexceptionthrown/CMakeLists.txt11
-rw-r--r--tests/auto/testlib/selftests/verifyexceptionthrown/tst_verifyexceptionthrown.cpp2
-rw-r--r--tests/auto/testlib/selftests/warnings/CMakeLists.txt12
-rw-r--r--tests/auto/testlib/selftests/warnings/tst_warnings.cpp28
-rw-r--r--tests/auto/testlib/selftests/watchdog/CMakeLists.txt17
-rw-r--r--tests/auto/testlib/selftests/watchdog/tst_watchdog.cpp7
205 files changed, 6384 insertions, 742 deletions
diff --git a/tests/auto/testlib/selftests/CMakeLists.txt b/tests/auto/testlib/selftests/CMakeLists.txt
index 8e64fcd6d7..9e17638a66 100644
--- a/tests/auto/testlib/selftests/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/CMakeLists.txt
@@ -1,5 +1,14 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
# The whole file is written manually.
+if(NOT QT_BUILD_STANDALONE_TESTS AND NOT QT_BUILDING_QT)
+ cmake_minimum_required(VERSION 3.16)
+ project(tst_selftests LANGUAGES CXX)
+ find_package(Qt6BuildInternals REQUIRED COMPONENTS STANDALONE_TEST)
+endif()
+
include(../../../../src/testlib/selfcover.cmake)
# ------------- Test runner -------------
@@ -18,7 +27,9 @@ qt_internal_add_test(tst_selftests
SOURCES
tst_selftests.cpp
catch.cpp
- PUBLIC_LIBRARIES
+ NO_PCH_SOURCES
+ tst_selftests.cpp # undef QT_NO_FOREACH
+ LIBRARIES
Qt::TestPrivate
TESTDATA ${qmake_expected_files_resource_files}
BUILTIN_TESTDATA
@@ -56,9 +67,12 @@ set(subprograms
deleteLater
deleteLater_noApp
differentexec
+ eventloop
exceptionthrow
expectfail
+ extendedcompare
failcleanup
+ failcleanuptestcase
faildatatype
failfetchtype
failinit
@@ -77,10 +91,13 @@ set(subprograms
printdatatagswithglobaltags
qexecstringlist
silent
+ silent_fatal
signaldumper
singleskip
skip
+ skipblacklisted
skipcleanup
+ skipcleanuptestcase
skipinit
skipinitdata
sleep
diff --git a/tests/auto/testlib/selftests/README b/tests/auto/testlib/selftests/README
index 821bed45df..da6637d872 100644
--- a/tests/auto/testlib/selftests/README
+++ b/tests/auto/testlib/selftests/README
@@ -50,6 +50,13 @@ You can choose a specific subtest by passing the -c option:
-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
diff --git a/tests/auto/testlib/selftests/assert/CMakeLists.txt b/tests/auto/testlib/selftests/assert/CMakeLists.txt
index 07f1dd6825..947c056d02 100644
--- a/tests/auto/testlib/selftests/assert/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/assert/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from assert.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## assert Binary:
#####################################################################
qt_internal_add_executable(assert
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_assert.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(assert)
-# special case end
diff --git a/tests/auto/testlib/selftests/assert/tst_assert.cpp b/tests/auto/testlib/selftests/assert/tst_assert.cpp
index 1fb7fbc2d8..abba0f388e 100644
--- a/tests/auto/testlib/selftests/assert/tst_assert.cpp
+++ b/tests/auto/testlib/selftests/assert/tst_assert.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Make sure we get a real Q_ASSERT even in release builds
#ifdef QT_NO_DEBUG
diff --git a/tests/auto/testlib/selftests/badxml/CMakeLists.txt b/tests/auto/testlib/selftests/badxml/CMakeLists.txt
index 733d826f97..21544707d7 100644
--- a/tests/auto/testlib/selftests/badxml/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/badxml/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from badxml.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## badxml Binary:
#####################################################################
qt_internal_add_executable(badxml
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_badxml.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::CorePrivate
Qt::Test
)
@@ -17,6 +19,4 @@ qt_internal_add_executable(badxml
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(badxml)
-# special case end
diff --git a/tests/auto/testlib/selftests/badxml/tst_badxml.cpp b/tests/auto/testlib/selftests/badxml/tst_badxml.cpp
index cb69905c34..a928a24d8a 100644
--- a/tests/auto/testlib/selftests/badxml/tst_badxml.cpp
+++ b/tests/auto/testlib/selftests/badxml/tst_badxml.cpp
@@ -1,6 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
-
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QtCore/QStringList>
@@ -80,9 +79,9 @@ void tst_BadXml::badDataTag_data() const
{
QTest::addColumn<bool>("shouldFail");
- foreach (char const* str, badStrings()) {
- QTest::newRow(qPrintable(QString("fail %1").arg(str))) << true;
- QTest::newRow(qPrintable(QString("pass %1").arg(str))) << false;
+ for (const QByteArray &ba: badStrings()) {
+ QTest::addRow("fail %s", ba.constData()) << true;
+ QTest::addRow("pass %s", ba.constData()) << false;
}
}
@@ -123,9 +122,8 @@ void tst_BadXml::badMessage_data() const
QTest::addColumn<QByteArray>("message");
int i = 0;
- foreach (QByteArray const& str, badStrings()) {
+ for (const QByteArray &str : badStrings())
QTest::newRow(qPrintable(QString::fromLatin1("string %1").arg(i++))) << str;
- }
}
/*
@@ -133,13 +131,12 @@ void tst_BadXml::badMessage_data() const
*/
QList<QByteArray> const& tst_BadXml::badStrings()
{
- static QList<QByteArray> out;
- if (out.isEmpty()) {
- out << "end cdata ]]> text ]]> more text";
- out << "quotes \" text\" more text";
- out << "xml close > open < tags < text";
- out << "all > \" mixed ]]> up > \" in < the ]]> hopes < of triggering \"< ]]> bugs";
- }
+ static const QList<QByteArray> out = {
+ "end cdata ]]> text ]]> more text",
+ "quotes \" text\" more text",
+ "xml close > open < tags < text",
+ "all > \" mixed ]]> up > \" in < the ]]> hopes < of triggering \"< ]]> bugs",
+ };
return out;
}
@@ -180,16 +177,16 @@ int main(int argc, char** argv)
if (badstring == -1) {
tst_BadXml test;
- return QTest::qExec(&test, args.count(), const_cast<char**>(args.data()));
+ return QTest::qExec(&test, args.size(), const_cast<char**>(args.data()));
}
QList<QByteArray> badstrings = tst_BadXml::badStrings();
- if (badstring >= badstrings.count())
+ if (badstring >= badstrings.size())
qFatal("`-badstring %d' is out of range", badstring);
tst_BadXmlSub test;
test.className = badstrings[badstring].constData();
- return QTest::qExec(&test, args.count(), const_cast<char**>(args.data()));
+ return QTest::qExec(&test, args.size(), const_cast<char**>(args.data()));
}
#include "tst_badxml.moc"
diff --git a/tests/auto/testlib/selftests/benchlibcallgrind/CMakeLists.txt b/tests/auto/testlib/selftests/benchlibcallgrind/CMakeLists.txt
index 3dfc0d7916..033724406c 100644
--- a/tests/auto/testlib/selftests/benchlibcallgrind/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchlibcallgrind/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchlibcallgrind.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchlibcallgrind Binary:
#####################################################################
qt_internal_add_executable(benchlibcallgrind
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchlibcallgrind.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(benchlibcallgrind)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp b/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp
index 8ced6f28e5..fc7f0b013b 100644
--- a/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp
+++ b/tests/auto/testlib/selftests/benchlibcallgrind/tst_benchlibcallgrind.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
#include <QtCore/QCoreApplication>
@@ -22,7 +22,7 @@ private slots:
void tst_BenchlibCallgrind::failInChildProcess()
{
#ifdef HAVE_VALGRIND_H
- static double f = 1.0;
+ [[maybe_unused]] static double f = 1.0;
QBENCHMARK {
for (int i = 0; i < 1000000; ++i) {
f *= 1.1;
@@ -63,7 +63,7 @@ QTEST_MAIN_WRAPPER(tst_BenchlibCallgrind,
|| qstrcmp(arg, "-callgrind") == 0;
}) == args.end()) {
args.push_back("-callgrind");
- argc = args.size();
+ argc = int(args.size());
argv = const_cast<char**>(&args[0]);
}
QTEST_MAIN_SETUP())
diff --git a/tests/auto/testlib/selftests/benchlibcounting/CMakeLists.txt b/tests/auto/testlib/selftests/benchlibcounting/CMakeLists.txt
index efc813bb27..76a1c96a44 100644
--- a/tests/auto/testlib/selftests/benchlibcounting/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchlibcounting/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchlibcounting.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchlibcounting Binary:
#####################################################################
qt_internal_add_executable(benchlibcounting
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchlibcounting.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(tst_selftests)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchlibcounting/tst_benchlibcounting.cpp b/tests/auto/testlib/selftests/benchlibcounting/tst_benchlibcounting.cpp
index 33012ab5da..8ac99a1f4e 100644
--- a/tests/auto/testlib/selftests/benchlibcounting/tst_benchlibcounting.cpp
+++ b/tests/auto/testlib/selftests/benchlibcounting/tst_benchlibcounting.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QTest>
@@ -37,7 +37,7 @@ void tst_BenchlibCounting::failingBenchmark()
QTEST_MAIN_WRAPPER(tst_BenchlibCounting,
std::vector<const char*> args(argv, argv + argc);
args.push_back("-eventcounter");
- argc = args.size();
+ argc = int(args.size());
argv = const_cast<char**>(&args[0]);
QTEST_MAIN_SETUP())
diff --git a/tests/auto/testlib/selftests/benchlibeventcounter/CMakeLists.txt b/tests/auto/testlib/selftests/benchlibeventcounter/CMakeLists.txt
index 0c9c5fdc32..e91340512b 100644
--- a/tests/auto/testlib/selftests/benchlibeventcounter/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchlibeventcounter/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchlibeventcounter.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchlibeventcounter Binary:
#####################################################################
qt_internal_add_executable(benchlibeventcounter
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchlibeventcounter.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(benchlibeventcounter)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp
index 7159e4876c..53c8f50ff2 100644
--- a/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp
+++ b/tests/auto/testlib/selftests/benchlibeventcounter/tst_benchlibeventcounter.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -73,7 +73,7 @@ int main(int argc, char** argv)
{
std::vector<const char*> args(argv, argv + argc);
args.push_back("-eventcounter");
- argc = args.size();
+ argc = int(args.size());
argv = const_cast<char**>(&args[0]);
TestEventDispatcher dispatcher;
diff --git a/tests/auto/testlib/selftests/benchliboptions/CMakeLists.txt b/tests/auto/testlib/selftests/benchliboptions/CMakeLists.txt
index 94ee9dd501..1f6bfa9374 100644
--- a/tests/auto/testlib/selftests/benchliboptions/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchliboptions/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchliboptions.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchliboptions Binary:
#####################################################################
qt_internal_add_executable(benchliboptions
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchliboptions.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(tst_selftests)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp
index b81796e30f..35ba5e5309 100644
--- a/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp
+++ b/tests/auto/testlib/selftests/benchliboptions/tst_benchliboptions.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -10,23 +10,20 @@
#include <QAbstractEventDispatcher>
/* Custom event dispatcher to ensure we don't receive any spontaneous events */
-class TestEventDispatcher : public QAbstractEventDispatcher
+class TestEventDispatcher : public QAbstractEventDispatcherV2
{
Q_OBJECT
public:
- TestEventDispatcher(QObject* parent =0)
- : QAbstractEventDispatcher(parent)
- {}
void interrupt() override {}
bool processEvents(QEventLoop::ProcessEventsFlags) override { return false; }
void registerSocketNotifier(QSocketNotifier*) override {}
- void registerTimer(int,qint64,Qt::TimerType,QObject*) override {}
- QList<TimerInfo> registeredTimers(QObject*) const override { return QList<TimerInfo>(); }
+ void registerTimer(Qt::TimerId,Duration,Qt::TimerType,QObject*) override {}
+ QList<TimerInfoV2> timersForObject(QObject*) const override { return {}; }
void unregisterSocketNotifier(QSocketNotifier*) override {}
- bool unregisterTimer(int) override { return false; }
+ bool unregisterTimer(Qt::TimerId) override { return false; }
bool unregisterTimers(QObject*) override { return false; }
- int remainingTime(int) override { return 0; }
+ Duration remainingTime(Qt::TimerId) const override { return {}; }
void wakeUp() override {}
#ifdef Q_OS_WIN
diff --git a/tests/auto/testlib/selftests/benchlibtickcounter/CMakeLists.txt b/tests/auto/testlib/selftests/benchlibtickcounter/CMakeLists.txt
index 463a74eaf7..639e75c8bb 100644
--- a/tests/auto/testlib/selftests/benchlibtickcounter/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchlibtickcounter/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchlibtickcounter.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchlibtickcounter Binary:
#####################################################################
qt_internal_add_executable(benchlibtickcounter
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchlibtickcounter.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::TestPrivate
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(benchlibtickcounter)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp b/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp
index 6b7068f9d2..204a28599e 100644
--- a/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp
+++ b/tests/auto/testlib/selftests/benchlibtickcounter/tst_benchlibtickcounter.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -40,7 +40,7 @@ void tst_BenchlibTickCounter::threeBillionTicks()
QTEST_MAIN_WRAPPER(tst_BenchlibTickCounter,
std::vector<const char*> args(argv, argv + argc);
args.push_back("-tickcounter");
- argc = args.size();
+ argc = int(args.size());
argv = const_cast<char**>(&args[0]);
QTEST_MAIN_SETUP())
diff --git a/tests/auto/testlib/selftests/benchlibwalltime/CMakeLists.txt b/tests/auto/testlib/selftests/benchlibwalltime/CMakeLists.txt
index 830e415440..b4119726b3 100644
--- a/tests/auto/testlib/selftests/benchlibwalltime/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/benchlibwalltime/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from benchlibwalltime.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## benchlibwalltime Binary:
#####################################################################
qt_internal_add_executable(benchlibwalltime
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_benchlibwalltime.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(benchlibwalltime)
-# special case end
diff --git a/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp b/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
index 1095253def..ebe3de4585 100644
--- a/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
+++ b/tests/auto/testlib/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/blacklisted/CMakeLists.txt b/tests/auto/testlib/selftests/blacklisted/CMakeLists.txt
index 87caa5770c..8e84038002 100644
--- a/tests/auto/testlib/selftests/blacklisted/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/blacklisted/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from blacklisted.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## blacklisted Binary:
#####################################################################
qt_internal_add_executable(blacklisted
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_blacklisted.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::TestPrivate
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(blacklisted)
-# special case end
diff --git a/tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp b/tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp
index 1a2f8e93af..d59b6244c1 100644
--- a/tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp
+++ b/tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp
@@ -1,5 +1,8 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#undef QTEST_THROW_ON_FAILURE // fails ### investigate
+#undef QTEST_THROW_ON_SKIP // fails ### investigate
#include <QtCore/QCoreApplication>
#include <QTest>
@@ -65,6 +68,7 @@ void tst_Blacklisted::fail()
void tst_Blacklisted::multiFail() // cf. ../subtest/'s similar tests
{
+ const QTest::ThrowOnFailDisabler nothrow; // tests repeated QFAILs
++blacklisted;
for (int i = 0; i < 10; ++i)
[]() { QFAIL("This failure message should be repeated ten times"); }();
@@ -73,6 +77,7 @@ void tst_Blacklisted::multiFail() // cf. ../subtest/'s similar tests
void tst_Blacklisted::multiSkip()
{
+ const QTest::ThrowOnSkipDisabler nothrow; // tests repeated QSKIPs
// Similar to multiFail()
++skipped;
for (int i = 0; i < 10; ++i)
diff --git a/tests/auto/testlib/selftests/catch.cpp b/tests/auto/testlib/selftests/catch.cpp
index 367a4c8123..37457fcca5 100644
--- a/tests/auto/testlib/selftests/catch.cpp
+++ b/tests/auto/testlib/selftests/catch.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#define CATCH_CONFIG_RUNNER
#define CATCH_CLARA_CONFIG_CONSOLE_WIDTH 1000
diff --git a/tests/auto/testlib/selftests/catch_p.h b/tests/auto/testlib/selftests/catch_p.h
index 9b3060ae4c..2c217922a8 100644
--- a/tests/auto/testlib/selftests/catch_p.h
+++ b/tests/auto/testlib/selftests/catch_p.h
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#ifndef QCATCH_P_H
#define QCATCH_P_H
diff --git a/tests/auto/testlib/selftests/catch_p_p.h b/tests/auto/testlib/selftests/catch_p_p.h
index 8648f7adc7..f22183557d 100644
--- a/tests/auto/testlib/selftests/catch_p_p.h
+++ b/tests/auto/testlib/selftests/catch_p_p.h
@@ -1,6 +1,6 @@
/*
- * Catch v2.13.8
- * Generated: 2022-01-03 21:20:09.589503
+ * Catch v2.13.10
+ * Generated: 2022-10-16 11:01:23.452308
* ----------------------------------------------------------
* This file has been merged from multiple headers. Please don't edit it directly
* Copyright (c) 2022 Two Blue Cubes Ltd. All rights reserved.
@@ -15,7 +15,7 @@
#define CATCH_VERSION_MAJOR 2
#define CATCH_VERSION_MINOR 13
-#define CATCH_VERSION_PATCH 8
+#define CATCH_VERSION_PATCH 10
#ifdef __clang__
# pragma clang system_header
@@ -7395,8 +7395,6 @@ namespace Catch {
template <typename T, bool Destruct>
struct ObjectStorage
{
- using TStorage = typename std::aligned_storage<sizeof(T), std::alignment_of<T>::value>::type;
-
ObjectStorage() : data() {}
ObjectStorage(const ObjectStorage& other)
@@ -7439,7 +7437,7 @@ namespace Catch {
return *static_cast<T*>(static_cast<void*>(&data));
}
- TStorage data;
+ struct { alignas(T) unsigned char data[sizeof(T)]; } data;
};
}
@@ -7949,7 +7947,7 @@ namespace Catch {
#if defined(__i386__) || defined(__x86_64__)
#define CATCH_TRAP() __asm__("int $3\n" : : ) /* NOLINT */
#elif defined(__aarch64__)
- #define CATCH_TRAP() __asm__(".inst 0xd4200000")
+ #define CATCH_TRAP() __asm__(".inst 0xd43e0000")
#endif
#elif defined(CATCH_PLATFORM_IPHONE)
@@ -13394,6 +13392,10 @@ namespace Catch {
filename.erase(0, lastSlash);
filename[0] = '#';
}
+ else
+ {
+ filename.insert(0, "#");
+ }
auto lastDot = filename.find_last_of('.');
if (lastDot != std::string::npos) {
@@ -13556,7 +13558,7 @@ namespace Catch {
// Handle list request
if( Option<std::size_t> listed = list( m_config ) )
- return static_cast<int>( *listed );
+ return (std::min) (MaxExitCode, static_cast<int>(*listed));
TestGroup tests { m_config };
auto const totals = tests.execute();
@@ -15389,7 +15391,7 @@ namespace Catch {
}
Version const& libraryVersion() {
- static Version version( 2, 13, 8, "", 0 );
+ static Version version( 2, 13, 10, "", 0 );
return version;
}
@@ -17524,12 +17526,20 @@ namespace Catch {
#ifndef __OBJC__
+#ifndef CATCH_INTERNAL_CDECL
+#ifdef _MSC_VER
+#define CATCH_INTERNAL_CDECL __cdecl
+#else
+#define CATCH_INTERNAL_CDECL
+#endif
+#endif
+
#if defined(CATCH_CONFIG_WCHAR) && defined(CATCH_PLATFORM_WINDOWS) && defined(_UNICODE) && !defined(DO_NOT_USE_WMAIN)
// Standard C/C++ Win32 Unicode wmain entry point
-extern "C" int wmain (int argc, wchar_t * argv[], wchar_t * []) {
+extern "C" int CATCH_INTERNAL_CDECL wmain (int argc, wchar_t * argv[], wchar_t * []) {
#else
// Standard C/C++ main entry point
-int main (int argc, char * argv[]) {
+int CATCH_INTERNAL_CDECL main (int argc, char * argv[]) {
#endif
return Catch::Session().run( argc, argv );
@@ -17892,7 +17902,7 @@ using Catch::Detail::Approx;
#define INFO( msg ) (void)(0)
#define UNSCOPED_INFO( msg ) (void)(0)
#define WARN( msg ) (void)(0)
-#define CAPTURE( msg ) (void)(0)
+#define CAPTURE( ... ) (void)(0)
#define TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( C_A_T_C_H_T_E_S_T_ ))
#define TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( C_A_T_C_H_T_E_S_T_ ))
diff --git a/tests/auto/testlib/selftests/cmptest/CMakeLists.txt b/tests/auto/testlib/selftests/cmptest/CMakeLists.txt
index b5522fe4bb..67700db36e 100644
--- a/tests/auto/testlib/selftests/cmptest/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/cmptest/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from cmptest.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## cmptest Binary:
#####################################################################
qt_internal_add_executable(cmptest
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_cmptest.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
@@ -17,10 +19,8 @@ qt_internal_add_executable(cmptest
#####################################################################
qt_internal_extend_target(cmptest CONDITION TARGET Qt::Gui
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Gui
)
-# special case begin
qt_internal_apply_testlib_coverage_options(cmptest)
-# special case end
diff --git a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
index 5633a0252b..36e355c614 100644
--- a/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+++ b/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
@@ -1,17 +1,21 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-
-#include <QtCore/QCoreApplication>
#include <QTest>
+#include <QtCore/QCoreApplication>
+#include <QtCore/QTimer>
#ifdef QT_GUI_LIB
#include <QtGui/QColor>
#include <QtGui/QImage>
+#include <QtGui/QPalette>
#include <QtGui/QPixmap>
#include <QtGui/QVector2D>
#include <QtGui/QVector3D>
#include <QtGui/QVector4D>
#endif
+#include <QSet>
+#include <vector>
+using namespace Qt::StringLiterals;
/* XPM test data for QPixmap, QImage tests (use drag cursors as example) */
@@ -114,6 +118,8 @@ private slots:
void compare_pointerfuncs();
void compare_tostring();
void compare_tostring_data();
+ void compare_unknown();
+ void compare_textFromDebug();
void compareQObjects();
void compareQStringLists();
void compareQStringLists_data();
@@ -124,6 +130,7 @@ private slots:
void compareQListIntToInitializerList_data();
void compareQListIntToInitializerList();
void compareQListDouble();
+ void compareContainerToInitializerList();
#ifdef QT_GUI_LIB
void compareQColor_data();
void compareQColor();
@@ -136,7 +143,10 @@ private slots:
void compareQVector2D();
void compareQVector3D();
void compareQVector4D();
+ void compareQPalettes_data();
+ void compareQPalettes();
#endif
+ void tryCompare();
void verify();
void verify2();
void tryVerify();
@@ -323,6 +333,40 @@ void tst_Cmptest::compare_tostring()
QCOMPARE(actual, expected);
}
+struct UnknownType
+{
+ int value;
+ bool operator==(const UnknownType &rhs) const { return value == rhs.value; }
+};
+
+void tst_Cmptest::compare_unknown()
+{
+ UnknownType a{1};
+ UnknownType b{2};
+
+ QCOMPARE(a, b);
+}
+
+struct CustomType
+{
+ int value;
+ bool operator==(const CustomType &rhs) const { return value == rhs.value; }
+};
+
+QDebug operator<<(QDebug dbg, const CustomType &val)
+{
+ dbg << "QDebug stream: " << val.value;
+ return dbg;
+}
+
+void tst_Cmptest::compare_textFromDebug()
+{
+ CustomType a{0};
+ CustomType b{1};
+
+ QCOMPARE(a, b);
+}
+
void tst_Cmptest::compareQStringLists_data()
{
QTest::addColumn<QStringList>("opA");
@@ -468,6 +512,24 @@ void tst_Cmptest::compareQListDouble()
QCOMPARE(double1, double2);
}
+void tst_Cmptest::compareContainerToInitializerList()
+{
+ // Protect ',' in the list
+#define ARG(...) __VA_ARGS__
+ QSet<int> set{1, 2, 3};
+ QCOMPARE(set, ARG({1, 2, 3}));
+
+ std::vector<int> vec{1, 2, 3};
+ QCOMPARE(vec, ARG({1, 2, 3}));
+
+ vec.clear();
+ QCOMPARE(vec, {});
+
+ vec.push_back(42);
+ QCOMPARE(vec, {42});
+#undef ARG
+}
+
#ifdef QT_GUI_LIB
void tst_Cmptest::compareQColor_data()
{
@@ -594,6 +656,54 @@ void tst_Cmptest::compareQVector4D()
v4b.setY(3);
QCOMPARE(v4a, v4b);
}
+
+void tst_Cmptest::compareQPalettes_data()
+{
+ QTest::addColumn<QPalette>("actualPalette");
+ QTest::addColumn<QPalette>("expectedPalette");
+
+ // Initialize both to black, as the default palette values change
+ // depending on whether the test is run directly from a shell
+ // vs through generate_expected_output.py. We're not testing
+ // the defaults, we're testing that the full output is printed
+ // (QTBUG-5903 and QTBUG-87039).
+ QPalette actualPalette;
+ for (int i = 0; i < QPalette::NColorRoles; ++i) {
+ const auto role = QPalette::ColorRole(i);
+ actualPalette.setColor(QPalette::All, role, QColorConstants::Black);
+ }
+ QPalette expectedPalette;
+ for (int i = 0; i < QPalette::NColorRoles; ++i) {
+ const auto role = QPalette::ColorRole(i);
+ expectedPalette.setColor(QPalette::All, role, QColorConstants::Black);
+ }
+
+ for (int i = 0; i < QPalette::NColorRoles; ++i) {
+ const auto role = QPalette::ColorRole(i);
+ const auto color = QColor::fromRgb(i);
+ actualPalette.setColor(role, color);
+ }
+ QTest::newRow("all roles are different") << actualPalette << expectedPalette;
+
+ for (int i = 0; i < QPalette::NColorRoles - 1; ++i) {
+ const auto role = QPalette::ColorRole(i);
+ const auto color = QColor::fromRgb(i);
+ expectedPalette.setColor(role, color);
+ }
+ QTest::newRow("one role is different") << actualPalette << expectedPalette;
+
+ const auto lastRole = QPalette::ColorRole(QPalette::NColorRoles - 1);
+ expectedPalette.setColor(lastRole, QColor::fromRgb(lastRole));
+ QTest::newRow("all roles are the same") << actualPalette << expectedPalette;
+}
+
+void tst_Cmptest::compareQPalettes()
+{
+ QFETCH(QPalette, actualPalette);
+ QFETCH(QPalette, expectedPalette);
+
+ QCOMPARE(actualPalette, expectedPalette);
+}
#endif // QT_GUI_LIB
static int opaqueFunc()
@@ -610,19 +720,94 @@ void tst_Cmptest::verify()
void tst_Cmptest::verify2()
{
QVERIFY2(opaqueFunc() > 2, QByteArray::number(opaqueFunc()).constData());
- QVERIFY2(opaqueFunc() < 2, QByteArray::number(opaqueFunc()).constData());
+ QVERIFY2(opaqueFunc() < 2,
+ // Message with parenthetical part, to catch mis-parses of the
+ // resulting message:
+ u"%1 >= 2 (as expected, in fact)"_s.arg(opaqueFunc()).toUtf8().constData());
+}
+
+class DeferredFlag : public QObject // Can't be const.
+{
+ Q_OBJECT
+ bool m_flag;
+public:
+ // A boolean that either starts out true or decays to true after 50 ms.
+ // However, that decay will only happen when the event loop is run.
+ explicit DeferredFlag(bool initial = false) : m_flag(initial)
+ {
+ if (!initial)
+ QTimer::singleShot(50, this, &DeferredFlag::onTimeOut);
+ }
+ explicit operator bool() const { return m_flag; }
+ bool operator!() const { return !m_flag; }
+ friend bool operator==(const DeferredFlag &a, const DeferredFlag &b)
+ {
+ return bool(a) == bool(b);
+ }
+public slots:
+ void onTimeOut() { m_flag = true; }
+};
+
+char *toString(const DeferredFlag &val)
+{
+ return qstrdup(bool(val) ? "DeferredFlag(true)" : "DeferredFlag(false)");
+}
+
+void tst_Cmptest::tryCompare()
+{
+ /* Note that expected values given as DeferredFlag() shall be re-evaluated
+ each time the comparison is checked, hence supply a fresh false instance,
+ that'll be discarded before it has a chance to decay, hence only compare
+ equal to a false instance. Do not replace them with a local variable
+ initialized to false, as it would (of course) decay.
+ */
+ DeferredFlag trueAlready(true);
+ {
+ DeferredFlag c;
+ // QTRY should check before looping, so be equal to the fresh false immediately.
+ QTRY_COMPARE(c, DeferredFlag());
+ // Given time, it'll end up equal to a true one.
+ QTRY_COMPARE(c, trueAlready);
+ }
+ {
+ DeferredFlag c;
+ QTRY_COMPARE_WITH_TIMEOUT(c, DeferredFlag(), 300ms);
+ QVERIFY(!c); // Instantly equal, so succeeded without delay.
+ QTRY_COMPARE_WITH_TIMEOUT(c, trueAlready, 1s);
+ qInfo("Should now time out and fail");
+ QTRY_COMPARE_WITH_TIMEOUT(c, DeferredFlag(), 200);
+ }
}
void tst_Cmptest::tryVerify()
{
- QTRY_VERIFY(opaqueFunc() > 2);
- QTRY_VERIFY_WITH_TIMEOUT(opaqueFunc() < 2, 1);
+ {
+ DeferredFlag c;
+ QTRY_VERIFY(!c);
+ QTRY_VERIFY(c);
+ }
+ {
+ DeferredFlag c;
+ QTRY_VERIFY_WITH_TIMEOUT(!c, 300ms);
+ QTRY_VERIFY_WITH_TIMEOUT(c, 200);
+ qInfo("Should now time out and fail");
+ QTRY_VERIFY_WITH_TIMEOUT(!c, 200);
+ }
}
void tst_Cmptest::tryVerify2()
{
- QTRY_VERIFY2(opaqueFunc() > 2, QByteArray::number(opaqueFunc()).constData());
- QTRY_VERIFY2_WITH_TIMEOUT(opaqueFunc() < 2, QByteArray::number(opaqueFunc()).constData(), 1);
+ {
+ DeferredFlag c;
+ QTRY_VERIFY2(!c, "Failed to check before looping");
+ QTRY_VERIFY2(c, "Failed to trigger single-shot");
+ }
+ {
+ DeferredFlag c;
+ QTRY_VERIFY2_WITH_TIMEOUT(!c, "Failed to check before looping", 300ms);
+ QTRY_VERIFY2_WITH_TIMEOUT(c, "Failed to trigger single-shot", 200);
+ QTRY_VERIFY2_WITH_TIMEOUT(!c, "Should time out and fail", 200);
+ }
}
void tst_Cmptest::verifyExplicitOperatorBool()
diff --git a/tests/auto/testlib/selftests/commandlinedata/CMakeLists.txt b/tests/auto/testlib/selftests/commandlinedata/CMakeLists.txt
index ce5847db93..c563f9919a 100644
--- a/tests/auto/testlib/selftests/commandlinedata/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/commandlinedata/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from commandlinedata.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## commandlinedata Binary:
#####################################################################
qt_internal_add_executable(commandlinedata
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_commandlinedata.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(commandlinedata)
-# special case end
diff --git a/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp b/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp
index a24b6fdbc3..c895ae4ed8 100644
--- a/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp
+++ b/tests/auto/testlib/selftests/commandlinedata/tst_commandlinedata.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/counting/CMakeLists.txt b/tests/auto/testlib/selftests/counting/CMakeLists.txt
index bbcd3543d1..58fa751477 100644
--- a/tests/auto/testlib/selftests/counting/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/counting/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from counting.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## counting Binary:
#####################################################################
qt_internal_add_executable(counting
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_counting.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(counting)
-# special case end
diff --git a/tests/auto/testlib/selftests/counting/tst_counting.cpp b/tests/auto/testlib/selftests/counting/tst_counting.cpp
index d9b5a8d654..d521ea0238 100644
--- a/tests/auto/testlib/selftests/counting/tst_counting.cpp
+++ b/tests/auto/testlib/selftests/counting/tst_counting.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QTest>
diff --git a/tests/auto/testlib/selftests/crashes/CMakeLists.txt b/tests/auto/testlib/selftests/crashes/CMakeLists.txt
index c09049a933..c11bab90d0 100644
--- a/tests/auto/testlib/selftests/crashes/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/crashes/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from crashes.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## crashes Binary:
#####################################################################
qt_internal_add_executable(crashes
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_crashes.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(crashes)
-# special case end
diff --git a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp
index abac42c723..4ba8a426e6 100644
--- a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp
+++ b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -7,6 +7,8 @@
#ifdef Q_OS_WIN
#include <qt_windows.h>
+#else
+#include <sys/resource.h>
#endif
class tst_Crashes: public QObject
@@ -22,6 +24,12 @@ void tst_Crashes::crash()
#if defined(Q_OS_WIN)
//we avoid the error dialogbox to appear on windows
SetErrorMode( SEM_NOGPFAULTERRORBOX | SEM_FAILCRITICALERRORS | SEM_NOOPENFILEERRORBOX);
+#elif defined(RLIMIT_CORE)
+ // Unix: set our core dump limit to zero to request no dialogs.
+ if (struct rlimit rlim; getrlimit(RLIMIT_CORE, &rlim) == 0) {
+ rlim.rlim_cur = 0;
+ setrlimit(RLIMIT_CORE, &rlim);
+ }
#endif
/*
We deliberately dereference an invalid but non-zero address;
@@ -30,7 +38,11 @@ void tst_Crashes::crash()
rather than SIGSEGV).
*/
int *i = 0;
+
+QT_WARNING_PUSH
+QT_WARNING_DISABLE_GCC("-Warray-bounds")
i[1] = 1;
+QT_WARNING_POP
}
QTEST_MAIN(tst_Crashes)
diff --git a/tests/auto/testlib/selftests/datatable/CMakeLists.txt b/tests/auto/testlib/selftests/datatable/CMakeLists.txt
index 66bfa4a208..7bac0d2a63 100644
--- a/tests/auto/testlib/selftests/datatable/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/datatable/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from datatable.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## datatable Binary:
#####################################################################
qt_internal_add_executable(datatable
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_datatable.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(datatable)
-# special case end
diff --git a/tests/auto/testlib/selftests/datatable/tst_datatable.cpp b/tests/auto/testlib/selftests/datatable/tst_datatable.cpp
index 6fa70c3072..598908ac0e 100644
--- a/tests/auto/testlib/selftests/datatable/tst_datatable.cpp
+++ b/tests/auto/testlib/selftests/datatable/tst_datatable.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/datetime/CMakeLists.txt b/tests/auto/testlib/selftests/datetime/CMakeLists.txt
index 5a3df8085d..e644d7200a 100644
--- a/tests/auto/testlib/selftests/datetime/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/datetime/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from datetime.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## datetime Binary:
#####################################################################
qt_internal_add_executable(datetime
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_datetime.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(datetime)
-# special case end
diff --git a/tests/auto/testlib/selftests/datetime/tst_datetime.cpp b/tests/auto/testlib/selftests/datetime/tst_datetime.cpp
index 22e190404f..68e47d0868 100644
--- a/tests/auto/testlib/selftests/datetime/tst_datetime.cpp
+++ b/tests/auto/testlib/selftests/datetime/tst_datetime.cpp
@@ -1,9 +1,10 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QtCore/QDateTime>
+#include <QtCore/QTimeZone>
#include <QTest>
/*!
@@ -21,8 +22,10 @@ private slots:
void tst_DateTime::dateTime() const
{
- const QDateTime utc(QDate(2000, 5, 3), QTime(4, 3, 4), Qt::UTC);
- const QDateTime local(QDate(2000, 5, 3), QTime(4, 3, 4), Qt::OffsetFromUTC, 120 /* 2 minutes */);
+ const auto twoMinutes = std::chrono::minutes{2};
+ const QDateTime utc(QDate(2000, 5, 3), QTime(4, 3, 4), QTimeZone::UTC);
+ const QDateTime local(QDate(2000, 5, 3), QTime(4, 3, 4),
+ QTimeZone::fromDurationAheadOfUtc(twoMinutes));
QCOMPARE(local, utc);
}
diff --git a/tests/auto/testlib/selftests/deleteLater/CMakeLists.txt b/tests/auto/testlib/selftests/deleteLater/CMakeLists.txt
index ca42199665..ededc5bf7d 100644
--- a/tests/auto/testlib/selftests/deleteLater/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/deleteLater/CMakeLists.txt
@@ -1,18 +1,18 @@
-# Generated from deleteLater.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## deleteLater Binary:
#####################################################################
qt_internal_add_executable(deleteLater
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_deleteLater.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
-# special case begin
qt_internal_apply_testlib_coverage_options(deleteLater)
-# special case end
diff --git a/tests/auto/testlib/selftests/deleteLater/tst_deleteLater.cpp b/tests/auto/testlib/selftests/deleteLater/tst_deleteLater.cpp
index 2f3023148d..871a46afc3 100644
--- a/tests/auto/testlib/selftests/deleteLater/tst_deleteLater.cpp
+++ b/tests/auto/testlib/selftests/deleteLater/tst_deleteLater.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author David Faure <david.faure@kdab.com>
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/deleteLater_noApp/CMakeLists.txt b/tests/auto/testlib/selftests/deleteLater_noApp/CMakeLists.txt
index 0ebdc89cb8..feebd9f00e 100644
--- a/tests/auto/testlib/selftests/deleteLater_noApp/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/deleteLater_noApp/CMakeLists.txt
@@ -1,18 +1,18 @@
-# Generated from deleteLater_noApp.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## deleteLater_noApp Binary:
#####################################################################
qt_internal_add_executable(deleteLater_noApp
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_deleteLater_noApp.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
-# special case begin
qt_internal_apply_testlib_coverage_options(deleteLater_noApp)
-# special case end
diff --git a/tests/auto/testlib/selftests/deleteLater_noApp/tst_deleteLater_noApp.cpp b/tests/auto/testlib/selftests/deleteLater_noApp/tst_deleteLater_noApp.cpp
index 10ddfaa75e..eecc67dd36 100644
--- a/tests/auto/testlib/selftests/deleteLater_noApp/tst_deleteLater_noApp.cpp
+++ b/tests/auto/testlib/selftests/deleteLater_noApp/tst_deleteLater_noApp.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author David Faure <david.faure@kdab.com>
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/differentexec/CMakeLists.txt b/tests/auto/testlib/selftests/differentexec/CMakeLists.txt
index e13817f1e1..b92814742e 100644
--- a/tests/auto/testlib/selftests/differentexec/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/differentexec/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from differentexec.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## differentexec Binary:
#####################################################################
qt_internal_add_executable(differentexec
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_differentexec.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(differentexec)
-# special case end
diff --git a/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp b/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp
index 7229a4306d..92233a0147 100644
--- a/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp
+++ b/tests/auto/testlib/selftests/differentexec/tst_differentexec.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/eventloop/CMakeLists.txt b/tests/auto/testlib/selftests/eventloop/CMakeLists.txt
new file mode 100644
index 0000000000..46b794f895
--- /dev/null
+++ b/tests/auto/testlib/selftests/eventloop/CMakeLists.txt
@@ -0,0 +1,17 @@
+#####################################################################
+## eventloop Binary:
+#####################################################################
+
+qt_internal_add_executable(eventloop
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_eventloop.cpp
+ LIBRARIES
+ Qt::Test
+)
+
+## Scopes:
+#####################################################################
+qt_internal_apply_testlib_coverage_options(eventloop)
diff --git a/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp b/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp
new file mode 100644
index 0000000000..3f3a7e303e
--- /dev/null
+++ b/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp
@@ -0,0 +1,106 @@
+// Copyright (C) 2022 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QTest>
+#include <QTestEventLoop>
+#include <QtCore/QTimer>
+
+using namespace std::chrono_literals;
+
+// Tests for QTestEventLoop (and some QTRY_* details)
+class tst_EventLoop: public QObject
+{
+Q_OBJECT
+
+ bool m_inTestFunction = false;
+private slots:
+ void cleanup();
+ void fail();
+ void skip();
+ void pass();
+};
+
+class DeferredFlag : public QObject // Can't be const.
+{
+ Q_OBJECT
+ bool m_flag;
+public:
+ // A boolean that either starts out true or decays to true after 50 ms.
+ // However, that decay will only happen when the event loop is run.
+ explicit DeferredFlag(bool initial = false) : m_flag(initial)
+ {
+ if (!initial)
+ QTimer::singleShot(50, this, &DeferredFlag::onTimeOut);
+ }
+ explicit operator bool() const { return m_flag; }
+ bool operator!() const { return !m_flag; }
+ friend bool operator==(const DeferredFlag &a, const DeferredFlag &b)
+ {
+ return bool(a) == bool(b);
+ }
+public slots:
+ void onTimeOut() { m_flag = true; }
+};
+
+char *toString(const DeferredFlag &val)
+{
+ return qstrdup(bool(val) ? "DeferredFlag(true)" : "DeferredFlag(false)");
+}
+
+void tst_EventLoop::cleanup()
+{
+ // QTBUG-104441: looping didn't happen in cleanup() if test failed or skipped.
+ {
+ DeferredFlag flag;
+ auto &loop = QTestEventLoop::instance();
+ loop.enterLoop(100ms);
+ QVERIFY2(loop.timeout(), "QTestEventLoop exited prematurely in cleanup()");
+ QVERIFY(flag);
+ }
+ {
+ DeferredFlag flag;
+ QTRY_VERIFY2(flag, "QTRY_* loop exited prematurely in cleanup()");
+ }
+
+ m_inTestFunction = false;
+}
+
+void tst_EventLoop::fail()
+{
+ QVERIFY2(!std::exchange(m_inTestFunction, true), "Earlier test failed to clean up");
+ QFAIL("Failing test should still clean up");
+}
+
+void tst_EventLoop::skip()
+{
+ QVERIFY2(!std::exchange(m_inTestFunction, true), "Earlier test failed to clean up");
+ QSKIP("Skipping test should still clean up");
+}
+
+void tst_EventLoop::pass()
+{
+ QVERIFY2(!std::exchange(m_inTestFunction, true), "Earlier test failed to clean up");
+ {
+ DeferredFlag flag;
+ auto &loop = QTestEventLoop::instance();
+ loop.enterLoop(100ms);
+ QVERIFY(loop.timeout());
+ QVERIFY(flag);
+ }
+ {
+ DeferredFlag flag;
+ QTRY_VERIFY(flag);
+ }
+ DeferredFlag flag;
+ QTestEventLoop loop(this);
+ QVERIFY(!flag);
+ loop.enterLoop(1ms);
+ QVERIFY(loop.timeout());
+ QVERIFY(!flag);
+ loop.enterLoop(100ms);
+ QVERIFY(loop.timeout());
+ QVERIFY(flag);
+}
+
+QTEST_MAIN(tst_EventLoop)
+#include "tst_eventloop.moc"
diff --git a/tests/auto/testlib/selftests/exceptionthrow/CMakeLists.txt b/tests/auto/testlib/selftests/exceptionthrow/CMakeLists.txt
index ba793db66c..0facbeace3 100644
--- a/tests/auto/testlib/selftests/exceptionthrow/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/exceptionthrow/CMakeLists.txt
@@ -1,4 +1,5 @@
-# Generated from exceptionthrow.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## exceptionthrow Binary:
@@ -6,17 +7,15 @@
qt_internal_add_executable(exceptionthrow
EXCEPTIONS
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_exceptionthrow.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(exceptionthrow)
-# special case end
diff --git a/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp b/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp
index 4fd22e3048..ea5c6afc13 100644
--- a/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp
+++ b/tests/auto/testlib/selftests/exceptionthrow/tst_exceptionthrow.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/expected_cmptest.junitxml b/tests/auto/testlib/selftests/expected_cmptest.junitxml
index 9509c067e2..134a188753 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.junitxml
+++ b/tests/auto/testlib/selftests/expected_cmptest.junitxml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<testsuite name="tst_Cmptest" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="67" failures="46" errors="0" skipped="0" time="@TEST_DURATION@">
+<testsuite name="tst_Cmptest" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="74" failures="51" errors="0" skipped="0" time="@TEST_DURATION@">
<properties>
<property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
<property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
@@ -78,6 +78,18 @@
Expected (expected): QVariant(PhonyClass,<value not representable as string>)]]>
</failure>
</testcase>
+ <testcase name="compare_unknown" classname="tst_Cmptest" time="@TEST_DURATION@">
+ <failure type="fail" message="Compared values are not the same">
+ <![CDATA[ Actual : a
+ Expected : b]]>
+ </failure>
+ </testcase>
+ <testcase name="compare_textFromDebug" classname="tst_Cmptest" time="@TEST_DURATION@">
+ <failure type="fail" message="Compared values are not the same">
+ <![CDATA[ Actual (a): QDebug stream: 0
+ Expected (b): QDebug stream: 1]]>
+ </failure>
+ </testcase>
<testcase name="compareQObjects" classname="tst_Cmptest" time="@TEST_DURATION@">
<failure type="fail" message="Compared QObject pointers are not the same">
<![CDATA[ Actual (&object1): QObject/"object1"
@@ -161,6 +173,7 @@
Expected (double2): 1]]>
</failure>
</testcase>
+ <testcase name="compareContainerToInitializerList" classname="tst_Cmptest" time="@TEST_DURATION@"/>
<testcase name="compareQColor(Qt::yellow vs &quot;yellow&quot;)" classname="tst_Cmptest" time="@TEST_DURATION@"/>
<testcase name="compareQColor(Qt::yellow vs Qt::green)" classname="tst_Cmptest" time="@TEST_DURATION@">
<failure type="fail" message="Compared values are not the same">
@@ -270,17 +283,42 @@
Expected (v4b): QVector4D(1, 3, 3, 4)]]>
</failure>
</testcase>
+ <testcase name="compareQPalettes(all roles are different)" classname="tst_Cmptest" time="@TEST_DURATION@">
+ <failure type="fail" message="Compared values are not the same">
+ <![CDATA[ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]>
+ </failure>
+ </testcase>
+ <testcase name="compareQPalettes(one role is different)" classname="tst_Cmptest" time="@TEST_DURATION@">
+ <failure type="fail" message="Compared values are not the same">
+ <![CDATA[ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]>
+ </failure>
+ </testcase>
+ <testcase name="compareQPalettes(all roles are the same)" classname="tst_Cmptest" time="@TEST_DURATION@"/>
+ <testcase name="tryCompare" classname="tst_Cmptest" time="@TEST_DURATION@">
+ <failure type="fail" message="Compared values are not the same">
+ <![CDATA[ Actual (c) : DeferredFlag(true)
+ Expected (DeferredFlag()): DeferredFlag(false)]]>
+ </failure>
+ <system-out>
+ <![CDATA[Should now time out and fail]]>
+ </system-out>
+ </testcase>
<testcase name="verify" classname="tst_Cmptest" time="@TEST_DURATION@">
<failure type="fail" message="&apos;opaqueFunc() &lt; 2&apos; returned FALSE. ()"/>
</testcase>
<testcase name="verify2" classname="tst_Cmptest" time="@TEST_DURATION@">
- <failure type="fail" message="&apos;opaqueFunc() &lt; 2&apos; returned FALSE. (42)"/>
+ <failure type="fail" message="&apos;opaqueFunc() &lt; 2&apos; returned FALSE. (42 &gt;= 2 (as expected, in fact))"/>
</testcase>
<testcase name="tryVerify" classname="tst_Cmptest" time="@TEST_DURATION@">
- <failure type="fail" message="&apos;opaqueFunc() &lt; 2&apos; returned FALSE. ()"/>
+ <failure type="fail" message="&apos;!c&apos; returned FALSE. ()"/>
+ <system-out>
+ <![CDATA[Should now time out and fail]]>
+ </system-out>
</testcase>
<testcase name="tryVerify2" classname="tst_Cmptest" time="@TEST_DURATION@">
- <failure type="fail" message="&apos;opaqueFunc() &lt; 2&apos; returned FALSE. (42)"/>
+ <failure type="fail" message="&apos;!c&apos; returned FALSE. (Should time out and fail)"/>
</testcase>
<testcase name="verifyExplicitOperatorBool" classname="tst_Cmptest" time="@TEST_DURATION@"/>
<testcase name="cleanupTestCase" classname="tst_Cmptest" time="@TEST_DURATION@"/>
diff --git a/tests/auto/testlib/selftests/expected_cmptest.lightxml b/tests/auto/testlib/selftests/expected_cmptest.lightxml
index df00b1a884..9c54d20650 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.lightxml
+++ b/tests/auto/testlib/selftests/expected_cmptest.lightxml
@@ -109,6 +109,22 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compare_unknown">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual : a
+ Expected : b]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compare_textFromDebug">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual (a): QDebug stream: 0
+ Expected (b): QDebug stream: 1]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="compareQObjects">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
<Description><![CDATA[Compared QObject pointers are not the same
@@ -218,6 +234,10 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compareContainerToInitializerList">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="compareQColor">
<Incident type="pass" file="" line="0">
<DataTag><![CDATA[Qt::yellow vs "yellow"]]></DataTag>
@@ -361,6 +381,35 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compareQPalettes">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <DataTag><![CDATA[all roles are different]]></DataTag>
+ <Description><![CDATA[Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <DataTag><![CDATA[one role is different]]></DataTag>
+ <Description><![CDATA[Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[all roles are the same]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="tryCompare">
+ <Message type="qinfo" file="" line="0">
+ <Description><![CDATA[Should now time out and fail]]></Description>
+ </Message>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual (c) : DeferredFlag(true)
+ Expected (DeferredFlag()): DeferredFlag(false)]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="verify">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
<Description><![CDATA['opaqueFunc() < 2' returned FALSE. ()]]></Description>
@@ -369,19 +418,22 @@
</TestFunction>
<TestFunction name="verify2">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42)]]></Description>
+ <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42 >= 2 (as expected, in fact))]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="tryVerify">
+ <Message type="qinfo" file="" line="0">
+ <Description><![CDATA[Should now time out and fail]]></Description>
+ </Message>
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. ()]]></Description>
+ <Description><![CDATA['!c' returned FALSE. ()]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="tryVerify2">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42)]]></Description>
+ <Description><![CDATA['!c' returned FALSE. (Should time out and fail)]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_cmptest.tap b/tests/auto/testlib/selftests/expected_cmptest.tap
index a282fb1f4e..a5f5c3c8a2 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.tap
+++ b/tests/auto/testlib/selftests/expected_cmptest.tap
@@ -139,7 +139,28 @@ not ok 18 - compare_tostring(both non-null user type)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 19 - compareQObjects()
+not ok 19 - compare_unknown()
+ ---
+ # Compared values are not the same
+ Actual : a
+ Expected : b
+ at: tst_Cmptest::compare_unknown() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+ line: 0
+ ...
+not ok 20 - compare_textFromDebug()
+ ---
+ type: QCOMPARE
+ message: Compared values are not the same
+ wanted: QDebug stream: 1 (b)
+ found: QDebug stream: 0 (a)
+ expected: QDebug stream: 1 (b)
+ actual: QDebug stream: 0 (a)
+ at: tst_Cmptest::compare_textFromDebug() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+ line: 0
+ ...
+not ok 21 - compareQObjects()
---
type: QCOMPARE
message: Compared QObject pointers are not the same
@@ -151,9 +172,9 @@ not ok 19 - compareQObjects()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 20 - compareQStringLists(empty lists)
-ok 21 - compareQStringLists(equal lists)
-not ok 22 - compareQStringLists(last item different)
+ok 22 - compareQStringLists(empty lists)
+ok 23 - compareQStringLists(equal lists)
+not ok 24 - compareQStringLists(last item different)
---
type: QCOMPARE
message: Compared lists differ at index 2.
@@ -165,7 +186,7 @@ not ok 22 - compareQStringLists(last item different)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 23 - compareQStringLists(second-last item different)
+not ok 25 - compareQStringLists(second-last item different)
---
type: QCOMPARE
message: Compared lists differ at index 2.
@@ -177,7 +198,7 @@ not ok 23 - compareQStringLists(second-last item different)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 24 - compareQStringLists(prefix)
+not ok 26 - compareQStringLists(prefix)
---
# Compared lists have different sizes.
Actual (opA) size: 2
@@ -186,7 +207,7 @@ not ok 24 - compareQStringLists(prefix)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 25 - compareQStringLists(short list second)
+not ok 27 - compareQStringLists(short list second)
---
# Compared lists have different sizes.
Actual (opA) size: 12
@@ -195,7 +216,7 @@ not ok 25 - compareQStringLists(short list second)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 26 - compareQStringLists(short list first)
+not ok 28 - compareQStringLists(short list first)
---
# Compared lists have different sizes.
Actual (opA) size: 1
@@ -204,8 +225,8 @@ not ok 26 - compareQStringLists(short list first)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 27 - compareQListInt(match)
-not ok 28 - compareQListInt(size mismatch)
+ok 29 - compareQListInt(match)
+not ok 30 - compareQListInt(size mismatch)
---
# Compared lists have different sizes.
Actual (actual) size: 2
@@ -214,7 +235,7 @@ not ok 28 - compareQListInt(size mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 29 - compareQListInt(value mismatch)
+not ok 31 - compareQListInt(value mismatch)
---
type: QCOMPARE
message: Compared lists differ at index 2.
@@ -226,8 +247,8 @@ not ok 29 - compareQListInt(value mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 30 - compareQListIntToArray(match)
-not ok 31 - compareQListIntToArray(size mismatch)
+ok 32 - compareQListIntToArray(match)
+not ok 33 - compareQListIntToArray(size mismatch)
---
# Compared lists have different sizes.
Actual (actual) size: 2
@@ -236,7 +257,7 @@ not ok 31 - compareQListIntToArray(size mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 32 - compareQListIntToArray(value mismatch)
+not ok 34 - compareQListIntToArray(value mismatch)
---
type: QCOMPARE
message: Compared lists differ at index 2.
@@ -248,8 +269,8 @@ not ok 32 - compareQListIntToArray(value mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 33 - compareQListIntToInitializerList(match)
-not ok 34 - compareQListIntToInitializerList(size mismatch)
+ok 35 - compareQListIntToInitializerList(match)
+not ok 36 - compareQListIntToInitializerList(size mismatch)
---
# Compared lists have different sizes.
Actual (actual) size: 2
@@ -258,7 +279,7 @@ not ok 34 - compareQListIntToInitializerList(size mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 35 - compareQListIntToInitializerList(value mismatch)
+not ok 37 - compareQListIntToInitializerList(value mismatch)
---
type: QCOMPARE
message: Compared lists differ at index 2.
@@ -270,7 +291,7 @@ not ok 35 - compareQListIntToInitializerList(value mismatch)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 36 - compareQListDouble()
+not ok 38 - compareQListDouble()
---
type: QCOMPARE
message: Compared lists differ at index 0.
@@ -282,8 +303,9 @@ not ok 36 - compareQListDouble()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 37 - compareQColor(Qt::yellow vs "yellow")
-not ok 38 - compareQColor(Qt::yellow vs Qt::green)
+ok 39 - compareContainerToInitializerList()
+ok 40 - compareQColor(Qt::yellow vs "yellow")
+not ok 41 - compareQColor(Qt::yellow vs Qt::green)
---
type: QCOMPARE
message: Compared values are not the same
@@ -295,7 +317,7 @@ not ok 38 - compareQColor(Qt::yellow vs Qt::green)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 39 - compareQColor(0x88ff0000 vs 0xffff0000)
+not ok 42 - compareQColor(0x88ff0000 vs 0xffff0000)
---
type: QCOMPARE
message: Compared values are not the same
@@ -307,8 +329,8 @@ not ok 39 - compareQColor(0x88ff0000 vs 0xffff0000)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 40 - compareQPixmaps(both null)
-not ok 41 - compareQPixmaps(one null)
+ok 43 - compareQPixmaps(both null)
+not ok 44 - compareQPixmaps(one null)
---
type: QCOMPARE
message: Compared QPixmaps differ.
@@ -320,7 +342,7 @@ not ok 41 - compareQPixmaps(one null)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 42 - compareQPixmaps(other null)
+not ok 45 - compareQPixmaps(other null)
---
type: QCOMPARE
message: Compared QPixmaps differ.
@@ -332,8 +354,8 @@ not ok 42 - compareQPixmaps(other null)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 43 - compareQPixmaps(equal)
-not ok 44 - compareQPixmaps(different size)
+ok 46 - compareQPixmaps(equal)
+not ok 47 - compareQPixmaps(different size)
---
type: QCOMPARE
message: Compared QPixmaps differ in size.
@@ -345,14 +367,14 @@ not ok 44 - compareQPixmaps(different size)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 45 - compareQPixmaps(different pixels)
+not ok 48 - compareQPixmaps(different pixels)
---
# Compared values are not the same
at: tst_Cmptest::compareQPixmaps() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 46 - compareQPixmaps(different dpr)
+not ok 49 - compareQPixmaps(different dpr)
---
type: QCOMPARE
message: Compared QPixmaps differ in device pixel ratio.
@@ -364,8 +386,8 @@ not ok 46 - compareQPixmaps(different dpr)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 47 - compareQImages(both null)
-not ok 48 - compareQImages(one null)
+ok 50 - compareQImages(both null)
+not ok 51 - compareQImages(one null)
---
type: QCOMPARE
message: Compared QImages differ.
@@ -377,7 +399,7 @@ not ok 48 - compareQImages(one null)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 49 - compareQImages(other null)
+not ok 52 - compareQImages(other null)
---
type: QCOMPARE
message: Compared QImages differ.
@@ -389,8 +411,8 @@ not ok 49 - compareQImages(other null)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 50 - compareQImages(equal)
-not ok 51 - compareQImages(different size)
+ok 53 - compareQImages(equal)
+not ok 54 - compareQImages(different size)
---
type: QCOMPARE
message: Compared QImages differ in size.
@@ -402,7 +424,7 @@ not ok 51 - compareQImages(different size)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 52 - compareQImages(different format)
+not ok 55 - compareQImages(different format)
---
type: QCOMPARE
message: Compared QImages differ in format.
@@ -414,14 +436,14 @@ not ok 52 - compareQImages(different format)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 53 - compareQImages(different pixels)
+not ok 56 - compareQImages(different pixels)
---
# Compared values are not the same
at: tst_Cmptest::compareQImages() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 54 - compareQImages(different dpr)
+not ok 57 - compareQImages(different dpr)
---
type: QCOMPARE
message: Compared QImages differ in device pixel ratio.
@@ -433,8 +455,8 @@ not ok 54 - compareQImages(different dpr)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 55 - compareQRegion(equal-empty)
-not ok 56 - compareQRegion(1-empty)
+ok 58 - compareQRegion(equal-empty)
+not ok 59 - compareQRegion(1-empty)
---
type: QCOMPARE
message: Compared values are not the same
@@ -446,8 +468,8 @@ not ok 56 - compareQRegion(1-empty)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 57 - compareQRegion(equal)
-not ok 58 - compareQRegion(different lists)
+ok 60 - compareQRegion(equal)
+not ok 61 - compareQRegion(different lists)
---
type: QCOMPARE
message: Compared values are not the same
@@ -459,7 +481,7 @@ not ok 58 - compareQRegion(different lists)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 59 - compareQVector2D()
+not ok 62 - compareQVector2D()
---
type: QCOMPARE
message: Compared values are not the same
@@ -471,7 +493,7 @@ not ok 59 - compareQVector2D()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 60 - compareQVector3D()
+not ok 63 - compareQVector3D()
---
type: QCOMPARE
message: Compared values are not the same
@@ -483,7 +505,7 @@ not ok 60 - compareQVector3D()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 61 - compareQVector4D()
+not ok 64 - compareQVector4D()
---
type: QCOMPARE
message: Compared values are not the same
@@ -495,7 +517,48 @@ not ok 61 - compareQVector4D()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 62 - verify()
+not ok 65 - compareQPalettes(all roles are different)
+ ---
+ type: QCOMPARE
+ message: Compared values are not the same
+ wanted: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]") (expectedPalette)
+ found: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]") (actualPalette)
+ expected: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]") (expectedPalette)
+ actual: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]") (actualPalette)
+ at: tst_Cmptest::compareQPalettes() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+ line: 0
+ ...
+not ok 66 - compareQPalettes(one role is different)
+ ---
+ type: QCOMPARE
+ message: Compared values are not the same
+ wanted: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]") (expectedPalette)
+ found: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]") (actualPalette)
+ expected: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]") (expectedPalette)
+ actual: QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]") (actualPalette)
+ at: tst_Cmptest::compareQPalettes() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+ line: 0
+ ...
+ok 67 - compareQPalettes(all roles are the same)
+not ok 68 - tryCompare()
+ ---
+ type: QCOMPARE
+ message: Compared values are not the same
+ wanted: DeferredFlag(false) (DeferredFlag())
+ found: DeferredFlag(true) (c)
+ expected: DeferredFlag(false) (DeferredFlag())
+ actual: DeferredFlag(true) (c)
+ at: tst_Cmptest::tryCompare() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
+ line: 0
+ extensions:
+ messages:
+ - severity: info
+ message: Should now time out and fail
+ ...
+not ok 69 - verify()
---
type: QVERIFY
message: Verification failed
@@ -507,10 +570,10 @@ not ok 62 - verify()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 63 - verify2()
+not ok 70 - verify2()
---
type: QVERIFY
- message: 42
+ message: 42 >= 2 (as expected, in fact)
wanted: true (opaqueFunc() < 2)
found: false (opaqueFunc() < 2)
expected: true (opaqueFunc() < 2)
@@ -519,33 +582,37 @@ not ok 63 - verify2()
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-not ok 64 - tryVerify()
+not ok 71 - tryVerify()
---
type: QVERIFY
message: Verification failed
- wanted: true (opaqueFunc() < 2)
- found: false (opaqueFunc() < 2)
- expected: true (opaqueFunc() < 2)
- actual: false (opaqueFunc() < 2)
+ wanted: true (!c)
+ found: false (!c)
+ expected: true (!c)
+ actual: false (!c)
at: tst_Cmptest::tryVerify() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
+ extensions:
+ messages:
+ - severity: info
+ message: Should now time out and fail
...
-not ok 65 - tryVerify2()
+not ok 72 - tryVerify2()
---
type: QVERIFY
- message: 42
- wanted: true (opaqueFunc() < 2)
- found: false (opaqueFunc() < 2)
- expected: true (opaqueFunc() < 2)
- actual: false (opaqueFunc() < 2)
+ message: Should time out and fail
+ wanted: true (!c)
+ found: false (!c)
+ expected: true (!c)
+ actual: false (!c)
at: tst_Cmptest::tryVerify2() (qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp:0)
file: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp
line: 0
...
-ok 66 - verifyExplicitOperatorBool()
-ok 67 - cleanupTestCase()
-1..67
-# tests 67
-# pass 21
-# fail 46
+ok 73 - verifyExplicitOperatorBool()
+ok 74 - cleanupTestCase()
+1..74
+# tests 74
+# pass 23
+# fail 51
diff --git a/tests/auto/testlib/selftests/expected_cmptest.teamcity b/tests/auto/testlib/selftests/expected_cmptest.teamcity
index 6bddfef86f..b5ff675465 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.teamcity
+++ b/tests/auto/testlib/selftests/expected_cmptest.teamcity
@@ -46,6 +46,12 @@
##teamcity[testStarted name='compare_tostring(both non-null user type)' flowId='tst_Cmptest']
##teamcity[testFailed name='compare_tostring(both non-null user type)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (actual) : QVariant(PhonyClass,<value not representable as string>)|n Expected (expected): QVariant(PhonyClass,<value not representable as string>)' flowId='tst_Cmptest']
##teamcity[testFinished name='compare_tostring(both non-null user type)' flowId='tst_Cmptest']
+##teamcity[testStarted name='compare_unknown()' flowId='tst_Cmptest']
+##teamcity[testFailed name='compare_unknown()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual : a|n Expected : b' flowId='tst_Cmptest']
+##teamcity[testFinished name='compare_unknown()' flowId='tst_Cmptest']
+##teamcity[testStarted name='compare_textFromDebug()' flowId='tst_Cmptest']
+##teamcity[testFailed name='compare_textFromDebug()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (a): QDebug stream: 0|n Expected (b): QDebug stream: 1' flowId='tst_Cmptest']
+##teamcity[testFinished name='compare_textFromDebug()' flowId='tst_Cmptest']
##teamcity[testStarted name='compareQObjects()' flowId='tst_Cmptest']
##teamcity[testFailed name='compareQObjects()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared QObject pointers are not the same|n Actual (&object1): QObject/"object1"|n Expected (&object2): QObject/"object2"' flowId='tst_Cmptest']
##teamcity[testFinished name='compareQObjects()' flowId='tst_Cmptest']
@@ -95,6 +101,8 @@
##teamcity[testStarted name='compareQListDouble()' flowId='tst_Cmptest']
##teamcity[testFailed name='compareQListDouble()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared lists differ at index 0.|n Actual (double1): 1.5|n Expected (double2): 1' flowId='tst_Cmptest']
##teamcity[testFinished name='compareQListDouble()' flowId='tst_Cmptest']
+##teamcity[testStarted name='compareContainerToInitializerList()' flowId='tst_Cmptest']
+##teamcity[testFinished name='compareContainerToInitializerList()' flowId='tst_Cmptest']
##teamcity[testStarted name='compareQColor(Qt::yellow vs "yellow")' flowId='tst_Cmptest']
##teamcity[testFinished name='compareQColor(Qt::yellow vs "yellow")' flowId='tst_Cmptest']
##teamcity[testStarted name='compareQColor(Qt::yellow vs Qt::green)' flowId='tst_Cmptest']
@@ -163,17 +171,30 @@
##teamcity[testStarted name='compareQVector4D()' flowId='tst_Cmptest']
##teamcity[testFailed name='compareQVector4D()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (v4a): QVector4D(1, 2, 3, 4)|n Expected (v4b): QVector4D(1, 3, 3, 4)' flowId='tst_Cmptest']
##teamcity[testFinished name='compareQVector4D()' flowId='tst_Cmptest']
+##teamcity[testStarted name='compareQPalettes(all roles are different)' flowId='tst_Cmptest']
+##teamcity[testFailed name='compareQPalettes(all roles are different)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Button:|[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001|],Light:|[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002|],Midlight:|[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003|],Dark:|[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004|],Mid:|[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005|],Text:|[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006|],BrightText:|[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007|],ButtonText:|[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008|],Base:|[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009|],Window:|[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a|],Shadow:|[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b|],Highlight:|[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c|],HighlightedText:|[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d|],Link:|[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e|],LinkVisited:|[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f|],AlternateBase:|[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010|],ToolTipBase:|[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012|],ToolTipText:|[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013|],PlaceholderText:|[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014|],Accent:|[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015|]")|n Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Button:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Light:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Midlight:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Dark:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Mid:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Text:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],BrightText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],ButtonText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Base:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Window:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Shadow:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Highlight:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],HighlightedText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Link:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],LinkVisited:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],AlternateBase:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],ToolTipBase:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],ToolTipText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],PlaceholderText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Accent:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|]")' flowId='tst_Cmptest']
+##teamcity[testFinished name='compareQPalettes(all roles are different)' flowId='tst_Cmptest']
+##teamcity[testStarted name='compareQPalettes(one role is different)' flowId='tst_Cmptest']
+##teamcity[testFailed name='compareQPalettes(one role is different)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Button:|[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001|],Light:|[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002|],Midlight:|[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003|],Dark:|[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004|],Mid:|[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005|],Text:|[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006|],BrightText:|[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007|],ButtonText:|[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008|],Base:|[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009|],Window:|[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a|],Shadow:|[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b|],Highlight:|[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c|],HighlightedText:|[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d|],Link:|[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e|],LinkVisited:|[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f|],AlternateBase:|[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010|],ToolTipBase:|[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012|],ToolTipText:|[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013|],PlaceholderText:|[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014|],Accent:|[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015|]")|n Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|],Button:|[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001|],Light:|[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002|],Midlight:|[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003|],Dark:|[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004|],Mid:|[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005|],Text:|[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006|],BrightText:|[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007|],ButtonText:|[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008|],Base:|[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009|],Window:|[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a|],Shadow:|[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b|],Highlight:|[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c|],HighlightedText:|[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d|],Link:|[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e|],LinkVisited:|[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f|],AlternateBase:|[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010|],ToolTipBase:|[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012|],ToolTipText:|[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013|],PlaceholderText:|[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014|],Accent:|[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000|]")' flowId='tst_Cmptest']
+##teamcity[testFinished name='compareQPalettes(one role is different)' flowId='tst_Cmptest']
+##teamcity[testStarted name='compareQPalettes(all roles are the same)' flowId='tst_Cmptest']
+##teamcity[testFinished name='compareQPalettes(all roles are the same)' flowId='tst_Cmptest']
+##teamcity[testStarted name='tryCompare()' flowId='tst_Cmptest']
+##teamcity[testFailed name='tryCompare()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='Compared values are not the same|n Actual (c) : DeferredFlag(true)|n Expected (DeferredFlag()): DeferredFlag(false)' flowId='tst_Cmptest']
+##teamcity[testStdOut name='tryCompare()' out='QINFO: Should now time out and fail' flowId='tst_Cmptest']
+##teamcity[testFinished name='tryCompare()' flowId='tst_Cmptest']
##teamcity[testStarted name='verify()' flowId='tst_Cmptest']
##teamcity[testFailed name='verify()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'opaqueFunc() < 2|' returned FALSE. ()' flowId='tst_Cmptest']
##teamcity[testFinished name='verify()' flowId='tst_Cmptest']
##teamcity[testStarted name='verify2()' flowId='tst_Cmptest']
-##teamcity[testFailed name='verify2()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'opaqueFunc() < 2|' returned FALSE. (42)' flowId='tst_Cmptest']
+##teamcity[testFailed name='verify2()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'opaqueFunc() < 2|' returned FALSE. (42 >= 2 (as expected, in fact))' flowId='tst_Cmptest']
##teamcity[testFinished name='verify2()' flowId='tst_Cmptest']
##teamcity[testStarted name='tryVerify()' flowId='tst_Cmptest']
-##teamcity[testFailed name='tryVerify()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'opaqueFunc() < 2|' returned FALSE. ()' flowId='tst_Cmptest']
+##teamcity[testFailed name='tryVerify()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'!c|' returned FALSE. ()' flowId='tst_Cmptest']
+##teamcity[testStdOut name='tryVerify()' out='QINFO: Should now time out and fail' flowId='tst_Cmptest']
##teamcity[testFinished name='tryVerify()' flowId='tst_Cmptest']
##teamcity[testStarted name='tryVerify2()' flowId='tst_Cmptest']
-##teamcity[testFailed name='tryVerify2()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'opaqueFunc() < 2|' returned FALSE. (42)' flowId='tst_Cmptest']
+##teamcity[testFailed name='tryVerify2()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)|]' details='|'!c|' returned FALSE. (Should time out and fail)' flowId='tst_Cmptest']
##teamcity[testFinished name='tryVerify2()' flowId='tst_Cmptest']
##teamcity[testStarted name='verifyExplicitOperatorBool()' flowId='tst_Cmptest']
##teamcity[testFinished name='verifyExplicitOperatorBool()' flowId='tst_Cmptest']
diff --git a/tests/auto/testlib/selftests/expected_cmptest.txt b/tests/auto/testlib/selftests/expected_cmptest.txt
index 0fe70cdef6..ff81a46397 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.txt
+++ b/tests/auto/testlib/selftests/expected_cmptest.txt
@@ -51,6 +51,14 @@ FAIL! : tst_Cmptest::compare_tostring(both non-null user type) Compared values
Actual (actual) : QVariant(PhonyClass,<value not representable as string>)
Expected (expected): QVariant(PhonyClass,<value not representable as string>)
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+FAIL! : tst_Cmptest::compare_unknown() Compared values are not the same
+ Actual : a
+ Expected : b
+ Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+FAIL! : tst_Cmptest::compare_textFromDebug() Compared values are not the same
+ Actual (a): QDebug stream: 0
+ Expected (b): QDebug stream: 1
+ Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
FAIL! : tst_Cmptest::compareQObjects() Compared QObject pointers are not the same
Actual (&object1): QObject/"object1"
Expected (&object2): QObject/"object2"
@@ -108,6 +116,7 @@ FAIL! : tst_Cmptest::compareQListDouble() Compared lists differ at index 0.
Actual (double1): 1.5
Expected (double2): 1
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+PASS : tst_Cmptest::compareContainerToInitializerList()
PASS : tst_Cmptest::compareQColor(Qt::yellow vs "yellow")
FAIL! : tst_Cmptest::compareQColor(Qt::yellow vs Qt::green) Compared values are not the same
Actual (colorA): #ffffff00
@@ -183,15 +192,30 @@ FAIL! : tst_Cmptest::compareQVector4D() Compared values are not the same
Actual (v4a): QVector4D(1, 2, 3, 4)
Expected (v4b): QVector4D(1, 3, 3, 4)
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+FAIL! : tst_Cmptest::compareQPalettes(all roles are different) Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")
+ Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+FAIL! : tst_Cmptest::compareQPalettes(one role is different) Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")
+ Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
+PASS : tst_Cmptest::compareQPalettes(all roles are the same)
+QINFO : tst_Cmptest::tryCompare() Should now time out and fail
+FAIL! : tst_Cmptest::tryCompare() Compared values are not the same
+ Actual (c) : DeferredFlag(true)
+ Expected (DeferredFlag()): DeferredFlag(false)
+ Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
FAIL! : tst_Cmptest::verify() 'opaqueFunc() < 2' returned FALSE. ()
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
-FAIL! : tst_Cmptest::verify2() 'opaqueFunc() < 2' returned FALSE. (42)
+FAIL! : tst_Cmptest::verify2() 'opaqueFunc() < 2' returned FALSE. (42 >= 2 (as expected, in fact))
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
-FAIL! : tst_Cmptest::tryVerify() 'opaqueFunc() < 2' returned FALSE. ()
+QINFO : tst_Cmptest::tryVerify() Should now time out and fail
+FAIL! : tst_Cmptest::tryVerify() '!c' returned FALSE. ()
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
-FAIL! : tst_Cmptest::tryVerify2() 'opaqueFunc() < 2' returned FALSE. (42)
+FAIL! : tst_Cmptest::tryVerify2() '!c' returned FALSE. (Should time out and fail)
Loc: [qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp(0)]
PASS : tst_Cmptest::verifyExplicitOperatorBool()
PASS : tst_Cmptest::cleanupTestCase()
-Totals: 21 passed, 46 failed, 0 skipped, 0 blacklisted, 0ms
+Totals: 23 passed, 51 failed, 0 skipped, 0 blacklisted, 0ms
********* Finished testing of tst_Cmptest *********
diff --git a/tests/auto/testlib/selftests/expected_cmptest.xml b/tests/auto/testlib/selftests/expected_cmptest.xml
index 509dca88b7..df4d8b28be 100644
--- a/tests/auto/testlib/selftests/expected_cmptest.xml
+++ b/tests/auto/testlib/selftests/expected_cmptest.xml
@@ -111,6 +111,22 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compare_unknown">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual : a
+ Expected : b]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compare_textFromDebug">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual (a): QDebug stream: 0
+ Expected (b): QDebug stream: 1]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="compareQObjects">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
<Description><![CDATA[Compared QObject pointers are not the same
@@ -220,6 +236,10 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compareContainerToInitializerList">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="compareQColor">
<Incident type="pass" file="" line="0">
<DataTag><![CDATA[Qt::yellow vs "yellow"]]></DataTag>
@@ -363,6 +383,35 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="compareQPalettes">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <DataTag><![CDATA[all roles are different]]></DataTag>
+ <Description><![CDATA[Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Light:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Midlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Dark:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Mid:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Text:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],BrightText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ButtonText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Base:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Window:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Shadow:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Highlight:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],HighlightedText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Link:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],LinkVisited:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],AlternateBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipBase:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],ToolTipText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],PlaceholderText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <DataTag><![CDATA[one role is different]]></DataTag>
+ <Description><![CDATA[Compared values are not the same
+ Actual (actualPalette) : QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000015,Disabled:#ff000015,Inactive:#ff000015]")
+ Expected (expectedPalette): QPalette(resolve=0x7fffffffffffffff,"WindowText:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000],Button:[Active:#ff000001,Disabled:#ff000001,Inactive:#ff000001],Light:[Active:#ff000002,Disabled:#ff000002,Inactive:#ff000002],Midlight:[Active:#ff000003,Disabled:#ff000003,Inactive:#ff000003],Dark:[Active:#ff000004,Disabled:#ff000004,Inactive:#ff000004],Mid:[Active:#ff000005,Disabled:#ff000005,Inactive:#ff000005],Text:[Active:#ff000006,Disabled:#ff000006,Inactive:#ff000006],BrightText:[Active:#ff000007,Disabled:#ff000007,Inactive:#ff000007],ButtonText:[Active:#ff000008,Disabled:#ff000008,Inactive:#ff000008],Base:[Active:#ff000009,Disabled:#ff000009,Inactive:#ff000009],Window:[Active:#ff00000a,Disabled:#ff00000a,Inactive:#ff00000a],Shadow:[Active:#ff00000b,Disabled:#ff00000b,Inactive:#ff00000b],Highlight:[Active:#ff00000c,Disabled:#ff00000c,Inactive:#ff00000c],HighlightedText:[Active:#ff00000d,Disabled:#ff00000d,Inactive:#ff00000d],Link:[Active:#ff00000e,Disabled:#ff00000e,Inactive:#ff00000e],LinkVisited:[Active:#ff00000f,Disabled:#ff00000f,Inactive:#ff00000f],AlternateBase:[Active:#ff000010,Disabled:#ff000010,Inactive:#ff000010],ToolTipBase:[Active:#ff000012,Disabled:#ff000012,Inactive:#ff000012],ToolTipText:[Active:#ff000013,Disabled:#ff000013,Inactive:#ff000013],PlaceholderText:[Active:#ff000014,Disabled:#ff000014,Inactive:#ff000014],Accent:[Active:#ff000000,Disabled:#ff000000,Inactive:#ff000000]")]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[all roles are the same]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="tryCompare">
+ <Message type="qinfo" file="" line="0">
+ <Description><![CDATA[Should now time out and fail]]></Description>
+ </Message>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
+ <Description><![CDATA[Compared values are not the same
+ Actual (c) : DeferredFlag(true)
+ Expected (DeferredFlag()): DeferredFlag(false)]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="verify">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
<Description><![CDATA['opaqueFunc() < 2' returned FALSE. ()]]></Description>
@@ -371,19 +420,22 @@
</TestFunction>
<TestFunction name="verify2">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42)]]></Description>
+ <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42 >= 2 (as expected, in fact))]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="tryVerify">
+ <Message type="qinfo" file="" line="0">
+ <Description><![CDATA[Should now time out and fail]]></Description>
+ </Message>
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. ()]]></Description>
+ <Description><![CDATA['!c' returned FALSE. ()]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="tryVerify2">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/cmptest/tst_cmptest.cpp" line="0">
- <Description><![CDATA['opaqueFunc() < 2' returned FALSE. (42)]]></Description>
+ <Description><![CDATA['!c' returned FALSE. (Should time out and fail)]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_crashes_3.txt b/tests/auto/testlib/selftests/expected_crashes_3.txt
deleted file mode 100644
index c32ea53675..0000000000
--- a/tests/auto/testlib/selftests/expected_crashes_3.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-********* Start testing of tst_Crashes *********
-Config: Using QtTest library @INSERT_QT_VERSION_HERE@, Qt @INSERT_QT_VERSION_HERE@
-PASS : tst_Crashes::initTestCase()
-QFATAL : tst_Crashes::crash() Received signal 11
- Function time: ms Total time: ms
-FAIL! : tst_Crashes::crash() Received a fatal error.
-Totals: 1 passed, 1 failed, 0 skipped, 0 blacklisted
-********* Finished testing of tst_Crashes *********
diff --git a/tests/auto/testlib/selftests/expected_crashes_4.txt b/tests/auto/testlib/selftests/expected_crashes_4.txt
deleted file mode 100644
index 90ae91b8ba..0000000000
--- a/tests/auto/testlib/selftests/expected_crashes_4.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-********* Start testing of tst_Crashes *********
-Config: Using QtTest library @INSERT_QT_VERSION_HERE@, Qt @INSERT_QT_VERSION_HERE@
-PASS : tst_Crashes::initTestCase()
-QFATAL : tst_Crashes::crash() Received signal 11
- Function time: ms Total time: ms
-FAIL! : tst_Crashes::crash() Received a fatal error.
diff --git a/tests/auto/testlib/selftests/expected_crashes_5.txt b/tests/auto/testlib/selftests/expected_crashes_5.txt
deleted file mode 100644
index 088b9c5324..0000000000
--- a/tests/auto/testlib/selftests/expected_crashes_5.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-********* Start testing of tst_Crashes *********
-Config: Using QtTest library @INSERT_QT_VERSION_HERE@, Qt @INSERT_QT_VERSION_HERE@
-PASS : tst_Crashes::initTestCase()
-QFATAL : tst_Crashes::crash() Received signal 11
- Function time: ms Total time: ms
diff --git a/tests/auto/testlib/selftests/expected_eventloop.junitxml b/tests/auto/testlib/selftests/expected_eventloop.junitxml
new file mode 100644
index 0000000000..566bc1605e
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.junitxml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite name="tst_EventLoop" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="5" failures="1" errors="0" skipped="1" time="@TEST_DURATION@">
+ <properties>
+ <property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtBuild" value=""/>
+ </properties>
+ <testcase name="initTestCase" classname="tst_EventLoop" time="@TEST_DURATION@"/>
+ <testcase name="fail" classname="tst_EventLoop" time="@TEST_DURATION@">
+ <failure type="fail" message="Failing test should still clean up"/>
+ </testcase>
+ <testcase name="skip" classname="tst_EventLoop" time="@TEST_DURATION@">
+ <skipped message="Skipping test should still clean up"/>
+ </testcase>
+ <testcase name="pass" classname="tst_EventLoop" time="@TEST_DURATION@"/>
+ <testcase name="cleanupTestCase" classname="tst_EventLoop" time="@TEST_DURATION@"/>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_eventloop.lightxml b/tests/auto/testlib/selftests/expected_eventloop.lightxml
new file mode 100644
index 0000000000..40880fde01
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.lightxml
@@ -0,0 +1,30 @@
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="fail">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp" line="0">
+ <Description><![CDATA[Failing test should still clean up]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="skip">
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp" line="0">
+ <Description><![CDATA[Skipping test should still clean up]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="pass">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_eventloop.tap b/tests/auto/testlib/selftests/expected_eventloop.tap
new file mode 100644
index 0000000000..496a6e636a
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.tap
@@ -0,0 +1,17 @@
+TAP version 13
+# tst_EventLoop
+ok 1 - initTestCase()
+not ok 2 - fail()
+ ---
+ # Failing test should still clean up
+ at: tst_EventLoop::fail() (qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp
+ line: 0
+ ...
+ok 3 - skip() # SKIP Skipping test should still clean up
+ok 4 - pass()
+ok 5 - cleanupTestCase()
+1..5
+# tests 5
+# pass 3
+# fail 1
diff --git a/tests/auto/testlib/selftests/expected_eventloop.teamcity b/tests/auto/testlib/selftests/expected_eventloop.teamcity
new file mode 100644
index 0000000000..a293a20135
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.teamcity
@@ -0,0 +1,14 @@
+##teamcity[testSuiteStarted name='tst_EventLoop' flowId='tst_EventLoop']
+##teamcity[testStarted name='initTestCase()' flowId='tst_EventLoop']
+##teamcity[testFinished name='initTestCase()' flowId='tst_EventLoop']
+##teamcity[testStarted name='fail()' flowId='tst_EventLoop']
+##teamcity[testFailed name='fail()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp(0)|]' details='Failing test should still clean up' flowId='tst_EventLoop']
+##teamcity[testFinished name='fail()' flowId='tst_EventLoop']
+##teamcity[testStarted name='skip()' flowId='tst_EventLoop']
+##teamcity[testIgnored name='skip()' message='Skipping test should still clean up |[Loc: qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp(0)|]' flowId='tst_EventLoop']
+##teamcity[testFinished name='skip()' flowId='tst_EventLoop']
+##teamcity[testStarted name='pass()' flowId='tst_EventLoop']
+##teamcity[testFinished name='pass()' flowId='tst_EventLoop']
+##teamcity[testStarted name='cleanupTestCase()' flowId='tst_EventLoop']
+##teamcity[testFinished name='cleanupTestCase()' flowId='tst_EventLoop']
+##teamcity[testSuiteFinished name='tst_EventLoop' flowId='tst_EventLoop']
diff --git a/tests/auto/testlib/selftests/expected_eventloop.txt b/tests/auto/testlib/selftests/expected_eventloop.txt
new file mode 100644
index 0000000000..548ef393f6
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.txt
@@ -0,0 +1,11 @@
+********* Start testing of tst_EventLoop *********
+Config: Using QtTest library
+PASS : tst_EventLoop::initTestCase()
+FAIL! : tst_EventLoop::fail() Failing test should still clean up
+ Loc: [qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp(0)]
+SKIP : tst_EventLoop::skip() Skipping test should still clean up
+ Loc: [qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp(0)]
+PASS : tst_EventLoop::pass()
+PASS : tst_EventLoop::cleanupTestCase()
+Totals: 3 passed, 1 failed, 1 skipped, 0 blacklisted, 0ms
+********* Finished testing of tst_EventLoop *********
diff --git a/tests/auto/testlib/selftests/expected_eventloop.xml b/tests/auto/testlib/selftests/expected_eventloop.xml
new file mode 100644
index 0000000000..f9d9475666
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_eventloop.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestCase name="tst_EventLoop">
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="fail">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp" line="0">
+ <Description><![CDATA[Failing test should still clean up]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="skip">
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/eventloop/tst_eventloop.cpp" line="0">
+ <Description><![CDATA[Skipping test should still clean up]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="pass">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.junitxml b/tests/auto/testlib/selftests/expected_extendedcompare.junitxml
new file mode 100644
index 0000000000..b840773852
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.junitxml
@@ -0,0 +1,526 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite name="tst_ExtendedCompare" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="148" failures="74" errors="0" skipped="0" time="@TEST_DURATION@">
+ <properties>
+ <property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtBuild" value=""/>
+ </properties>
+ <testcase name="initTestCase" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareInts(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="compareInts(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1.1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1.1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1.1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareFloats(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareFloats(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0.1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0.1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0.1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareDoubles(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0.1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareDoubles(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 2
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="comparePointers(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 2]]>
+ </failure>
+ </testcase>
+ <testcase name="comparePointers(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareToNullptr(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareToNullptr(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 1
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 0]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareUnregistereEnum(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): 0
+ Baseline (rhs): 1]]>
+ </failure>
+ </testcase>
+ <testcase name="compareUnregistereEnum(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Monday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareRegistereEnum(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]>
+ </failure>
+ </testcase>
+ <testcase name="compareRegistereEnum(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(EQ:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(EQ:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(EQ:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(NE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be different from the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(NE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(NE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(LT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(LT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(LT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(LE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(LE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(LE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(GT:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(GT:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(GT:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(GE:left == right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="compareCustomTypes(GE:left &lt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be greater than or equal to the baseline, but is not">
+ <![CDATA[ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]>
+ </failure>
+ </testcase>
+ <testcase name="compareCustomTypes(GE:left &gt; right)" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+ <testcase name="checkComparisonForTemporaryObjects" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be equal to the baseline, but is not">
+ <![CDATA[ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]>
+ </failure>
+ </testcase>
+ <testcase name="checkComparisonWithTimeout" classname="tst_ExtendedCompare" time="@TEST_DURATION@">
+ <failure type="fail" message="The computed value is expected to be less than the baseline, but is not">
+ <![CDATA[ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(0)): ClassWithDeferredSetter(0)]]>
+ </failure>
+ </testcase>
+ <testcase name="cleanupTestCase" classname="tst_ExtendedCompare" time="@TEST_DURATION@"/>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.lightxml b/tests/auto/testlib/selftests/expected_extendedcompare.lightxml
new file mode 100644
index 0000000000..fd6e486939
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.lightxml
@@ -0,0 +1,746 @@
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareInts">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareFloats">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareDoubles">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="comparePointers">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareToNullptr">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareUnregistereEnum">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareRegistereEnum">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareCustomTypes">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="checkComparisonForTemporaryObjects">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="checkComparisonWithTimeout">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(0)): ClassWithDeferredSetter(0)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(-1)): ClassWithDeferredSetter(-1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(1)): ClassWithDeferredSetter(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.tap b/tests/auto/testlib/selftests/expected_extendedcompare.tap
new file mode 100644
index 0000000000..25d30c3e08
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.tap
@@ -0,0 +1,1022 @@
+TAP version 13
+# tst_ExtendedCompare
+ok 1 - initTestCase()
+ok 2 - compareInts(EQ:left == right)
+not ok 3 - compareInts(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 2 (rhs)
+ found: 1 (lhs)
+ expected: == 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 4 - compareInts(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1 (rhs)
+ found: 2 (lhs)
+ expected: == 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 5 - compareInts(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != 1 (rhs)
+ found: 1 (lhs)
+ expected: != 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 6 - compareInts(NE:left < right)
+ok 7 - compareInts(NE:left > right)
+not ok 8 - compareInts(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 1 (lhs)
+ expected: < 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 9 - compareInts(LT:left < right)
+not ok 10 - compareInts(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 2 (lhs)
+ expected: < 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 11 - compareInts(LE:left == right)
+ok 12 - compareInts(LE:left < right)
+not ok 13 - compareInts(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= 1 (rhs)
+ found: 2 (lhs)
+ expected: <= 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 14 - compareInts(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1 (rhs)
+ found: 1 (lhs)
+ expected: > 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 15 - compareInts(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 2 (rhs)
+ found: 1 (lhs)
+ expected: > 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 16 - compareInts(GT:left > right)
+ok 17 - compareInts(GE:left == right)
+not ok 18 - compareInts(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 2 (rhs)
+ found: 1 (lhs)
+ expected: >= 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareInts() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 19 - compareInts(GE:left > right)
+ok 20 - compareFloats(EQ:left == right)
+not ok 21 - compareFloats(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1.1 (rhs)
+ found: 1 (lhs)
+ expected: == 1.1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 22 - compareFloats(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1 (rhs)
+ found: 1.1 (lhs)
+ expected: == 1 (rhs)
+ actual: 1.1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 23 - compareFloats(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != 1 (rhs)
+ found: 1 (lhs)
+ expected: != 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 24 - compareFloats(NE:left < right)
+ok 25 - compareFloats(NE:left > right)
+not ok 26 - compareFloats(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 1 (lhs)
+ expected: < 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 27 - compareFloats(LT:left < right)
+not ok 28 - compareFloats(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 1.1 (lhs)
+ expected: < 1 (rhs)
+ actual: 1.1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 29 - compareFloats(LE:left == right)
+ok 30 - compareFloats(LE:left < right)
+not ok 31 - compareFloats(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= 1 (rhs)
+ found: 1.1 (lhs)
+ expected: <= 1 (rhs)
+ actual: 1.1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 32 - compareFloats(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1 (rhs)
+ found: 1 (lhs)
+ expected: > 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 33 - compareFloats(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1.1 (rhs)
+ found: 1 (lhs)
+ expected: > 1.1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 34 - compareFloats(GT:left > right)
+ok 35 - compareFloats(GE:left == right)
+not ok 36 - compareFloats(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 1.1 (rhs)
+ found: 1 (lhs)
+ expected: >= 1.1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareFloats() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 37 - compareFloats(GE:left > right)
+ok 38 - compareDoubles(EQ:left == right)
+not ok 39 - compareDoubles(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 0.1 (rhs)
+ found: 0 (lhs)
+ expected: == 0.1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 40 - compareDoubles(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 0 (rhs)
+ found: 0.1 (lhs)
+ expected: == 0 (rhs)
+ actual: 0.1 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 41 - compareDoubles(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != 0 (rhs)
+ found: 0 (lhs)
+ expected: != 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 42 - compareDoubles(NE:left < right)
+ok 43 - compareDoubles(NE:left > right)
+not ok 44 - compareDoubles(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 0 (rhs)
+ found: 0 (lhs)
+ expected: < 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 45 - compareDoubles(LT:left < right)
+not ok 46 - compareDoubles(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 0 (rhs)
+ found: 0.1 (lhs)
+ expected: < 0 (rhs)
+ actual: 0.1 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 47 - compareDoubles(LE:left == right)
+ok 48 - compareDoubles(LE:left < right)
+not ok 49 - compareDoubles(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= 0 (rhs)
+ found: 0.1 (lhs)
+ expected: <= 0 (rhs)
+ actual: 0.1 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 50 - compareDoubles(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 0 (rhs)
+ found: 0 (lhs)
+ expected: > 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 51 - compareDoubles(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 0.1 (rhs)
+ found: 0 (lhs)
+ expected: > 0.1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 52 - compareDoubles(GT:left > right)
+ok 53 - compareDoubles(GE:left == right)
+not ok 54 - compareDoubles(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 0.1 (rhs)
+ found: 0 (lhs)
+ expected: >= 0.1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareDoubles() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 55 - compareDoubles(GE:left > right)
+ok 56 - comparePointers(EQ:left == right)
+not ok 57 - comparePointers(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 2 (rhs)
+ found: 1 (lhs)
+ expected: == 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 58 - comparePointers(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1 (rhs)
+ found: 2 (lhs)
+ expected: == 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 59 - comparePointers(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != 1 (rhs)
+ found: 1 (lhs)
+ expected: != 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 60 - comparePointers(NE:left < right)
+ok 61 - comparePointers(NE:left > right)
+not ok 62 - comparePointers(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 1 (lhs)
+ expected: < 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 63 - comparePointers(LT:left < right)
+not ok 64 - comparePointers(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 1 (rhs)
+ found: 2 (lhs)
+ expected: < 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 65 - comparePointers(LE:left == right)
+ok 66 - comparePointers(LE:left < right)
+not ok 67 - comparePointers(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= 1 (rhs)
+ found: 2 (lhs)
+ expected: <= 1 (rhs)
+ actual: 2 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 68 - comparePointers(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1 (rhs)
+ found: 1 (lhs)
+ expected: > 1 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 69 - comparePointers(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 2 (rhs)
+ found: 1 (lhs)
+ expected: > 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 70 - comparePointers(GT:left > right)
+ok 71 - comparePointers(GE:left == right)
+not ok 72 - comparePointers(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 2 (rhs)
+ found: 1 (lhs)
+ expected: >= 2 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::comparePointers() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 73 - comparePointers(GE:left > right)
+ok 74 - compareToNullptr(EQ:left == right)
+not ok 75 - compareToNullptr(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1 (rhs)
+ found: "nullptr" (lhs)
+ expected: == 1 (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 76 - compareToNullptr(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == "nullptr" (rhs)
+ found: 1 (lhs)
+ expected: == "nullptr" (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 77 - compareToNullptr(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != "nullptr" (rhs)
+ found: "nullptr" (lhs)
+ expected: != "nullptr" (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 78 - compareToNullptr(NE:left < right)
+ok 79 - compareToNullptr(NE:left > right)
+not ok 80 - compareToNullptr(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < "nullptr" (rhs)
+ found: "nullptr" (lhs)
+ expected: < "nullptr" (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 81 - compareToNullptr(LT:left < right)
+not ok 82 - compareToNullptr(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < "nullptr" (rhs)
+ found: 1 (lhs)
+ expected: < "nullptr" (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 83 - compareToNullptr(LE:left == right)
+ok 84 - compareToNullptr(LE:left < right)
+not ok 85 - compareToNullptr(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= "nullptr" (rhs)
+ found: 1 (lhs)
+ expected: <= "nullptr" (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 86 - compareToNullptr(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > "nullptr" (rhs)
+ found: "nullptr" (lhs)
+ expected: > "nullptr" (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 87 - compareToNullptr(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1 (rhs)
+ found: "nullptr" (lhs)
+ expected: > 1 (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 88 - compareToNullptr(GT:left > right)
+ok 89 - compareToNullptr(GE:left == right)
+not ok 90 - compareToNullptr(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 1 (rhs)
+ found: "nullptr" (lhs)
+ expected: >= 1 (rhs)
+ actual: "nullptr" (lhs)
+ at: tst_ExtendedCompare::compareToNullptr() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 91 - compareToNullptr(GE:left > right)
+ok 92 - compareUnregistereEnum(EQ:left == right)
+not ok 93 - compareUnregistereEnum(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 1 (rhs)
+ found: 0 (lhs)
+ expected: == 1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 94 - compareUnregistereEnum(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == 0 (rhs)
+ found: 1 (lhs)
+ expected: == 0 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 95 - compareUnregistereEnum(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != 0 (rhs)
+ found: 0 (lhs)
+ expected: != 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 96 - compareUnregistereEnum(NE:left < right)
+ok 97 - compareUnregistereEnum(NE:left > right)
+not ok 98 - compareUnregistereEnum(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 0 (rhs)
+ found: 0 (lhs)
+ expected: < 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 99 - compareUnregistereEnum(LT:left < right)
+not ok 100 - compareUnregistereEnum(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < 0 (rhs)
+ found: 1 (lhs)
+ expected: < 0 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 101 - compareUnregistereEnum(LE:left == right)
+ok 102 - compareUnregistereEnum(LE:left < right)
+not ok 103 - compareUnregistereEnum(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= 0 (rhs)
+ found: 1 (lhs)
+ expected: <= 0 (rhs)
+ actual: 1 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 104 - compareUnregistereEnum(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 0 (rhs)
+ found: 0 (lhs)
+ expected: > 0 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 105 - compareUnregistereEnum(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > 1 (rhs)
+ found: 0 (lhs)
+ expected: > 1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 106 - compareUnregistereEnum(GT:left > right)
+ok 107 - compareUnregistereEnum(GE:left == right)
+not ok 108 - compareUnregistereEnum(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= 1 (rhs)
+ found: 0 (lhs)
+ expected: >= 1 (rhs)
+ actual: 0 (lhs)
+ at: tst_ExtendedCompare::compareUnregistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 109 - compareUnregistereEnum(GE:left > right)
+ok 110 - compareRegistereEnum(EQ:left == right)
+not ok 111 - compareRegistereEnum(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == Sunday (rhs)
+ found: Monday (lhs)
+ expected: == Sunday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 112 - compareRegistereEnum(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == Monday (rhs)
+ found: Sunday (lhs)
+ expected: == Monday (rhs)
+ actual: Sunday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 113 - compareRegistereEnum(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != Monday (rhs)
+ found: Monday (lhs)
+ expected: != Monday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 114 - compareRegistereEnum(NE:left < right)
+ok 115 - compareRegistereEnum(NE:left > right)
+not ok 116 - compareRegistereEnum(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < Monday (rhs)
+ found: Monday (lhs)
+ expected: < Monday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 117 - compareRegistereEnum(LT:left < right)
+not ok 118 - compareRegistereEnum(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < Monday (rhs)
+ found: Sunday (lhs)
+ expected: < Monday (rhs)
+ actual: Sunday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 119 - compareRegistereEnum(LE:left == right)
+ok 120 - compareRegistereEnum(LE:left < right)
+not ok 121 - compareRegistereEnum(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= Monday (rhs)
+ found: Sunday (lhs)
+ expected: <= Monday (rhs)
+ actual: Sunday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 122 - compareRegistereEnum(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > Monday (rhs)
+ found: Monday (lhs)
+ expected: > Monday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 123 - compareRegistereEnum(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > Sunday (rhs)
+ found: Monday (lhs)
+ expected: > Sunday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 124 - compareRegistereEnum(GT:left > right)
+ok 125 - compareRegistereEnum(GE:left == right)
+not ok 126 - compareRegistereEnum(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= Sunday (rhs)
+ found: Monday (lhs)
+ expected: >= Sunday (rhs)
+ actual: Monday (lhs)
+ at: tst_ExtendedCompare::compareRegistereEnum() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 127 - compareRegistereEnum(GE:left > right)
+ok 128 - compareCustomTypes(EQ:left == right)
+not ok 129 - compareCustomTypes(EQ:left < right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == MyClass(2) (rhs)
+ found: MyClass(1) (lhs)
+ expected: == MyClass(2) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 130 - compareCustomTypes(EQ:left > right)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == MyClass(1) (rhs)
+ found: MyClass(2) (lhs)
+ expected: == MyClass(1) (rhs)
+ actual: MyClass(2) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 131 - compareCustomTypes(NE:left == right)
+ ---
+ type: QCOMPARE_NE
+ message: The computed value is expected to be different from the baseline, but is not
+ wanted: != MyClass(1) (rhs)
+ found: MyClass(1) (lhs)
+ expected: != MyClass(1) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 132 - compareCustomTypes(NE:left < right)
+ok 133 - compareCustomTypes(NE:left > right)
+not ok 134 - compareCustomTypes(LT:left == right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < MyClass(1) (rhs)
+ found: MyClass(1) (lhs)
+ expected: < MyClass(1) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 135 - compareCustomTypes(LT:left < right)
+not ok 136 - compareCustomTypes(LT:left > right)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < MyClass(1) (rhs)
+ found: MyClass(2) (lhs)
+ expected: < MyClass(1) (rhs)
+ actual: MyClass(2) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 137 - compareCustomTypes(LE:left == right)
+ok 138 - compareCustomTypes(LE:left < right)
+not ok 139 - compareCustomTypes(LE:left > right)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= MyClass(1) (rhs)
+ found: MyClass(2) (lhs)
+ expected: <= MyClass(1) (rhs)
+ actual: MyClass(2) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 140 - compareCustomTypes(GT:left == right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > MyClass(1) (rhs)
+ found: MyClass(1) (lhs)
+ expected: > MyClass(1) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 141 - compareCustomTypes(GT:left < right)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > MyClass(2) (rhs)
+ found: MyClass(1) (lhs)
+ expected: > MyClass(2) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 142 - compareCustomTypes(GT:left > right)
+ok 143 - compareCustomTypes(GE:left == right)
+not ok 144 - compareCustomTypes(GE:left < right)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= MyClass(2) (rhs)
+ found: MyClass(1) (lhs)
+ expected: >= MyClass(2) (rhs)
+ actual: MyClass(1) (lhs)
+ at: tst_ExtendedCompare::compareCustomTypes() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 145 - compareCustomTypes(GE:left > right)
+not ok 146 - checkComparisonForTemporaryObjects(EQ)
+ ---
+ type: QCOMPARE_EQ
+ message: The computed value is expected to be equal to the baseline, but is not
+ wanted: == MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ found: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ expected: == MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ actual: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ at: tst_ExtendedCompare::checkComparisonForTemporaryObjects() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 147 - checkComparisonForTemporaryObjects(NE)
+ok 148 - checkComparisonForTemporaryObjects(LT)
+ok 149 - checkComparisonForTemporaryObjects(LE)
+not ok 150 - checkComparisonForTemporaryObjects(GT)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ found: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ expected: > MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ actual: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ at: tst_ExtendedCompare::checkComparisonForTemporaryObjects() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 151 - checkComparisonForTemporaryObjects(GE)
+ ---
+ type: QCOMPARE_GE
+ message: The computed value is expected to be greater than or equal to the baseline, but is not
+ wanted: >= MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ found: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ expected: >= MyClass(1) on memory address with index 1 (getClassForValue(1).getValuePointer())
+ actual: MyClass(2) on memory address with index 0 (getClassForValue(0).getValuePointer())
+ at: tst_ExtendedCompare::checkComparisonForTemporaryObjects() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 152 - checkComparisonWithTimeout(EQ)
+ok 153 - checkComparisonWithTimeout(NE)
+not ok 154 - checkComparisonWithTimeout(LT)
+ ---
+ type: QCOMPARE_LT
+ message: The computed value is expected to be less than the baseline, but is not
+ wanted: < ClassWithDeferredSetter(0) (ClassWithDeferredSetter(0))
+ found: ClassWithDeferredSetter(1) (c)
+ expected: < ClassWithDeferredSetter(0) (ClassWithDeferredSetter(0))
+ actual: ClassWithDeferredSetter(1) (c)
+ at: tst_ExtendedCompare::checkComparisonWithTimeout() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 155 - checkComparisonWithTimeout(LE)
+ ---
+ type: QCOMPARE_LE
+ message: The computed value is expected to be less than or equal to the baseline, but is not
+ wanted: <= ClassWithDeferredSetter(-1) (ClassWithDeferredSetter(-1))
+ found: ClassWithDeferredSetter(1) (c)
+ expected: <= ClassWithDeferredSetter(-1) (ClassWithDeferredSetter(-1))
+ actual: ClassWithDeferredSetter(1) (c)
+ at: tst_ExtendedCompare::checkComparisonWithTimeout() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+not ok 156 - checkComparisonWithTimeout(GT)
+ ---
+ type: QCOMPARE_GT
+ message: The computed value is expected to be greater than the baseline, but is not
+ wanted: > ClassWithDeferredSetter(1) (ClassWithDeferredSetter(1))
+ found: ClassWithDeferredSetter(1) (c)
+ expected: > ClassWithDeferredSetter(1) (ClassWithDeferredSetter(1))
+ actual: ClassWithDeferredSetter(1) (c)
+ at: tst_ExtendedCompare::checkComparisonWithTimeout() (qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
+ line: 0
+ ...
+ok 157 - checkComparisonWithTimeout(GE)
+ok 158 - cleanupTestCase()
+1..158
+# tests 158
+# pass 80
+# fail 78
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.teamcity b/tests/auto/testlib/selftests/expected_extendedcompare.teamcity
new file mode 100644
index 0000000000..4c76556138
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.teamcity
@@ -0,0 +1,396 @@
+##teamcity[testSuiteStarted name='tst_ExtendedCompare' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='initTestCase()' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='initTestCase()' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareInts(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareInts(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareInts(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1.1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1.1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 1.1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareFloats(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareFloats(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareFloats(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 0.1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 0.1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 0.1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareDoubles(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0.1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareDoubles(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareDoubles(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 2|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='comparePointers(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 2' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='comparePointers(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='comparePointers(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): "nullptr"' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareToNullptr(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): "nullptr"|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareToNullptr(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareToNullptr(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): 1|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 0' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareUnregistereEnum(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): 0|n Baseline (rhs): 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareUnregistereEnum(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareUnregistereEnum(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Sunday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): Sunday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): Sunday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): Sunday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Monday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Sunday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareRegistereEnum(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): Monday|n Baseline (rhs): Sunday' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareRegistereEnum(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareRegistereEnum(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(EQ:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(EQ:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(2)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(EQ:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(EQ:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (lhs): MyClass(2)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(EQ:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(NE:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be different from the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(NE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(NE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(NE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(LT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(LT:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (lhs): MyClass(2)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(LE:left > right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (lhs): MyClass(2)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(LE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(GT:left == right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GT:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(GT:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(2)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GT:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GT:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GE:left == right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='compareCustomTypes(GE:left < right)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (lhs): MyClass(1)|n Baseline (rhs): MyClass(2)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GE:left < right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='compareCustomTypes(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='compareCustomTypes(GE:left > right)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(EQ)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonForTemporaryObjects(EQ)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be equal to the baseline, but is not|n Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0|n Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(EQ)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(NE)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(NE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(LT)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(LT)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(LE)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(LE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(GT)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonForTemporaryObjects(GT)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0|n Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(GT)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonForTemporaryObjects(GE)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonForTemporaryObjects(GE)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than or equal to the baseline, but is not|n Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0|n Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonForTemporaryObjects(GE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(EQ)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(EQ)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(NE)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(NE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(LT)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonWithTimeout(LT)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than the baseline, but is not|n Computed (c) : ClassWithDeferredSetter(1)|n Baseline (ClassWithDeferredSetter(0)): ClassWithDeferredSetter(0)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(LT)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(LE)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonWithTimeout(LE)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be less than or equal to the baseline, but is not|n Computed (c) : ClassWithDeferredSetter(1)|n Baseline (ClassWithDeferredSetter(-1)): ClassWithDeferredSetter(-1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(LE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(GT)' flowId='tst_ExtendedCompare']
+##teamcity[testFailed name='checkComparisonWithTimeout(GT)' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)|]' details='The computed value is expected to be greater than the baseline, but is not|n Computed (c) : ClassWithDeferredSetter(1)|n Baseline (ClassWithDeferredSetter(1)): ClassWithDeferredSetter(1)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(GT)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='checkComparisonWithTimeout(GE)' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='checkComparisonWithTimeout(GE)' flowId='tst_ExtendedCompare']
+##teamcity[testStarted name='cleanupTestCase()' flowId='tst_ExtendedCompare']
+##teamcity[testFinished name='cleanupTestCase()' flowId='tst_ExtendedCompare']
+##teamcity[testSuiteFinished name='tst_ExtendedCompare' flowId='tst_ExtendedCompare']
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.txt b/tests/auto/testlib/selftests/expected_extendedcompare.txt
new file mode 100644
index 0000000000..08b6b6deb4
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.txt
@@ -0,0 +1,396 @@
+********* Start testing of tst_ExtendedCompare *********
+Config: Using QtTest library
+PASS : tst_ExtendedCompare::initTestCase()
+PASS : tst_ExtendedCompare::compareInts(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareInts(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareInts(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareInts(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareInts(NE:left < right)
+PASS : tst_ExtendedCompare::compareInts(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareInts(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareInts(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareInts(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareInts(LE:left == right)
+PASS : tst_ExtendedCompare::compareInts(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareInts(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareInts(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareInts(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareInts(GT:left > right)
+PASS : tst_ExtendedCompare::compareInts(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareInts(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareInts(GE:left > right)
+PASS : tst_ExtendedCompare::compareFloats(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareFloats(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareFloats(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareFloats(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareFloats(NE:left < right)
+PASS : tst_ExtendedCompare::compareFloats(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareFloats(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareFloats(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareFloats(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareFloats(LE:left == right)
+PASS : tst_ExtendedCompare::compareFloats(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareFloats(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareFloats(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareFloats(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareFloats(GT:left > right)
+PASS : tst_ExtendedCompare::compareFloats(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareFloats(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareFloats(GE:left > right)
+PASS : tst_ExtendedCompare::compareDoubles(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareDoubles(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareDoubles(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareDoubles(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareDoubles(NE:left < right)
+PASS : tst_ExtendedCompare::compareDoubles(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareDoubles(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareDoubles(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareDoubles(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareDoubles(LE:left == right)
+PASS : tst_ExtendedCompare::compareDoubles(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareDoubles(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareDoubles(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareDoubles(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareDoubles(GT:left > right)
+PASS : tst_ExtendedCompare::compareDoubles(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareDoubles(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareDoubles(GE:left > right)
+PASS : tst_ExtendedCompare::comparePointers(EQ:left == right)
+FAIL! : tst_ExtendedCompare::comparePointers(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::comparePointers(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::comparePointers(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::comparePointers(NE:left < right)
+PASS : tst_ExtendedCompare::comparePointers(NE:left > right)
+FAIL! : tst_ExtendedCompare::comparePointers(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::comparePointers(LT:left < right)
+FAIL! : tst_ExtendedCompare::comparePointers(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::comparePointers(LE:left == right)
+PASS : tst_ExtendedCompare::comparePointers(LE:left < right)
+FAIL! : tst_ExtendedCompare::comparePointers(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::comparePointers(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::comparePointers(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::comparePointers(GT:left > right)
+PASS : tst_ExtendedCompare::comparePointers(GE:left == right)
+FAIL! : tst_ExtendedCompare::comparePointers(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::comparePointers(GE:left > right)
+PASS : tst_ExtendedCompare::compareToNullptr(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareToNullptr(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareToNullptr(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareToNullptr(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareToNullptr(NE:left < right)
+PASS : tst_ExtendedCompare::compareToNullptr(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareToNullptr(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareToNullptr(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareToNullptr(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareToNullptr(LE:left == right)
+PASS : tst_ExtendedCompare::compareToNullptr(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareToNullptr(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareToNullptr(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareToNullptr(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareToNullptr(GT:left > right)
+PASS : tst_ExtendedCompare::compareToNullptr(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareToNullptr(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareToNullptr(GE:left > right)
+PASS : tst_ExtendedCompare::compareUnregistereEnum(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareUnregistereEnum(NE:left < right)
+PASS : tst_ExtendedCompare::compareUnregistereEnum(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareUnregistereEnum(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareUnregistereEnum(LE:left == right)
+PASS : tst_ExtendedCompare::compareUnregistereEnum(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareUnregistereEnum(GT:left > right)
+PASS : tst_ExtendedCompare::compareUnregistereEnum(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareUnregistereEnum(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareUnregistereEnum(GE:left > right)
+PASS : tst_ExtendedCompare::compareRegistereEnum(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareRegistereEnum(NE:left < right)
+PASS : tst_ExtendedCompare::compareRegistereEnum(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareRegistereEnum(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareRegistereEnum(LE:left == right)
+PASS : tst_ExtendedCompare::compareRegistereEnum(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareRegistereEnum(GT:left > right)
+PASS : tst_ExtendedCompare::compareRegistereEnum(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareRegistereEnum(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareRegistereEnum(GE:left > right)
+PASS : tst_ExtendedCompare::compareCustomTypes(EQ:left == right)
+FAIL! : tst_ExtendedCompare::compareCustomTypes(EQ:left < right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareCustomTypes(EQ:left > right) The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareCustomTypes(NE:left == right) The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareCustomTypes(NE:left < right)
+PASS : tst_ExtendedCompare::compareCustomTypes(NE:left > right)
+FAIL! : tst_ExtendedCompare::compareCustomTypes(LT:left == right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareCustomTypes(LT:left < right)
+FAIL! : tst_ExtendedCompare::compareCustomTypes(LT:left > right) The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareCustomTypes(LE:left == right)
+PASS : tst_ExtendedCompare::compareCustomTypes(LE:left < right)
+FAIL! : tst_ExtendedCompare::compareCustomTypes(LE:left > right) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareCustomTypes(GT:left == right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::compareCustomTypes(GT:left < right) The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareCustomTypes(GT:left > right)
+PASS : tst_ExtendedCompare::compareCustomTypes(GE:left == right)
+FAIL! : tst_ExtendedCompare::compareCustomTypes(GE:left < right) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::compareCustomTypes(GE:left > right)
+FAIL! : tst_ExtendedCompare::checkComparisonForTemporaryObjects(EQ) The computed value is expected to be equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::checkComparisonForTemporaryObjects(NE)
+PASS : tst_ExtendedCompare::checkComparisonForTemporaryObjects(LT)
+PASS : tst_ExtendedCompare::checkComparisonForTemporaryObjects(LE)
+FAIL! : tst_ExtendedCompare::checkComparisonForTemporaryObjects(GT) The computed value is expected to be greater than the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::checkComparisonForTemporaryObjects(GE) The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::checkComparisonWithTimeout(EQ)
+PASS : tst_ExtendedCompare::checkComparisonWithTimeout(NE)
+FAIL! : tst_ExtendedCompare::checkComparisonWithTimeout(LT) The computed value is expected to be less than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(0)): ClassWithDeferredSetter(0)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::checkComparisonWithTimeout(LE) The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(-1)): ClassWithDeferredSetter(-1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+FAIL! : tst_ExtendedCompare::checkComparisonWithTimeout(GT) The computed value is expected to be greater than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(1)): ClassWithDeferredSetter(1)
+ Loc: [qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp(0)]
+PASS : tst_ExtendedCompare::checkComparisonWithTimeout(GE)
+PASS : tst_ExtendedCompare::cleanupTestCase()
+Totals: 80 passed, 78 failed, 0 skipped, 0 blacklisted, 0ms
+********* Finished testing of tst_ExtendedCompare *********
diff --git a/tests/auto/testlib/selftests/expected_extendedcompare.xml b/tests/auto/testlib/selftests/expected_extendedcompare.xml
new file mode 100644
index 0000000000..ab55eebf89
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_extendedcompare.xml
@@ -0,0 +1,749 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestCase name="tst_ExtendedCompare">
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareInts">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareFloats">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1.1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareDoubles">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 0.1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0.1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="comparePointers">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 2
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 2]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareToNullptr">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): "nullptr"]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): "nullptr"
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareUnregistereEnum">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): 1
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 0]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): 0
+ Baseline (rhs): 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareRegistereEnum">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): Sunday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Monday]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): Monday
+ Baseline (rhs): Sunday]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="compareCustomTypes">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[NE:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be different from the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE:left > right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE:left < right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE:left > right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (lhs): MyClass(2)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left == right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GT:left > right]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left == right]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE:left < right]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (lhs): MyClass(1)
+ Baseline (rhs): MyClass(2)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE:left > right]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="checkComparisonForTemporaryObjects">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[EQ]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LT]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[LE]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GE]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than or equal to the baseline, but is not
+ Computed (getClassForValue(0).getValuePointer()): MyClass(2) on memory address with index 0
+ Baseline (getClassForValue(1).getValuePointer()): MyClass(1) on memory address with index 1]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="checkComparisonWithTimeout">
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[EQ]]></DataTag>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[NE]]></DataTag>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(0)): ClassWithDeferredSetter(0)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[LE]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be less than or equal to the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(-1)): ClassWithDeferredSetter(-1)]]></Description>
+ </Incident>
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp" line="0">
+ <DataTag><![CDATA[GT]]></DataTag>
+ <Description><![CDATA[The computed value is expected to be greater than the baseline, but is not
+ Computed (c) : ClassWithDeferredSetter(1)
+ Baseline (ClassWithDeferredSetter(1)): ClassWithDeferredSetter(1)]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[GE]]></DataTag>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.junitxml b/tests/auto/testlib/selftests/expected_failcleanup.junitxml
index a40c724a46..8ea5799363 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.junitxml
+++ b/tests/auto/testlib/selftests/expected_failcleanup.junitxml
@@ -6,8 +6,8 @@
<property name="QtBuild" value=""/>
</properties>
<testcase name="initTestCase" classname="tst_FailCleanup" time="@TEST_DURATION@"/>
- <testcase name="aTestFunction" classname="tst_FailCleanup" time="@TEST_DURATION@"/>
- <testcase name="cleanupTestCase" classname="tst_FailCleanup" time="@TEST_DURATION@">
- <failure type="fail" message="&apos;false&apos; returned FALSE. (Fail inside cleanupTestCase)"/>
+ <testcase name="aTestFunction" classname="tst_FailCleanup" time="@TEST_DURATION@">
+ <failure type="fail" message="&apos;false&apos; returned FALSE. (Fail inside cleanup)"/>
</testcase>
+ <testcase name="cleanupTestCase" classname="tst_FailCleanup" time="@TEST_DURATION@"/>
</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.lightxml b/tests/auto/testlib/selftests/expected_failcleanup.lightxml
index ce9da0d2a8..a9d7a1361f 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.lightxml
+++ b/tests/auto/testlib/selftests/expected_failcleanup.lightxml
@@ -8,13 +8,13 @@
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="aTestFunction">
- <Incident type="pass" file="" line="0" />
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp" line="0">
+ <Description><![CDATA['false' returned FALSE. (Fail inside cleanup)]]></Description>
+ </Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="cleanupTestCase">
- <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp" line="0">
- <Description><![CDATA['false' returned FALSE. (Fail inside cleanupTestCase)]]></Description>
- </Incident>
+ <Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.tap b/tests/auto/testlib/selftests/expected_failcleanup.tap
index 8ec0aca6d4..64556b32b2 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.tap
+++ b/tests/auto/testlib/selftests/expected_failcleanup.tap
@@ -1,19 +1,19 @@
TAP version 13
# tst_FailCleanup
ok 1 - initTestCase()
-ok 2 - aTestFunction()
-not ok 3 - cleanupTestCase()
+not ok 2 - aTestFunction()
---
type: QVERIFY
- message: Fail inside cleanupTestCase
+ message: Fail inside cleanup
wanted: true (false)
found: false (false)
expected: true (false)
actual: false (false)
- at: tst_FailCleanup::cleanupTestCase() (qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp:0)
+ at: tst_FailCleanup::aTestFunction() (qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp:0)
file: qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp
line: 0
...
+ok 3 - cleanupTestCase()
1..3
# tests 3
# pass 2
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.teamcity b/tests/auto/testlib/selftests/expected_failcleanup.teamcity
index 1f8d353581..12d7b2f154 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.teamcity
+++ b/tests/auto/testlib/selftests/expected_failcleanup.teamcity
@@ -2,8 +2,8 @@
##teamcity[testStarted name='initTestCase()' flowId='tst_FailCleanup']
##teamcity[testFinished name='initTestCase()' flowId='tst_FailCleanup']
##teamcity[testStarted name='aTestFunction()' flowId='tst_FailCleanup']
+##teamcity[testFailed name='aTestFunction()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp(0)|]' details='|'false|' returned FALSE. (Fail inside cleanup)' flowId='tst_FailCleanup']
##teamcity[testFinished name='aTestFunction()' flowId='tst_FailCleanup']
##teamcity[testStarted name='cleanupTestCase()' flowId='tst_FailCleanup']
-##teamcity[testFailed name='cleanupTestCase()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp(0)|]' details='|'false|' returned FALSE. (Fail inside cleanupTestCase)' flowId='tst_FailCleanup']
##teamcity[testFinished name='cleanupTestCase()' flowId='tst_FailCleanup']
##teamcity[testSuiteFinished name='tst_FailCleanup' flowId='tst_FailCleanup']
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.txt b/tests/auto/testlib/selftests/expected_failcleanup.txt
index a5776e59bf..4fac7940fd 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.txt
+++ b/tests/auto/testlib/selftests/expected_failcleanup.txt
@@ -1,8 +1,8 @@
********* Start testing of tst_FailCleanup *********
Config: Using QtTest library
PASS : tst_FailCleanup::initTestCase()
-PASS : tst_FailCleanup::aTestFunction()
-FAIL! : tst_FailCleanup::cleanupTestCase() 'false' returned FALSE. (Fail inside cleanupTestCase)
+FAIL! : tst_FailCleanup::aTestFunction() 'false' returned FALSE. (Fail inside cleanup)
Loc: [qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp(0)]
+PASS : tst_FailCleanup::cleanupTestCase()
Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 0ms
********* Finished testing of tst_FailCleanup *********
diff --git a/tests/auto/testlib/selftests/expected_failcleanup.xml b/tests/auto/testlib/selftests/expected_failcleanup.xml
index 3521802ca0..f4f041e704 100644
--- a/tests/auto/testlib/selftests/expected_failcleanup.xml
+++ b/tests/auto/testlib/selftests/expected_failcleanup.xml
@@ -10,13 +10,13 @@
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="aTestFunction">
- <Incident type="pass" file="" line="0" />
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp" line="0">
+ <Description><![CDATA['false' returned FALSE. (Fail inside cleanup)]]></Description>
+ </Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="cleanupTestCase">
- <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp" line="0">
- <Description><![CDATA['false' returned FALSE. (Fail inside cleanupTestCase)]]></Description>
- </Incident>
+ <Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.junitxml b/tests/auto/testlib/selftests/expected_failcleanuptestcase.junitxml
new file mode 100644
index 0000000000..8e694a4dfe
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.junitxml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite name="tst_FailCleanupTestCase" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="3" failures="1" errors="0" skipped="0" time="@TEST_DURATION@">
+ <properties>
+ <property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtBuild" value=""/>
+ </properties>
+ <testcase name="initTestCase" classname="tst_FailCleanupTestCase" time="@TEST_DURATION@"/>
+ <testcase name="aTestFunction" classname="tst_FailCleanupTestCase" time="@TEST_DURATION@"/>
+ <testcase name="cleanupTestCase" classname="tst_FailCleanupTestCase" time="@TEST_DURATION@">
+ <failure type="fail" message="&apos;false&apos; returned FALSE. (Fail inside cleanupTestCase)"/>
+ </testcase>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.lightxml b/tests/auto/testlib/selftests/expected_failcleanuptestcase.lightxml
new file mode 100644
index 0000000000..ed92e1e6b0
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.lightxml
@@ -0,0 +1,20 @@
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="aTestFunction">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp" line="0">
+ <Description><![CDATA['false' returned FALSE. (Fail inside cleanupTestCase)]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.tap b/tests/auto/testlib/selftests/expected_failcleanuptestcase.tap
new file mode 100644
index 0000000000..1bad92ce1f
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.tap
@@ -0,0 +1,20 @@
+TAP version 13
+# tst_FailCleanupTestCase
+ok 1 - initTestCase()
+ok 2 - aTestFunction()
+not ok 3 - cleanupTestCase()
+ ---
+ type: QVERIFY
+ message: Fail inside cleanupTestCase
+ wanted: true (false)
+ found: false (false)
+ expected: true (false)
+ actual: false (false)
+ at: tst_FailCleanupTestCase::cleanupTestCase() (qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp
+ line: 0
+ ...
+1..3
+# tests 3
+# pass 2
+# fail 1
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.teamcity b/tests/auto/testlib/selftests/expected_failcleanuptestcase.teamcity
new file mode 100644
index 0000000000..b76c7e3f45
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.teamcity
@@ -0,0 +1,9 @@
+##teamcity[testSuiteStarted name='tst_FailCleanupTestCase' flowId='tst_FailCleanupTestCase']
+##teamcity[testStarted name='initTestCase()' flowId='tst_FailCleanupTestCase']
+##teamcity[testFinished name='initTestCase()' flowId='tst_FailCleanupTestCase']
+##teamcity[testStarted name='aTestFunction()' flowId='tst_FailCleanupTestCase']
+##teamcity[testFinished name='aTestFunction()' flowId='tst_FailCleanupTestCase']
+##teamcity[testStarted name='cleanupTestCase()' flowId='tst_FailCleanupTestCase']
+##teamcity[testFailed name='cleanupTestCase()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp(0)|]' details='|'false|' returned FALSE. (Fail inside cleanupTestCase)' flowId='tst_FailCleanupTestCase']
+##teamcity[testFinished name='cleanupTestCase()' flowId='tst_FailCleanupTestCase']
+##teamcity[testSuiteFinished name='tst_FailCleanupTestCase' flowId='tst_FailCleanupTestCase']
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.txt b/tests/auto/testlib/selftests/expected_failcleanuptestcase.txt
new file mode 100644
index 0000000000..2e4619394b
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.txt
@@ -0,0 +1,8 @@
+********* Start testing of tst_FailCleanupTestCase *********
+Config: Using QtTest library
+PASS : tst_FailCleanupTestCase::initTestCase()
+PASS : tst_FailCleanupTestCase::aTestFunction()
+FAIL! : tst_FailCleanupTestCase::cleanupTestCase() 'false' returned FALSE. (Fail inside cleanupTestCase)
+ Loc: [qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp(0)]
+Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 0ms
+********* Finished testing of tst_FailCleanupTestCase *********
diff --git a/tests/auto/testlib/selftests/expected_failcleanuptestcase.xml b/tests/auto/testlib/selftests/expected_failcleanuptestcase.xml
new file mode 100644
index 0000000000..1537440317
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_failcleanuptestcase.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestCase name="tst_FailCleanupTestCase">
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="aTestFunction">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp" line="0">
+ <Description><![CDATA['false' returned FALSE. (Fail inside cleanupTestCase)]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_globaldata.teamcity b/tests/auto/testlib/selftests/expected_globaldata.teamcity
index 7c1c33e1de..2b15e06731 100644
--- a/tests/auto/testlib/selftests/expected_globaldata.teamcity
+++ b/tests/auto/testlib/selftests/expected_globaldata.teamcity
@@ -2,51 +2,51 @@
##teamcity[testStarted name='initTestCase()' flowId='tst_globaldata']
##teamcity[testStdOut name='initTestCase()' out='QDEBUG: initTestCase initTestCase (null)' flowId='tst_globaldata']
##teamcity[testFinished name='initTestCase()' flowId='tst_globaldata']
-##teamcity[testStarted name='testGlobal(local=false)' flowId='tst_globaldata']
-##teamcity[testStdOut name='testGlobal(local=false)' out='QDEBUG: init testGlobal local=false|nQDEBUG: global: false|nQDEBUG: local: false|nQDEBUG: cleanup testGlobal local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='testGlobal(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='testGlobal(local=true)' flowId='tst_globaldata']
-##teamcity[testStdOut name='testGlobal(local=true)' out='QDEBUG: init testGlobal local=true|nQDEBUG: global: false|nQDEBUG: local: true|nQDEBUG: cleanup testGlobal local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='testGlobal(local=true)' flowId='tst_globaldata']
-##teamcity[testStarted name='testGlobal(local=false)' flowId='tst_globaldata']
-##teamcity[testStdOut name='testGlobal(local=false)' out='QDEBUG: init testGlobal local=false|nQDEBUG: global: true|nQDEBUG: local: false|nQDEBUG: cleanup testGlobal local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='testGlobal(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='testGlobal(local=true)' flowId='tst_globaldata']
-##teamcity[testStdOut name='testGlobal(local=true)' out='QDEBUG: init testGlobal local=true|nQDEBUG: global: true|nQDEBUG: local: true|nQDEBUG: cleanup testGlobal local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='testGlobal(local=true)' flowId='tst_globaldata']
-##teamcity[testStarted name='skip()' flowId='tst_globaldata']
-##teamcity[testIgnored name='skip()' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testFinished name='skip()' flowId='tst_globaldata']
-##teamcity[testStarted name='skipLocal(local=false)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipLocal(local=false)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipLocal(local=false)' out='QDEBUG: init skipLocal local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='skipLocal(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipLocal(local=true)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipLocal(local=true)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipLocal(local=true)' out='QDEBUG: cleanup skipLocal local=false|nQDEBUG: init skipLocal local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='skipLocal(local=true)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipLocal(local=false)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipLocal(local=false)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipLocal(local=false)' out='QDEBUG: cleanup skipLocal local=true|nQDEBUG: init skipLocal local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='skipLocal(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipLocal(local=true)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipLocal(local=true)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipLocal(local=true)' out='QDEBUG: cleanup skipLocal local=false|nQDEBUG: init skipLocal local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='skipLocal(local=true)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipSingle(local=false)' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipSingle(local=false)' out='QDEBUG: cleanup skipLocal local=true|nQDEBUG: init skipSingle local=false|nQDEBUG: global: false local: false|nQDEBUG: cleanup skipSingle local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='skipSingle(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipSingle(local=true)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipSingle(local=true)' message='Skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipSingle(local=true)' out='QDEBUG: init skipSingle local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='skipSingle(local=true)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipSingle(local=false)' flowId='tst_globaldata']
-##teamcity[testIgnored name='skipSingle(local=false)' message='Skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipSingle(local=false)' out='QDEBUG: cleanup skipSingle local=true|nQDEBUG: init skipSingle local=false' flowId='tst_globaldata']
-##teamcity[testFinished name='skipSingle(local=false)' flowId='tst_globaldata']
-##teamcity[testStarted name='skipSingle(local=true)' flowId='tst_globaldata']
-##teamcity[testStdOut name='skipSingle(local=true)' out='QDEBUG: cleanup skipSingle local=false|nQDEBUG: init skipSingle local=true|nQDEBUG: global: true local: true|nQDEBUG: cleanup skipSingle local=true' flowId='tst_globaldata']
-##teamcity[testFinished name='skipSingle(local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='testGlobal(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testStdOut name='testGlobal(global=false:local=false)' out='QDEBUG: init testGlobal local=false|nQDEBUG: global: false|nQDEBUG: local: false|nQDEBUG: cleanup testGlobal local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='testGlobal(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='testGlobal(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testStdOut name='testGlobal(global=false:local=true)' out='QDEBUG: init testGlobal local=true|nQDEBUG: global: false|nQDEBUG: local: true|nQDEBUG: cleanup testGlobal local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='testGlobal(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='testGlobal(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testStdOut name='testGlobal(global=true:local=false)' out='QDEBUG: init testGlobal local=false|nQDEBUG: global: true|nQDEBUG: local: false|nQDEBUG: cleanup testGlobal local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='testGlobal(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='testGlobal(global=true:local=true)' flowId='tst_globaldata']
+##teamcity[testStdOut name='testGlobal(global=true:local=true)' out='QDEBUG: init testGlobal local=true|nQDEBUG: global: true|nQDEBUG: local: true|nQDEBUG: cleanup testGlobal local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='testGlobal(global=true:local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='skip(global=false)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skip(global=false)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testFinished name='skip(global=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipLocal(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipLocal(global=false:local=false)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipLocal(global=false:local=false)' out='QDEBUG: init skipLocal local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='skipLocal(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipLocal(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipLocal(global=false:local=true)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipLocal(global=false:local=true)' out='QDEBUG: cleanup skipLocal local=false|nQDEBUG: init skipLocal local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='skipLocal(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipLocal(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipLocal(global=true:local=false)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipLocal(global=true:local=false)' out='QDEBUG: cleanup skipLocal local=true|nQDEBUG: init skipLocal local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='skipLocal(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipLocal(global=true:local=true)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipLocal(global=true:local=true)' message='skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipLocal(global=true:local=true)' out='QDEBUG: cleanup skipLocal local=false|nQDEBUG: init skipLocal local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='skipLocal(global=true:local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipSingle(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipSingle(global=false:local=false)' out='QDEBUG: cleanup skipLocal local=true|nQDEBUG: init skipSingle local=false|nQDEBUG: global: false local: false|nQDEBUG: cleanup skipSingle local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='skipSingle(global=false:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipSingle(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipSingle(global=false:local=true)' message='Skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipSingle(global=false:local=true)' out='QDEBUG: init skipSingle local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='skipSingle(global=false:local=true)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipSingle(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testIgnored name='skipSingle(global=true:local=false)' message='Skipping |[Loc: qtbase/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp(0)|]' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipSingle(global=true:local=false)' out='QDEBUG: cleanup skipSingle local=true|nQDEBUG: init skipSingle local=false' flowId='tst_globaldata']
+##teamcity[testFinished name='skipSingle(global=true:local=false)' flowId='tst_globaldata']
+##teamcity[testStarted name='skipSingle(global=true:local=true)' flowId='tst_globaldata']
+##teamcity[testStdOut name='skipSingle(global=true:local=true)' out='QDEBUG: cleanup skipSingle local=false|nQDEBUG: init skipSingle local=true|nQDEBUG: global: true local: true|nQDEBUG: cleanup skipSingle local=true' flowId='tst_globaldata']
+##teamcity[testFinished name='skipSingle(global=true:local=true)' flowId='tst_globaldata']
##teamcity[testStarted name='cleanupTestCase()' flowId='tst_globaldata']
##teamcity[testStdOut name='cleanupTestCase()' out='QDEBUG: cleanupTestCase cleanupTestCase (null)' flowId='tst_globaldata']
##teamcity[testFinished name='cleanupTestCase()' flowId='tst_globaldata']
diff --git a/tests/auto/testlib/selftests/expected_mouse.junitxml b/tests/auto/testlib/selftests/expected_mouse.junitxml
index 0664ab3a34..8b0b7b2da5 100644
--- a/tests/auto/testlib/selftests/expected_mouse.junitxml
+++ b/tests/auto/testlib/selftests/expected_mouse.junitxml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<testsuite name="tst_Mouse" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="13" failures="0" errors="0" skipped="3" time="@TEST_DURATION@">
+<testsuite name="tst_Mouse" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="14" failures="0" errors="0" skipped="3" time="@TEST_DURATION@">
<properties>
<property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
<property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
@@ -23,5 +23,6 @@
<testcase name="deterministicEvents(first&#x002D;run&#x002D;false)" classname="tst_Mouse" time="@TEST_DURATION@">
<skipped message="Not implemented!"/>
</testcase>
+ <testcase name="doubleClick" classname="tst_Mouse" time="@TEST_DURATION@"/>
<testcase name="cleanupTestCase" classname="tst_Mouse" time="@TEST_DURATION@"/>
</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_mouse.lightxml b/tests/auto/testlib/selftests/expected_mouse.lightxml
index ed125d9b68..fd6b9a8218 100644
--- a/tests/auto/testlib/selftests/expected_mouse.lightxml
+++ b/tests/auto/testlib/selftests/expected_mouse.lightxml
@@ -54,6 +54,10 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="doubleClick">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="cleanupTestCase">
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_mouse.tap b/tests/auto/testlib/selftests/expected_mouse.tap
index a91b5b4da2..a2ba671bf4 100644
--- a/tests/auto/testlib/selftests/expected_mouse.tap
+++ b/tests/auto/testlib/selftests/expected_mouse.tap
@@ -12,8 +12,9 @@ ok 9 - stateHandlingPart1(dummy-2)
ok 10 - stateHandlingPart2() # SKIP Not implemented beyond this point!
ok 11 - deterministicEvents(first-run-true) # SKIP Not implemented!
ok 12 - deterministicEvents(first-run-false) # SKIP Not implemented!
-ok 13 - cleanupTestCase()
-1..13
-# tests 13
-# pass 10
+ok 13 - doubleClick()
+ok 14 - cleanupTestCase()
+1..14
+# tests 14
+# pass 11
# fail 0
diff --git a/tests/auto/testlib/selftests/expected_mouse.teamcity b/tests/auto/testlib/selftests/expected_mouse.teamcity
index 371bd49626..44c03ce6d7 100644
--- a/tests/auto/testlib/selftests/expected_mouse.teamcity
+++ b/tests/auto/testlib/selftests/expected_mouse.teamcity
@@ -26,6 +26,8 @@
##teamcity[testStarted name='deterministicEvents(first-run-false)' flowId='tst_Mouse']
##teamcity[testIgnored name='deterministicEvents(first-run-false)' message='Not implemented! |[Loc: qtbase/tests/auto/testlib/selftests/mouse/tst_mouse.cpp(0)|]' flowId='tst_Mouse']
##teamcity[testFinished name='deterministicEvents(first-run-false)' flowId='tst_Mouse']
+##teamcity[testStarted name='doubleClick()' flowId='tst_Mouse']
+##teamcity[testFinished name='doubleClick()' flowId='tst_Mouse']
##teamcity[testStarted name='cleanupTestCase()' flowId='tst_Mouse']
##teamcity[testFinished name='cleanupTestCase()' flowId='tst_Mouse']
##teamcity[testSuiteFinished name='tst_Mouse' flowId='tst_Mouse']
diff --git a/tests/auto/testlib/selftests/expected_mouse.txt b/tests/auto/testlib/selftests/expected_mouse.txt
index 660b4f47a4..9fe927062d 100644
--- a/tests/auto/testlib/selftests/expected_mouse.txt
+++ b/tests/auto/testlib/selftests/expected_mouse.txt
@@ -15,6 +15,7 @@ SKIP : tst_Mouse::deterministicEvents(first-run-true) Not implemented!
Loc: [qtbase/tests/auto/testlib/selftests/mouse/tst_mouse.cpp(0)]
SKIP : tst_Mouse::deterministicEvents(first-run-false) Not implemented!
Loc: [qtbase/tests/auto/testlib/selftests/mouse/tst_mouse.cpp(0)]
+PASS : tst_Mouse::doubleClick()
PASS : tst_Mouse::cleanupTestCase()
-Totals: 10 passed, 0 failed, 3 skipped, 0 blacklisted, 0ms
+Totals: 11 passed, 0 failed, 3 skipped, 0 blacklisted, 0ms
********* Finished testing of tst_Mouse *********
diff --git a/tests/auto/testlib/selftests/expected_mouse.xml b/tests/auto/testlib/selftests/expected_mouse.xml
index 26bde614ce..b532534049 100644
--- a/tests/auto/testlib/selftests/expected_mouse.xml
+++ b/tests/auto/testlib/selftests/expected_mouse.xml
@@ -56,6 +56,10 @@
</Incident>
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="doubleClick">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="cleanupTestCase">
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_silent.txt b/tests/auto/testlib/selftests/expected_silent.txt
index 127e39a6c1..6c9b71a835 100644
--- a/tests/auto/testlib/selftests/expected_silent.txt
+++ b/tests/auto/testlib/selftests/expected_silent.txt
@@ -5,7 +5,4 @@ FAIL! : tst_Silent::fail() 'false' returned FALSE. (This test should fail)
Loc: [qtbase/tests/auto/testlib/selftests/silent/tst_silent.cpp(0)]
XPASS : tst_Silent::xpass() 'true' returned TRUE unexpectedly. (This test should XPASS)
Loc: [qtbase/tests/auto/testlib/selftests/silent/tst_silent.cpp(0)]
-QFATAL : tst_Silent::messages() This is a fatal error message that should still appear in silent test output
-FAIL! : tst_Silent::messages() Received a fatal error.
- Loc: [qtbase/tests/auto/testlib/selftests/silent/tst_silent.cpp(0)]
-Totals: 3 passed, 3 failed, 1 skipped, 0 blacklisted, 0ms
+Totals: 5 passed, 2 failed, 1 skipped, 0 blacklisted, 0ms
diff --git a/tests/auto/testlib/selftests/expected_silent_fatal.txt b/tests/auto/testlib/selftests/expected_silent_fatal.txt
new file mode 100644
index 0000000000..fb00066c13
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_silent_fatal.txt
@@ -0,0 +1,5 @@
+Testing tst_SilentFatal
+QFATAL : tst_SilentFatal::fatalmessages() This is a fatal error message that should still appear in silent test output
+FAIL! : tst_SilentFatal::fatalmessages() Received a fatal error.
+ Loc: [qtbase/tests/auto/testlib/selftests/silent_fatal/tst_silent_fatal.cpp(0)]
+Totals: 1 passed, 1 failed, 0 skipped, 0 blacklisted, 0ms
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.junitxml b/tests/auto/testlib/selftests/expected_skipblacklisted.junitxml
new file mode 100644
index 0000000000..308a4ea999
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.junitxml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite name="tst_SkipBlacklisted" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="5" failures="0" errors="0" skipped="3" time="@TEST_DURATION@">
+ <properties>
+ <property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtBuild" value=""/>
+ </properties>
+ <testcase name="initTestCase" classname="tst_SkipBlacklisted" time="@TEST_DURATION@"/>
+ <testcase name="pass" classname="tst_SkipBlacklisted" time="@TEST_DURATION@"/>
+ <testcase name="blacklisted" classname="tst_SkipBlacklisted" time="@TEST_DURATION@">
+ <skipped message="Skipping blacklisted test since &#x002D;skipblacklisted option is set."/>
+ </testcase>
+ <testcase name="blacklistedData(should pass)" classname="tst_SkipBlacklisted" time="@TEST_DURATION@">
+ <skipped message="Skipping blacklisted test since &#x002D;skipblacklisted option is set."/>
+ <skipped message="Skipping blacklisted test since &#x002D;skipblacklisted option is set."/>
+ </testcase>
+ <testcase name="cleanupTestCase" classname="tst_SkipBlacklisted" time="@TEST_DURATION@"/>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.lightxml b/tests/auto/testlib/selftests/expected_skipblacklisted.lightxml
new file mode 100644
index 0000000000..45d3476d6a
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.lightxml
@@ -0,0 +1,36 @@
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="pass">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="blacklisted">
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="blacklistedData">
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[should pass]]></DataTag>
+ </Incident>
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.tap b/tests/auto/testlib/selftests/expected_skipblacklisted.tap
new file mode 100644
index 0000000000..f71524d85f
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.tap
@@ -0,0 +1,13 @@
+TAP version 13
+# tst_SkipBlacklisted
+ok 1 - initTestCase()
+ok 2 - pass()
+ok 3 - blacklisted() # SKIP Skipping blacklisted test since -skipblacklisted option is set.
+ok 4 - blacklistedData() # SKIP Skipping blacklisted test since -skipblacklisted option is set.
+ok 5 - blacklistedData(should pass)
+ok 6 - blacklistedData() # SKIP Skipping blacklisted test since -skipblacklisted option is set.
+ok 7 - cleanupTestCase()
+1..7
+# tests 7
+# pass 4
+# fail 0
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.teamcity b/tests/auto/testlib/selftests/expected_skipblacklisted.teamcity
new file mode 100644
index 0000000000..67a788901a
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.teamcity
@@ -0,0 +1,19 @@
+##teamcity[testSuiteStarted name='tst_SkipBlacklisted' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='initTestCase()' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='initTestCase()' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='pass()' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='pass()' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='blacklisted()' flowId='tst_SkipBlacklisted']
+##teamcity[testIgnored name='blacklisted()' message='Skipping blacklisted test since -skipblacklisted option is set.' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='blacklisted()' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='blacklistedData()' flowId='tst_SkipBlacklisted']
+##teamcity[testIgnored name='blacklistedData()' message='Skipping blacklisted test since -skipblacklisted option is set.' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='blacklistedData()' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='blacklistedData(should pass)' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='blacklistedData(should pass)' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='blacklistedData()' flowId='tst_SkipBlacklisted']
+##teamcity[testIgnored name='blacklistedData()' message='Skipping blacklisted test since -skipblacklisted option is set.' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='blacklistedData()' flowId='tst_SkipBlacklisted']
+##teamcity[testStarted name='cleanupTestCase()' flowId='tst_SkipBlacklisted']
+##teamcity[testFinished name='cleanupTestCase()' flowId='tst_SkipBlacklisted']
+##teamcity[testSuiteFinished name='tst_SkipBlacklisted' flowId='tst_SkipBlacklisted']
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.txt b/tests/auto/testlib/selftests/expected_skipblacklisted.txt
new file mode 100644
index 0000000000..0e3dfa04e8
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.txt
@@ -0,0 +1,11 @@
+********* Start testing of tst_SkipBlacklisted *********
+Config: Using QtTest library
+PASS : tst_SkipBlacklisted::initTestCase()
+PASS : tst_SkipBlacklisted::pass()
+SKIP : tst_SkipBlacklisted::blacklisted() Skipping blacklisted test since -skipblacklisted option is set.
+SKIP : tst_SkipBlacklisted::blacklistedData() Skipping blacklisted test since -skipblacklisted option is set.
+PASS : tst_SkipBlacklisted::blacklistedData(should pass)
+SKIP : tst_SkipBlacklisted::blacklistedData() Skipping blacklisted test since -skipblacklisted option is set.
+PASS : tst_SkipBlacklisted::cleanupTestCase()
+Totals: 4 passed, 0 failed, 3 skipped, 0 blacklisted, 0ms
+********* Finished testing of tst_SkipBlacklisted *********
diff --git a/tests/auto/testlib/selftests/expected_skipblacklisted.xml b/tests/auto/testlib/selftests/expected_skipblacklisted.xml
new file mode 100644
index 0000000000..100fededb3
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipblacklisted.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestCase name="tst_SkipBlacklisted">
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="pass">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="blacklisted">
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="blacklistedData">
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[should pass]]></DataTag>
+ </Incident>
+ <Incident type="skip" file="" line="0">
+ <Description><![CDATA[Skipping blacklisted test since -skipblacklisted option is set.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.junitxml b/tests/auto/testlib/selftests/expected_skipcleanup.junitxml
index 88a5c250ff..5ef20a0b2e 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.junitxml
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.junitxml
@@ -6,8 +6,8 @@
<property name="QtBuild" value=""/>
</properties>
<testcase name="initTestCase" classname="tst_SkipCleanup" time="@TEST_DURATION@"/>
- <testcase name="aTestFunction" classname="tst_SkipCleanup" time="@TEST_DURATION@"/>
- <testcase name="cleanupTestCase" classname="tst_SkipCleanup" time="@TEST_DURATION@">
- <skipped message="Skip inside cleanupTestCase."/>
+ <testcase name="aTestFunction" classname="tst_SkipCleanup" time="@TEST_DURATION@">
+ <skipped message="Skip inside cleanup."/>
</testcase>
+ <testcase name="cleanupTestCase" classname="tst_SkipCleanup" time="@TEST_DURATION@"/>
</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.lightxml b/tests/auto/testlib/selftests/expected_skipcleanup.lightxml
index f2f8330bbc..c97f125227 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.lightxml
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.lightxml
@@ -8,13 +8,13 @@
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="aTestFunction">
- <Incident type="pass" file="" line="0" />
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp" line="0">
+ <Description><![CDATA[Skip inside cleanup.]]></Description>
+ </Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="cleanupTestCase">
- <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp" line="0">
- <Description><![CDATA[Skip inside cleanupTestCase.]]></Description>
- </Incident>
+ <Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.tap b/tests/auto/testlib/selftests/expected_skipcleanup.tap
index 4a3f8f852c..36d979a84a 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.tap
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.tap
@@ -1,8 +1,8 @@
TAP version 13
# tst_SkipCleanup
ok 1 - initTestCase()
-ok 2 - aTestFunction()
-ok 3 - cleanupTestCase() # SKIP Skip inside cleanupTestCase.
+ok 2 - aTestFunction() # SKIP Skip inside cleanup.
+ok 3 - cleanupTestCase()
1..3
# tests 3
# pass 2
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.teamcity b/tests/auto/testlib/selftests/expected_skipcleanup.teamcity
index bdc3c0f70a..b5c3709193 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.teamcity
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.teamcity
@@ -2,8 +2,8 @@
##teamcity[testStarted name='initTestCase()' flowId='tst_SkipCleanup']
##teamcity[testFinished name='initTestCase()' flowId='tst_SkipCleanup']
##teamcity[testStarted name='aTestFunction()' flowId='tst_SkipCleanup']
+##teamcity[testIgnored name='aTestFunction()' message='Skip inside cleanup. |[Loc: qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp(0)|]' flowId='tst_SkipCleanup']
##teamcity[testFinished name='aTestFunction()' flowId='tst_SkipCleanup']
##teamcity[testStarted name='cleanupTestCase()' flowId='tst_SkipCleanup']
-##teamcity[testIgnored name='cleanupTestCase()' message='Skip inside cleanupTestCase. |[Loc: qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp(0)|]' flowId='tst_SkipCleanup']
##teamcity[testFinished name='cleanupTestCase()' flowId='tst_SkipCleanup']
##teamcity[testSuiteFinished name='tst_SkipCleanup' flowId='tst_SkipCleanup']
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.txt b/tests/auto/testlib/selftests/expected_skipcleanup.txt
index 987e2b9a14..c1bd95e5a9 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.txt
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.txt
@@ -1,8 +1,8 @@
********* Start testing of tst_SkipCleanup *********
Config: Using QtTest library
PASS : tst_SkipCleanup::initTestCase()
-PASS : tst_SkipCleanup::aTestFunction()
-SKIP : tst_SkipCleanup::cleanupTestCase() Skip inside cleanupTestCase.
+SKIP : tst_SkipCleanup::aTestFunction() Skip inside cleanup.
Loc: [qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp(0)]
+PASS : tst_SkipCleanup::cleanupTestCase()
Totals: 2 passed, 0 failed, 1 skipped, 0 blacklisted, 0ms
********* Finished testing of tst_SkipCleanup *********
diff --git a/tests/auto/testlib/selftests/expected_skipcleanup.xml b/tests/auto/testlib/selftests/expected_skipcleanup.xml
index 77bf028b12..d839a69d8f 100644
--- a/tests/auto/testlib/selftests/expected_skipcleanup.xml
+++ b/tests/auto/testlib/selftests/expected_skipcleanup.xml
@@ -10,13 +10,13 @@
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="aTestFunction">
- <Incident type="pass" file="" line="0" />
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp" line="0">
+ <Description><![CDATA[Skip inside cleanup.]]></Description>
+ </Incident>
<Duration msecs="0"/>
</TestFunction>
<TestFunction name="cleanupTestCase">
- <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp" line="0">
- <Description><![CDATA[Skip inside cleanupTestCase.]]></Description>
- </Incident>
+ <Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.junitxml b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.junitxml
new file mode 100644
index 0000000000..6e1e10b2b2
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.junitxml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite name="tst_SkipCleanupTestCase" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="3" failures="0" errors="0" skipped="1" time="@TEST_DURATION@">
+ <properties>
+ <property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
+ <property name="QtBuild" value=""/>
+ </properties>
+ <testcase name="initTestCase" classname="tst_SkipCleanupTestCase" time="@TEST_DURATION@"/>
+ <testcase name="aTestFunction" classname="tst_SkipCleanupTestCase" time="@TEST_DURATION@"/>
+ <testcase name="cleanupTestCase" classname="tst_SkipCleanupTestCase" time="@TEST_DURATION@">
+ <skipped message="Skip inside cleanupTestCase."/>
+ </testcase>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.lightxml b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.lightxml
new file mode 100644
index 0000000000..29fa9ff602
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.lightxml
@@ -0,0 +1,20 @@
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="aTestFunction">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp" line="0">
+ <Description><![CDATA[Skip inside cleanupTestCase.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.tap b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.tap
new file mode 100644
index 0000000000..ee3d720d22
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.tap
@@ -0,0 +1,9 @@
+TAP version 13
+# tst_SkipCleanupTestCase
+ok 1 - initTestCase()
+ok 2 - aTestFunction()
+ok 3 - cleanupTestCase() # SKIP Skip inside cleanupTestCase.
+1..3
+# tests 3
+# pass 2
+# fail 0
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.teamcity b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.teamcity
new file mode 100644
index 0000000000..6a7e6bc379
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.teamcity
@@ -0,0 +1,9 @@
+##teamcity[testSuiteStarted name='tst_SkipCleanupTestCase' flowId='tst_SkipCleanupTestCase']
+##teamcity[testStarted name='initTestCase()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testFinished name='initTestCase()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testStarted name='aTestFunction()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testFinished name='aTestFunction()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testStarted name='cleanupTestCase()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testIgnored name='cleanupTestCase()' message='Skip inside cleanupTestCase. |[Loc: qtbase/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp(0)|]' flowId='tst_SkipCleanupTestCase']
+##teamcity[testFinished name='cleanupTestCase()' flowId='tst_SkipCleanupTestCase']
+##teamcity[testSuiteFinished name='tst_SkipCleanupTestCase' flowId='tst_SkipCleanupTestCase']
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.txt b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.txt
new file mode 100644
index 0000000000..4dc50dca7f
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.txt
@@ -0,0 +1,8 @@
+********* Start testing of tst_SkipCleanupTestCase *********
+Config: Using QtTest library
+PASS : tst_SkipCleanupTestCase::initTestCase()
+PASS : tst_SkipCleanupTestCase::aTestFunction()
+SKIP : tst_SkipCleanupTestCase::cleanupTestCase() Skip inside cleanupTestCase.
+ Loc: [qtbase/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp(0)]
+Totals: 2 passed, 0 failed, 1 skipped, 0 blacklisted, 0ms
+********* Finished testing of tst_SkipCleanupTestCase *********
diff --git a/tests/auto/testlib/selftests/expected_skipcleanuptestcase.xml b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.xml
new file mode 100644
index 0000000000..442d1a69b7
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_skipcleanuptestcase.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestCase name="tst_SkipCleanupTestCase">
+ <Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QtBuild/>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+ </Environment>
+ <TestFunction name="initTestCase">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="aTestFunction">
+ <Incident type="pass" file="" line="0" />
+ <Duration msecs="0"/>
+ </TestFunction>
+ <TestFunction name="cleanupTestCase">
+ <Incident type="skip" file="qtbase/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp" line="0">
+ <Description><![CDATA[Skip inside cleanupTestCase.]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
+ <Duration msecs="0"/>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_testlib.junitxml b/tests/auto/testlib/selftests/expected_testlib.junitxml
index 8e5bd0e37e..33c8bfe403 100644
--- a/tests/auto/testlib/selftests/expected_testlib.junitxml
+++ b/tests/auto/testlib/selftests/expected_testlib.junitxml
@@ -7,7 +7,10 @@
</properties>
<testcase name="initTestCase" classname="tst_TestLib" time="@TEST_DURATION@"/>
<testcase name="basics" classname="tst_TestLib" time="@TEST_DURATION@">
- <failure type="fail" message="Compared QObject pointers are not the same"/>
+ <failure type="fail" message="Compared QObject pointers are not the same">
+ <![CDATA[ Actual (QTest::testObject()): tst_TestLib/"TestObject"
+ Expected (nullptr) : "nullptr"]]>
+ </failure>
</testcase>
<testcase name="delays" classname="tst_TestLib" time="@TEST_DURATION@"/>
<testcase name="reals(zero)" classname="tst_TestLib" time="@TEST_DURATION@"/>
diff --git a/tests/auto/testlib/selftests/expected_testlib.lightxml b/tests/auto/testlib/selftests/expected_testlib.lightxml
index c4b7924e38..76435eb9f0 100644
--- a/tests/auto/testlib/selftests/expected_testlib.lightxml
+++ b/tests/auto/testlib/selftests/expected_testlib.lightxml
@@ -9,7 +9,9 @@
</TestFunction>
<TestFunction name="basics">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp" line="0">
- <Description><![CDATA[Compared QObject pointers are not the same]]></Description>
+ <Description><![CDATA[Compared QObject pointers are not the same
+ Actual (QTest::testObject()): tst_TestLib/"TestObject"
+ Expected (nullptr) : "nullptr"]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_testlib.tap b/tests/auto/testlib/selftests/expected_testlib.tap
index 020006904f..1fa7dc77c4 100644
--- a/tests/auto/testlib/selftests/expected_testlib.tap
+++ b/tests/auto/testlib/selftests/expected_testlib.tap
@@ -3,7 +3,12 @@ TAP version 13
ok 1 - initTestCase()
not ok 2 - basics()
---
- # Compared QObject pointers are not the same
+ type: QCOMPARE
+ message: Compared QObject pointers are not the same
+ wanted: "nullptr" (nullptr)
+ found: tst_TestLib/"TestObject" (QTest::testObject())
+ expected: "nullptr" (nullptr)
+ actual: tst_TestLib/"TestObject" (QTest::testObject())
at: tst_TestLib::basics() (qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp:0)
file: qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp
line: 0
diff --git a/tests/auto/testlib/selftests/expected_testlib.teamcity b/tests/auto/testlib/selftests/expected_testlib.teamcity
index b72dfde420..52f7fa244c 100644
--- a/tests/auto/testlib/selftests/expected_testlib.teamcity
+++ b/tests/auto/testlib/selftests/expected_testlib.teamcity
@@ -2,7 +2,7 @@
##teamcity[testStarted name='initTestCase()' flowId='tst_TestLib']
##teamcity[testFinished name='initTestCase()' flowId='tst_TestLib']
##teamcity[testStarted name='basics()' flowId='tst_TestLib']
-##teamcity[testFailed name='basics()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp(0)|]' details='Compared QObject pointers are not the same' flowId='tst_TestLib']
+##teamcity[testFailed name='basics()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp(0)|]' details='Compared QObject pointers are not the same|n Actual (QTest::testObject()): tst_TestLib/"TestObject"|n Expected (nullptr) : "nullptr"' flowId='tst_TestLib']
##teamcity[testFinished name='basics()' flowId='tst_TestLib']
##teamcity[testStarted name='delays()' flowId='tst_TestLib']
##teamcity[testFinished name='delays()' flowId='tst_TestLib']
diff --git a/tests/auto/testlib/selftests/expected_testlib.txt b/tests/auto/testlib/selftests/expected_testlib.txt
index b8437fa8b4..4d652626e9 100644
--- a/tests/auto/testlib/selftests/expected_testlib.txt
+++ b/tests/auto/testlib/selftests/expected_testlib.txt
@@ -2,6 +2,8 @@
Config: Using QtTest library
PASS : tst_TestLib::initTestCase()
FAIL! : tst_TestLib::basics() Compared QObject pointers are not the same
+ Actual (QTest::testObject()): tst_TestLib/"TestObject"
+ Expected (nullptr) : "nullptr"
Loc: [qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp(0)]
PASS : tst_TestLib::delays()
PASS : tst_TestLib::reals(zero)
diff --git a/tests/auto/testlib/selftests/expected_testlib.xml b/tests/auto/testlib/selftests/expected_testlib.xml
index b5e1c078f1..8b66b003d0 100644
--- a/tests/auto/testlib/selftests/expected_testlib.xml
+++ b/tests/auto/testlib/selftests/expected_testlib.xml
@@ -11,7 +11,9 @@
</TestFunction>
<TestFunction name="basics">
<Incident type="fail" file="qtbase/tests/auto/testlib/selftests/testlib/tst_testlib.cpp" line="0">
- <Description><![CDATA[Compared QObject pointers are not the same]]></Description>
+ <Description><![CDATA[Compared QObject pointers are not the same
+ Actual (QTest::testObject()): tst_TestLib/"TestObject"
+ Expected (nullptr) : "nullptr"]]></Description>
</Incident>
<Duration msecs="0"/>
</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_warnings.junitxml b/tests/auto/testlib/selftests/expected_warnings.junitxml
index 1799be8279..4fa8c88622 100644
--- a/tests/auto/testlib/selftests/expected_warnings.junitxml
+++ b/tests/auto/testlib/selftests/expected_warnings.junitxml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<testsuite name="tst_Warnings" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="15" failures="10" errors="0" skipped="0" time="@TEST_DURATION@">
+<testsuite name="tst_Warnings" timestamp="@TEST_START_TIME@" hostname="@HOSTNAME@" tests="16" failures="11" errors="0" skipped="0" time="@TEST_DURATION@">
<properties>
<property name="QTestVersion" value="@INSERT_QT_VERSION_HERE@"/>
<property name="QtVersion" value="@INSERT_QT_VERSION_HERE@"/>
@@ -107,5 +107,10 @@
<skipped message="My cabbage! :("/>
</testcase>
<testcase name="testFailOnWarningsAndIgnoreWarnings" classname="tst_Warnings" time="@TEST_DURATION@"/>
+ <testcase name="testFailOnTemporaryObjectDestruction" classname="tst_Warnings" time="@TEST_DURATION@">
+ <failure type="fail" message="Received a warning that resulted in a failure:">
+ <![CDATA[Running low on toothpaste!]]>
+ </failure>
+ </testcase>
<testcase name="cleanupTestCase" classname="tst_Warnings" time="@TEST_DURATION@"/>
</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_warnings.lightxml b/tests/auto/testlib/selftests/expected_warnings.lightxml
index 37070cad00..50b6c4bdb6 100644
--- a/tests/auto/testlib/selftests/expected_warnings.lightxml
+++ b/tests/auto/testlib/selftests/expected_warnings.lightxml
@@ -201,6 +201,13 @@ Ran out of cabbage!]]></Description>
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="testFailOnTemporaryObjectDestruction">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp" line="0">
+ <Description><![CDATA[Received a warning that resulted in a failure:
+Running low on toothpaste!]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="cleanupTestCase">
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expected_warnings.tap b/tests/auto/testlib/selftests/expected_warnings.tap
index 9ea9b46bcb..2667574064 100644
--- a/tests/auto/testlib/selftests/expected_warnings.tap
+++ b/tests/auto/testlib/selftests/expected_warnings.tap
@@ -159,8 +159,16 @@ Ran out of cabbage!
...
ok 13 - testFailOnWarningsThenSkip() # SKIP My cabbage! :(
ok 14 - testFailOnWarningsAndIgnoreWarnings()
-ok 15 - cleanupTestCase()
-1..15
-# tests 15
+not ok 15 - testFailOnTemporaryObjectDestruction()
+ ---
+ # Received a warning that resulted in a failure:
+Running low on toothpaste!
+ at: tst_Warnings::testFailOnTemporaryObjectDestruction() (qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp:0)
+ file: qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp
+ line: 0
+ ...
+ok 16 - cleanupTestCase()
+1..16
+# tests 16
# pass 5
-# fail 10
+# fail 11
diff --git a/tests/auto/testlib/selftests/expected_warnings.teamcity b/tests/auto/testlib/selftests/expected_warnings.teamcity
index 67dd039ebf..a4bd7139a6 100644
--- a/tests/auto/testlib/selftests/expected_warnings.teamcity
+++ b/tests/auto/testlib/selftests/expected_warnings.teamcity
@@ -57,6 +57,9 @@
##teamcity[testFinished name='testFailOnWarningsThenSkip()' flowId='tst_Warnings']
##teamcity[testStarted name='testFailOnWarningsAndIgnoreWarnings()' flowId='tst_Warnings']
##teamcity[testFinished name='testFailOnWarningsAndIgnoreWarnings()' flowId='tst_Warnings']
+##teamcity[testStarted name='testFailOnTemporaryObjectDestruction()' flowId='tst_Warnings']
+##teamcity[testFailed name='testFailOnTemporaryObjectDestruction()' message='Failure! |[Loc: qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp(0)|]' details='Received a warning that resulted in a failure:|nRunning low on toothpaste!' flowId='tst_Warnings']
+##teamcity[testFinished name='testFailOnTemporaryObjectDestruction()' flowId='tst_Warnings']
##teamcity[testStarted name='cleanupTestCase()' flowId='tst_Warnings']
##teamcity[testFinished name='cleanupTestCase()' flowId='tst_Warnings']
##teamcity[testSuiteFinished name='tst_Warnings' flowId='tst_Warnings']
diff --git a/tests/auto/testlib/selftests/expected_warnings.txt b/tests/auto/testlib/selftests/expected_warnings.txt
index 5037eb87df..72e2201f38 100644
--- a/tests/auto/testlib/selftests/expected_warnings.txt
+++ b/tests/auto/testlib/selftests/expected_warnings.txt
@@ -69,6 +69,9 @@ Ran out of cabbage!
SKIP : tst_Warnings::testFailOnWarningsThenSkip() My cabbage! :(
Loc: [qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp(0)]
PASS : tst_Warnings::testFailOnWarningsAndIgnoreWarnings()
+FAIL! : tst_Warnings::testFailOnTemporaryObjectDestruction() Received a warning that resulted in a failure:
+Running low on toothpaste!
+ Loc: [qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp(0)]
PASS : tst_Warnings::cleanupTestCase()
-Totals: 5 passed, 10 failed, 0 skipped, 0 blacklisted, 0ms
+Totals: 5 passed, 11 failed, 0 skipped, 0 blacklisted, 0ms
********* Finished testing of tst_Warnings *********
diff --git a/tests/auto/testlib/selftests/expected_warnings.xml b/tests/auto/testlib/selftests/expected_warnings.xml
index 8da8404a16..808f59768c 100644
--- a/tests/auto/testlib/selftests/expected_warnings.xml
+++ b/tests/auto/testlib/selftests/expected_warnings.xml
@@ -203,6 +203,13 @@ Ran out of cabbage!]]></Description>
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
</TestFunction>
+ <TestFunction name="testFailOnTemporaryObjectDestruction">
+ <Incident type="fail" file="qtbase/tests/auto/testlib/selftests/warnings/tst_warnings.cpp" line="0">
+ <Description><![CDATA[Received a warning that resulted in a failure:
+Running low on toothpaste!]]></Description>
+ </Incident>
+ <Duration msecs="0"/>
+ </TestFunction>
<TestFunction name="cleanupTestCase">
<Incident type="pass" file="" line="0" />
<Duration msecs="0"/>
diff --git a/tests/auto/testlib/selftests/expectfail/CMakeLists.txt b/tests/auto/testlib/selftests/expectfail/CMakeLists.txt
index 84aa93d1ca..d89e03ebef 100644
--- a/tests/auto/testlib/selftests/expectfail/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/expectfail/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from expectfail.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## expectfail Binary:
#####################################################################
qt_internal_add_executable(expectfail
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_expectfail.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(expectfail)
-# special case end
diff --git a/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp b/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp
index 147568b566..2e67012cc8 100644
--- a/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp
+++ b/tests/auto/testlib/selftests/expectfail/tst_expectfail.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/extendedcompare/CMakeLists.txt b/tests/auto/testlib/selftests/extendedcompare/CMakeLists.txt
new file mode 100644
index 0000000000..3b2fbb84ec
--- /dev/null
+++ b/tests/auto/testlib/selftests/extendedcompare/CMakeLists.txt
@@ -0,0 +1,14 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+qt_internal_add_executable(extendedcompare
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_extendedcompare.cpp
+ LIBRARIES
+ Qt::Test
+)
+
+qt_internal_apply_testlib_coverage_options(extendedcompare)
diff --git a/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp b/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
new file mode 100644
index 0000000000..70a7798667
--- /dev/null
+++ b/tests/auto/testlib/selftests/extendedcompare/tst_extendedcompare.cpp
@@ -0,0 +1,336 @@
+// Copyright (C) 2022 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QTest>
+#include <QtCore/qtimer.h>
+
+QT_BEGIN_NAMESPACE
+
+#define COMPARE_WITH_TYPE(Type, arg1, arg2) \
+switch (Type) { \
+ case QTest::ComparisonOperation::CustomCompare: QCOMPARE(arg1, arg2); break; \
+ case QTest::ComparisonOperation::Equal: QCOMPARE_EQ(arg1, arg2); break; \
+ case QTest::ComparisonOperation::NotEqual: QCOMPARE_NE(arg1, arg2); break; \
+ case QTest::ComparisonOperation::LessThan: QCOMPARE_LT(arg1, arg2); break; \
+ case QTest::ComparisonOperation::LessThanOrEqual: QCOMPARE_LE(arg1, arg2); break; \
+ case QTest::ComparisonOperation::GreaterThan: QCOMPARE_GT(arg1, arg2); break; \
+ case QTest::ComparisonOperation::GreaterThanOrEqual: QCOMPARE_GE(arg1, arg2); break; \
+}
+
+class MyClass
+{
+public:
+ MyClass(int v) : m_value(v) {}
+ int value() const { return m_value; }
+ void setValue(int v) { m_value = v; }
+
+ friend bool operator==(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value == rhs.m_value;
+ }
+ friend bool operator!=(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value != rhs.m_value;
+ }
+ friend bool operator<(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value < rhs.m_value;
+ }
+ friend bool operator<=(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value <= rhs.m_value;
+ }
+ friend bool operator>(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value > rhs.m_value;
+ }
+ friend bool operator>=(const MyClass &lhs, const MyClass &rhs)
+ {
+ return lhs.m_value >= rhs.m_value;
+ }
+
+private:
+ int m_value;
+};
+
+// ClassWithPointerGetter returns a pointer, so pointers will be used during
+// comparison. To get consistent results, we need to make sure that the pointer
+// returned by first object is always smaller than the one returned by the
+// second object.
+// We will make sure that the objects are not destroyed until the comparison
+// is finished by checking that the output does not contain 'MyClass(-1)'.
+static MyClass valuesForClassWithPointerGetter[] = { MyClass(-1), MyClass(-1) };
+
+class ClassWithPointerGetter
+{
+ Q_DISABLE_COPY_MOVE(ClassWithPointerGetter)
+public:
+ explicit ClassWithPointerGetter(int index) : m_index(index)
+ {
+ Q_ASSERT(m_index >= 0 && m_index < 2);
+ valuesForClassWithPointerGetter[m_index].setValue(indexToValue(m_index));
+ }
+ ~ClassWithPointerGetter()
+ {
+ valuesForClassWithPointerGetter[m_index].setValue(-1);
+ }
+
+ const MyClass *getValuePointer() const { return &valuesForClassWithPointerGetter[m_index]; }
+
+ static int indexToValue(int index) { return 2 - index; }
+ static int valueToIndex(int value) { return 2 - value; }
+
+private:
+ int m_index;
+};
+
+// An auxiliary function to get a temporary object
+static ClassWithPointerGetter getClassForValue(int val)
+{
+ return ClassWithPointerGetter(val);
+}
+
+// various toString() overloads
+namespace QTest {
+
+template <> char *toString(const int *const &val)
+{
+ return val ? toString(*val) : toString(nullptr);
+}
+
+} // namespace QTest
+
+char *toString(const MyClass &val)
+{
+ char *msg = new char[128];
+ qsnprintf(msg, 128, "MyClass(%d)", val.value());
+ return msg;
+}
+
+char *toString(const MyClass *val)
+{
+ if (val) {
+ char *msg = new char[128];
+ const auto value = val->value();
+ qsnprintf(msg, 128, "MyClass(%d) on memory address with index %d", value,
+ ClassWithPointerGetter::valueToIndex(value));
+ return msg;
+ }
+ return toString(nullptr);
+}
+
+enum MyUnregisteredEnum { MyUnregisteredEnumValue1, MyUnregisteredEnumValue2 };
+
+class tst_ExtendedCompare : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void initTestCase_data();
+ void compareInts_data();
+ void compareInts();
+ void compareFloats_data();
+ void compareFloats();
+ void compareDoubles_data();
+ void compareDoubles();
+ void comparePointers_data();
+ void comparePointers();
+ void compareToNullptr_data();
+ void compareToNullptr();
+ void compareUnregistereEnum_data();
+ void compareUnregistereEnum();
+ void compareRegistereEnum_data();
+ void compareRegistereEnum();
+ void compareCustomTypes_data();
+ void compareCustomTypes();
+ void checkComparisonForTemporaryObjects();
+ void checkComparisonWithTimeout();
+};
+
+void tst_ExtendedCompare::initTestCase_data()
+{
+ qRegisterMetaType<QTest::ComparisonOperation>();
+ QTest::addColumn<QTest::ComparisonOperation>("operation");
+ // Do not test plain old QCOMPARE() intentionally, as it's tested in other
+ // places.
+ QTest::newRow("EQ") << QTest::ComparisonOperation::Equal;
+ QTest::newRow("NE") << QTest::ComparisonOperation::NotEqual;
+ QTest::newRow("LT") << QTest::ComparisonOperation::LessThan;
+ QTest::newRow("LE") << QTest::ComparisonOperation::LessThanOrEqual;
+ QTest::newRow("GT") << QTest::ComparisonOperation::GreaterThan;
+ QTest::newRow("GE") << QTest::ComparisonOperation::GreaterThanOrEqual;
+}
+
+template <typename T> static void generateData(T val1, T val2)
+{
+ Q_ASSERT(val1 < val2);
+ QTest::addColumn<T>("lhs");
+ QTest::addColumn<T>("rhs");
+ QTest::newRow("left == right") << val1 << val1;
+ QTest::newRow("left < right") << val1 << val2;
+ QTest::newRow("left > right") << val2 << val1;
+}
+
+template <typename T> static void executeComparison()
+{
+ QFETCH_GLOBAL(QTest::ComparisonOperation, operation);
+ QFETCH(T, lhs);
+ QFETCH(T, rhs);
+ switch (operation) {
+ case QTest::ComparisonOperation::CustomCompare: QCOMPARE(lhs, rhs); break;
+ case QTest::ComparisonOperation::Equal: QCOMPARE_EQ(lhs, rhs); break;
+ case QTest::ComparisonOperation::NotEqual: QCOMPARE_NE(lhs, rhs); break;
+ case QTest::ComparisonOperation::LessThan: QCOMPARE_LT(lhs, rhs); break;
+ case QTest::ComparisonOperation::LessThanOrEqual: QCOMPARE_LE(lhs, rhs); break;
+ case QTest::ComparisonOperation::GreaterThan: QCOMPARE_GT(lhs, rhs); break;
+ case QTest::ComparisonOperation::GreaterThanOrEqual: QCOMPARE_GE(lhs, rhs); break;
+ }
+}
+
+void tst_ExtendedCompare::compareInts_data()
+{
+ generateData(1, 2);
+}
+
+void tst_ExtendedCompare::compareInts()
+{
+ executeComparison<int>();
+}
+
+void tst_ExtendedCompare::compareFloats_data()
+{
+ generateData(1.0f, 1.1f);
+}
+
+void tst_ExtendedCompare::compareFloats()
+{
+ executeComparison<float>();
+}
+
+void tst_ExtendedCompare::compareDoubles_data()
+{
+ generateData(0.0, 0.1);
+}
+
+void tst_ExtendedCompare::compareDoubles()
+{
+ executeComparison<double>();
+}
+
+void tst_ExtendedCompare::comparePointers_data()
+{
+ static constexpr int values[] = { 1, 2 };
+ generateData(&values[0], &values[1]);
+}
+
+void tst_ExtendedCompare::comparePointers()
+{
+ executeComparison<const int *>();
+}
+
+void tst_ExtendedCompare::compareToNullptr_data()
+{
+ static const int *ptr = nullptr;
+ static const int value = 1;
+ generateData(ptr, &value);
+}
+
+void tst_ExtendedCompare::compareToNullptr()
+{
+ executeComparison<const int *>();
+}
+
+void tst_ExtendedCompare::compareUnregistereEnum_data()
+{
+ generateData(MyUnregisteredEnumValue1, MyUnregisteredEnumValue2);
+}
+
+void tst_ExtendedCompare::compareUnregistereEnum()
+{
+ executeComparison<MyUnregisteredEnum>();
+}
+
+void tst_ExtendedCompare::compareRegistereEnum_data()
+{
+ generateData(Qt::Monday, Qt::Sunday);
+}
+
+void tst_ExtendedCompare::compareRegistereEnum()
+{
+ executeComparison<Qt::DayOfWeek>();
+}
+
+void tst_ExtendedCompare::compareCustomTypes_data()
+{
+ static const MyClass val1(1);
+ static const MyClass val2(2);
+ generateData(val1, val2);
+}
+
+void tst_ExtendedCompare::compareCustomTypes()
+{
+ executeComparison<MyClass>();
+}
+
+void tst_ExtendedCompare::checkComparisonForTemporaryObjects()
+{
+ // This test checks that temporary objects live until the end of
+ // comparison.
+
+ QFETCH_GLOBAL(QTest::ComparisonOperation, operation);
+ COMPARE_WITH_TYPE(operation, getClassForValue(0).getValuePointer(),
+ getClassForValue(1).getValuePointer());
+}
+
+class ClassWithDeferredSetter : public MyClass
+{
+public:
+ ClassWithDeferredSetter(int value) : MyClass(value) {}
+
+ void setValueDeferred(int value)
+ {
+ QTimer::singleShot(100, [this, value] { setValue(value); });
+ }
+};
+
+char *toString(const ClassWithDeferredSetter &val)
+{
+ char *msg = new char[128];
+ qsnprintf(msg, 128, "ClassWithDeferredSetter(%d)", val.value());
+ return msg;
+}
+
+void tst_ExtendedCompare::checkComparisonWithTimeout()
+{
+ QFETCH_GLOBAL(QTest::ComparisonOperation, operation);
+ ClassWithDeferredSetter c(0);
+ c.setValueDeferred(1);
+ switch (operation) {
+ case QTest::ComparisonOperation::Equal:
+ QTRY_COMPARE_EQ_WITH_TIMEOUT(c, ClassWithDeferredSetter(1), 300);
+ break;
+ case QTest::ComparisonOperation::NotEqual:
+ QTRY_COMPARE_NE_WITH_TIMEOUT(c, ClassWithDeferredSetter(0), 300);
+ break;
+ case QTest::ComparisonOperation::LessThan:
+ QTRY_COMPARE_LT_WITH_TIMEOUT(c, ClassWithDeferredSetter(0), 300);
+ break;
+ case QTest::ComparisonOperation::LessThanOrEqual:
+ QTRY_COMPARE_LE_WITH_TIMEOUT(c, ClassWithDeferredSetter(-1), 300);
+ break;
+ case QTest::ComparisonOperation::GreaterThan:
+ QTRY_COMPARE_GT_WITH_TIMEOUT(c, ClassWithDeferredSetter(1), 300);
+ break;
+ case QTest::ComparisonOperation::GreaterThanOrEqual:
+ QTRY_COMPARE_GE_WITH_TIMEOUT(c, ClassWithDeferredSetter(1), 300);
+ break;
+ case QTest::ComparisonOperation::CustomCompare:
+ QFAIL("Unexpected comparison operation");
+ break;
+ }
+}
+
+QT_END_NAMESPACE
+
+QTEST_MAIN(tst_ExtendedCompare)
+#include "tst_extendedcompare.moc"
diff --git a/tests/auto/testlib/selftests/failcleanup/CMakeLists.txt b/tests/auto/testlib/selftests/failcleanup/CMakeLists.txt
index e45d1b528b..0b582ffdc3 100644
--- a/tests/auto/testlib/selftests/failcleanup/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/failcleanup/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from failcleanup.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## failcleanup Binary:
#####################################################################
qt_internal_add_executable(failcleanup
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_failcleanup.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(failcleanup)
-# special case end
diff --git a/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp b/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp
index f0c0af7549..2e519e0f91 100644
--- a/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp
+++ b/tests/auto/testlib/selftests/failcleanup/tst_failcleanup.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
@@ -8,7 +8,7 @@ class tst_FailCleanup: public QObject
Q_OBJECT
private slots:
void aTestFunction() const;
- void cleanupTestCase() const;
+ void cleanup() const;
};
void tst_FailCleanup::aTestFunction() const
@@ -16,9 +16,9 @@ void tst_FailCleanup::aTestFunction() const
QVERIFY(true);
}
-void tst_FailCleanup::cleanupTestCase() const
+void tst_FailCleanup::cleanup() const
{
- QVERIFY2(false, "Fail inside cleanupTestCase");
+ QVERIFY2(false, "Fail inside cleanup");
}
QTEST_APPLESS_MAIN(tst_FailCleanup)
diff --git a/tests/auto/testlib/selftests/failcleanuptestcase/CMakeLists.txt b/tests/auto/testlib/selftests/failcleanuptestcase/CMakeLists.txt
new file mode 100644
index 0000000000..1a1417f76c
--- /dev/null
+++ b/tests/auto/testlib/selftests/failcleanuptestcase/CMakeLists.txt
@@ -0,0 +1,18 @@
+#####################################################################
+## failcleanuptestcase Binary:
+#####################################################################
+
+qt_internal_add_executable(failcleanuptestcase
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_failcleanuptestcase.cpp
+ LIBRARIES
+ Qt::Test
+)
+
+## Scopes:
+#####################################################################
+
+qt_internal_apply_testlib_coverage_options(failcleanuptestcase)
diff --git a/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp b/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp
new file mode 100644
index 0000000000..e90f6759db
--- /dev/null
+++ b/tests/auto/testlib/selftests/failcleanuptestcase/tst_failcleanuptestcase.cpp
@@ -0,0 +1,25 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QTest>
+
+class tst_FailCleanupTestCase: public QObject
+{
+Q_OBJECT
+private slots:
+ void aTestFunction() const;
+ void cleanupTestCase() const;
+};
+
+void tst_FailCleanupTestCase::aTestFunction() const
+{
+ QVERIFY(true);
+}
+
+void tst_FailCleanupTestCase::cleanupTestCase() const
+{
+ QVERIFY2(false, "Fail inside cleanupTestCase");
+}
+
+QTEST_APPLESS_MAIN(tst_FailCleanupTestCase)
+#include "tst_failcleanuptestcase.moc"
diff --git a/tests/auto/testlib/selftests/faildatatype/CMakeLists.txt b/tests/auto/testlib/selftests/faildatatype/CMakeLists.txt
index 0abba3e021..a0af051f74 100644
--- a/tests/auto/testlib/selftests/faildatatype/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/faildatatype/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from faildatatype.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## faildatatype Binary:
#####################################################################
qt_internal_add_executable(faildatatype
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_faildatatype.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(faildatatype)
-# special case end
diff --git a/tests/auto/testlib/selftests/faildatatype/tst_faildatatype.cpp b/tests/auto/testlib/selftests/faildatatype/tst_faildatatype.cpp
index 4f63e8c995..4605933636 100644
--- a/tests/auto/testlib/selftests/faildatatype/tst_faildatatype.cpp
+++ b/tests/auto/testlib/selftests/faildatatype/tst_faildatatype.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/failfetchtype/CMakeLists.txt b/tests/auto/testlib/selftests/failfetchtype/CMakeLists.txt
index 0ce60f591e..503d2b33db 100644
--- a/tests/auto/testlib/selftests/failfetchtype/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/failfetchtype/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from failfetchtype.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## failfetchtype Binary:
#####################################################################
qt_internal_add_executable(failfetchtype
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_failfetchtype.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(failfetchtype)
-# special case end
diff --git a/tests/auto/testlib/selftests/failfetchtype/tst_failfetchtype.cpp b/tests/auto/testlib/selftests/failfetchtype/tst_failfetchtype.cpp
index 8fdc184a85..4516b76461 100644
--- a/tests/auto/testlib/selftests/failfetchtype/tst_failfetchtype.cpp
+++ b/tests/auto/testlib/selftests/failfetchtype/tst_failfetchtype.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/failinit/CMakeLists.txt b/tests/auto/testlib/selftests/failinit/CMakeLists.txt
index b6995e591d..9d13c2baf6 100644
--- a/tests/auto/testlib/selftests/failinit/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/failinit/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from failinit.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## failinit Binary:
#####################################################################
qt_internal_add_executable(failinit
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_failinit.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(failinit)
-# special case end
diff --git a/tests/auto/testlib/selftests/failinit/tst_failinit.cpp b/tests/auto/testlib/selftests/failinit/tst_failinit.cpp
index 7e71c3a47c..dbf91101eb 100644
--- a/tests/auto/testlib/selftests/failinit/tst_failinit.cpp
+++ b/tests/auto/testlib/selftests/failinit/tst_failinit.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/failinitdata/CMakeLists.txt b/tests/auto/testlib/selftests/failinitdata/CMakeLists.txt
index dcc2bdafde..0bb210fbc3 100644
--- a/tests/auto/testlib/selftests/failinitdata/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/failinitdata/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from failinitdata.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## failinitdata Binary:
#####################################################################
qt_internal_add_executable(failinitdata
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_failinitdata.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(failinitdata)
-# special case end
diff --git a/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp b/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp
index a464516513..df7b4de981 100644
--- a/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp
+++ b/tests/auto/testlib/selftests/failinitdata/tst_failinitdata.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/fetchbogus/CMakeLists.txt b/tests/auto/testlib/selftests/fetchbogus/CMakeLists.txt
index 1f5f5cedf0..a47a1fbf19 100644
--- a/tests/auto/testlib/selftests/fetchbogus/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/fetchbogus/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from fetchbogus.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## fetchbogus Binary:
#####################################################################
qt_internal_add_executable(fetchbogus
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_fetchbogus.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(fetchbogus)
-# special case end
diff --git a/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp b/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp
index a9b2d3c937..72eacadb3d 100644
--- a/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp
+++ b/tests/auto/testlib/selftests/fetchbogus/tst_fetchbogus.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/findtestdata/CMakeLists.txt b/tests/auto/testlib/selftests/findtestdata/CMakeLists.txt
index 9c06a09c18..9422861e22 100644
--- a/tests/auto/testlib/selftests/findtestdata/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/findtestdata/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from findtestdata.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## findtestdata Binary:
#####################################################################
qt_internal_add_executable(findtestdata
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
findtestdata.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
@@ -29,6 +31,4 @@ qt_internal_add_resource(findtestdata "findtestdata"
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(findtestdata)
-# special case end
diff --git a/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp b/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp
index f4a9d20fb7..9b74ffd3a6 100644
--- a/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp
+++ b/tests/auto/testlib/selftests/findtestdata/findtestdata.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -26,7 +26,7 @@ void FindTestData::initTestCase()
// verify that our qt.conf is working as expected.
QString app_path = QCoreApplication::applicationDirPath();
QString install_path = app_path
-#ifdef Q_OS_MAC
+#ifdef Q_OS_DARWIN
+ "/Contents"
#endif
+ "/tests";
@@ -75,7 +75,7 @@ void FindTestData::paths()
// 2. at the test install path (faked via qt.conf)
QString testfile_path2 = app_path
-#ifdef Q_OS_MAC
+#ifdef Q_OS_DARWIN
+ "/Contents"
#endif
+ "/tests/findtestdata/" TESTFILE;
diff --git a/tests/auto/testlib/selftests/float/CMakeLists.txt b/tests/auto/testlib/selftests/float/CMakeLists.txt
index 02c61acff3..448c3e962e 100644
--- a/tests/auto/testlib/selftests/float/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/float/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from float.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## float Binary:
#####################################################################
qt_internal_add_executable(float
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_float.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
Qt::TestPrivate
)
@@ -17,6 +19,4 @@ qt_internal_add_executable(float
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(float)
-# special case end
diff --git a/tests/auto/testlib/selftests/float/tst_float.cpp b/tests/auto/testlib/selftests/float/tst_float.cpp
index db6f9896ab..9af14f1e89 100644
--- a/tests/auto/testlib/selftests/float/tst_float.cpp
+++ b/tests/auto/testlib/selftests/float/tst_float.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QtCore/qfloat16.h>
diff --git a/tests/auto/testlib/selftests/generate_expected_output.py b/tests/auto/testlib/selftests/generate_expected_output.py
index 5fbfc99567..350d20fa27 100755
--- a/tests/auto/testlib/selftests/generate_expected_output.py
+++ b/tests/auto/testlib/selftests/generate_expected_output.py
@@ -31,15 +31,17 @@ TESTS = ['assert', 'badxml', 'benchlibcallgrind', 'benchlibcounting',
'benchlibeventcounter', 'benchliboptions', 'benchlibtickcounter',
'benchlibwalltime', 'blacklisted', 'cmptest', 'commandlinedata',
'counting', 'crashes', 'datatable', 'datetime', 'deleteLater',
- 'deleteLater_noApp', 'differentexec', 'exceptionthrow', 'expectfail',
- 'failcleanup', 'faildatatype', 'failfetchtype', 'failinit',
- 'failinitdata', 'fetchbogus', 'findtestdata', 'float', 'globaldata',
- 'longstring', 'maxwarnings', 'mouse', 'multiexec', 'pairdiagnostics', 'pass',
+ 'deleteLater_noApp', 'differentexec', 'eventloop', 'exceptionthrow',
+ 'expectfail', "extendedcompare", 'failcleanup', 'failcleanuptestcase',
+ 'faildatatype', 'failfetchtype', 'failinit', 'failinitdata',
+ 'fetchbogus', 'findtestdata', 'float', 'globaldata', 'longstring',
+ 'maxwarnings', 'mouse', 'multiexec', 'pairdiagnostics', 'pass',
'printdatatags', 'printdatatagswithglobaltags', 'qexecstringlist',
- 'signaldumper', 'silent', 'singleskip', 'skip', 'skipcleanup',
- 'skipinit', 'skipinitdata', 'sleep', 'strcmp', 'subtest', 'testlib',
- 'tuplediagnostics', 'verbose1', 'verbose2', 'verifyexceptionthrown',
- 'warnings', 'watchdog', 'junit', 'keyboard']
+ 'signaldumper', 'silent', 'silent_fatal', 'singleskip', 'skip',
+ 'skipblacklisted', 'skipcleanup', 'skipcleanuptestcase', 'skipinit',
+ 'skipinitdata', 'sleep', 'strcmp', 'subtest', 'testlib', 'tuplediagnostics',
+ 'verbose1', 'verbose2', 'verifyexceptionthrown', 'warnings', 'watchdog',
+ 'junit', 'keyboard']
class Fail (Exception): pass
@@ -200,9 +202,9 @@ class Scanner (object):
del re
-# Keep in sync with tst_selftests.cpp's processEnvironment():
+# Keep in sync with tst_selftests.cpp's testEnvironment():
def baseEnv(platname=None,
- keep=('PATH', 'QT_QPA_PLATFORM'),
+ keep=('PATH', 'QT_QPA_PLATFORM', 'QTEST_THROW_ON_FAIL', 'QTEST_THROW_ON_SKIP', 'ASAN_OPTIONS'),
posix=('HOME', 'USER', 'QEMU_SET_ENV', 'QEMU_LD_PREFIX'),
nonapple=('DISPLAY', 'XAUTHORITY', 'XAUTHLOCALHOSTNAME'), # and XDG_*
# Don't actually know how to test for QNX, so this is ignored:
@@ -251,9 +253,9 @@ def testEnv(testname,
"watchdog": { "QTEST_FUNCTION_TIMEOUT": "100" },
},
# Must match tst_Selftests::runSubTest_data():
- crashers = ("assert", "blacklisted", "crashes", "crashedterminate",
+ crashers = ("assert", "crashes", "crashedterminate",
"exceptionthrow", "faildatatype", "failfetchtype",
- "fetchbogus", "silent", "watchdog")):
+ "fetchbogus", "silent_fatal", "watchdog")):
"""Determine the environment in which to run a test."""
data = baseEnv()
if testname in crashers:
@@ -280,6 +282,7 @@ def shouldIgnoreTest(testname, format):
"printdatatags",
"printdatatagswithglobaltags",
"silent",
+ "silent_fatal",
"crashes",
"benchlibcallgrind",
"float",
diff --git a/tests/auto/testlib/selftests/globaldata/CMakeLists.txt b/tests/auto/testlib/selftests/globaldata/CMakeLists.txt
index 0793b6c4e3..2bb7d94e51 100644
--- a/tests/auto/testlib/selftests/globaldata/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/globaldata/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from globaldata.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## globaldata Binary:
#####################################################################
qt_internal_add_executable(globaldata
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_globaldata.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(globaldata)
-# special case end
diff --git a/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp b/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp
index a9a31c9830..3b589a9962 100644
--- a/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp
+++ b/tests/auto/testlib/selftests/globaldata/tst_globaldata.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/junit/CMakeLists.txt b/tests/auto/testlib/selftests/junit/CMakeLists.txt
index 94138b6577..a736d2a15c 100644
--- a/tests/auto/testlib/selftests/junit/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/junit/CMakeLists.txt
@@ -1,10 +1,13 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
qt_internal_add_executable(junit
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_junit.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
diff --git a/tests/auto/testlib/selftests/junit/tst_junit.cpp b/tests/auto/testlib/selftests/junit/tst_junit.cpp
index f9d1edd92a..dfc55cc40d 100644
--- a/tests/auto/testlib/selftests/junit/tst_junit.cpp
+++ b/tests/auto/testlib/selftests/junit/tst_junit.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/keyboard/CMakeLists.txt b/tests/auto/testlib/selftests/keyboard/CMakeLists.txt
index 998de7f0ed..a1c1482e04 100644
--- a/tests/auto/testlib/selftests/keyboard/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/keyboard/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from keyboard.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## keyboard Binary:
#####################################################################
qt_internal_add_executable(keyboard
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_keyboard.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Gui
Qt::GuiPrivate
Qt::Test
@@ -19,6 +21,4 @@ qt_internal_add_executable(keyboard
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(keyboard)
-# special case end
diff --git a/tests/auto/testlib/selftests/keyboard/tst_keyboard.cpp b/tests/auto/testlib/selftests/keyboard/tst_keyboard.cpp
index 8ce15042db..1d6b8bb962 100644
--- a/tests/auto/testlib/selftests/keyboard/tst_keyboard.cpp
+++ b/tests/auto/testlib/selftests/keyboard/tst_keyboard.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtTest/qtest.h>
#include <QtGui/qwindow.h>
diff --git a/tests/auto/testlib/selftests/longstring/CMakeLists.txt b/tests/auto/testlib/selftests/longstring/CMakeLists.txt
index 1b123b1e0c..0528ef0255 100644
--- a/tests/auto/testlib/selftests/longstring/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/longstring/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from longstring.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## longstring Binary:
#####################################################################
qt_internal_add_executable(longstring
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_longstring.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(longstring)
-# special case end
diff --git a/tests/auto/testlib/selftests/longstring/tst_longstring.cpp b/tests/auto/testlib/selftests/longstring/tst_longstring.cpp
index 7855c5c279..ce9d428831 100644
--- a/tests/auto/testlib/selftests/longstring/tst_longstring.cpp
+++ b/tests/auto/testlib/selftests/longstring/tst_longstring.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/maxwarnings/CMakeLists.txt b/tests/auto/testlib/selftests/maxwarnings/CMakeLists.txt
index 6c2eca0935..e5f0070b79 100644
--- a/tests/auto/testlib/selftests/maxwarnings/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/maxwarnings/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from maxwarnings.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## maxwarnings Binary:
#####################################################################
qt_internal_add_executable(maxwarnings
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
maxwarnings.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(maxwarnings)
-# special case end
diff --git a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp
index ff0fd2a196..5d47b058a7 100644
--- a/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp
+++ b/tests/auto/testlib/selftests/maxwarnings/maxwarnings.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/mouse/CMakeLists.txt b/tests/auto/testlib/selftests/mouse/CMakeLists.txt
index aab32b06ba..9eb4aec2ce 100644
--- a/tests/auto/testlib/selftests/mouse/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/mouse/CMakeLists.txt
@@ -1,15 +1,17 @@
-# Generated from mouse.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## mouse Binary:
#####################################################################
qt_internal_add_executable(mouse
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_mouse.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Gui
Qt::GuiPrivate
Qt::Test
@@ -19,6 +21,4 @@ qt_internal_add_executable(mouse
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(mouse)
-# special case end
diff --git a/tests/auto/testlib/selftests/mouse/tst_mouse.cpp b/tests/auto/testlib/selftests/mouse/tst_mouse.cpp
index b2e9c61baf..dd79add5f3 100644
--- a/tests/auto/testlib/selftests/mouse/tst_mouse.cpp
+++ b/tests/auto/testlib/selftests/mouse/tst_mouse.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
#include <QtGui/QWindow>
@@ -24,6 +24,7 @@ private slots:
void stateHandlingPart2();
void deterministicEvents_data();
void deterministicEvents();
+ void doubleClick();
};
class MouseWindow : public QWindow
@@ -251,5 +252,53 @@ void tst_Mouse::deterministicEvents()
QCOMPARE(w.moveCount, 1);
}
+void tst_Mouse::doubleClick()
+{
+ MouseWindow w;
+ w.show();
+ w.setGeometry(100, 100, 200, 200);
+ QVERIFY(QTest::qWaitForWindowActive(&w));
+
+ // click
+ QPoint point(10, 10);
+ QCOMPARE(w.pressCount, 0);
+ QTest::mousePress(&w, Qt::LeftButton, { }, point);
+ QCOMPARE(w.pressCount, 1);
+ // give a delay of 10ms
+ auto ts = w.lastTimeStamp;
+ QTest::mouseRelease(&w, Qt::LeftButton, { }, point, 10);
+ QCOMPARE(w.lastTimeStamp, ts + 10);
+ QCOMPARE(w.doubleClickCount, 0);
+
+ // click again within a short time to generate double-click
+ QTest::mousePress(&w, Qt::LeftButton, { }, point, 10);
+ QCOMPARE(w.pressCount, 2);
+ QCOMPARE(w.lastTimeStamp, ts + 20);
+ // this time, let some virtual time elapse, because we're going to test double-click again afterwards
+ QTest::mouseRelease(&w, Qt::LeftButton, { }, point);
+ QCOMPARE_GT(w.lastTimeStamp, ts + 20);
+ QCOMPARE(w.doubleClickCount, 1);
+
+ // use the mouseClick function to generate another double-click
+ ts = w.lastTimeStamp;
+ QTest::mouseClick(&w, Qt::LeftButton, {}, point, 10);
+ QCOMPARE_GE(w.lastTimeStamp, ts + 500); // because the last release had a default delay
+ QTest::mouseClick(&w, Qt::LeftButton, {}, point);
+ QCOMPARE(w.doubleClickCount, 2);
+
+ // use the mouseDClick function to generate another double-click
+ ts = w.lastTimeStamp;
+ QTest::mouseDClick(&w, Qt::LeftButton, {}, point);
+ QCOMPARE_GE(w.lastTimeStamp, ts + 500); // because the last release had a default delay
+ QCOMPARE(w.doubleClickCount, 3);
+
+ // use the mouseClick function with default delay to avoid double-click
+ ts = w.lastTimeStamp;
+ QTest::mouseClick(&w, Qt::LeftButton, {}, point);
+ QCOMPARE_GE(w.lastTimeStamp, ts + 500); // because the last release had a default delay
+ QTest::mouseClick(&w, Qt::LeftButton, {}, point);
+ QCOMPARE(w.doubleClickCount, 3);
+}
+
QTEST_MAIN(tst_Mouse)
#include "tst_mouse.moc"
diff --git a/tests/auto/testlib/selftests/multiexec/CMakeLists.txt b/tests/auto/testlib/selftests/multiexec/CMakeLists.txt
index 314765b803..ece9279856 100644
--- a/tests/auto/testlib/selftests/multiexec/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/multiexec/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from multiexec.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## multiexec Binary:
#####################################################################
qt_internal_add_executable(multiexec
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_multiexec.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(multiexec)
-# special case end
diff --git a/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp b/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp
index afcc62d8aa..be7c151d34 100644
--- a/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp
+++ b/tests/auto/testlib/selftests/multiexec/tst_multiexec.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/pairdiagnostics/CMakeLists.txt b/tests/auto/testlib/selftests/pairdiagnostics/CMakeLists.txt
index f752131325..d0c9e6309a 100644
--- a/tests/auto/testlib/selftests/pairdiagnostics/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/pairdiagnostics/CMakeLists.txt
@@ -1,18 +1,18 @@
-# Generated from pairdiagnostics.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## pairdiagnostics Binary:
#####################################################################
qt_internal_add_executable(pairdiagnostics
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_pairdiagnostics.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
-# special case begin
qt_internal_apply_testlib_coverage_options(pairdiagnostics)
-# special case end
diff --git a/tests/auto/testlib/selftests/pairdiagnostics/tst_pairdiagnostics.cpp b/tests/auto/testlib/selftests/pairdiagnostics/tst_pairdiagnostics.cpp
index cd129ed86f..72cc4ab1f2 100644
--- a/tests/auto/testlib/selftests/pairdiagnostics/tst_pairdiagnostics.cpp
+++ b/tests/auto/testlib/selftests/pairdiagnostics/tst_pairdiagnostics.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Make sure we get a real Q_ASSERT even in release builds
#ifdef QT_NO_DEBUG
diff --git a/tests/auto/testlib/selftests/pass/CMakeLists.txt b/tests/auto/testlib/selftests/pass/CMakeLists.txt
index 1f54a009ec..de3bfbc32a 100644
--- a/tests/auto/testlib/selftests/pass/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/pass/CMakeLists.txt
@@ -1,22 +1,22 @@
-# Generated from pass.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## pass Binary:
#####################################################################
qt_internal_add_executable(pass
- NO_INSTALL # special case
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
SOURCES
tst_pass.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(pass)
-# special case end
diff --git a/tests/auto/testlib/selftests/pass/tst_pass.cpp b/tests/auto/testlib/selftests/pass/tst_pass.cpp
index 48b75b2b17..760c5a236d 100644
--- a/tests/auto/testlib/selftests/pass/tst_pass.cpp
+++ b/tests/auto/testlib/selftests/pass/tst_pass.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QTest>
diff --git a/tests/auto/testlib/selftests/printdatatags/CMakeLists.txt b/tests/auto/testlib/selftests/printdatatags/CMakeLists.txt
index a323b1f73d..4e2d58c35a 100644
--- a/tests/auto/testlib/selftests/printdatatags/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/printdatatags/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from printdatatags.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## printdatatags Binary:
#####################################################################
qt_internal_add_executable(printdatatags
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_printdatatags.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(printdatatags)
-# special case end
diff --git a/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp b/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp
index c8f13dfca8..31cf97347e 100644
--- a/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp
+++ b/tests/auto/testlib/selftests/printdatatags/tst_printdatatags.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/printdatatagswithglobaltags/CMakeLists.txt b/tests/auto/testlib/selftests/printdatatagswithglobaltags/CMakeLists.txt
index 323d3d65ed..80d08a9d2d 100644
--- a/tests/auto/testlib/selftests/printdatatagswithglobaltags/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/printdatatagswithglobaltags/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from printdatatagswithglobaltags.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## printdatatagswithglobaltags Binary:
#####################################################################
qt_internal_add_executable(printdatatagswithglobaltags
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_printdatatagswithglobaltags.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(printdatatagswithglobaltags)
-# special case end
diff --git a/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp b/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp
index bb13f119fc..21e057cbb1 100644
--- a/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp
+++ b/tests/auto/testlib/selftests/printdatatagswithglobaltags/tst_printdatatagswithglobaltags.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/qexecstringlist/CMakeLists.txt b/tests/auto/testlib/selftests/qexecstringlist/CMakeLists.txt
index 2aec291154..91244ca25a 100644
--- a/tests/auto/testlib/selftests/qexecstringlist/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/qexecstringlist/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from qexecstringlist.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## qexecstringlist Binary:
#####################################################################
qt_internal_add_executable(qexecstringlist
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_qexecstringlist.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(qexecstringlist)
-# special case end
diff --git a/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp
index 148ec593b1..fefb643041 100644
--- a/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp
+++ b/tests/auto/testlib/selftests/qexecstringlist/tst_qexecstringlist.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/qt_attribution.json b/tests/auto/testlib/selftests/qt_attribution.json
index 6c483749a1..3a126f59ed 100644
--- a/tests/auto/testlib/selftests/qt_attribution.json
+++ b/tests/auto/testlib/selftests/qt_attribution.json
@@ -8,7 +8,7 @@
"Description": "Catch2 is a multi-paradigm test framework for C++.",
"Homepage": "https://github.com/catchorg/Catch2",
- "Version": "2.13.8",
+ "Version": "2.13.10",
"License": "Boost Software License 1.0",
"LicenseId": "BSL-1.0",
"LicenseFile": "CATCH_LICENSE.txt",
diff --git a/tests/auto/testlib/selftests/signaldumper/CMakeLists.txt b/tests/auto/testlib/selftests/signaldumper/CMakeLists.txt
index a8c667d721..79ab8f8f86 100644
--- a/tests/auto/testlib/selftests/signaldumper/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/signaldumper/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from signaldumper.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## signaldumper Binary:
#####################################################################
qt_internal_add_executable(signaldumper
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_signaldumper.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::TestPrivate
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(signaldumper)
-# special case end
diff --git a/tests/auto/testlib/selftests/signaldumper/tst_signaldumper.cpp b/tests/auto/testlib/selftests/signaldumper/tst_signaldumper.cpp
index ee484b5c96..8b233abc1e 100644
--- a/tests/auto/testlib/selftests/signaldumper/tst_signaldumper.cpp
+++ b/tests/auto/testlib/selftests/signaldumper/tst_signaldumper.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QTest>
diff --git a/tests/auto/testlib/selftests/silent/CMakeLists.txt b/tests/auto/testlib/selftests/silent/CMakeLists.txt
index d029aa8021..76bb0d0110 100644
--- a/tests/auto/testlib/selftests/silent/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/silent/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from silent.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## silent Binary:
#####################################################################
qt_internal_add_executable(silent
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_silent.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::TestPrivate
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(silent)
-# special case end
diff --git a/tests/auto/testlib/selftests/silent/tst_silent.cpp b/tests/auto/testlib/selftests/silent/tst_silent.cpp
index 3b2caf8c24..a1e7f7af57 100644
--- a/tests/auto/testlib/selftests/silent/tst_silent.cpp
+++ b/tests/auto/testlib/selftests/silent/tst_silent.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QTest>
@@ -15,8 +15,6 @@ private slots:
void fail();
void xfail();
void xpass();
-
- // This test function must be last, as it calls qFatal().
void messages();
};
@@ -47,17 +45,6 @@ void tst_Silent::xpass()
QVERIFY2(true, "This test should XPASS");
}
-#ifndef Q_OS_WIN
-#include <signal.h>
-#include <setjmp.h>
-
-static jmp_buf state;
-static void abort_handler(int)
-{
- longjmp(state, 1);
-}
-#endif
-
void tst_Silent::messages()
{
qWarning("This is a warning that should not appear in silent test output");
@@ -66,15 +53,6 @@ void tst_Silent::messages()
qCritical("This is a critical message that should not appear in silent test output");
qInfo("This is an info message that should not appear in silent test output");
QTestLog::info("This is an internal testlib info message that should not appear in silent test output", __FILE__, __LINE__);
-
-#ifndef Q_OS_WIN
- // We're testing qFatal, but we don't want to actually std::abort() !
- auto prior = signal(SIGABRT, abort_handler);
- if (setjmp(state))
- signal(SIGABRT, prior);
- else
-#endif
- qFatal("This is a fatal error message that should still appear in silent test output");
}
QTEST_MAIN_WRAPPER(tst_Silent,
diff --git a/tests/auto/testlib/selftests/silent_fatal/CMakeLists.txt b/tests/auto/testlib/selftests/silent_fatal/CMakeLists.txt
new file mode 100644
index 0000000000..e4b59e399f
--- /dev/null
+++ b/tests/auto/testlib/selftests/silent_fatal/CMakeLists.txt
@@ -0,0 +1,15 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
+
+qt_internal_add_executable(silent_fatal
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_silent_fatal.cpp
+ LIBRARIES
+ Qt::TestPrivate
+)
+
+# No coverage because this crashes, making data collection difficult, if not
+# impossible.
diff --git a/tests/auto/testlib/selftests/silent_fatal/tst_silent_fatal.cpp b/tests/auto/testlib/selftests/silent_fatal/tst_silent_fatal.cpp
new file mode 100644
index 0000000000..57aa1f702c
--- /dev/null
+++ b/tests/auto/testlib/selftests/silent_fatal/tst_silent_fatal.cpp
@@ -0,0 +1,28 @@
+// Copyright (C) 2021 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QtCore/QCoreApplication>
+#include <QTest>
+#include <private/qtestlog_p.h>
+
+class tst_SilentFatal : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void fatalmessages();
+};
+void tst_SilentFatal::fatalmessages()
+{
+ qFatal("This is a fatal error message that should still appear in silent test output");
+}
+
+QTEST_MAIN_WRAPPER(tst_SilentFatal,
+ std::vector<const char*> args(argv, argv + argc);
+ args.push_back("-silent");
+ args.push_back("-nocrashhandler");
+ argc = int(args.size());
+ argv = const_cast<char**>(&args[0]);
+ QTEST_MAIN_SETUP())
+
+#include "tst_silent_fatal.moc"
diff --git a/tests/auto/testlib/selftests/singleskip/CMakeLists.txt b/tests/auto/testlib/selftests/singleskip/CMakeLists.txt
index fa8132a3c1..b37cc5fcc0 100644
--- a/tests/auto/testlib/selftests/singleskip/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/singleskip/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from singleskip.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## singleskip Binary:
#####################################################################
qt_internal_add_executable(singleskip
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_singleskip.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(singleskip)
-# special case end
diff --git a/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp b/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp
index a3ff4dd22c..c5307fed70 100644
--- a/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp
+++ b/tests/auto/testlib/selftests/singleskip/tst_singleskip.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/skip/CMakeLists.txt b/tests/auto/testlib/selftests/skip/CMakeLists.txt
index 2841dcbd9a..6fb38cc976 100644
--- a/tests/auto/testlib/selftests/skip/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/skip/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from skip.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## skip Binary:
#####################################################################
qt_internal_add_executable(skip
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_skip.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(skip)
-# special case end
diff --git a/tests/auto/testlib/selftests/skip/tst_skip.cpp b/tests/auto/testlib/selftests/skip/tst_skip.cpp
index 5ee014b0a4..709080049a 100644
--- a/tests/auto/testlib/selftests/skip/tst_skip.cpp
+++ b/tests/auto/testlib/selftests/skip/tst_skip.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/skipblacklisted/BLACKLIST b/tests/auto/testlib/selftests/skipblacklisted/BLACKLIST
new file mode 100644
index 0000000000..77c13250cd
--- /dev/null
+++ b/tests/auto/testlib/selftests/skipblacklisted/BLACKLIST
@@ -0,0 +1,6 @@
+[blacklisted]
+*
+[blacklistedData:blacklisted 1]
+*
+[blacklistedData:blacklisted 2]
+*
diff --git a/tests/auto/testlib/selftests/skipblacklisted/CMakeLists.txt b/tests/auto/testlib/selftests/skipblacklisted/CMakeLists.txt
new file mode 100644
index 0000000000..cc1a2ff469
--- /dev/null
+++ b/tests/auto/testlib/selftests/skipblacklisted/CMakeLists.txt
@@ -0,0 +1,18 @@
+#####################################################################
+## skipblacklisted Binary:
+#####################################################################
+
+qt_internal_add_executable(skipblacklisted
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_skipblacklisted.cpp
+ LIBRARIES
+ Qt::Test
+)
+
+## Scopes:
+#####################################################################
+
+qt_internal_apply_testlib_coverage_options(skipblacklisted)
diff --git a/tests/auto/testlib/selftests/skipblacklisted/tst_skipblacklisted.cpp b/tests/auto/testlib/selftests/skipblacklisted/tst_skipblacklisted.cpp
new file mode 100644
index 0000000000..4ebff3ee4b
--- /dev/null
+++ b/tests/auto/testlib/selftests/skipblacklisted/tst_skipblacklisted.cpp
@@ -0,0 +1,51 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QTest>
+
+class tst_SkipBlacklisted : public QObject
+{
+ Q_OBJECT
+
+private slots:
+ void pass();
+ void blacklisted();
+ void blacklistedData();
+ void blacklistedData_data();
+};
+
+void tst_SkipBlacklisted::pass()
+{
+ QVERIFY(true);
+}
+
+// This test have been blacklisted in skipblacklisted/BLACKLIST
+void tst_SkipBlacklisted::blacklisted()
+{
+ QFAIL("this line should never be reached, since we skip all blacklisted test functions");
+}
+
+// blacklisted 1 and blacklisted 2 have been blacklisted in skipblacklisted/BLACKLIST
+void tst_SkipBlacklisted::blacklistedData()
+{
+ QFETCH(int, testdata);
+ QCOMPARE(testdata, 2);
+}
+
+void tst_SkipBlacklisted::blacklistedData_data()
+{
+ QTest::addColumn<int>("testdata");
+
+ QTest::newRow("blacklisted 1") << 1;
+ QTest::newRow("should pass") << 2;
+ QTest::newRow("blacklisted 2") << 3;
+}
+
+QTEST_MAIN_WRAPPER(tst_SkipBlacklisted,
+ std::vector<const char*> args(argv, argv + argc);
+ args.push_back("-skipblacklisted");
+ argc = int(args.size());
+ argv = const_cast<char**>(&args[0]);
+ QTEST_MAIN_SETUP())
+
+#include "tst_skipblacklisted.moc"
diff --git a/tests/auto/testlib/selftests/skipcleanup/CMakeLists.txt b/tests/auto/testlib/selftests/skipcleanup/CMakeLists.txt
index 5af361e25a..36a643bf4d 100644
--- a/tests/auto/testlib/selftests/skipcleanup/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/skipcleanup/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from skipcleanup.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## skipcleanup Binary:
#####################################################################
qt_internal_add_executable(skipcleanup
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_skipcleanup.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(skipcleanup)
-# special case end
diff --git a/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp b/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp
index 1afe9a5c57..68053e4431 100644
--- a/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp
+++ b/tests/auto/testlib/selftests/skipcleanup/tst_skipcleanup.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
@@ -8,7 +8,7 @@ class tst_SkipCleanup: public QObject
Q_OBJECT
private slots:
void aTestFunction() const;
- void cleanupTestCase() const;
+ void cleanup() const;
};
void tst_SkipCleanup::aTestFunction() const
@@ -16,9 +16,9 @@ void tst_SkipCleanup::aTestFunction() const
QVERIFY(true);
}
-void tst_SkipCleanup::cleanupTestCase() const
+void tst_SkipCleanup::cleanup() const
{
- QSKIP("Skip inside cleanupTestCase.");
+ QSKIP("Skip inside cleanup.");
}
QTEST_APPLESS_MAIN(tst_SkipCleanup)
diff --git a/tests/auto/testlib/selftests/skipcleanuptestcase/CMakeLists.txt b/tests/auto/testlib/selftests/skipcleanuptestcase/CMakeLists.txt
new file mode 100644
index 0000000000..88aae42acd
--- /dev/null
+++ b/tests/auto/testlib/selftests/skipcleanuptestcase/CMakeLists.txt
@@ -0,0 +1,18 @@
+#####################################################################
+## skipcleanuptestcase Binary:
+#####################################################################
+
+qt_internal_add_executable(skipcleanuptestcase
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ SOURCES
+ tst_skipcleanuptestcase.cpp
+ LIBRARIES
+ Qt::Test
+)
+
+## Scopes:
+#####################################################################
+
+qt_internal_apply_testlib_coverage_options(skipcleanuptestcase)
diff --git a/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp b/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp
new file mode 100644
index 0000000000..72ff91590d
--- /dev/null
+++ b/tests/auto/testlib/selftests/skipcleanuptestcase/tst_skipcleanuptestcase.cpp
@@ -0,0 +1,25 @@
+// Copyright (C) 2016 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+
+#include <QTest>
+
+class tst_SkipCleanupTestCase: public QObject
+{
+Q_OBJECT
+private slots:
+ void aTestFunction() const;
+ void cleanupTestCase() const;
+};
+
+void tst_SkipCleanupTestCase::aTestFunction() const
+{
+ QVERIFY(true);
+}
+
+void tst_SkipCleanupTestCase::cleanupTestCase() const
+{
+ QSKIP("Skip inside cleanupTestCase.");
+}
+
+QTEST_APPLESS_MAIN(tst_SkipCleanupTestCase)
+#include "tst_skipcleanuptestcase.moc"
diff --git a/tests/auto/testlib/selftests/skipinit/CMakeLists.txt b/tests/auto/testlib/selftests/skipinit/CMakeLists.txt
index 6cf2e97688..69fa7e3d42 100644
--- a/tests/auto/testlib/selftests/skipinit/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/skipinit/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from skipinit.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## skipinit Binary:
#####################################################################
qt_internal_add_executable(skipinit
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_skipinit.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(skipinit)
-# special case end
diff --git a/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp b/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp
index 2781d52685..4975f1f029 100644
--- a/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp
+++ b/tests/auto/testlib/selftests/skipinit/tst_skipinit.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/skipinitdata/CMakeLists.txt b/tests/auto/testlib/selftests/skipinitdata/CMakeLists.txt
index cacc40af66..482564c51f 100644
--- a/tests/auto/testlib/selftests/skipinitdata/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/skipinitdata/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from skipinitdata.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## skipinitdata Binary:
#####################################################################
qt_internal_add_executable(skipinitdata
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_skipinitdata.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(skipinitdata)
-# special case end
diff --git a/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp b/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp
index 95df690dc6..26725814db 100644
--- a/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp
+++ b/tests/auto/testlib/selftests/skipinitdata/tst_skipinitdata.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/sleep/CMakeLists.txt b/tests/auto/testlib/selftests/sleep/CMakeLists.txt
index 418c61bab9..2e789b59d7 100644
--- a/tests/auto/testlib/selftests/sleep/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/sleep/CMakeLists.txt
@@ -1,21 +1,22 @@
-# Generated from sleep.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## sleep Binary:
#####################################################################
qt_internal_add_executable(sleep
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_sleep.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
+ Qt::CorePrivate
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(sleep)
-# special case end
diff --git a/tests/auto/testlib/selftests/sleep/tst_sleep.cpp b/tests/auto/testlib/selftests/sleep/tst_sleep.cpp
index ebefbf44d6..d9cd6959e5 100644
--- a/tests/auto/testlib/selftests/sleep/tst_sleep.cpp
+++ b/tests/auto/testlib/selftests/sleep/tst_sleep.cpp
@@ -1,11 +1,20 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
#include <QtCore/QElapsedTimer>
#include <QTest>
+#ifdef Q_OS_UNIX
+#include <QtCore/private/qcore_unix_p.h>
+#include <QtCore/qsystemdetection.h>
+
+#include <time.h>
+#endif
+
+using namespace std::chrono_literals;
+
class tst_Sleep: public QObject
{
Q_OBJECT
@@ -17,17 +26,21 @@ private slots:
void tst_Sleep::sleep()
{
+ // Subtracting 10ms as a margin for error
+ static constexpr auto MarginForError = 10ms;
+
QElapsedTimer t;
t.start();
+ // Test qSleep(int) overload, too
QTest::qSleep(100);
- QVERIFY(t.elapsed() > 90);
+ QCOMPARE_GT(t.durationElapsed(), 100ms - MarginForError);
- QTest::qSleep(1000);
- QVERIFY(t.elapsed() > 1000);
+ QTest::qSleep(1s);
+ QCOMPARE_GT(t.durationElapsed(), 1s - MarginForError);
- QTest::qSleep(1000 * 10); // 10 seconds
- QVERIFY(t.elapsed() > 1000 * 10);
+ QTest::qSleep(10s);
+ QCOMPARE_GT(t.durationElapsed(), 10s - MarginForError);
}
void tst_Sleep::wait()
@@ -36,16 +49,16 @@ void tst_Sleep::wait()
t.start();
QTest::qWait(1);
- QVERIFY(t.elapsed() >= 1);
+ QCOMPARE_GE(t.durationElapsed(), 1ms);
QTest::qWait(10);
- QVERIFY(t.elapsed() >= 11);
+ QCOMPARE_GE(t.durationElapsed(), 11ms);
QTest::qWait(100);
- QVERIFY(t.elapsed() >= 111);
+ QCOMPARE_GE(t.durationElapsed(), 111ms);
QTest::qWait(1000);
- QVERIFY(t.elapsed() >= 1111);
+ QCOMPARE_GE(t.durationElapsed(), 1111ms);
}
QTEST_MAIN(tst_Sleep)
diff --git a/tests/auto/testlib/selftests/strcmp/CMakeLists.txt b/tests/auto/testlib/selftests/strcmp/CMakeLists.txt
index 23919e5c32..8baaf92fa9 100644
--- a/tests/auto/testlib/selftests/strcmp/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/strcmp/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from strcmp.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## strcmp Binary:
#####################################################################
qt_internal_add_executable(strcmp
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_strcmp.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(strcmp)
-# special case end
diff --git a/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp b/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp
index 97e391b3fe..aefd9e08b9 100644
--- a/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp
+++ b/tests/auto/testlib/selftests/strcmp/tst_strcmp.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
diff --git a/tests/auto/testlib/selftests/subtest/CMakeLists.txt b/tests/auto/testlib/selftests/subtest/CMakeLists.txt
index fc459b96e2..3dad026cf3 100644
--- a/tests/auto/testlib/selftests/subtest/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/subtest/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from subtest.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## subtest Binary:
#####################################################################
qt_internal_add_executable(subtest
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_subtest.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(subtest)
-# special case end
diff --git a/tests/auto/testlib/selftests/subtest/tst_subtest.cpp b/tests/auto/testlib/selftests/subtest/tst_subtest.cpp
index 86969bc590..023c43e2af 100644
--- a/tests/auto/testlib/selftests/subtest/tst_subtest.cpp
+++ b/tests/auto/testlib/selftests/subtest/tst_subtest.cpp
@@ -1,6 +1,8 @@
// Copyright (C) 2021 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+#undef QTEST_THROW_ON_FAILURE // code expects old behavior
+#undef QTEST_THROW_ON_SKIP // code expects old behavior
#include <QtCore/QCoreApplication>
#include <QtCore/QDebug>
@@ -111,6 +113,7 @@ void tst_Subtest::test3()
void tst_Subtest::multiFail()
{
+ const QTest::ThrowOnFailDisabler nothrow; // tests repeated QFAILs
// Simulates tests which call a shared function that does common checks, or
// that do checks in code run asynchronously from a message loop.
for (int i = 0; i < 10; ++i)
@@ -120,6 +123,7 @@ void tst_Subtest::multiFail()
void tst_Subtest::multiSkip()
{
+ const QTest::ThrowOnSkipDisabler nothrow; // tests repeated QSKIPs
// Similar to multiFail()
for (int i = 0; i < 10; ++i)
[]() { QSKIP("This skip should be repeated ten times"); }();
diff --git a/tests/auto/testlib/selftests/testlib/CMakeLists.txt b/tests/auto/testlib/selftests/testlib/CMakeLists.txt
index 776f503bf2..f60ddb8865 100644
--- a/tests/auto/testlib/selftests/testlib/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/testlib/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from testlib.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## testlib Binary:
#####################################################################
qt_internal_add_executable(testlib
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_testlib.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(testlib)
-# special case end
diff --git a/tests/auto/testlib/selftests/testlib/tst_testlib.cpp b/tests/auto/testlib/selftests/testlib/tst_testlib.cpp
index 598049efdd..58e3e7ad33 100644
--- a/tests/auto/testlib/selftests/testlib/tst_testlib.cpp
+++ b/tests/auto/testlib/selftests/testlib/tst_testlib.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
#include <QtCore/QtMath>
@@ -14,7 +14,11 @@
class tst_TestLib : public QObject
{
-Q_OBJECT
+ Q_OBJECT
+
+public:
+ tst_TestLib();
+
private slots:
void basics() const;
void delays() const;
@@ -22,6 +26,14 @@ private slots:
void reals() const;
};
+tst_TestLib::tst_TestLib()
+{
+ // Set object name, so that it's printed out when some comparison fails.
+ // Othewise object address will be printed, which will not allow
+ // tst_sefltest to compare the output with expected.
+ setObjectName("TestObject");
+}
+
void tst_TestLib::basics() const
{
QVERIFY(QByteArray(QTest::currentAppName()).contains("testlib"));
diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp
index 5f67d0e25b..04185e95cd 100644
--- a/tests/auto/testlib/selftests/tst_selftests.cpp
+++ b/tests/auto/testlib/selftests/tst_selftests.cpp
@@ -1,6 +1,6 @@
// Copyright (C) 2021 The Qt Company Ltd.
// Copyright (C) 2016 Intel Corporation.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QCoreApplication>
@@ -432,8 +432,8 @@ BenchmarkResult BenchmarkResult::parse(QString const& line, QString* error)
// format:
// "function","[globaltag:]tag","metric",value_per_iteration,total,iterations
QStringList split = line.split(',');
- if (split.count() != 6) {
- if (error) *error = QString("Wrong number of columns (%1)").arg(split.count());
+ if (split.size() != 6) {
+ if (error) *error = QString("Wrong number of columns (%1)").arg(split.size());
return out;
}
@@ -459,11 +459,13 @@ BenchmarkResult BenchmarkResult::parse(QString const& line, QString* error)
// This code avoids using a QRegExp because QRegExp might be broken.
// Sample format: 4,000 msec per iteration (total: 4,000, iterations: 1)
- QString sFirstNumber;
- while (!remaining.isEmpty() && !remaining.at(0).isSpace()) {
- sFirstNumber += remaining.at(0);
- remaining.remove(0,1);
- }
+ const auto begin = remaining.cbegin();
+ auto it = std::find_if(begin, remaining.cend(), [](const auto ch) {
+ return ch.isSpace();
+ });
+ QString sFirstNumber{std::distance(begin, it), Qt::Uninitialized};
+ std::move(begin, it, sFirstNumber.begin());
+ remaining.erase(begin, it);
remaining = remaining.trimmed();
// 4,000 -> 4000
@@ -636,6 +638,11 @@ bool TestLogger::shouldIgnoreTest(const QString &test) const
return true;
#endif
+ if (!qEnvironmentVariableIsEmpty("WAYLAND_DISPLAY")) {
+ qDebug() << "TestLogger::shouldIgnoreTest() ignore" << test << "on wayland/xwayland!";
+ return true;
+ }
+
// These tests are affected by timing and whether the CPU tick counter
// is monotonically increasing. They won't work on some machines so
// leave them off by default. Feel free to enable them for your own
@@ -692,7 +699,8 @@ bool TestLogger::shouldIgnoreTest(const QString &test) const
|| test == "benchliboptions"
|| test == "printdatatags"
|| test == "printdatatagswithglobaltags"
- || test == "silent")
+ || test == "silent"
+ || test == "silent_fatal")
return true;
// These tests produce variable output (callgrind because of #if-ery,
@@ -757,29 +765,30 @@ void checkErrorOutput(const QString &test, const QByteArray &errorOutput)
|| test == "benchlibcallgrind")
return;
-#ifdef Q_CC_MINGW
- if (test == "blacklisted" // calls qFatal()
- || test == "silent") // calls qFatal()
-#endif
- return;
-
#ifdef Q_OS_WIN
if (test == "crashes")
return; // Complains about uncaught exception
#endif
-#ifdef Q_OS_LINUX
- // QEMU outputs to stderr about uncaught signals
- if (QTestPrivate::isRunningArmOnX86() &&
- (test == "assert"
- || test == "blacklisted"
- || test == "crashes"
- || test == "faildatatype"
- || test == "failfetchtype"
- || test == "silent"
- ))
+#ifdef Q_OS_UNIX
+ if (test == "assert"
+ || test == "crashes"
+ || test == "failfetchtype"
+ || test == "faildatatype")
+ return; // Outputs "Received signal 6 (SIGABRT)"
+#endif
+
+ if (test == "silent_fatal") {
+#if defined(__SANITIZE_ADDRESS__) || __has_feature(address_sanitizer)
+ // Under ASan, this test is not silent
+ return;
+#elif defined(Q_CC_MINGW)
+ // Originally QTBUG-29014 (I can't reproduce this -Thiago)
return;
#endif
+ if (QTestPrivate::isRunningArmOnX86())
+ return; // QEMU outputs to stderr about uncaught signals
+ }
INFO(errorOutput.toStdString());
REQUIRE(errorOutput.isEmpty());
@@ -919,8 +928,11 @@ static QProcessEnvironment testEnvironment()
if (environment.isEmpty()) {
const QProcessEnvironment systemEnvironment = QProcessEnvironment::systemEnvironment();
const bool preserveLibPath = qEnvironmentVariableIsSet("QT_PRESERVE_TESTLIB_PATH");
- foreach (const QString &key, systemEnvironment.keys()) {
+ const auto envKeys = systemEnvironment.keys();
+ for (const QString &key : envKeys) {
const bool useVariable = key == "PATH" || key == "QT_QPA_PLATFORM"
+ || key == "QTEST_THROW_ON_FAIL"_L1 || key == "QTEST_THROW_ON_SKIP"_L1
+ || key == "ASAN_OPTIONS"
#if defined(Q_OS_QNX)
|| key == "GRAPHICS_ROOT" || key == "TZ"
#elif defined(Q_OS_UNIX)
@@ -965,8 +977,7 @@ TestProcessResult runTestProcess(const QString &test, const QStringList &argumen
const bool expectedCrash = test == "assert" || test == "exceptionthrow"
|| test == "fetchbogus" || test == "crashedterminate"
|| test == "faildatatype" || test == "failfetchtype"
- || test == "crashes" || test == "silent"
- || test == "blacklisted" || test == "watchdog";
+ || test == "crashes" || test == "silent_fatal" || test == "watchdog";
if (expectedCrash) {
environment.insert("QTEST_DISABLE_CORE_DUMP", "1");
@@ -1003,10 +1014,12 @@ TestProcessResult runTestProcess(const QString &test, const QStringList &argumen
return { process.exitCode(), standardOutput, standardError };
}
+enum class Throw { OnFail = 1 };
+
/*
Runs a single test and verifies the output against the expected results.
*/
-void runTest(const QString &test, const TestLoggers &requestedLoggers)
+void runTest(const QString &test, const TestLoggers &requestedLoggers, Throw throwing = {})
{
TestLoggers loggers;
for (auto logger : requestedLoggers) {
@@ -1020,6 +1033,10 @@ void runTest(const QString &test, const TestLoggers &requestedLoggers)
QStringList arguments;
for (auto logger : loggers)
arguments += logger.arguments(test);
+ if (throwing == Throw::OnFail) // don't distinguish between throwonfail/throwonskip
+ arguments += {"-throwonfail", "-throwonskip"};
+ else
+ arguments += {"-nothrowonfail", "-nothrowonskip"};
CAPTURE(test);
CAPTURE(arguments);
@@ -1046,9 +1063,9 @@ void runTest(const QString &test, const TestLoggers &requestedLoggers)
/*
Runs a single test and verifies the output against the expected result.
*/
-void runTest(const QString &test, const TestLogger &logger)
+void runTest(const QString &test, const TestLogger &logger, Throw t = {})
{
- runTest(test, TestLoggers{logger});
+ runTest(test, TestLoggers{logger}, t);
}
// ----------------------- Catch helpers -----------------------
@@ -1183,18 +1200,87 @@ TEST_CASE("All loggers can be enabled at the same time")
SCENARIO("Test output of the loggers is as expected")
{
static QStringList tests = QString(QT_STRINGIFY(SUBPROGRAMS)).split(' ');
+ if (QString override = qEnvironmentVariable("TST_SELFTEST_SUBPROGRAMS"); !override.isEmpty())
+ tests = override.split(' ', Qt::SkipEmptyParts);
auto logger = GENERATE(filter(isGenericCommandLineLogger, enums<QTestLog::LogMode>()));
GIVEN("The " << logger << " logger") {
for (QString test : tests) {
AND_GIVEN("The " << test << " subtest") {
- runTest(test, TestLogger(logger, StdoutOutput));
+ WHEN("Throwing on failure or skip") {
+ runTest(test, TestLogger(logger, StdoutOutput), Throw::OnFail);
+ }
+ WHEN("Returning on failure or skip") {
+ runTest(test, TestLogger(logger, StdoutOutput));
+ }
}
}
}
}
+struct TestCase {
+ int expectedExitCode;
+ const char *cmdline;
+};
+
+SCENARIO("Exit code is as expected")
+{
+ // Listing of test command lines and expected exit codes
+ // NOTE: Use at least 2 spaces to separate arguments because some contain a space themselves.
+ const struct TestCase testCases[] = {
+ // 'pass' is a test with no data tags at all
+ { 0, "pass testNumber1" },
+ { 1, "pass unknownFunction" },
+ { 1, "pass testNumber1:blah" },
+ { 1, "pass testNumber1:blah:blue" },
+ // 'counting' is a test that has only local data tags
+ { 0, "counting testPassPass" },
+ { 0, "counting testPassPass:row 1" },
+ { 1, "counting testPassPass:blah" },
+ { 1, "counting testPassPass:blah:row 1" },
+ { 1, "counting testPassPass:blah:blue" },
+ // 'globaldata' is a test with global and local data tags
+ { 0, "globaldata testGlobal" },
+ { 0, "globaldata testGlobal:global=true" },
+ { 0, "globaldata testGlobal:local=true" },
+ { 0, "globaldata testGlobal:global=true:local=true" },
+ { 0, "globaldata testGlobal -repeat 2" },
+ { 1, "globaldata testGlobal:local=true:global=true" },
+ { 1, "globaldata testGlobal:global=true:blah" },
+ { 1, "globaldata testGlobal:blah:local=true" },
+ { 1, "globaldata testGlobal:blah:global=true" },
+ { 1, "globaldata testGlobal:blah" },
+ { 1, "globaldata testGlobal:blah:blue" },
+ // Passing multiple testcase:data on the command line
+ { 0, "globaldata testGlobal:global=true skipSingle:global=true:local=true" },
+ { 1, "globaldata testGlobal:blah skipSingle:global=true:local=true" },
+ { 1, "globaldata testGlobal:global=true skipSingle:blah" },
+ { 2, "globaldata testGlobal:blah skipSingle:blue" },
+ // Passing -repeat argument
+ { 1, "pass testNumber1 -repeat" },
+ { 0, "pass testNumber1 -repeat 1" },
+ { 0, "pass testNumber1 -repeat 1 -o out.xml,xml" },
+ { 0, "pass testNumber1 -repeat 2" },
+ { 0, "pass testNumber1 -repeat 2 -o -,txt" },
+ { 0, "pass testNumber1 -repeat 2 -o -,txt -o log.txt,txt" },
+ { 1, "pass testNumber1 -repeat 2 -o log.xml,xml" },
+ { 1, "pass testNumber1 -repeat 2 -o -,txt -o -,xml" },
+ };
+
+ size_t n_testCases = sizeof(testCases) / sizeof(*testCases);
+ for (size_t i = 0; i < n_testCases; i++) {
+ GIVEN("The command line: " << testCases[i].cmdline) {
+ const QStringList cmdSplit = QString(testCases[i].cmdline)
+ .split(QRegularExpression(" +")); // at least 2 spaces
+ const QString test = cmdSplit[0];
+ const QStringList args = cmdSplit.sliced(1);
+ auto runResult = runTestProcess(test, args);
+ REQUIRE(runResult.exitCode == testCases[i].expectedExitCode);
+ }
+ }
+}
+
// ----------------------- Entrypoint -----------------------
int main(int argc, char **argv)
diff --git a/tests/auto/testlib/selftests/tuplediagnostics/CMakeLists.txt b/tests/auto/testlib/selftests/tuplediagnostics/CMakeLists.txt
index bf72eeae0b..b79e2407b8 100644
--- a/tests/auto/testlib/selftests/tuplediagnostics/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/tuplediagnostics/CMakeLists.txt
@@ -1,18 +1,18 @@
-# Generated from tuplediagnostics.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## tuplediagnostics Binary:
#####################################################################
qt_internal_add_executable(tuplediagnostics
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_tuplediagnostics.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
-# special case begin
qt_internal_apply_testlib_coverage_options(tuplediagnostics)
-# special case end
diff --git a/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp b/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp
index b30b54848a..065fe6c603 100644
--- a/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp
+++ b/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2017 Samuel Gaist <samuel.gaist@edeltech.ch>
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
// Make sure we get a real Q_ASSERT even in release builds
#ifdef QT_NO_DEBUG
diff --git a/tests/auto/testlib/selftests/verbose1/CMakeLists.txt b/tests/auto/testlib/selftests/verbose1/CMakeLists.txt
index 7f60820111..2c644dff92 100644
--- a/tests/auto/testlib/selftests/verbose1/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/verbose1/CMakeLists.txt
@@ -1,23 +1,23 @@
-# Generated from verbose1.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## verbose1 Binary:
#####################################################################
qt_internal_add_executable(verbose1
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
../counting/tst_counting.cpp
DEFINES
- TESTLIB_VERBOSITY_ARG=-v1 # special case remove quotes
- PUBLIC_LIBRARIES
+ TESTLIB_VERBOSITY_ARG=-v1
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(verbose1)
-# special case end
diff --git a/tests/auto/testlib/selftests/verbose2/CMakeLists.txt b/tests/auto/testlib/selftests/verbose2/CMakeLists.txt
index 63eae28728..b78c5a42d0 100644
--- a/tests/auto/testlib/selftests/verbose2/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/verbose2/CMakeLists.txt
@@ -1,23 +1,23 @@
-# Generated from verbose2.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## verbose2 Binary:
#####################################################################
qt_internal_add_executable(verbose2
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
../counting/tst_counting.cpp
DEFINES
- TESTLIB_VERBOSITY_ARG=-v2 # special case remove quotes
- PUBLIC_LIBRARIES
+ TESTLIB_VERBOSITY_ARG=-v2
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(verbose2)
-# special case end
diff --git a/tests/auto/testlib/selftests/verifyexceptionthrown/CMakeLists.txt b/tests/auto/testlib/selftests/verifyexceptionthrown/CMakeLists.txt
index b6177bc8c3..c4312959ad 100644
--- a/tests/auto/testlib/selftests/verifyexceptionthrown/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/verifyexceptionthrown/CMakeLists.txt
@@ -1,4 +1,5 @@
-# Generated from verifyexceptionthrown.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## verifyexceptionthrown Binary:
@@ -6,17 +7,15 @@
qt_internal_add_executable(verifyexceptionthrown
EXCEPTIONS
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_verifyexceptionthrown.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(verifyexceptionthrown)
-# special case end
diff --git a/tests/auto/testlib/selftests/verifyexceptionthrown/tst_verifyexceptionthrown.cpp b/tests/auto/testlib/selftests/verifyexceptionthrown/tst_verifyexceptionthrown.cpp
index 60ac6a16a9..a7b45f30f9 100644
--- a/tests/auto/testlib/selftests/verifyexceptionthrown/tst_verifyexceptionthrown.cpp
+++ b/tests/auto/testlib/selftests/verifyexceptionthrown/tst_verifyexceptionthrown.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2016 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
diff --git a/tests/auto/testlib/selftests/warnings/CMakeLists.txt b/tests/auto/testlib/selftests/warnings/CMakeLists.txt
index 178a807726..553a023a90 100644
--- a/tests/auto/testlib/selftests/warnings/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/warnings/CMakeLists.txt
@@ -1,21 +1,21 @@
-# Generated from warnings.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## warnings Binary:
#####################################################################
qt_internal_add_executable(warnings
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_warnings.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(warnings)
-# special case end
diff --git a/tests/auto/testlib/selftests/warnings/tst_warnings.cpp b/tests/auto/testlib/selftests/warnings/tst_warnings.cpp
index 587d81c325..5add39ac88 100644
--- a/tests/auto/testlib/selftests/warnings/tst_warnings.cpp
+++ b/tests/auto/testlib/selftests/warnings/tst_warnings.cpp
@@ -1,6 +1,7 @@
// Copyright (C) 2020 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
+#undef QTEST_THROW_ON_FAILURE // fails ### investigate
#include <QtCore/QCoreApplication>
#include <QtCore/QRegularExpression>
@@ -27,6 +28,7 @@ private slots:
void testFailOnWarningsThenSkip();
#endif
void testFailOnWarningsAndIgnoreWarnings();
+ void testFailOnTemporaryObjectDestruction();
};
void tst_Warnings::testWarnings()
@@ -115,7 +117,7 @@ void tst_Warnings::testMissingWarningsWithData()
void tst_Warnings::testFailOnWarnings()
{
- // failOnWarnings() wasn't called yet; shouldn't fail;
+ // failOnWarning() wasn't called yet; shouldn't fail;
qWarning("Ran out of space!");
#if QT_CONFIG(regularexpression)
@@ -182,6 +184,7 @@ void tst_Warnings::testFailOnWarningsWithData()
void tst_Warnings::testFailOnWarningsFailInHelper()
{
+ const QTest::ThrowOnFailDisabler nothrow; // tests repeated QFAILs
[](){ QFAIL("This failure message should be printed but not cause the test to abort"); }();
// So we've already failed, but we get more messages - that don't increment counters.
const auto warnRegex = QRegularExpression("Ran out of .*!");
@@ -208,6 +211,27 @@ void tst_Warnings::testFailOnWarningsAndIgnoreWarnings()
qWarning(warningStr);
}
+void tst_Warnings::testFailOnTemporaryObjectDestruction()
+{
+ QTest::failOnWarning("Running low on toothpaste!");
+ QTest::ignoreMessage(QtWarningMsg, "Ran out of cabbage!");
+
+ class TestObject : public QObject
+ {
+ public:
+ ~TestObject()
+ {
+ // Shouldn't fail - ignored
+ qWarning("Ran out of cabbage!");
+ // Should fail
+ qWarning("Running low on toothpaste!");
+ }
+ };
+
+ QScopedPointer<TestObject, QScopedPointerDeleteLater> testObject(new TestObject);
+ QVERIFY(testObject);
+}
+
QTEST_MAIN(tst_Warnings)
#include "tst_warnings.moc"
diff --git a/tests/auto/testlib/selftests/watchdog/CMakeLists.txt b/tests/auto/testlib/selftests/watchdog/CMakeLists.txt
index 1515e50619..21beab6454 100644
--- a/tests/auto/testlib/selftests/watchdog/CMakeLists.txt
+++ b/tests/auto/testlib/selftests/watchdog/CMakeLists.txt
@@ -1,26 +1,21 @@
-# Generated from watchdog.pro.
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## watchdog Binary:
#####################################################################
qt_internal_add_executable(watchdog
- NO_INSTALL # special case
- OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} # special case
+ NO_INSTALL
+ EXCEPTIONS
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
SOURCES
tst_watchdog.cpp
- PUBLIC_LIBRARIES
+ LIBRARIES
Qt::Test
)
-#### Keys ignored in scope 1:.:.:watchdog.pro:<TRUE>:
-# QT_TOOL_ENV = "checkenv"
-# checkenv.name = "QTEST_FUNCTION_TIMEOUT"
-# checkenv.value = "100"
-
## Scopes:
#####################################################################
-# special case begin
qt_internal_apply_testlib_coverage_options(watchdog)
-# special case end
diff --git a/tests/auto/testlib/selftests/watchdog/tst_watchdog.cpp b/tests/auto/testlib/selftests/watchdog/tst_watchdog.cpp
index dc5cde236b..2bc8853e00 100644
--- a/tests/auto/testlib/selftests/watchdog/tst_watchdog.cpp
+++ b/tests/auto/testlib/selftests/watchdog/tst_watchdog.cpp
@@ -1,8 +1,10 @@
// Copyright (C) 2018 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QTest>
+using namespace std::chrono_literals;
+
class tst_Watchdog : public QObject
{
Q_OBJECT
@@ -13,10 +15,9 @@ private slots:
void tst_Watchdog::delay() const
{
bool ok = false;
- const int fiveMinutes = 5 * 60 * 1000;
// Use the same env.var as the watch-dog and add a little to it:
const int timeout = qEnvironmentVariableIntValue("QTEST_FUNCTION_TIMEOUT", &ok);
- QTest::qSleep(5000 + (ok && timeout > 0 ? timeout : fiveMinutes));
+ QTest::qSleep(5s + (ok && timeout > 0 ? timeout * 1ms : 5min));
// The watchdog timer should have interrupted us by now.
QFAIL("ERROR: this function should be interrupted.");
}