diff options
Diffstat (limited to 'src/testlib')
-rw-r--r-- | src/testlib/qtestcase.cpp | 8 | ||||
-rw-r--r-- | src/testlib/qtestcase.h | 6 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp index b1e6401b0f..c08ad58d75 100644 --- a/src/testlib/qtestcase.cpp +++ b/src/testlib/qtestcase.cpp @@ -285,6 +285,14 @@ namespace QTestPrivate namespace QTest { + +QString Internal::formatTryTimeoutDebugMessage(q_no_char8_t::QUtf8StringView expr, int timeout, int actual) +{ + return QLatin1String("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time.") + // ### Qt 7: remove the toString() (or earlier, when arg() can handle QUtf8StringView), passing the view directly + .arg(expr.toString(), QString::number(timeout), QString::number(actual)); +} + extern Q_TESTLIB_EXPORT int lastMouseTimestamp; class WatchDog; diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h index b046232c65..25385b327a 100644 --- a/src/testlib/qtestcase.h +++ b/src/testlib/qtestcase.h @@ -143,9 +143,7 @@ do {\ if (!(expr)) { \ QTRY_LOOP_IMPL((expr), (2 * timeoutValue), step);\ if (expr) { \ - QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."); \ - msg = msg.arg(QString::fromUtf8(#expr)).arg(timeoutValue).arg(timeoutValue + qt_test_i); \ - QFAIL(qPrintable(msg)); \ + QFAIL(qPrintable(QTest::Internal::formatTryTimeoutDebugMessage(u8"" #expr, timeoutValue, timeoutValue + qt_test_i))); \ } \ } @@ -239,6 +237,8 @@ namespace QTest { namespace Internal { + Q_TESTLIB_EXPORT QString formatTryTimeoutDebugMessage(q_no_char8_t::QUtf8StringView expr, int timeout, int actual); + template<typename T> // Output registered enums inline typename std::enable_if<QtPrivate::IsQEnumHelper<T>::Value, char*>::type toString(T e) { |