From 08ddf846aed3a14c485aa1d68bc3157e2420f316 Mon Sep 17 00:00:00 2001 From: Axel Spoerl Date: Tue, 21 Nov 2023 12:29:18 +0100 Subject: [PATCH] QAppleTestLogger: Add source link to failure messages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The apple test logger did not include the failure location in the log output, because the assumption was that the structured logging would report the file and line separately. Unfortunately we can't do that using the os_log machinery just yet, so we bring in the manual location printing as in the plain text logger. Pick-to: 6.7 Change-Id: Ief0a6a6e04d628c98ed09c09334b694504cbff2c Reviewed-by: Tor Arne Vestbø --- src/testlib/qappletestlogger.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/testlib/qappletestlogger.cpp b/src/testlib/qappletestlogger.cpp index 43968e7ebe..7517a95344 100644 --- a/src/testlib/qappletestlogger.cpp +++ b/src/testlib/qappletestlogger.cpp @@ -104,6 +104,14 @@ void QAppleTestLogger::addIncident(IncidentTypes type, const char *description, if (qstrlen(description)) message += u'\n' % QString::fromLatin1(description); + // As long as the Apple logger doesn't propagate the context's file and + // line number we need to manually print it. + if (context.line && context.file) { + QTestCharBuffer line; + QTest::qt_asprintf(&line, "\n [Loc: %s:%d]", context.file, context.line); + message += QLatin1String(line.data()); + } + AppleUnifiedLogger::messageHandler(messageData.messageType, context, message, subsystem()); }