QT = core
QT_PRIVATE = testlib-private quick qml-private v8-private gui core-private
+!contains(QT_CONFIG, no-widgets) {
+ QT += widgets
+ DEFINES += QT_QMLTEST_WITH_WIDGETS
+}
+
load(qt_module)
# Install qmltestcase.prf into the Qt mkspecs so that "CONFIG += qmltestcase"
$$PWD/quicktestresult_p.h \
$$PWD/qtestoptions_p.h
-DEFINES += QT_QML_DEBUG_NO_WARNING
\ No newline at end of file
+DEFINES += QT_QML_DEBUG_NO_WARNING
#include <QtCore/QTranslator>
#include <QtTest/QSignalSpy>
+#ifdef QT_QMLTEST_WITH_WIDGETS
+#include <QtWidgets/QApplication>
+#endif
+
QT_BEGIN_NAMESPACE
class QTestRootObject : public QObject
int quick_test_main(int argc, char **argv, const char *name, const char *sourceDir)
{
- QGuiApplication* app = 0;
- if (!QCoreApplication::instance()) {
- app = new QGuiApplication(argc, argv);
- }
-
// Look for QML-specific command-line options.
// -import dir Specify an import directory.
// -input dir Specify the input directory for test cases.
QStringList imports;
QString testPath;
QString translationFile;
+#ifdef QT_QMLTEST_WITH_WIDGETS
+ bool withWidgets = false;
+#endif
int outargc = 1;
int index = 1;
while (index < argc) {
index += 2;
} else if (strcmp(argv[index], "-opengl") == 0) {
++index;
+#ifdef QT_QMLTEST_WITH_WIDGETS
+ } else if (strcmp(argv[index], "-widgets") == 0) {
+ withWidgets = true;
+ ++index;
+#endif
} else if (strcmp(argv[index], "-translation") == 0 && (index + 1) < argc) {
translationFile = stripQuotes(QString::fromLocal8Bit(argv[index + 1]));
index += 2;
argv[outargc] = 0;
argc = outargc;
+ QCoreApplication* app = 0;
+ if (!QCoreApplication::instance()) {
+#ifdef QT_QMLTEST_WITH_WIDGETS
+ if (withWidgets)
+ app = new QApplication(argc, argv);
+ else
+#endif
+ {
+ app = new QGuiApplication(argc, argv);
+ }
+ }
+
// Parse the command-line arguments.
// Setting currentAppname and currentTestObjectName (via setProgramName) are needed