diff --git a/src/testlib/qtest.h b/src/testlib/qtest.h index 4abba93721..ca045120d5 100644 --- a/src/testlib/qtest.h +++ b/src/testlib/qtest.h @@ -199,6 +199,22 @@ template<> inline char *toString(const QVariant &v) return qstrdup(vstring.constData()); } +template +inline char *toString(const QPair &pair) +{ + const QScopedArrayPointer first(toString(pair.first)); + const QScopedArrayPointer second(toString(pair.second)); + return toString(QString::asprintf("QPair(%s,%s)", first.data(), second.data())); +} + +template +inline char *toString(const std::pair &pair) +{ + const QScopedArrayPointer first(toString(pair.first)); + const QScopedArrayPointer second(toString(pair.second)); + return toString(QString::asprintf("std::pair(%s,%s)", first.data(), second.data())); +} + inline char *toString(std::nullptr_t) { return toString(QLatin1String("nullptr")); diff --git a/src/testlib/qtestcase.h b/src/testlib/qtestcase.h index fafc0eb7d6..b738043cb7 100644 --- a/src/testlib/qtestcase.h +++ b/src/testlib/qtestcase.h @@ -260,20 +260,10 @@ namespace QTest } template - inline char *toString(const QPair &pair) - { - const QScopedArrayPointer first(toString(pair.first)); - const QScopedArrayPointer second(toString(pair.second)); - return toString(QString::asprintf("QPair(%s,%s)", first.data(), second.data())); - } + inline char *toString(const QPair &pair); template - inline char *toString(const std::pair &pair) - { - const QScopedArrayPointer first(toString(pair.first)); - const QScopedArrayPointer second(toString(pair.second)); - return toString(QString::asprintf("std::pair(%s,%s)", first.data(), second.data())); - } + inline char *toString(const std::pair &pair); Q_TESTLIB_EXPORT char *toHexRepresentation(const char *ba, int length); Q_TESTLIB_EXPORT char *toPrettyCString(const char *unicode, int length);