summaryrefslogtreecommitdiffstats
path: root/src/testlib/qabstracttestlogger.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/testlib/qabstracttestlogger.cpp')
-rw-r--r--src/testlib/qabstracttestlogger.cpp24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/testlib/qabstracttestlogger.cpp b/src/testlib/qabstracttestlogger.cpp
index 8337600fa1..63c165b9dc 100644
--- a/src/testlib/qabstracttestlogger.cpp
+++ b/src/testlib/qabstracttestlogger.cpp
@@ -41,6 +41,7 @@
#include <QtTest/qtestassert.h>
#include <QtCore/qbytearray.h>
+#include <QtCore/qstring.h>
#include <stdio.h>
#include <stdlib.h>
@@ -121,6 +122,29 @@ void QAbstractTestLogger::stopLogging()
{
}
+void QAbstractTestLogger::addMessage(QtMsgType type, const QMessageLogContext &context,
+ const QString &message)
+{
+ QAbstractTestLogger::MessageTypes messageType = [=]() {
+ switch (type) {
+ case QtDebugMsg: return QAbstractTestLogger::QDebug;
+ case QtInfoMsg: return QAbstractTestLogger::QInfo;
+ case QtCriticalMsg: return QAbstractTestLogger::QSystem;
+ case QtWarningMsg: return QAbstractTestLogger::QWarning;
+ case QtFatalMsg: return QAbstractTestLogger::QFatal;
+ }
+ Q_UNREACHABLE();
+ return QAbstractTestLogger::QFatal;
+ }();
+
+ QString formattedMessage = qFormatLogMessage(type, context, message);
+
+ // Note that we explicitly ignore the file and line of the context here,
+ // as that's what QTest::messageHandler used to do when calling the same
+ // overload directly.
+ addMessage(messageType, formattedMessage);
+}
+
namespace QTest
{