6#include <QtCore/QDebug>
7#include <QtCore/QMutexLocker>
8#include <QtQml/QQmlComponent>
9#include <QtQml/QQmlEngine>
10#include <private/qqmlengine_p.h>
18 const char *dataSubDir)
19 : m_qmlTestDataDir(qmlTestDataDir)
20#ifdef QT_TESTCASE_BUILDDIR
21 , m_dataDirectory(
QTest::qFindTestData(dataSubDir, m_qmlTestDataDir, 0, QT_TESTCASE_BUILDDIR))
23 , m_dataDirectory(
QTest::qFindTestData(dataSubDir, m_qmlTestDataDir, 0))
25 , m_dataDirectoryUrl(m_dataDirectory.startsWith(
QLatin1Char(
':'))
28 , m_failOnWarningsPolicy(failOnWarningsPolicy)
32 m_usesOwnCacheDir =
true;
33 qputenv(
"QML_DISK_CACHE_PATH", m_cacheDir.path().toLocal8Bit());
40 if (m_usesOwnCacheDir)
64 qFatal(
"QQmlDataTest::initTestCase() not called.");
86 if (QQmlTestMessageHandler::m_instance) {
87 if (QQmlTestMessageHandler::m_instance->m_includeCategories) {
88 QQmlTestMessageHandler::m_instance->m_messages.push_back(
91 QQmlTestMessageHandler::m_instance->m_messages.push_back(
message);
99 Q_ASSERT(!QQmlTestMessageHandler::m_instance);
100 QQmlTestMessageHandler::m_instance =
this;
102 m_includeCategories =
false;
108 Q_ASSERT(QQmlTestMessageHandler::m_instance);
110 QQmlTestMessageHandler::m_instance =
nullptr;
115 return !
engine->memoryManager->gcStateMachine->inProgress();
120 engine.memoryManager->runGC();
122 engine.memoryManager->gcStateMachine->step();
143#include "moc_qmlutils_p.cpp"
static void processEvents(QEventLoop::ProcessEventsFlags flags=QEventLoop::AllEvents)
Processes some pending events for the calling thread according to the specified flags.
static void sendPostedEvents(QObject *receiver=nullptr, int event_type=0)
Immediately dispatches all events which have been previously queued with QCoreApplication::postEvent(...
static bool setCurrent(const QString &path)
Sets the application's current working directory to path.
QString absolutePath() const
Returns the absolute path of the file system entry this QFileInfo refers to, excluding the entry's na...
The QQmlComponent class encapsulates a QML component definition.
QQmlDataTest(const char *qmlTestDataDir, FailOnWarningsPolicy failOnWarningsPolicy=FailOnWarningsPolicy::DoNotFailOnWarnings, const char *dataSubdir="data")
bool canImportModule(const QString &importTestQmlSource) const
QString testFile(const QString &fileName) const
virtual void initTestCase()
static QQmlEnginePrivate * get(QQmlEngine *e)
The QQmlEngine class provides an environment for instantiating QML components.
~QQmlTestMessageHandler()
\inmodule QtCore \reentrant
\macro QT_RESTRICTED_CAST_FROM_ASCII
static QString fromLatin1(QByteArrayView ba)
This is an overloaded member function, provided for convenience. It differs from the above function o...
bool isEmpty() const noexcept
Returns true if the string has no characters; otherwise returns false.
static QString fromUtf8(QByteArrayView utf8)
This is an overloaded member function, provided for convenience. It differs from the above function o...
QString scheme() const
Returns the scheme of the URL.
static Q_CONSTINIT QBasicAtomicPointer< void(QtMsgType, const QMessageLogContext &, const QString &) messageHandler)
QtMessageHandler qInstallMessageHandler(QtMessageHandler h)
Combined button and popup list for selecting options.
Q_TESTLIB_EXPORT void failOnWarning()
#define Q_GLOBAL_STATIC(TYPE, NAME,...)
GLuint GLsizei const GLchar * message
static qreal component(const QPointF &point, unsigned int i)
static QString absolutePath(const QString &path)
#define qPrintable(string)
QLatin1StringView QLatin1String
#define QStringLiteral(str)
void gc(QV4::ExecutionEngine &engine, GCFlags flags)
bool gcDone(const QV4::ExecutionEngine *engine)
bool qputenv(const char *varName, QByteArrayView raw)
Q_CORE_EXPORT bool qEnvironmentVariableIsSet(const char *varName) noexcept
Q_CORE_EXPORT bool qunsetenv(const char *varName)
#define QVERIFY2(statement, description)
\inmodule QtCore \reentrant