Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qtestcase.h File Reference

(d84672cef17f13a5b8c1b9072dec8171299e888d)

#include <QtTest/qttestglobal.h>
#include <QtTest/qtesttostring.h>
#include <QtCore/qstring.h>
#include <QtCore/qnamespace.h>
#include <QtCore/qmetatype.h>
#include <QtCore/qmetaobject.h>
#include <QtCore/qsharedpointer.h>
#include <QtCore/qtemporarydir.h>
#include <QtCore/qthread.h>
#include <QtCore/qxpfunctional.h>
#include <QtCore/qxptype_traits.h>
#include <QtCore/q20utility.h>
#include <string.h>
#include <exception>
Include dependency graph for qtestcase.h:

Go to the source code of this file.

Classes

struct  QTest::Internal::Compare< ComparisonOperation::Equal >
struct  QTest::Internal::Compare< ComparisonOperation::NotEqual >
struct  QTest::Internal::Compare< ComparisonOperation::LessThan >
struct  QTest::Internal::Compare< ComparisonOperation::LessThanOrEqual >
struct  QTest::Internal::Compare< ComparisonOperation::GreaterThan >
struct  QTest::Internal::Compare< ComparisonOperation::GreaterThanOrEqual >
class  QTest::ThrowOnFailEnabler
class  QTest::ThrowOnSkipEnabler
class  QTest::ThrowOnFailDisabler
class  QTest::ThrowOnSkipDisabler

Namespaces

namespace  QTest
 [15]
namespace  QTest::Internal

Macros

#define QTEST_FAIL_ACTION   do { QTest::Internal::maybeThrowOnFail(); return; } while (false)
#define QTEST_SKIP_ACTION   do { QTest::Internal::maybeThrowOnSkip(); return; } while (false)
#define QVERIFY(statement)
#define QFAIL(message)
#define QVERIFY2(statement, description)
#define QCOMPARE(actual, expected)
#define QCOMPARE_OP_IMPL(lhs, rhs, op, opId)
#define QCOMPARE_EQ(computed, baseline)
#define QCOMPARE_NE(computed, baseline)
#define QCOMPARE_LT(computed, baseline)
#define QCOMPARE_LE(computed, baseline)
#define QCOMPARE_GT(computed, baseline)
#define QCOMPARE_GE(computed, baseline)
#define QVERIFY_THROWS_NO_EXCEPTION(...)
#define QVERIFY_THROWS_EXCEPTION(exceptiontype, ...)
#define QTRY_LOOP_IMPL(expr, timeoutValue, step)
#define QTRY_TIMEOUT_DEBUG_IMPL(expr, timeoutValue, step)
#define QTRY_IMPL(expr, timeoutAsGiven)
#define QTRY_VERIFY_WITH_TIMEOUT(expr, timeout)
#define QTRY_VERIFY(expr)
#define QTRY_VERIFY2_WITH_TIMEOUT(expr, messageExpression, timeout)
#define QTRY_VERIFY2(expr, messageExpression)
#define QTRY_COMPARE_WITH_TIMEOUT(expr, expected, timeout)
#define QTRY_COMPARE(expr, expected)
#define QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, op, opId, timeout)
#define QTRY_COMPARE_EQ_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_EQ(computed, baseline)
#define QTRY_COMPARE_NE_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_NE(computed, baseline)
#define QTRY_COMPARE_LT_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_LT(computed, baseline)
#define QTRY_COMPARE_LE_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_LE(computed, baseline)
#define QTRY_COMPARE_GT_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_GT(computed, baseline)
#define QTRY_COMPARE_GE_WITH_TIMEOUT(computed, baseline, timeout)
#define QTRY_COMPARE_GE(computed, baseline)
#define QSKIP_INTERNAL(statement)
#define QSKIP(statement, ...)
#define QEXPECT_FAIL(dataIndex, comment, mode)
#define QFETCH(Type, name)
#define QFETCH_GLOBAL(Type, name)
#define QTEST(actual, testElement)
#define QCOMPARE_3WAY(...)
#define QFINDTESTDATA(basepath)
#define QEXTRACTTESTDATA(resourcePath)
#define QWARN(msg)

Functions

Q_TESTLIB_EXPORT void QTest::Internal::throwOnFail ()
Q_TESTLIB_EXPORT void QTest::Internal::throwOnSkip ()
Q_TESTLIB_EXPORT void QTest::Internal::maybeThrowOnFail ()
Q_TESTLIB_EXPORT void QTest::Internal::maybeThrowOnSkip ()
Q_DECL_COLD_FUNCTION Q_TESTLIB_EXPORT QString QTest::Internal::formatTryTimeoutDebugMessage (q_no_char8_t::QUtf8StringView expr, std::chrono::milliseconds timeout, std::chrono::milliseconds actual)
Q_TESTLIB_EXPORT Q_DECL_COLD_FUNCTION const char * QTest::Internal::formatPropertyTestHelperFailure (char *msg, size_t maxMsgLen, const char *actual, const char *expected, const char *actualExpr, const char *expectedExpr)
template<typename T1>
const char * QTest::Internal::genericToString (const void *arg)
template<>
const char * QTest::Internal::genericToString< char * > (const void *arg)
template<>
const char * QTest::Internal::genericToString< std::nullptr_t > (const void *)
template<typename T>
const char * QTest::Internal::pointerToString (const void *arg)
Q_TESTLIB_EXPORT void QTest::qInit (QObject *testObject, int argc=0, char **argv=nullptr)
Q_TESTLIB_EXPORT int QTest::qRun ()
Q_TESTLIB_EXPORT void QTest::qCleanup ()
Q_TESTLIB_EXPORT int QTest::qExec (QObject *testObject, int argc=0, char **argv=nullptr)
 Executes tests declared in testObject.
Q_TESTLIB_EXPORT int QTest::qExec (QObject *testObject, const QStringList &arguments)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Q_TESTLIB_EXPORT void QTest::setMainSourcePath (const char *file, const char *builddir=nullptr)
void QTest::setThrowOnFail (bool enable) noexcept
void QTest::setThrowOnSkip (bool enable) noexcept
Q_TESTLIB_EXPORT bool QTest::qVerify (bool statement, const char *statementStr, const char *description, const char *file, int line)
Q_DECL_COLD_FUNCTION Q_TESTLIB_EXPORT void QTest::qFail (const char *message, const char *file, int line)
Q_TESTLIB_EXPORT void QTest::qSkip (const char *message, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qExpectFail (const char *dataIndex, const char *comment, TestFailMode mode, const char *file, int line)
Q_DECL_COLD_FUNCTION Q_TESTLIB_EXPORT void QTest::qCaught (const char *expected, const char *what, const char *file, int line)
Q_DECL_COLD_FUNCTION Q_TESTLIB_EXPORT void QTest::qCaught (const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT void QTest::ignoreMessage (QtMsgType type, const char *message)
 Ignores messages created by qDebug(), qInfo() or qWarning().
Q_TESTLIB_EXPORT void QTest::failOnWarning ()
Q_TESTLIB_EXPORT void QTest::failOnWarning (const char *message)
Q_TESTLIB_EXPORT QString QTest::qFindTestData (const char *basepath, const char *file=nullptr, int line=0, const char *builddir=nullptr, const char *sourcedir=nullptr)
Q_TESTLIB_EXPORT QString QTest::qFindTestData (const QString &basepath, const char *file=nullptr, int line=0, const char *builddir=nullptr, const char *sourcedir=nullptr)
Q_TESTLIB_EXPORT voidQTest::qData (const char *tagName, int typeId)
Q_TESTLIB_EXPORT voidQTest::qGlobalData (const char *tagName, int typeId)
Q_TESTLIB_EXPORT voidQTest::qElementData (const char *elementName, int metaTypeId)
Q_TESTLIB_EXPORT QObjectQTest::testObject ()
Q_TESTLIB_EXPORT const char * QTest::currentAppName ()
 Returns the name of the binary that is currently executed.
Q_TESTLIB_EXPORT const char * QTest::currentTestFunction ()
 Returns the name of the test function that is currently executed.
Q_TESTLIB_EXPORT const char * QTest::currentDataTag ()
 Returns the name of the current test data.
Q_TESTLIB_EXPORT const char * QTest::currentGlobalDataTag ()
 Returns the name of the current global test data.
Q_TESTLIB_EXPORT bool QTest::currentTestFailed ()
 Returns true if the current test function has failed, otherwise false.
Q_TESTLIB_EXPORT bool QTest::currentTestResolved ()
Q_TESTLIB_EXPORT bool QTest::runningTest ()
Q_TESTLIB_EXPORT Qt::Key QTest::asciiToKey (char ascii)
Q_TESTLIB_EXPORT char QTest::keyToAscii (Qt::Key key)
Q_TESTLIB_EXPORT bool QTest::compare_helper (bool success, const char *failureMsg, const void *actualPtr, const void *expectedPtr, const char *(*actualFormatter)(const void *), const char *(*expectedFormatter)(const void *), const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::compare_helper (bool success, const char *failureMsg, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::compare_3way_helper (bool success, const char *failureMsg, const void *lhsPtr, const void *rhsPtr, const char *(*lhsFormatter)(const void *), const char *(*rhsFormatter)(const void *), const char *lhsStr, const char *rhsStr, const char *(*actualOrderFormatter)(const void *), const char *(*expectedOrderFormatter)(const void *), const void *actualOrderPtr, const void *expectedOrderPtr, const char *expectedExpression, const char *file, int line)
Q_TESTLIB_EXPORT void QTest::addColumnInternal (int id, const char *name)
template<typename T>
void QTest::addColumn (const char *name, T *=nullptr)
 Adds a column with type {T} to the current test data.
Q_TESTLIB_EXPORT QTestDataQTest::newRow (const char *dataTag)
 Appends a new row to the current test data.
Q_TESTLIB_EXPORT QTestDataQTest::addRow (const char *format,...) Q_ATTRIBUTE_FORMAT_PRINTF(1
Q_TESTLIB_EXPORT QTestData Q_TESTLIB_EXPORT bool QTest::qCompare (qfloat16 const &t1, qfloat16 const &t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (float const &t1, float const &t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (double const &t1, double const &t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (int t1, int t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (unsigned t1, unsigned t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (QStringView t1, QStringView t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (QStringView t1, const QLatin1StringView &t2, const char *actual, const char *expected, const char *file, int line)
Q_TESTLIB_EXPORT bool QTest::qCompare (const QLatin1StringView &t1, QStringView t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (const QString &t1, const QString &t2, const char *actual, const char *expected, const char *file, int line)
template<>
bool QTest::qCompare (QString const &t1, QLatin1StringView const &t2, const char *actual, const char *expected, const char *file, int line)
template<>
bool QTest::qCompare (QLatin1StringView const &t1, QString const &t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (const volatile void *t1, const volatile void *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (const volatile QObject *t1, const volatile QObject *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (const volatile QObject *t1, std::nullptr_t, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (std::nullptr_t, const volatile QObject *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (const volatile void *t1, std::nullptr_t, const char *actual, const char *expected, const char *file, int line)
bool QTest::compare_ptr_helper (std::nullptr_t, const volatile void *t2, const char *actual, const char *expected, const char *file, int line)
template<typename T1, typename T2 = T1>
bool QTest::qCompare (const T1 &t1, const T2 &t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (double const &t1, float const &t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (float const &t1, double const &t2, const char *actual, const char *expected, const char *file, int line)
template<typename T>
bool QTest::qCompare (const T *t1, const T *t2, const char *actual, const char *expected, const char *file, int line)
template<typename T>
bool QTest::qCompare (T *t1, T *t2, const char *actual, const char *expected, const char *file, int line)
template<typename T>
bool QTest::qCompare (T *t1, std::nullptr_t, const char *actual, const char *expected, const char *file, int line)
template<typename T>
bool QTest::qCompare (std::nullptr_t, T *t2, const char *actual, const char *expected, const char *file, int line)
template<typename T1, typename T2>
bool QTest::qCompare (const T1 *t1, const T2 *t2, const char *actual, const char *expected, const char *file, int line)
template<typename T1, typename T2>
bool QTest::qCompare (T1 *t1, T2 *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (const char *t1, const char *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (char *t1, char *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (char *t1, const char *t2, const char *actual, const char *expected, const char *file, int line)
bool QTest::qCompare (const char *t1, char *t2, const char *actual, const char *expected, const char *file, int line)
template<class T>
bool QTest::qTest (const T &actual, const char *elementName, const char *actualStr, const char *expected, const char *file, int line)
bool QTest::reportResult (bool success, const void *lhs, const void *rhs, const char *(*lhsFormatter)(const void *), const char *(*rhsFormatter)(const void *), const char *lhsExpr, const char *rhsExpr, ComparisonOperation op, const char *file, int line)
template<ComparisonOperation op, typename T1, typename T2 = T1>
bool QTest::qCompareOp (T1 &&lhs, T2 &&rhs, const char *lhsExpr, const char *rhsExpr, const char *file, int line)
template<typename OrderingType, typename LHS, typename RHS = LHS>
void QTest::qCompare3Way (LHS &&lhs, RHS &&rhs, OrderingType order, const char *lhsExpression, const char *rhsExpression, const char *resultExpression, const char *file, int line)=delete

Macro Definition Documentation

◆ QCOMPARE

#define QCOMPARE ( actual,
expected )
Value:
do {\
if (!QTest::qCompare(actual, expected, #actual, #expected, __FILE__, __LINE__))\
} while (false)
QJSValue expected
Definition qjsengine.cpp:12
bool qCompare(QString const &t1, QLatin1StringView const &t2, const char *actual, const char *expected, const char *file, int line)
Definition qtest.h:32
#define QTEST_FAIL_ACTION
Definition qtestcase.h:38

Definition at line 87 of file qtestcase.h.

◆ QCOMPARE_3WAY

#define QCOMPARE_3WAY ( ...)
Value:
static_assert(false, "QCOMPARE_3WAY test requires C++20 operator<=>()")

Definition at line 323 of file qtestcase.h.

◆ QCOMPARE_EQ

#define QCOMPARE_EQ ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, ==, Equal)
#define QCOMPARE_OP_IMPL(lhs, rhs, op, opId)
Definition qtestcase.h:93

Definition at line 99 of file qtestcase.h.

◆ QCOMPARE_GE

#define QCOMPARE_GE ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, >=, GreaterThanOrEqual)

Definition at line 104 of file qtestcase.h.

◆ QCOMPARE_GT

#define QCOMPARE_GT ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, >, GreaterThan)

Definition at line 103 of file qtestcase.h.

◆ QCOMPARE_LE

#define QCOMPARE_LE ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, <=, LessThanOrEqual)

Definition at line 102 of file qtestcase.h.

◆ QCOMPARE_LT

#define QCOMPARE_LT ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, <, LessThan)

Definition at line 101 of file qtestcase.h.

◆ QCOMPARE_NE

#define QCOMPARE_NE ( computed,
baseline )
Value:
QCOMPARE_OP_IMPL(computed, baseline, !=, NotEqual)

Definition at line 100 of file qtestcase.h.

◆ QCOMPARE_OP_IMPL

#define QCOMPARE_OP_IMPL ( lhs,
rhs,
op,
opId )
Value:
do { \
if (!QTest::qCompareOp<QTest::ComparisonOperation::opId>(lhs, rhs, #lhs, #rhs, __FILE__, __LINE__)) \
} while (false)
bool qCompareOp(T1 &&lhs, T2 &&rhs, const char *lhsExpr, const char *rhsExpr, const char *file, int line)
Definition qtestcase.h:794

Definition at line 93 of file qtestcase.h.

◆ QEXPECT_FAIL

#define QEXPECT_FAIL ( dataIndex,
comment,
mode )
Value:
do {\
if (!QTest::qExpectFail(dataIndex, static_cast<const char *>(comment), QTest::mode, __FILE__, __LINE__))\
} while (false)
Q_TESTLIB_EXPORT bool qExpectFail(const char *dataIndex, const char *comment, TestFailMode mode, const char *file, int line)
static QRegularExpression * comment
Definition tokenizer.cpp:90

Definition at line 298 of file qtestcase.h.

◆ QEXTRACTTESTDATA

#define QEXTRACTTESTDATA ( resourcePath)
Value:
QTest::qExtractTestData(resourcePath)

Definition at line 340 of file qtestcase.h.

◆ QFAIL

#define QFAIL ( message)
Value:
do {\
QTest::qFail(static_cast<const char *>(message), __FILE__, __LINE__);\
} while (false)
GLuint GLsizei const GLchar * message

Definition at line 70 of file qtestcase.h.

◆ QFETCH

#define QFETCH ( Type,
name )
Value:
Type name = *static_cast<Type *>(QTest::qData(#name, ::qMetaTypeId<typename std::remove_cv<Type >::type>()))
Q_TESTLIB_EXPORT void * qData(const char *tagName, int typeId)
constexpr int qMetaTypeId()
Definition qmetatype.h:1387
EGLImageKHR EGLint * name
Definition moc.h:33

Definition at line 304 of file qtestcase.h.

◆ QFETCH_GLOBAL

#define QFETCH_GLOBAL ( Type,
name )
Value:
Type name = *static_cast<Type *>(QTest::qGlobalData(#name, ::qMetaTypeId<typename std::remove_cv<Type >::type>()))
Q_TESTLIB_EXPORT void * qGlobalData(const char *tagName, int typeId)

Definition at line 307 of file qtestcase.h.

◆ QFINDTESTDATA

#define QFINDTESTDATA ( basepath)
Value:
QTest::qFindTestData(basepath, __FILE__, __LINE__)
Q_TESTLIB_EXPORT QString qFindTestData(const char *basepath, const char *file=nullptr, int line=0, const char *builddir=nullptr, const char *sourcedir=nullptr)

Definition at line 336 of file qtestcase.h.

◆ QSKIP

#define QSKIP ( statement,
... )
Value:
QSKIP_INTERNAL(statement)
#define QSKIP_INTERNAL(statement)
Definition qtestcase.h:290

Definition at line 296 of file qtestcase.h.

◆ QSKIP_INTERNAL

#define QSKIP_INTERNAL ( statement)
Value:
do {\
QTest::qSkip(static_cast<const char *>(statement), __FILE__, __LINE__);\
} while (false)
#define QTEST_SKIP_ACTION
Definition qtestcase.h:44

Definition at line 290 of file qtestcase.h.

◆ QTEST

#define QTEST ( actual,
testElement )
Value:
do {\
if (!QTest::qTest(actual, testElement, #actual, #testElement, __FILE__, __LINE__))\
} while (false)
bool qTest(const T &actual, const char *elementName, const char *actualStr, const char *expected, const char *file, int line)
Definition qtestcase.h:772

Definition at line 310 of file qtestcase.h.

◆ QTEST_FAIL_ACTION

#define QTEST_FAIL_ACTION   do { QTest::Internal::maybeThrowOnFail(); return; } while (false)

Definition at line 38 of file qtestcase.h.

◆ QTEST_SKIP_ACTION

#define QTEST_SKIP_ACTION   do { QTest::Internal::maybeThrowOnSkip(); return; } while (false)

Definition at line 44 of file qtestcase.h.

◆ QTRY_COMPARE

#define QTRY_COMPARE ( expr,
expected )
Value:
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
Q_CORE_EXPORT std::atomic< std::chrono::milliseconds > defaultTryTimeout
#define QTRY_COMPARE_WITH_TIMEOUT(expr, expected, timeout)
Definition qtestcase.h:231
widgetBox load()

Definition at line 237 of file qtestcase.h.

◆ QTRY_COMPARE_EQ

#define QTRY_COMPARE_EQ ( computed,
baseline )
Value:
QTRY_COMPARE_EQ_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_EQ_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:248

Definition at line 251 of file qtestcase.h.

◆ QTRY_COMPARE_EQ_WITH_TIMEOUT

#define QTRY_COMPARE_EQ_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, ==, Equal, timeout)
GLbitfield GLuint64 timeout
#define QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, op, opId, timeout)
Definition qtestcase.h:241

Definition at line 248 of file qtestcase.h.

◆ QTRY_COMPARE_GE

#define QTRY_COMPARE_GE ( computed,
baseline )
Value:
QTRY_COMPARE_GE_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_GE_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:283

Definition at line 286 of file qtestcase.h.

◆ QTRY_COMPARE_GE_WITH_TIMEOUT

#define QTRY_COMPARE_GE_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, >=, GreaterThanOrEqual, timeout)

Definition at line 283 of file qtestcase.h.

◆ QTRY_COMPARE_GT

#define QTRY_COMPARE_GT ( computed,
baseline )
Value:
QTRY_COMPARE_GT_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_GT_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:276

Definition at line 279 of file qtestcase.h.

◆ QTRY_COMPARE_GT_WITH_TIMEOUT

#define QTRY_COMPARE_GT_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, >, GreaterThan, timeout)

Definition at line 276 of file qtestcase.h.

◆ QTRY_COMPARE_LE

#define QTRY_COMPARE_LE ( computed,
baseline )
Value:
QTRY_COMPARE_LE_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_LE_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:269

Definition at line 272 of file qtestcase.h.

◆ QTRY_COMPARE_LE_WITH_TIMEOUT

#define QTRY_COMPARE_LE_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, <=, LessThanOrEqual, timeout)

Definition at line 269 of file qtestcase.h.

◆ QTRY_COMPARE_LT

#define QTRY_COMPARE_LT ( computed,
baseline )
Value:
QTRY_COMPARE_LT_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_LT_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:262

Definition at line 265 of file qtestcase.h.

◆ QTRY_COMPARE_LT_WITH_TIMEOUT

#define QTRY_COMPARE_LT_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, <, LessThan, timeout)

Definition at line 262 of file qtestcase.h.

◆ QTRY_COMPARE_NE

#define QTRY_COMPARE_NE ( computed,
baseline )
Value:
QTRY_COMPARE_NE_WITH_TIMEOUT(computed, baseline, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_COMPARE_NE_WITH_TIMEOUT(computed, baseline, timeout)
Definition qtestcase.h:255

Definition at line 258 of file qtestcase.h.

◆ QTRY_COMPARE_NE_WITH_TIMEOUT

#define QTRY_COMPARE_NE_WITH_TIMEOUT ( computed,
baseline,
timeout )
Value:
QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL(computed, baseline, !=, NotEqual, timeout)

Definition at line 255 of file qtestcase.h.

◆ QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL

#define QTRY_COMPARE_OP_WITH_TIMEOUT_IMPL ( computed,
baseline,
op,
opId,
timeout )
Value:
do { \
QTRY_IMPL(Q_Cmp::compare((computed), (baseline)), timeout) \
QCOMPARE_OP_IMPL(computed, baseline, op, opId); \
} while (false)

Definition at line 241 of file qtestcase.h.

◆ QTRY_COMPARE_WITH_TIMEOUT

#define QTRY_COMPARE_WITH_TIMEOUT ( expr,
expected,
timeout )
Value:
do { \
QTRY_IMPL((expr) == (expected), timeout) \
QCOMPARE(expr, expected); \
} while (false)

Definition at line 231 of file qtestcase.h.

◆ QTRY_IMPL

#define QTRY_IMPL ( expr,
timeoutAsGiven )
Value:
const auto qt_test_timeoutAsMs = [&] { \
/* make 5s work w/o user action: */ \
using namespace std::chrono_literals; \
return std::chrono::milliseconds{timeoutAsGiven}; \
}(); \
const auto qt_test_step = qt_test_timeoutAsMs < std::chrono::milliseconds(350) \
? qt_test_timeoutAsMs / 7 + std::chrono::milliseconds(1) \
: std::chrono::milliseconds(50); \
{ QTRY_LOOP_IMPL(expr, qt_test_timeoutAsMs, qt_test_step) } \
QTRY_TIMEOUT_DEBUG_IMPL(expr, qt_test_timeoutAsMs, qt_test_step)
#define QTRY_LOOP_IMPL(expr, timeoutValue, step)
Definition qtestcase.h:174

Definition at line 196 of file qtestcase.h.

◆ QTRY_LOOP_IMPL

#define QTRY_LOOP_IMPL ( expr,
timeoutValue,
step )
Value:
if (!(expr)) { \
QTest::qWait(0); \
} \
std::chrono::milliseconds timeoutValueMs(timeoutValue); \
std::chrono::milliseconds stepMs(step); \
auto qt_test_i = std::chrono::milliseconds(0); \
for (; qt_test_i < timeoutValueMs && !(QTest::runningTest() && QTest::currentTestResolved()) \
&& !(expr); qt_test_i += stepMs) { \
QTest::qWait(stepMs); \
}
Q_TESTLIB_EXPORT bool currentTestResolved()
Q_TESTLIB_EXPORT bool runningTest()

Definition at line 174 of file qtestcase.h.

◆ QTRY_TIMEOUT_DEBUG_IMPL

#define QTRY_TIMEOUT_DEBUG_IMPL ( expr,
timeoutValue,
step )
Value:
if (!(QTest::runningTest() && QTest::currentTestResolved()) && !(expr)) { \
QTRY_LOOP_IMPL(expr, 2 * (timeoutValue), step) \
if ((expr)) { \
u8"" #expr, timeoutValue, timeoutValue + qt_test_i))); \
} \
}
Q_DECL_COLD_FUNCTION Q_TESTLIB_EXPORT QString formatTryTimeoutDebugMessage(q_no_char8_t::QUtf8StringView expr, std::chrono::milliseconds timeout, std::chrono::milliseconds actual)
#define qPrintable(string)
Definition qstring.h:1685

Definition at line 187 of file qtestcase.h.

◆ QTRY_VERIFY

#define QTRY_VERIFY ( expr)
Value:
expr, QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_VERIFY_WITH_TIMEOUT(expr, timeout)
Definition qtestcase.h:210

Definition at line 216 of file qtestcase.h.

◆ QTRY_VERIFY2

#define QTRY_VERIFY2 ( expr,
messageExpression )
Value:
QTRY_VERIFY2_WITH_TIMEOUT(expr, messageExpression, \
QTest::defaultTryTimeout.load(std::memory_order_relaxed))
#define QTRY_VERIFY2_WITH_TIMEOUT(expr, messageExpression, timeout)
Definition qtestcase.h:220

Definition at line 226 of file qtestcase.h.

◆ QTRY_VERIFY2_WITH_TIMEOUT

#define QTRY_VERIFY2_WITH_TIMEOUT ( expr,
messageExpression,
timeout )
Value:
do { \
QTRY_IMPL(expr, timeout) \
QVERIFY2(expr, messageExpression); \
} while (false)

Definition at line 220 of file qtestcase.h.

◆ QTRY_VERIFY_WITH_TIMEOUT

#define QTRY_VERIFY_WITH_TIMEOUT ( expr,
timeout )
Value:
do { \
QTRY_IMPL(expr, timeout) \
QVERIFY(expr); \
} while (false)

Definition at line 210 of file qtestcase.h.

◆ QVERIFY

#define QVERIFY ( statement)
Value:
do {\
if (!QTest::qVerify(static_cast<bool>(statement), #statement, "", __FILE__, __LINE__))\
} while (false)
Q_TESTLIB_EXPORT bool qVerify(bool statement, const char *statementStr, const char *description, const char *file, int line)

Definition at line 64 of file qtestcase.h.

◆ QVERIFY2

#define QVERIFY2 ( statement,
description )
Value:
do {\
if (statement) {\
if (!QTest::qVerify(true, #statement, static_cast<const char *>(description), __FILE__, __LINE__))\
} else {\
if (!QTest::qVerify(false, #statement, static_cast<const char *>(description), __FILE__, __LINE__))\
}\
} while (false)

Definition at line 76 of file qtestcase.h.

◆ QVERIFY_THROWS_EXCEPTION

#define QVERIFY_THROWS_EXCEPTION ( exceptiontype,
... )
Value:
do {\
bool qverify_throws_exception_did_not_throw = false; \
QT_TRY {\
__VA_ARGS__; \
QTest::qFail("Expected exception of type " #exceptiontype " to be thrown" \
" but no exception caught", __FILE__, __LINE__); \
qverify_throws_exception_did_not_throw = true; \
} QT_CATCH (const exceptiontype &) { \
/* success */ \
} QT_CATCH (...) {\
QTest::qCaught(#exceptiontype, __FILE__, __LINE__); \
}\
if (qverify_throws_exception_did_not_throw) \
} while (false)
#define QT_CATCH(A)
#define QT_TRY

Definition at line 130 of file qtestcase.h.

◆ QVERIFY_THROWS_NO_EXCEPTION

#define QVERIFY_THROWS_NO_EXCEPTION ( ...)
Value:
do { \
QT_TRY { \
__VA_ARGS__; \
/* success */ \
} QT_CATCH (...) { \
QTest::qCaught(nullptr, __FILE__, __LINE__); \
} \
} while (false) \
/* end */

Definition at line 108 of file qtestcase.h.

◆ QWARN

#define QWARN ( msg)
Value:
QTest::qWarn(static_cast<const char *>(msg), __FILE__, __LINE__)

Definition at line 864 of file qtestcase.h.