diff options
author | Kai Koehne <kai.koehne@digia.com> | 2013-09-20 11:45:54 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-16 17:10:15 +0200 |
commit | 15ddb91bc767b55297cbb35f293f5900379fee18 (patch) | |
tree | 8ee6c3b886c0d5dcde2cac5b30494fd5a960f9cd /tests | |
parent | 42c8c7e9dbf4c9e67b88bd16f0fe4e0d3c57857b (diff) |
Print non-default categories in default message handler
Change the default output of the logging framework to prefix messages
with a 'category: ' in case the category is not "default", so that e.g.
QLoggingCategory cat("qt.core.codes.windows");
qCWarning(cat) << "MultiByteToWideChar: Cannot convert multibyte text";
will print
qt.core.codes.windows: MultiByteToWideChar: Cannot convert multibyte text
while output from qWarning etc will show unaltered output. This should
help users to discover categories, and to group output together.
Change-Id: Iac2e1514f7dc5671966c36a440a119c857564cfc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/corelib/global/qlogging/app/main.cpp | 4 | ||||
-rw-r--r-- | tests/auto/corelib/global/qlogging/tst_qlogging.cpp | 17 |
2 files changed, 14 insertions, 7 deletions
diff --git a/tests/auto/corelib/global/qlogging/app/main.cpp b/tests/auto/corelib/global/qlogging/app/main.cpp index 14416a914d..621059caad 100644 --- a/tests/auto/corelib/global/qlogging/app/main.cpp +++ b/tests/auto/corelib/global/qlogging/app/main.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include <QCoreApplication> +#include <QLoggingCategory> struct T { T() { qDebug("static constructor"); } @@ -57,6 +58,9 @@ int main(int argc, char **argv) qWarning("qWarning"); qCritical("qCritical"); + QLoggingCategory cat("category"); + qCWarning(cat) << "qDebug with category"; + qSetMessagePattern(QString()); qDebug("qDebug2"); diff --git a/tests/auto/corelib/global/qlogging/tst_qlogging.cpp b/tests/auto/corelib/global/qlogging/tst_qlogging.cpp index 94387704f6..31a4254344 100644 --- a/tests/auto/corelib/global/qlogging/tst_qlogging.cpp +++ b/tests/auto/corelib/global/qlogging/tst_qlogging.cpp @@ -666,13 +666,14 @@ void tst_qmessagehandler::qMessagePattern() // qDebug() << output; QVERIFY(!output.isEmpty()); - QVERIFY(output.contains("debug 45 T::T static constructor")); + QVERIFY(output.contains("debug 46 T::T static constructor")); // we can't be sure whether the QT_MESSAGE_PATTERN is already destructed QVERIFY(output.contains("static destructor")); - QVERIFY(output.contains("debug tst_qlogging 56 main qDebug")); - QVERIFY(output.contains("warning tst_qlogging 57 main qWarning")); - QVERIFY(output.contains("critical tst_qlogging 58 main qCritical")); - QVERIFY(output.contains("debug tst_qlogging 62 main qDebug2")); + QVERIFY(output.contains("debug tst_qlogging 57 main qDebug")); + QVERIFY(output.contains("warning tst_qlogging 58 main qWarning")); + QVERIFY(output.contains("critical tst_qlogging 59 main qCritical")); + QVERIFY(output.contains("warning tst_qlogging 62 main qDebug with category ")); + QVERIFY(output.contains("debug tst_qlogging 66 main qDebug2")); environment = m_baseEnvironment; environment.prepend("QT_MESSAGE_PATTERN=\"PREFIX: %{unknown} %{message}\""); @@ -710,7 +711,8 @@ void tst_qmessagehandler::qMessagePattern() QByteArray expected = "static constructor\n" "[debug] qDebug\n" "[warning] qWarning\n" - "[critical] qCritical\n"; + "[critical] qCritical\n" + "[warning] qDebug with category \n"; #ifdef Q_OS_WIN output.replace("\r\n", "\n"); #endif @@ -727,7 +729,7 @@ void tst_qmessagehandler::qMessagePatternIf() const QString appExe = m_appDir + "/app"; QStringList environment = m_baseEnvironment; - environment.prepend("QT_MESSAGE_PATTERN=\"[%{if-debug}D%{endif}%{if-warning}W%{endif}%{if-critical}C%{endif}%{if-fatal}F%{endif}] %{message}\""); + environment.prepend("QT_MESSAGE_PATTERN=\"[%{if-debug}D%{endif}%{if-warning}W%{endif}%{if-critical}C%{endif}%{if-fatal}F%{endif}] %{if-category}%{category}: %{endif}%{message}\""); process.setEnvironment(environment); process.start(appExe); QVERIFY2(process.waitForStarted(), qPrintable( @@ -745,6 +747,7 @@ void tst_qmessagehandler::qMessagePatternIf() QVERIFY(output.contains("[D] qDebug")); QVERIFY(output.contains("[W] qWarning")); QVERIFY(output.contains("[C] qCritical")); + QVERIFY(output.contains("[W] category: qDebug with category")); QVERIFY(output.contains("[D] qDebug2")); // |