diff options
author | Edward Welbourne <edward.welbourne@qt.io> | 2022-03-18 15:37:46 +0100 |
---|---|---|
committer | Edward Welbourne <edward.welbourne@qt.io> | 2022-03-29 22:21:58 +0200 |
commit | 0bdc7322d9232db4a8b6092d032b251ae2e03c7b (patch) | |
tree | 5de6a062a55f903e3791319b1d1d8ff5a6837276 /src/testlib | |
parent | 784f5d76b928c42f41c62a281118eeda9ffced71 (diff) |
Tidy up QTapTestLogger::addIncident()'s regex parsing
It had some repetition that could be refactored out, some long lines
and a bool it worked out the hard way, when it had previously
determined the answer in passing without recording it.
Change-Id: I9e53ed087dfbe8067686b27b6cf9ac32040fbf19
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/testlib')
-rw-r--r-- | src/testlib/qtaptestlogger.cpp | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/testlib/qtaptestlogger.cpp b/src/testlib/qtaptestlogger.cpp index 1b2a70a11d..2f64752aab 100644 --- a/src/testlib/qtaptestlogger.cpp +++ b/src/testlib/qtaptestlogger.cpp @@ -328,30 +328,31 @@ void QTapTestLogger::addIncident(IncidentTypes type, const char *description, QString descriptionString = QString::fromUtf8(description); QRegularExpressionMatch match = verifyRegex.match(descriptionString); - if (!match.hasMatch()) + const bool isVerify = match.hasMatch(); + if (!isVerify) match = compareRegex.match(descriptionString); if (match.hasMatch()) { - bool isVerify = match.regularExpression() == verifyRegex; QString message = match.captured(QLatin1String("message")); QString expected; QString actual; + const auto parenthesize = [&match](QLatin1String key) -> QString { + return QLatin1String(" (") % match.captured(key) % QLatin1Char(')'); + }; + const QString actualExpression + = parenthesize(QLatin1String("actualexpression")); if (isVerify) { - QString expression = QLatin1String(" (") - % match.captured(QLatin1String("actualexpression")) % QLatin1Char(')') ; - actual = match.captured(QLatin1String("actual")).toLower() % expression; - expected = (actual.startsWith(QLatin1String("true")) - ? QLatin1String("false") - : QLatin1String("true")) % expression; + actual = match.captured(QLatin1String("actual")).toLower() + % actualExpression; + expected = QLatin1String(actual.startsWith(QLatin1String("true ")) + ? "false" : "true") % actualExpression; if (message.isEmpty()) message = QLatin1String("Verification failed"); } else { - expected = match.captured(QLatin1String("expected")) % QLatin1String(" (") - % match.captured(QLatin1String("expectedexpresssion")) - % QLatin1Char(')'); - actual = match.captured(QLatin1String("actual")) % QLatin1String(" (") - % match.captured(QLatin1String("actualexpression")) % QLatin1Char(')'); + expected = match.captured(QLatin1String("expected")) + % parenthesize(QLatin1String("expectedexpresssion")); + actual = match.captured(QLatin1String("actual")) % actualExpression; } QTestCharBuffer diagnosticsYamlish; |