diff --git a/src/testlib/qjunittestlogger.cpp b/src/testlib/qjunittestlogger.cpp index f8000b4302..4b5de7b7c0 100644 --- a/src/testlib/qjunittestlogger.cpp +++ b/src/testlib/qjunittestlogger.cpp @@ -270,9 +270,9 @@ void QJUnitTestLogger::addFailure(QTest::LogElementType elementType, failureElement->addAttribute(QTest::AI_Message, message.toUtf8().constData()); if (!details.isEmpty()) { - auto messageElement = new QTestElement(QTest::LET_Message); - messageElement->addAttribute(QTest::AI_Message, details.toUtf8().constData()); - failureElement->addLogElement(messageElement); + auto textNode = new QTestElement(QTest::LET_Text); + textNode->addAttribute(QTest::AI_Value, details.toUtf8().constData()); + failureElement->addLogElement(textNode); } currentTestCase->addLogElement(failureElement); @@ -294,62 +294,29 @@ void QJUnitTestLogger::addMessage(MessageTypes type, const QString &message, con skippedElement->addAttribute(QTest::AI_Message, message.toUtf8().constData()); currentTestCase->addLogElement(skippedElement); return; - } - - auto systemLogElement = systemOutputElement; - const char *typeBuf = nullptr; - - switch (type) { - case QAbstractTestLogger::Warn: - systemLogElement = systemErrorElement; - typeBuf = "warn"; - break; - case QAbstractTestLogger::QCritical: - systemLogElement = systemErrorElement; - typeBuf = "qcritical"; - break; - case QAbstractTestLogger::QDebug: - typeBuf = "qdebug"; - break; - case QAbstractTestLogger::QInfo: - typeBuf = "qinfo"; - break; - case QAbstractTestLogger::QWarning: - systemLogElement = systemErrorElement; - typeBuf = "qwarn"; - break; - case QAbstractTestLogger::QFatal: - systemLogElement = systemErrorElement; - typeBuf = "qfatal"; - break; - case QAbstractTestLogger::Skip: - Q_UNREACHABLE(); - break; - case QAbstractTestLogger::Info: - typeBuf = "info"; - break; - default: - typeBuf = "??????"; - break; - } - - if (type == QAbstractTestLogger::QFatal) { - addFailure(QTest::LET_Error, typeBuf, message); + } else if (type == QAbstractTestLogger::QFatal) { + addFailure(QTest::LET_Error, "qfatal", message); return; } - auto messageElement = new QTestElement(QTest::LET_Message); - messageElement->addAttribute(QTest::AI_Type, typeBuf); - messageElement->addAttribute(QTest::AI_Message, message.toUtf8().constData()); + auto systemLogElement = [&]() { + switch (type) { + case QAbstractTestLogger::QDebug: + case QAbstractTestLogger::Info: + case QAbstractTestLogger::QInfo: + return systemOutputElement; + case QAbstractTestLogger::Warn: + case QAbstractTestLogger::QWarning: + case QAbstractTestLogger::QCritical: + return systemErrorElement; + default: + Q_UNREACHABLE(); + } + }(); - currentTestCase->addLogElement(messageElement); - - // Also add the message to the system log (stdout/stderr), if one exists - if (systemLogElement) { - auto messageElement = new QTestElement(QTest::LET_Message); - messageElement->addAttribute(QTest::AI_Message, message.toUtf8().constData()); - systemLogElement->addLogElement(messageElement); - } + auto textNode = new QTestElement(QTest::LET_Text); + textNode->addAttribute(QTest::AI_Value, message.toUtf8().constData()); + systemLogElement->addLogElement(textNode); } QT_END_NAMESPACE diff --git a/src/testlib/qtestelementattribute_p.h b/src/testlib/qtestelementattribute_p.h index 6c49bda588..dd7d1c111a 100644 --- a/src/testlib/qtestelementattribute_p.h +++ b/src/testlib/qtestelementattribute_p.h @@ -94,7 +94,7 @@ namespace QTest { LET_TestCase = 4, LET_TestSuite = 5, LET_Benchmark = 6, - LET_Message = 7, + LET_Text = 7, LET_SystemError = 8, LET_SystemOutput = 9, LET_Skipped = 10 diff --git a/src/testlib/qtestjunitstreamer.cpp b/src/testlib/qtestjunitstreamer.cpp index 8176205cbb..d8c73505db 100644 --- a/src/testlib/qtestjunitstreamer.cpp +++ b/src/testlib/qtestjunitstreamer.cpp @@ -82,20 +82,8 @@ void QTestJUnitStreamer::formatStart(const QTestElement *element, QTestCharBuffe char indent[20]; indentForElement(element, indent, sizeof(indent)); - // Messages/errors are written as CDATA within system-out, system-err, - // error, and failure respectively, comments elsewhere - if (element->elementType() == QTest::LET_Message) { - switch (element->parentElement()->elementType()) { - case QTest::LET_SystemOutput: - case QTest::LET_SystemError: - case QTest::LET_Failure: - case QTest::LET_Error: - QTest::qt_asprintf(formatted, "%selementType() == QTest::LET_Text) { + QTest::qt_asprintf(formatted, "%sindex(); - // For messages we only want to output the `message' attribute value - if (element && element->elementType() == QTest::LET_Message - && (element->parentElement()->elementType() == QTest::LET_SystemOutput - || element->parentElement()->elementType() == QTest::LET_SystemError - || element->parentElement()->elementType() == QTest::LET_Failure - || element->parentElement()->elementType() == QTest::LET_Error)) { - - if (attrindex != QTest::AI_Message) return; - + if (element && element->elementType() == QTest::LET_Text) { + QTEST_ASSERT(attrindex == QTest::AI_Value); QXmlTestLogger::xmlCdata(formatted, attribute->value()); return; } @@ -149,20 +130,8 @@ void QTestJUnitStreamer::formatAfterAttributes(const QTestElement *element, QTes if (!element || !formatted ) return; - // Messages are written as CDATA within system-out, system-err, - // error, and failure respectively, comments elsewhere - if (element->elementType() == QTest::LET_Message) { - switch (element->parentElement()->elementType()) { - case QTest::LET_SystemOutput: - case QTest::LET_SystemError: - case QTest::LET_Failure: - case QTest::LET_Error: - QTest::qt_asprintf(formatted, "]]>\n"); - break; - default: - QTest::qt_asprintf(formatted, " -->\n"); - break; - } + if (element->elementType() == QTest::LET_Text) { + QTest::qt_asprintf(formatted, "]]>\n"); return; } diff --git a/tests/auto/testlib/selftests/expected_badxml.junitxml b/tests/auto/testlib/selftests/expected_badxml.junitxml index 9c8b9d4e68..757f3a41c5 100644 --- a/tests/auto/testlib/selftests/expected_badxml.junitxml +++ b/tests/auto/testlib/selftests/expected_badxml.junitxml @@ -7,77 +7,65 @@ - - - - - - - - - text ]]]> more text]]> - - open < tags < text]]> - " mixed ]]]> up > " in < the ]]]> hopes < of triggering "< ]]]> bugs]]> @@ -86,7 +74,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_commandlinedata.junitxml b/tests/auto/testlib/selftests/expected_commandlinedata.junitxml index 4e854fc649..6756adfe0a 100644 --- a/tests/auto/testlib/selftests/expected_commandlinedata.junitxml +++ b/tests/auto/testlib/selftests/expected_commandlinedata.junitxml @@ -7,38 +7,32 @@ - - - - - - diff --git a/tests/auto/testlib/selftests/expected_counting.junitxml b/tests/auto/testlib/selftests/expected_counting.junitxml index 624d969f3d..f4d2104887 100644 --- a/tests/auto/testlib/selftests/expected_counting.junitxml +++ b/tests/auto/testlib/selftests/expected_counting.junitxml @@ -55,7 +55,6 @@ - @@ -69,7 +68,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_expectfail.junitxml b/tests/auto/testlib/selftests/expected_expectfail.junitxml index f14b1bf800..fd4cdb3488 100644 --- a/tests/auto/testlib/selftests/expected_expectfail.junitxml +++ b/tests/auto/testlib/selftests/expected_expectfail.junitxml @@ -7,9 +7,6 @@ - - - @@ -17,8 +14,6 @@ - - @@ -28,8 +23,6 @@ - - @@ -38,13 +31,11 @@ - - @@ -52,26 +43,22 @@ - - - - diff --git a/tests/auto/testlib/selftests/expected_faildatatype.junitxml b/tests/auto/testlib/selftests/expected_faildatatype.junitxml index b370e982b7..72d1a50b62 100644 --- a/tests/auto/testlib/selftests/expected_faildatatype.junitxml +++ b/tests/auto/testlib/selftests/expected_faildatatype.junitxml @@ -7,7 +7,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_findtestdata.junitxml b/tests/auto/testlib/selftests/expected_findtestdata.junitxml index ca20c1aa3a..c3bed92f0a 100644 --- a/tests/auto/testlib/selftests/expected_findtestdata.junitxml +++ b/tests/auto/testlib/selftests/expected_findtestdata.junitxml @@ -7,7 +7,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_globaldata.junitxml b/tests/auto/testlib/selftests/expected_globaldata.junitxml index cbf55d5018..f33bd3441c 100644 --- a/tests/auto/testlib/selftests/expected_globaldata.junitxml +++ b/tests/auto/testlib/selftests/expected_globaldata.junitxml @@ -6,16 +6,11 @@ - - - - - @@ -24,10 +19,6 @@ - - - - @@ -36,10 +27,6 @@ - - - - @@ -48,10 +35,6 @@ - - - - @@ -63,45 +46,34 @@ - - - - - - - - - - - @@ -109,27 +81,20 @@ - - - - - - - @@ -137,7 +102,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_junit.junitxml b/tests/auto/testlib/selftests/expected_junit.junitxml index 43d2bdae89..3565294c6a 100644 --- a/tests/auto/testlib/selftests/expected_junit.junitxml +++ b/tests/auto/testlib/selftests/expected_junit.junitxml @@ -7,13 +7,11 @@ - - @@ -29,13 +27,11 @@ - - diff --git a/tests/auto/testlib/selftests/expected_maxwarnings.junitxml b/tests/auto/testlib/selftests/expected_maxwarnings.junitxml index 739bed3b31..fdb7c60637 100644 --- a/tests/auto/testlib/selftests/expected_maxwarnings.junitxml +++ b/tests/auto/testlib/selftests/expected_maxwarnings.junitxml @@ -7,2008 +7,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/auto/testlib/selftests/expected_signaldumper.junitxml b/tests/auto/testlib/selftests/expected_signaldumper.junitxml index f345ab67a6..7fe6df6a33 100644 --- a/tests/auto/testlib/selftests/expected_signaldumper.junitxml +++ b/tests/auto/testlib/selftests/expected_signaldumper.junitxml @@ -7,20 +7,12 @@ - - - - - - - - @@ -31,12 +23,6 @@ - - - - - - @@ -47,15 +33,6 @@ - - - - - - - - - @@ -69,12 +46,6 @@ - - - - - - @@ -85,12 +56,6 @@ - - - - - - @@ -101,12 +66,6 @@ - - - - - - @@ -117,18 +76,6 @@ - - - - - - - - - - - - @@ -145,12 +92,6 @@ - - - - - - @@ -161,15 +102,6 @@ - - - - - - - - - @@ -183,15 +115,6 @@ - - - - - - - - - @@ -205,18 +128,6 @@ - - - - - - - - - - - - @@ -233,15 +144,6 @@ - - - - - - - - - @@ -255,9 +157,6 @@ - - - @@ -265,9 +164,6 @@ - - - @@ -275,10 +171,6 @@ - - - - @@ -287,9 +179,6 @@ - - - @@ -297,18 +186,6 @@ - - - - - - - - - - - - @@ -325,7 +202,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_skip.junitxml b/tests/auto/testlib/selftests/expected_skip.junitxml index 0fe2e0bad5..f5cb413321 100644 --- a/tests/auto/testlib/selftests/expected_skip.junitxml +++ b/tests/auto/testlib/selftests/expected_skip.junitxml @@ -16,7 +16,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_strcmp.junitxml b/tests/auto/testlib/selftests/expected_strcmp.junitxml index 1ac8a4dd92..a316887748 100644 --- a/tests/auto/testlib/selftests/expected_strcmp.junitxml +++ b/tests/auto/testlib/selftests/expected_strcmp.junitxml @@ -8,9 +8,6 @@ - - - diff --git a/tests/auto/testlib/selftests/expected_subtest.junitxml b/tests/auto/testlib/selftests/expected_subtest.junitxml index 1d77ffc985..72b2c5c6b5 100644 --- a/tests/auto/testlib/selftests/expected_subtest.junitxml +++ b/tests/auto/testlib/selftests/expected_subtest.junitxml @@ -6,15 +6,11 @@ - - - - @@ -22,12 +18,6 @@ - - - - - - @@ -38,10 +28,6 @@ - - - - @@ -50,10 +36,6 @@ - - - - @@ -62,12 +44,6 @@ - - - - - - @@ -78,13 +54,10 @@ - - - @@ -92,13 +65,10 @@ - - - @@ -106,7 +76,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_verbose1.junitxml b/tests/auto/testlib/selftests/expected_verbose1.junitxml index 624d969f3d..f4d2104887 100644 --- a/tests/auto/testlib/selftests/expected_verbose1.junitxml +++ b/tests/auto/testlib/selftests/expected_verbose1.junitxml @@ -55,7 +55,6 @@ - @@ -69,7 +68,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_verbose2.junitxml b/tests/auto/testlib/selftests/expected_verbose2.junitxml index 03460248b6..7c96272020 100644 --- a/tests/auto/testlib/selftests/expected_verbose2.junitxml +++ b/tests/auto/testlib/selftests/expected_verbose2.junitxml @@ -7,24 +7,18 @@ - - - - - - @@ -34,15 +28,12 @@ - - - @@ -52,8 +43,6 @@ - - @@ -69,29 +58,24 @@ - - - - - @@ -101,14 +85,12 @@ - - @@ -121,7 +103,6 @@ - @@ -135,7 +116,6 @@ - diff --git a/tests/auto/testlib/selftests/expected_warnings.junitxml b/tests/auto/testlib/selftests/expected_warnings.junitxml index 69000160b3..691bb32a80 100644 --- a/tests/auto/testlib/selftests/expected_warnings.junitxml +++ b/tests/auto/testlib/selftests/expected_warnings.junitxml @@ -7,16 +7,6 @@ - - - - - - - - - - @@ -33,8 +23,6 @@ - - @@ -42,15 +30,12 @@ - - - @@ -58,8 +43,6 @@ - -