summaryrefslogtreecommitdiffstats
path: root/tests/auto/testlib/selftests
diff options
context:
space:
mode:
authorJason McDonald <jason.mcdonald@nokia.com>2012-03-01 11:01:49 +1000
committerQt by Nokia <qt-info@nokia.com>2012-03-02 01:06:22 +0100
commit123eb803ef1a7af36eefdf9a668f1f29d6597f1d (patch)
tree28dc8275af863eb711f370c2cbf46209d3c87655 /tests/auto/testlib/selftests
parent51296085b9d96b131d1f095dd2cfe61745c07ef3 (diff)
testlib: Add selftests for -v1 and -v2 command-line switches.
These tests don't have their own source code but rather reuse the counting selftest with additional command-line options. Note that currently the -v1 switch only changes the plain text output, and the expected xml output is identical to that of the counting test. This may change in the future however. This commit also restores a couple of lists to alphabetical order, where the findtestdata selftest was not sorted into the list correctly. Change-Id: Ie38e255f8029157b34162b3864b5fa66e137d74a Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Diffstat (limited to 'tests/auto/testlib/selftests')
-rw-r--r--tests/auto/testlib/selftests/expected_verbose1.lightxml150
-rw-r--r--tests/auto/testlib/selftests/expected_verbose1.txt69
-rw-r--r--tests/auto/testlib/selftests/expected_verbose1.xml153
-rw-r--r--tests/auto/testlib/selftests/expected_verbose1.xunitxml64
-rw-r--r--tests/auto/testlib/selftests/expected_verbose2.lightxml198
-rw-r--r--tests/auto/testlib/selftests/expected_verbose2.txt93
-rw-r--r--tests/auto/testlib/selftests/expected_verbose2.xml201
-rw-r--r--tests/auto/testlib/selftests/expected_verbose2.xunitxml89
-rw-r--r--tests/auto/testlib/selftests/selftests.pri2
-rw-r--r--tests/auto/testlib/selftests/selftests.qrc16
-rw-r--r--tests/auto/testlib/selftests/tst_selftests.cpp10
-rw-r--r--tests/auto/testlib/selftests/verbose1/verbose1.pro10
-rw-r--r--tests/auto/testlib/selftests/verbose2/verbose2.pro10
13 files changed, 1060 insertions, 5 deletions
diff --git a/tests/auto/testlib/selftests/expected_verbose1.lightxml b/tests/auto/testlib/selftests/expected_verbose1.lightxml
new file mode 100644
index 0000000000..e7b1136417
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose1.lightxml
@@ -0,0 +1,150 @@
+<Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+</Environment>
+<TestFunction name="initTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+<TestFunction name="testPassPass">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testPassSkip">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testPassFail">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipPass">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipSkip">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testSkipFail">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailPass">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailSkip">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testFailFail">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="233">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in init()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QFAIL in cleanup() ]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="241">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in cleanup()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="235">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in init()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QSKIP in cleanup() ]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="243">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in cleanup()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="cleanupTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_verbose1.txt b/tests/auto/testlib/selftests/expected_verbose1.txt
new file mode 100644
index 0000000000..4a0fec51ae
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose1.txt
@@ -0,0 +1,69 @@
+********* Start testing of tst_Counting *********
+Config: Using QTest library @INSERT_QT_VERSION_HERE@, Qt @INSERT_QT_VERSION_HERE@
+INFO : tst_Counting::initTestCase() entering
+PASS : tst_Counting::initTestCase()
+INFO : tst_Counting::testPassPass() entering
+PASS : tst_Counting::testPassPass(row 1)
+PASS : tst_Counting::testPassPass(row 2)
+INFO : tst_Counting::testPassSkip() entering
+PASS : tst_Counting::testPassSkip(row 1)
+SKIP : tst_Counting::testPassSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testPassFail() entering
+PASS : tst_Counting::testPassFail(row 1)
+FAIL! : tst_Counting::testPassFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testSkipPass() entering
+SKIP : tst_Counting::testSkipPass(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+PASS : tst_Counting::testSkipPass(row 2)
+INFO : tst_Counting::testSkipSkip() entering
+SKIP : tst_Counting::testSkipSkip(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+SKIP : tst_Counting::testSkipSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testSkipFail() entering
+SKIP : tst_Counting::testSkipFail(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+FAIL! : tst_Counting::testSkipFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailPass() entering
+FAIL! : tst_Counting::testFailPass(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+PASS : tst_Counting::testFailPass(row 2)
+INFO : tst_Counting::testFailSkip() entering
+FAIL! : tst_Counting::testFailSkip(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+SKIP : tst_Counting::testFailSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testFailFail() entering
+FAIL! : tst_Counting::testFailFail(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testFailFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailInInit() entering
+PASS : tst_Counting::testFailInInit(before)
+FAIL! : tst_Counting::testFailInInit(fail) Fail in init()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(233)]
+PASS : tst_Counting::testFailInInit(after)
+INFO : tst_Counting::testFailInCleanup() entering
+PASS : tst_Counting::testFailInCleanup(before)
+QDEBUG : tst_Counting::testFailInCleanup(fail) This test function should execute and then QFAIL in cleanup()
+FAIL! : tst_Counting::testFailInCleanup(fail) Fail in cleanup()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(241)]
+PASS : tst_Counting::testFailInCleanup(after)
+INFO : tst_Counting::testSkipInInit() entering
+PASS : tst_Counting::testSkipInInit(before)
+SKIP : tst_Counting::testSkipInInit(skip) Skip in init()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(235)]
+PASS : tst_Counting::testSkipInInit(after)
+INFO : tst_Counting::testSkipInCleanup() entering
+PASS : tst_Counting::testSkipInCleanup(before)
+QDEBUG : tst_Counting::testSkipInCleanup(skip) This test function should execute and then QSKIP in cleanup()
+SKIP : tst_Counting::testSkipInCleanup(skip) Skip in cleanup()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(243)]
+PASS : tst_Counting::testSkipInCleanup(after)
+INFO : tst_Counting::cleanupTestCase() entering
+PASS : tst_Counting::cleanupTestCase()
+Totals: 16 passed, 8 failed, 8 skipped
+********* Finished testing of tst_Counting *********
diff --git a/tests/auto/testlib/selftests/expected_verbose1.xml b/tests/auto/testlib/selftests/expected_verbose1.xml
new file mode 100644
index 0000000000..a97296807d
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose1.xml
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<TestCase name="tst_Counting">
+<Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+</Environment>
+<TestFunction name="initTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+<TestFunction name="testPassPass">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testPassSkip">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testPassFail">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipPass">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipSkip">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testSkipFail">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailPass">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailSkip">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testFailFail">
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="233">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in init()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QFAIL in cleanup() ]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="241">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in cleanup()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="235">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in init()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QSKIP in cleanup() ]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="243">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in cleanup()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="cleanupTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_verbose1.xunitxml b/tests/auto/testlib/selftests/expected_verbose1.xunitxml
new file mode 100644
index 0000000000..f317ed5923
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose1.xunitxml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite errors="10" failures="8" tests="15" name="tst_Counting">
+ <properties>
+ <property value="@INSERT_QT_VERSION_HERE@" name="QTestVersion"/>
+ <property value="@INSERT_QT_VERSION_HERE@" name="QtVersion"/>
+ </properties>
+ <testcase result="pass" name="initTestCase"/>
+ <testcase result="pass" name="testPassPass"/>
+ <testcase result="pass" name="testPassSkip">
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testPassFail">
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="pass" name="testSkipPass">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase name="testSkipSkip">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testSkipFail">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailPass">
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailSkip">
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testFailFail">
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailInInit">
+ <failure tag="fail" message="Fail in init()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailInCleanup">
+ <!-- tag="fail" message="This test function should execute and then QFAIL in cleanup() " type="qdebug" -->
+ <failure tag="fail" message="Fail in cleanup()" result="fail"/>
+ </testcase>
+ <testcase result="pass" name="testSkipInInit">
+ <!-- tag="skip" message="Skip in init()" type="skip" -->
+ </testcase>
+ <testcase result="pass" name="testSkipInCleanup">
+ <!-- tag="skip" message="This test function should execute and then QSKIP in cleanup() " type="qdebug" -->
+ <!-- tag="skip" message="Skip in cleanup()" type="skip" -->
+ </testcase>
+ <testcase result="pass" name="cleanupTestCase"/>
+ <system-err>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[This test function should execute and then QFAIL in cleanup() ]]>
+<![CDATA[Skip in init()]]>
+<![CDATA[This test function should execute and then QSKIP in cleanup() ]]>
+<![CDATA[Skip in cleanup()]]>
+ </system-err>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/expected_verbose2.lightxml b/tests/auto/testlib/selftests/expected_verbose2.lightxml
new file mode 100644
index 0000000000..b2d9607ade
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose2.lightxml
@@ -0,0 +1,198 @@
+<Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+</Environment>
+<TestFunction name="initTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+<TestFunction name="testPassPass">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testPassSkip">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testPassFail">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipPass">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipSkip">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testSkipFail">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailPass">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailSkip">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testFailFail">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="233">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in init()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QFAIL in cleanup() ]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="241">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in cleanup()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="235">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in init()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QSKIP in cleanup() ]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="243">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in cleanup()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="cleanupTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
diff --git a/tests/auto/testlib/selftests/expected_verbose2.txt b/tests/auto/testlib/selftests/expected_verbose2.txt
new file mode 100644
index 0000000000..9d36a5e98e
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose2.txt
@@ -0,0 +1,93 @@
+********* Start testing of tst_Counting *********
+Config: Using QTest library @INSERT_QT_VERSION_HERE@, Qt @INSERT_QT_VERSION_HERE@
+INFO : tst_Counting::initTestCase() entering
+PASS : tst_Counting::initTestCase()
+INFO : tst_Counting::testPassPass() entering
+INFO : tst_Counting::testPassPass(row 1) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testPassPass(row 1)
+INFO : tst_Counting::testPassPass(row 2) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testPassPass(row 2)
+INFO : tst_Counting::testPassSkip() entering
+INFO : tst_Counting::testPassSkip(row 1) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testPassSkip(row 1)
+SKIP : tst_Counting::testPassSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testPassFail() entering
+INFO : tst_Counting::testPassFail(row 1) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testPassFail(row 1)
+INFO : tst_Counting::testPassFail(row 2) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testPassFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testSkipPass() entering
+SKIP : tst_Counting::testSkipPass(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testSkipPass(row 2) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testSkipPass(row 2)
+INFO : tst_Counting::testSkipSkip() entering
+SKIP : tst_Counting::testSkipSkip(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+SKIP : tst_Counting::testSkipSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testSkipFail() entering
+SKIP : tst_Counting::testSkipFail(row 1) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testSkipFail(row 2) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testSkipFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailPass() entering
+INFO : tst_Counting::testFailPass(row 1) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testFailPass(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailPass(row 2) QVERIFY(true)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(111)]
+PASS : tst_Counting::testFailPass(row 2)
+INFO : tst_Counting::testFailSkip() entering
+INFO : tst_Counting::testFailSkip(row 1) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testFailSkip(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+SKIP : tst_Counting::testFailSkip(row 2) Skipping
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(117)]
+INFO : tst_Counting::testFailFail() entering
+INFO : tst_Counting::testFailFail(row 1) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testFailFail(row 1) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailFail(row 2) QVERIFY(false)
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+FAIL! : tst_Counting::testFailFail(row 2) 'false' returned FALSE. ()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(114)]
+INFO : tst_Counting::testFailInInit() entering
+PASS : tst_Counting::testFailInInit(before)
+FAIL! : tst_Counting::testFailInInit(fail) Fail in init()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(233)]
+PASS : tst_Counting::testFailInInit(after)
+INFO : tst_Counting::testFailInCleanup() entering
+PASS : tst_Counting::testFailInCleanup(before)
+QDEBUG : tst_Counting::testFailInCleanup(fail) This test function should execute and then QFAIL in cleanup()
+FAIL! : tst_Counting::testFailInCleanup(fail) Fail in cleanup()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(241)]
+PASS : tst_Counting::testFailInCleanup(after)
+INFO : tst_Counting::testSkipInInit() entering
+PASS : tst_Counting::testSkipInInit(before)
+SKIP : tst_Counting::testSkipInInit(skip) Skip in init()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(235)]
+PASS : tst_Counting::testSkipInInit(after)
+INFO : tst_Counting::testSkipInCleanup() entering
+PASS : tst_Counting::testSkipInCleanup(before)
+QDEBUG : tst_Counting::testSkipInCleanup(skip) This test function should execute and then QSKIP in cleanup()
+SKIP : tst_Counting::testSkipInCleanup(skip) Skip in cleanup()
+ Loc: [/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp(243)]
+PASS : tst_Counting::testSkipInCleanup(after)
+INFO : tst_Counting::cleanupTestCase() entering
+PASS : tst_Counting::cleanupTestCase()
+Totals: 16 passed, 8 failed, 8 skipped
+********* Finished testing of tst_Counting *********
diff --git a/tests/auto/testlib/selftests/expected_verbose2.xml b/tests/auto/testlib/selftests/expected_verbose2.xml
new file mode 100644
index 0000000000..90582e6116
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose2.xml
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<TestCase name="tst_Counting">
+<Environment>
+ <QtVersion>@INSERT_QT_VERSION_HERE@</QtVersion>
+ <QTestVersion>@INSERT_QT_VERSION_HERE@</QTestVersion>
+</Environment>
+<TestFunction name="initTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+<TestFunction name="testPassPass">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testPassSkip">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testPassFail">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 1]]></DataTag>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipPass">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipSkip">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testSkipFail">
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailPass">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="111">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(true)]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[row 2]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailSkip">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="117">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[Skipping]]></Description>
+</Message>
+</TestFunction>
+<TestFunction name="testFailFail">
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 1]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+<Message type="info" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA[QVERIFY(false)]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="114">
+ <DataTag><![CDATA[row 2]]></DataTag>
+ <Description><![CDATA['false' returned FALSE. ()]]></Description>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="233">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in init()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testFailInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QFAIL in cleanup() ]]></Description>
+</Message>
+<Incident type="fail" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="241">
+ <DataTag><![CDATA[fail]]></DataTag>
+ <Description><![CDATA[Fail in cleanup()]]></Description>
+</Incident>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInInit">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="235">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in init()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="testSkipInCleanup">
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[before]]></DataTag>
+</Incident>
+<Message type="qdebug" file="" line="0">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[This test function should execute and then QSKIP in cleanup() ]]></Description>
+</Message>
+<Message type="skip" file="/home/user/dev/qt5/qtbase/tests/auto/testlib/selftests/counting/tst_counting.cpp" line="243">
+ <DataTag><![CDATA[skip]]></DataTag>
+ <Description><![CDATA[Skip in cleanup()]]></Description>
+</Message>
+<Incident type="pass" file="" line="0">
+ <DataTag><![CDATA[after]]></DataTag>
+</Incident>
+</TestFunction>
+<TestFunction name="cleanupTestCase">
+<Incident type="pass" file="" line="0" />
+</TestFunction>
+</TestCase>
diff --git a/tests/auto/testlib/selftests/expected_verbose2.xunitxml b/tests/auto/testlib/selftests/expected_verbose2.xunitxml
new file mode 100644
index 0000000000..558550f17b
--- /dev/null
+++ b/tests/auto/testlib/selftests/expected_verbose2.xunitxml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<testsuite errors="22" failures="8" tests="15" name="tst_Counting">
+ <properties>
+ <property value="@INSERT_QT_VERSION_HERE@" name="QTestVersion"/>
+ <property value="@INSERT_QT_VERSION_HERE@" name="QtVersion"/>
+ </properties>
+ <testcase result="pass" name="initTestCase"/>
+ <testcase result="pass" name="testPassPass">
+ <!-- tag="row 1" message="QVERIFY(true)" type="info" -->
+ <!-- tag="row 2" message="QVERIFY(true)" type="info" -->
+ </testcase>
+ <testcase result="pass" name="testPassSkip">
+ <!-- tag="row 1" message="QVERIFY(true)" type="info" -->
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testPassFail">
+ <!-- tag="row 1" message="QVERIFY(true)" type="info" -->
+ <!-- tag="row 2" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="pass" name="testSkipPass">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ <!-- tag="row 2" message="QVERIFY(true)" type="info" -->
+ </testcase>
+ <testcase name="testSkipSkip">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testSkipFail">
+ <!-- tag="row 1" message="Skipping" type="skip" -->
+ <!-- tag="row 2" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailPass">
+ <!-- tag="row 1" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ <!-- tag="row 2" message="QVERIFY(true)" type="info" -->
+ </testcase>
+ <testcase result="fail" name="testFailSkip">
+ <!-- tag="row 1" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ <!-- tag="row 2" message="Skipping" type="skip" -->
+ </testcase>
+ <testcase result="fail" name="testFailFail">
+ <!-- tag="row 1" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 1" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ <!-- tag="row 2" message="QVERIFY(false)" type="info" -->
+ <failure tag="row 2" message="&apos;false&apos; returned FALSE. ()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailInInit">
+ <failure tag="fail" message="Fail in init()" result="fail"/>
+ </testcase>
+ <testcase result="fail" name="testFailInCleanup">
+ <!-- tag="fail" message="This test function should execute and then QFAIL in cleanup() " type="qdebug" -->
+ <failure tag="fail" message="Fail in cleanup()" result="fail"/>
+ </testcase>
+ <testcase result="pass" name="testSkipInInit">
+ <!-- tag="skip" message="Skip in init()" type="skip" -->
+ </testcase>
+ <testcase result="pass" name="testSkipInCleanup">
+ <!-- tag="skip" message="This test function should execute and then QSKIP in cleanup() " type="qdebug" -->
+ <!-- tag="skip" message="Skip in cleanup()" type="skip" -->
+ </testcase>
+ <testcase result="pass" name="cleanupTestCase"/>
+ <system-err>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[Skipping]]>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[Skipping]]>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[Skipping]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[QVERIFY(true)]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[Skipping]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[QVERIFY(false)]]>
+<![CDATA[This test function should execute and then QFAIL in cleanup() ]]>
+<![CDATA[Skip in init()]]>
+<![CDATA[This test function should execute and then QSKIP in cleanup() ]]>
+<![CDATA[Skip in cleanup()]]>
+ </system-err>
+</testsuite>
diff --git a/tests/auto/testlib/selftests/selftests.pri b/tests/auto/testlib/selftests/selftests.pri
index 1fc66e6364..c9474419eb 100644
--- a/tests/auto/testlib/selftests/selftests.pri
+++ b/tests/auto/testlib/selftests/selftests.pri
@@ -39,5 +39,7 @@ SUBPROGRAMS = \
sleep \
strcmp \
subtest \
+ verbose1 \
+ verbose2 \
warnings \
xunit
diff --git a/tests/auto/testlib/selftests/selftests.qrc b/tests/auto/testlib/selftests/selftests.qrc
index e39515e5be..03de05fb89 100644
--- a/tests/auto/testlib/selftests/selftests.qrc
+++ b/tests/auto/testlib/selftests/selftests.qrc
@@ -75,6 +75,10 @@
<file>expected_fetchbogus.txt</file>
<file>expected_fetchbogus.xml</file>
<file>expected_fetchbogus.xunitxml</file>
+ <file>expected_findtestdata.lightxml</file>
+ <file>expected_findtestdata.txt</file>
+ <file>expected_findtestdata.xml</file>
+ <file>expected_findtestdata.xunitxml</file>
<file>expected_float.txt</file>
<file>expected_globaldata.lightxml</file>
<file>expected_globaldata.txt</file>
@@ -122,10 +126,14 @@
<file>expected_subtest.txt</file>
<file>expected_subtest.xml</file>
<file>expected_subtest.xunitxml</file>
- <file>expected_findtestdata.lightxml</file>
- <file>expected_findtestdata.txt</file>
- <file>expected_findtestdata.xml</file>
- <file>expected_findtestdata.xunitxml</file>
+ <file>expected_verbose1.lightxml</file>
+ <file>expected_verbose1.txt</file>
+ <file>expected_verbose1.xml</file>
+ <file>expected_verbose1.xunitxml</file>
+ <file>expected_verbose2.lightxml</file>
+ <file>expected_verbose2.txt</file>
+ <file>expected_verbose2.xml</file>
+ <file>expected_verbose2.xunitxml</file>
<file>expected_warnings.lightxml</file>
<file>expected_warnings.txt</file>
<file>expected_warnings.xml</file>
diff --git a/tests/auto/testlib/selftests/tst_selftests.cpp b/tests/auto/testlib/selftests/tst_selftests.cpp
index 2b90bdb389..5d216992d7 100644
--- a/tests/auto/testlib/selftests/tst_selftests.cpp
+++ b/tests/auto/testlib/selftests/tst_selftests.cpp
@@ -346,6 +346,7 @@ void tst_Selftests::runSubTest_data()
// Disable this test on Windows, as the run-time will popup dialogs with warnings
<< "fetchbogus"
#endif
+ << "findtestdata"
<< "float"
<< "globaldata"
<< "longstring"
@@ -363,7 +364,8 @@ void tst_Selftests::runSubTest_data()
<< "sleep"
<< "strcmp"
<< "subtest"
- << "findtestdata"
+ << "verbose1"
+ << "verbose2"
<< "warnings"
<< "xunit"
;
@@ -413,6 +415,12 @@ void tst_Selftests::runSubTest_data()
else if (subtest == "silent") {
arguments << "-silent";
}
+ else if (subtest == "verbose1") {
+ arguments << "-v1";
+ }
+ else if (subtest == "verbose2") {
+ arguments << "-v2";
+ }
// These tests don't work right unless logging plain text to
diff --git a/tests/auto/testlib/selftests/verbose1/verbose1.pro b/tests/auto/testlib/selftests/verbose1/verbose1.pro
new file mode 100644
index 0000000000..f00ae69d17
--- /dev/null
+++ b/tests/auto/testlib/selftests/verbose1/verbose1.pro
@@ -0,0 +1,10 @@
+# This test just reuses the counting selftest to show how the output
+# differs when the -v1 command-line switch is used.
+
+SOURCES += ../counting/tst_counting.cpp
+QT = core testlib
+
+mac:CONFIG -= app_bundle
+CONFIG -= debug_and_release_target
+
+TARGET = verbose1
diff --git a/tests/auto/testlib/selftests/verbose2/verbose2.pro b/tests/auto/testlib/selftests/verbose2/verbose2.pro
new file mode 100644
index 0000000000..796cdeb975
--- /dev/null
+++ b/tests/auto/testlib/selftests/verbose2/verbose2.pro
@@ -0,0 +1,10 @@
+# This test just reuses the counting selftest to show how the output
+# differs when the -v2 command-line switch is used.
+
+SOURCES += ../counting/tst_counting.cpp
+QT = core testlib
+
+mac:CONFIG -= app_bundle
+CONFIG -= debug_and_release_target
+
+TARGET = verbose2