diff options
Diffstat (limited to 'tests/auto/quick')
12 files changed, 46 insertions, 70 deletions
diff --git a/tests/auto/quick/geometry/tst_geometry.cpp b/tests/auto/quick/geometry/tst_geometry.cpp index 8bf65d1638..fc5e921db5 100644 --- a/tests/auto/quick/geometry/tst_geometry.cpp +++ b/tests/auto/quick/geometry/tst_geometry.cpp @@ -139,9 +139,9 @@ void GeometryTest::testCustomGeometry() }; static QSGGeometry::Attribute attributes[] = { - { 0, 2, GL_FLOAT }, - { 1, 4, GL_UNSIGNED_BYTE }, - { 2, 4, GL_FLOAT }, + { 0, 2, GL_FLOAT, 0, 0}, + { 1, 4, GL_UNSIGNED_BYTE, 0, 0}, + { 2, 4, GL_FLOAT, 0, 0}, }; static QSGGeometry::AttributeSet set = { 4, 6 * sizeof(float) + 4 * sizeof(unsigned char), attributes }; diff --git a/tests/auto/quick/qquickgridview/tst_qquickgridview.cpp b/tests/auto/quick/qquickgridview/tst_qquickgridview.cpp index 37d96f4950..dc0db6d4ff 100644 --- a/tests/auto/quick/qquickgridview/tst_qquickgridview.cpp +++ b/tests/auto/quick/qquickgridview/tst_qquickgridview.cpp @@ -292,6 +292,7 @@ private: } void releaseView(QQuickView *view) { Q_ASSERT(view == m_view); + Q_UNUSED(view) m_view->setSource(QUrl()); } #else diff --git a/tests/auto/quick/qquickimage/tst_qquickimage.cpp b/tests/auto/quick/qquickimage/tst_qquickimage.cpp index 38c9bb3d8a..bce1366e52 100644 --- a/tests/auto/quick/qquickimage/tst_qquickimage.cpp +++ b/tests/auto/quick/qquickimage/tst_qquickimage.cpp @@ -661,13 +661,6 @@ void tst_qquickimage::sourceSize_QTBUG_16389() delete window; } -static int numberOfWarnings = 0; -static void checkWarnings(QtMsgType, const QMessageLogContext &, const QString &msg) -{ - if (!msg.contains("QGLContext::makeCurrent(): Failed.")) - numberOfWarnings++; -} - // QTBUG-15690 void tst_qquickimage::nullPixmapPaint() { @@ -679,12 +672,11 @@ void tst_qquickimage::nullPixmapPaint() QTRY_VERIFY(image != 0); image->setSource(SERVER_ADDR + QString("/no-such-file.png")); - QtMessageHandler previousMsgHandler = qInstallMessageHandler(checkWarnings); - + QQmlTestMessageHandler messageHandler; // used to print "QTransform::translate with NaN called" QPixmap pm = QPixmap::fromImage(window->grabWindow()); - qInstallMessageHandler(previousMsgHandler); - QVERIFY(numberOfWarnings == 0); + const QStringList glErrors = messageHandler.messages().filter(QLatin1String("QGLContext::makeCurrent(): Failed."), Qt::CaseInsensitive); + QVERIFY2(glErrors.size() == messageHandler.messages().size(), qPrintable(messageHandler.messageString())); delete image; delete window; diff --git a/tests/auto/quick/qquickimageprovider/tst_qquickimageprovider.cpp b/tests/auto/quick/qquickimageprovider/tst_qquickimageprovider.cpp index 64eb0a7f42..19b547944c 100644 --- a/tests/auto/quick/qquickimageprovider/tst_qquickimageprovider.cpp +++ b/tests/auto/quick/qquickimageprovider/tst_qquickimageprovider.cpp @@ -236,7 +236,7 @@ void tst_qquickimageprovider::runTest(bool async, QQuickImageProvider *provider) // From this point on, treat forced async providers as async behaviour-wise if (engine.imageProvider(QUrl(source).host()) == provider) - async |= provider->flags() & QQuickImageProvider::ForceAsynchronousImageLoading; + async |= (provider->flags() & QQuickImageProvider::ForceAsynchronousImageLoading) != 0; if (async) QTRY_VERIFY(obj->status() == QQuickImage::Loading); diff --git a/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp b/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp index af628dff63..51ce74ef40 100644 --- a/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp +++ b/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp @@ -259,18 +259,10 @@ private: } #endif - static void errorMsgHandler(QtMsgType, const QMessageLogContext &, const QString &) - { - ++m_errorCount; - } - QQuickView *m_view; QString testForView; - static int m_errorCount; }; -int tst_QQuickListView::m_errorCount = 0; - class TestObject : public QObject { Q_OBJECT @@ -6785,8 +6777,7 @@ void tst_QQuickListView::parentBinding() { QQuickView *window = createView(); - m_errorCount = 0; - QtMessageHandler old = qInstallMessageHandler(errorMsgHandler); + QQmlTestMessageHandler messageHandler; window->setSource(testFileUrl("parentBinding.qml")); window->show(); @@ -6805,9 +6796,7 @@ void tst_QQuickListView::parentBinding() QCOMPARE(item->height(), listview->height()/12); // there should be no transient binding error - QVERIFY(!m_errorCount); - - qInstallMessageHandler(old); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete window; } diff --git a/tests/auto/quick/qquickloader/tst_qquickloader.cpp b/tests/auto/quick/qquickloader/tst_qquickloader.cpp index 698c016f6f..e456297a4e 100644 --- a/tests/auto/quick/qquickloader/tst_qquickloader.cpp +++ b/tests/auto/quick/qquickloader/tst_qquickloader.cpp @@ -462,6 +462,7 @@ void tst_QQuickLoader::networkComponent() " Component { id: comp; NW.Rect120x60 {} }\n" " Loader { sourceComponent: comp } }") , dataDirectory()); + QTRY_COMPARE(component.status(), QQmlComponent::Ready); QQuickItem *item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); @@ -488,6 +489,7 @@ void tst_QQuickLoader::failNetworkRequest() QQmlComponent component(&engine); component.setData(QByteArray("import QtQuick 2.0\nLoader { property int did_load: 123; source: \"" SERVER_ADDR "/IDontExist.qml\"; onLoaded: did_load=456 }"), QUrl(QString(SERVER_ADDR "/dummy.qml"))); + QTRY_COMPARE(component.status(), QQmlComponent::Ready); QQuickLoader *loader = qobject_cast<QQuickLoader*>(component.create()); QVERIFY(loader != 0); diff --git a/tests/auto/quick/qquickmousearea/tst_qquickmousearea.cpp b/tests/auto/quick/qquickmousearea/tst_qquickmousearea.cpp index d6b501c619..76768ee395 100644 --- a/tests/auto/quick/qquickmousearea/tst_qquickmousearea.cpp +++ b/tests/auto/quick/qquickmousearea/tst_qquickmousearea.cpp @@ -1285,7 +1285,6 @@ void tst_QQuickMouseArea::pressedMultipleButtons() QPoint point(10,10); - int prevButtons = 0; for (int i = 0; i < buttons.count(); ++i) { int btns = buttons.at(i); @@ -1294,8 +1293,6 @@ void tst_QQuickMouseArea::pressedMultipleButtons() QCOMPARE(mouseArea->pressed(), pressed.at(i)); QCOMPARE(mouseArea->pressedButtons(), pressedButtons.at(i)); - - prevButtons = buttons.at(i); } QTest::mousePress(view, Qt::NoButton, 0, point); diff --git a/tests/auto/quick/qquickpositioners/tst_qquickpositioners.cpp b/tests/auto/quick/qquickpositioners/tst_qquickpositioners.cpp index b9a18eec01..baba59a1aa 100644 --- a/tests/auto/quick/qquickpositioners/tst_qquickpositioners.cpp +++ b/tests/auto/quick/qquickpositioners/tst_qquickpositioners.cpp @@ -1722,111 +1722,109 @@ void tst_qquickpositioners::test_flow_implicit_resize() delete window; } -QString warningMessage; - -void interceptWarnings(QtMsgType type, const QMessageLogContext &, const QString &msg) -{ - Q_UNUSED( type ); - warningMessage = msg; -} - void tst_qquickpositioners::test_conflictinganchors() { - QtMessageHandler oldMsgHandler = qInstallMessageHandler(interceptWarnings); + QQmlTestMessageHandler messageHandler; QQmlEngine engine; QQmlComponent component(&engine); component.setData("import QtQuick 2.0\nColumn { Item { width: 100; height: 100; } }", QUrl::fromLocalFile("")); QQuickItem *item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nRow { Item { width: 100; height: 100; } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nGrid { Item { width: 100; height: 100; } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nFlow { Item { width: 100; height: 100; } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nColumn { Item { width: 100; height: 100; anchors.top: parent.top } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Column: Cannot specify top, bottom, verticalCenter, fill or centerIn anchors for items inside Column. Column will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Column: Cannot specify top, bottom, verticalCenter, fill or centerIn anchors for items inside Column. Column will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nColumn { Item { width: 100; height: 100; anchors.centerIn: parent } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Column: Cannot specify top, bottom, verticalCenter, fill or centerIn anchors for items inside Column. Column will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Column: Cannot specify top, bottom, verticalCenter, fill or centerIn anchors for items inside Column. Column will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nColumn { Item { width: 100; height: 100; anchors.left: parent.left } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); - warningMessage.clear(); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nRow { Item { width: 100; height: 100; anchors.left: parent.left } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Row: Cannot specify left, right, horizontalCenter, fill or centerIn anchors for items inside Row. Row will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Row: Cannot specify left, right, horizontalCenter, fill or centerIn anchors for items inside Row. Row will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nRow { width: 100; height: 100; Item { anchors.fill: parent } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Row: Cannot specify left, right, horizontalCenter, fill or centerIn anchors for items inside Row. Row will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Row: Cannot specify left, right, horizontalCenter, fill or centerIn anchors for items inside Row. Row will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nRow { Item { width: 100; height: 100; anchors.top: parent.top } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QVERIFY(warningMessage.isEmpty()); - warningMessage.clear(); + QVERIFY2(messageHandler.messages().isEmpty(), qPrintable(messageHandler.messageString())); delete item; component.setData("import QtQuick 2.0\nGrid { Item { width: 100; height: 100; anchors.horizontalCenter: parent.horizontalCenter } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Grid: Cannot specify anchors for items inside Grid. Grid will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Grid: Cannot specify anchors for items inside Grid. Grid will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nGrid { Item { width: 100; height: 100; anchors.centerIn: parent } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Grid: Cannot specify anchors for items inside Grid. Grid will not function.")); - warningMessage.clear(); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Grid: Cannot specify anchors for items inside Grid. Grid will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nFlow { Item { width: 100; height: 100; anchors.verticalCenter: parent.verticalCenter } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Flow: Cannot specify anchors for items inside Flow. Flow will not function.")); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Flow: Cannot specify anchors for items inside Flow. Flow will not function.")); + messageHandler.clear(); delete item; component.setData("import QtQuick 2.0\nFlow { width: 100; height: 100; Item { anchors.fill: parent } }", QUrl::fromLocalFile("")); item = qobject_cast<QQuickItem*>(component.create()); QVERIFY(item); - QCOMPARE(warningMessage, QString("file::2:1: QML Flow: Cannot specify anchors for items inside Flow. Flow will not function.")); - qInstallMessageHandler(oldMsgHandler); + QCOMPARE(messageHandler.messages().size(), 1); + QCOMPARE(messageHandler.messages().back(), QString("file::2:1: QML Flow: Cannot specify anchors for items inside Flow. Flow will not function.")); delete item; } diff --git a/tests/auto/quick/qquicktextedit/tst_qquicktextedit.cpp b/tests/auto/quick/qquicktextedit/tst_qquicktextedit.cpp index ea2ad71bfc..f8332d661d 100644 --- a/tests/auto/quick/qquicktextedit/tst_qquicktextedit.cpp +++ b/tests/auto/quick/qquicktextedit/tst_qquicktextedit.cpp @@ -2139,6 +2139,8 @@ void tst_qquicktextedit::positionAt() case QQuickTextEdit::AlignRight: xoff = texteditObject->width() - secondLine.naturalTextWidth(); break; + case QQuickTextEdit::AlignJustify: + break; } int pos = texteditObject->positionAt(texteditObject->width()/2, y0); diff --git a/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp b/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp index 7e45bd1f14..6c688eda1b 100644 --- a/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp +++ b/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp @@ -3448,15 +3448,13 @@ public: void tst_qquicktextinput::setHAlignClearCache() { QQuickView view; + view.resize(200, 200); MyTextInput input; input.setText("Hello world"); input.setParentItem(view.contentItem()); view.show(); view.requestActivate(); QTest::qWaitForWindowActive(&view); -#ifdef Q_OS_MAC - QEXPECT_FAIL("", "QTBUG-23485", Abort); -#endif QTRY_COMPARE(input.nbPaint, 1); input.setHAlign(QQuickTextInput::AlignRight); //Changing the alignment should trigger a repaint diff --git a/tests/auto/quick/qquickview/qquickview.pro b/tests/auto/quick/qquickview/qquickview.pro index 079074c83d..3e9c39e2ce 100644 --- a/tests/auto/quick/qquickview/qquickview.pro +++ b/tests/auto/quick/qquickview/qquickview.pro @@ -7,8 +7,6 @@ SOURCES += tst_qquickview.cpp include (../../shared/util.pri) -mac:CONFIG += insignificant_test # QTBUG-28505 - TESTDATA = data/* QT += core-private gui-private qml-private quick-private testlib diff --git a/tests/auto/quick/qquickview/tst_qquickview.cpp b/tests/auto/quick/qquickview/tst_qquickview.cpp index 94452b142b..aa20967fa3 100644 --- a/tests/auto/quick/qquickview/tst_qquickview.cpp +++ b/tests/auto/quick/qquickview/tst_qquickview.cpp @@ -195,9 +195,8 @@ void tst_QQuickView::errors() { QQuickView *view = new QQuickView; QVERIFY(view); - QtMessageHandler old = qInstallMessageHandler(silentErrorsMsgHandler); + QQmlTestMessageHandler messageHandler; view->setSource(testFileUrl("error1.qml")); - qInstallMessageHandler(old); QVERIFY(view->status() == QQuickView::Error); QVERIFY(view->errors().count() == 1); delete view; |