diff options
Diffstat (limited to 'tests/auto/widgets/graphicsview')
11 files changed, 176 insertions, 128 deletions
diff --git a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp index ca01b27bee..f71308cdaf 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp @@ -133,7 +133,6 @@ static bool checkReverseDirection(QGraphicsWidget *widget) layout->getContentsMargins(&left, &top, &right, &bottom); widget->setLayoutDirection(Qt::LeftToRight); QApplication::processEvents(); - const QRectF layoutGeometry = layout->geometry(); QMap<QGraphicsLayoutItem *, QRectF> geometries; for (int i = 0; i < layout->count(); ++i) { QGraphicsLayoutItem *item = layout->itemAt(i); @@ -141,7 +140,7 @@ static bool checkReverseDirection(QGraphicsWidget *widget) } widget->setLayoutDirection(Qt::RightToLeft); QApplication::processEvents(); - layoutGeometry.adjusted(+right, +top, -left, -bottom); + const QRectF layoutGeometry = layout->geometry().adjusted(+right, +top, -left, -bottom); for (int i = 0; i < layout->count(); ++i) { QGraphicsLayoutItem *item = layout->itemAt(i); const QRectF rightToLeftGeometry = item->geometry(); @@ -653,7 +652,7 @@ void tst_QGraphicsAnchorLayout::snake() QCOMPARE(c->geometry(), QRectF(90.0, 200.0, 100.0, 100.0)); QCOMPARE(p.size(), layoutMaximumSize); - QVERIFY(layoutHasConflict(l) == false); + QVERIFY(!layoutHasConflict(l)); // Test QSizePolicy::ExpandFlag, it shouldn't change the extreme // points of the layout... @@ -2041,9 +2040,9 @@ void tst_QGraphicsAnchorLayout::graphicsAnchorHandling() QGraphicsAnchor *invalidAnchor = l->anchor(a, Qt::AnchorTop, l, Qt::AnchorBottom); // Ensure none of these anchors are accessible. - QVERIFY(layoutAnchor == 0); - QVERIFY(itemAnchor == 0); - QVERIFY(invalidAnchor == 0); + QVERIFY(!layoutAnchor); + QVERIFY(!itemAnchor); + QVERIFY(!invalidAnchor); // Hook the anchors to a QObject QObject object; diff --git a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp index a2108dd494..a58f295575 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsanchorlayout1/tst_qgraphicsanchorlayout1.cpp @@ -715,7 +715,7 @@ void tst_QGraphicsAnchorLayout1::testSpecialCases() widget1->setGeometry(QRectF(0,0,100,100)); QCOMPARE(childWidget->geometry(), QRectF(1,1,98,98)); - QVERIFY(childWidget->parentLayoutItem() == layout1); + QCOMPARE(childWidget->parentLayoutItem(), layout1); QGraphicsWidget *widget2 = new QGraphicsWidget; TheAnchorLayout *layout2 = new TheAnchorLayout(); widget2->setLayout(layout2); @@ -739,10 +739,10 @@ void tst_QGraphicsAnchorLayout1::testSpecialCases() widget2->setGeometry(QRectF(0,0,100,100)); QCOMPARE(childWidget->geometry(), QRectF(1,1,98,98)); - QVERIFY(childWidget->parentLayoutItem() == layout2); + QCOMPARE(childWidget->parentLayoutItem(), layout2); QCOMPARE(widget4->geometry(), QRectF(1,1,98,98)); - QVERIFY(widget4->parentLayoutItem() == layout2); - QVERIFY(widget4->parentItem() == widget2); + QCOMPARE(widget4->parentLayoutItem(), layout2); + QCOMPARE(widget4->parentItem(), widget2); delete widget4; delete widget3; diff --git a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp index 0dd1161dcf..835aeaa4df 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsitem/tst_qgraphicsitem.cpp @@ -4274,7 +4274,7 @@ void tst_QGraphicsItem::cursor() void tst_QGraphicsItem::textControlGetterSetter() { QGraphicsTextItem *item = new QGraphicsTextItem; - QVERIFY(item->textControl()->parent() == item); + QCOMPARE(item->textControl()->parent(), item); QPointer<QWidgetTextControl> control = item->textControl(); delete item; QVERIFY(!control); @@ -4285,7 +4285,7 @@ void tst_QGraphicsItem::textControlGetterSetter() control = new QWidgetTextControl; item->setTextControl(control); - QVERIFY(item->textControl() == control); + QCOMPARE(item->textControl(), control); QVERIFY(!control->parent()); QVERIFY(!oldControl); @@ -5141,19 +5141,19 @@ void tst_QGraphicsItem::paint() //nominal case, update call paint tester2.update(); qApp->processEvents(); - QTRY_VERIFY(tester2.painted == 2); + QTRY_COMPARE(tester2.painted, 2); //we remove the item from the scene, number of updates is still the same tester2.update(); scene2.removeItem(&tester2); qApp->processEvents(); - QTRY_VERIFY(tester2.painted == 2); + QTRY_COMPARE(tester2.painted, 2); //We re-add the item, the number of paint should increase scene2.addItem(&tester2); tester2.update(); qApp->processEvents(); - QTRY_VERIFY(tester2.painted == 3); + QTRY_COMPARE(tester2.painted, 3); } class HarakiriItem : public QGraphicsRectItem @@ -5878,7 +5878,7 @@ void tst_QGraphicsItem::itemContainsChildrenInShape() scene.setItemIndexMethod(QGraphicsScene::NoIndex); scene.addItem(parent); - QVERIFY(parent->boundingRectCalls == childOutsideShape->boundingRectCalls); + QCOMPARE(parent->boundingRectCalls, childOutsideShape->boundingRectCalls); int oldParentBoundingRectCalls = parent->boundingRectCalls; int oldChildBoundingRectCalls = childOutsideShape->boundingRectCalls; @@ -5886,10 +5886,10 @@ void tst_QGraphicsItem::itemContainsChildrenInShape() // First test that both items are searched if no optimization flags are set QGraphicsItem* item = scene.itemAt(25,5); - QVERIFY(item == childOutsideShape); + QCOMPARE(item, childOutsideShape); QVERIFY(parent->boundingRectCalls > oldParentBoundingRectCalls); QVERIFY(childOutsideShape->boundingRectCalls > oldChildBoundingRectCalls); - QVERIFY(parent->boundingRectCalls == childOutsideShape->boundingRectCalls); + QCOMPARE(parent->boundingRectCalls, childOutsideShape->boundingRectCalls); oldParentBoundingRectCalls = parent->boundingRectCalls; oldChildBoundingRectCalls = childOutsideShape->boundingRectCalls; @@ -5897,10 +5897,10 @@ void tst_QGraphicsItem::itemContainsChildrenInShape() // Repeat the test to make sure that no caching/indexing is in effect item = scene.itemAt(25,5); - QVERIFY(item == childOutsideShape); + QCOMPARE(item, childOutsideShape); QVERIFY(parent->boundingRectCalls > oldParentBoundingRectCalls); QVERIFY(childOutsideShape->boundingRectCalls > oldChildBoundingRectCalls); - QVERIFY(parent->boundingRectCalls == childOutsideShape->boundingRectCalls); + QCOMPARE(parent->boundingRectCalls, childOutsideShape->boundingRectCalls); oldParentBoundingRectCalls = parent->boundingRectCalls; oldChildBoundingRectCalls = childOutsideShape->boundingRectCalls; @@ -5912,7 +5912,7 @@ void tst_QGraphicsItem::itemContainsChildrenInShape() QVERIFY(!(item)); QVERIFY(parent->boundingRectCalls > oldParentBoundingRectCalls); - QVERIFY(childOutsideShape->boundingRectCalls == oldChildBoundingRectCalls); + QCOMPARE(childOutsideShape->boundingRectCalls, oldChildBoundingRectCalls); QVERIFY(parent->boundingRectCalls > childOutsideShape->boundingRectCalls); } @@ -11205,21 +11205,21 @@ void tst_QGraphicsItem::QTBUG_6738_missingUpdateWithSetParent() child2->setVisible(false); child2->setParentItem(child); - QTRY_VERIFY(view.repaints == 1); + QTRY_COMPARE(view.repaints, 1); // test case #2 view.reset(); child3->setOpacity(0.0); child3->setParentItem(child); - QTRY_VERIFY(view.repaints == 1); + QTRY_COMPARE(view.repaints, 1); // test case #3 view.reset(); child4->setParentItem(child); child4->setVisible(false); - QTRY_VERIFY(view.repaints == 1); + QTRY_COMPARE(view.repaints, 1); } void tst_QGraphicsItem::QT_2653_fullUpdateDiscardingOpacityUpdate() @@ -11469,9 +11469,9 @@ void tst_QGraphicsItem::itemDiesDuringDraggingOperation() QGraphicsSceneDragDropEvent event(QEvent::GraphicsSceneDragMove); event.setScenePos(item->boundingRect().center()); QApplication::sendEvent(&scene, &event); - QVERIFY(QGraphicsScenePrivate::get(&scene)->dragDropItem == item); + QCOMPARE(QGraphicsScenePrivate::get(&scene)->dragDropItem, item); delete item; - QVERIFY(QGraphicsScenePrivate::get(&scene)->dragDropItem == 0); + QVERIFY(!QGraphicsScenePrivate::get(&scene)->dragDropItem); } void tst_QGraphicsItem::QTBUG_12112_focusItem() diff --git a/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp b/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp index bd104539ac..a2740edc54 100644 --- a/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicslayout/tst_qgraphicslayout.cpp @@ -948,7 +948,7 @@ void tst_QGraphicsLayout::ownership() destructedSet.clear(); window->setLayout(0); - QVERIFY(destructedSet.count() == 0); + QCOMPARE(destructedSet.count(), 0); delete window; } diff --git a/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp index 6a8b690560..8bebd4eddd 100644 --- a/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp @@ -1230,8 +1230,8 @@ void tst_QGraphicsLinearLayout::testStretch() layout->addStretch(2); layout->addItem(w2); QCOMPARE(layout->count(), 2); - QVERIFY(layout->itemAt(0) == w1); - QVERIFY(layout->itemAt(1) == w2); + QCOMPARE(layout->itemAt(0), w1); + QCOMPARE(layout->itemAt(1), w2); layout->activate(); //view->setSceneRect(-50, -50, 800, 800); diff --git a/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp b/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp index 84c39bbb98..0f9e8c101e 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsobject/tst_qgraphicsobject.cpp @@ -102,7 +102,7 @@ void tst_QGraphicsObject::pos() QCOMPARE(xSpy.count(), 1); QCOMPARE(ySpy.count(), 1); - QVERIFY(object.pos() == QPointF(10,10)); + QCOMPARE(object.pos(), QPointF(10,10)); object.setPos(10, 10); QCOMPARE(xSpy.count(), 1); @@ -111,12 +111,12 @@ void tst_QGraphicsObject::pos() object.setProperty("pos", QPointF(0, 0)); QCOMPARE(xSpy.count(), 2); QCOMPARE(ySpy.count(), 2); - QVERIFY(object.property("pos") == QPointF(0,0)); + QCOMPARE(object.property("pos").toPointF(), QPointF(0,0)); object.setProperty("pos", QPointF(10, 0)); QCOMPARE(xSpy.count(), 3); QCOMPARE(ySpy.count(), 2); - QVERIFY(object.property("pos") == QPointF(10,0)); + QCOMPARE(object.property("pos").toPointF(), QPointF(10,0)); object.setProperty("pos", QPointF(10, 10)); QCOMPARE(xSpy.count(), 3); @@ -135,7 +135,7 @@ void tst_QGraphicsObject::x() QCOMPARE(ySpy.count(), 0); QVERIFY(object.pos() == QPointF(10, 0)); - QVERIFY(object.x() == 10); + QCOMPARE(object.x(), qreal(10)); object.setX(10); QCOMPARE(xSpy.count(), 1); @@ -144,7 +144,7 @@ void tst_QGraphicsObject::x() object.setProperty("x", 0); QCOMPARE(xSpy.count(), 2); QCOMPARE(ySpy.count(), 0); - QVERIFY(object.property("x") == 0); + QCOMPARE(object.property("x").toDouble(), double(0)); } void tst_QGraphicsObject::y() @@ -158,7 +158,7 @@ void tst_QGraphicsObject::y() QCOMPARE(ySpy.count(), 1); QVERIFY(object.pos() == QPointF(0, 10)); - QVERIFY(object.y() == 10); + QCOMPARE(object.y(), qreal(10)); object.setY(10); QCOMPARE(xSpy.count(), 0); @@ -167,79 +167,79 @@ void tst_QGraphicsObject::y() object.setProperty("y", 0); QCOMPARE(xSpy.count(), 0); QCOMPARE(ySpy.count(), 2); - QVERIFY(object.property("y") == 0); + QCOMPARE(object.property("y").toDouble(), qreal(0)); } void tst_QGraphicsObject::z() { MyGraphicsObject object; QSignalSpy zSpy(&object, SIGNAL(zChanged())); - QVERIFY(object.zValue() == 0); + QCOMPARE(object.zValue(), qreal(0)); object.setZValue(10); QCOMPARE(zSpy.count(), 1); - QVERIFY(object.zValue() == 10); + QCOMPARE(object.zValue(), qreal(10)); object.setZValue(10); QCOMPARE(zSpy.count(), 1); object.setProperty("z", 0); QCOMPARE(zSpy.count(), 2); - QVERIFY(object.property("z") == 0); + QCOMPARE(object.property("z").toDouble(), double(0)); } void tst_QGraphicsObject::opacity() { MyGraphicsObject object; QSignalSpy spy(&object, SIGNAL(opacityChanged())); - QVERIFY(object.opacity() == 1.); + QCOMPARE(object.opacity(), 1.); object.setOpacity(0); QCOMPARE(spy.count(), 1); - QVERIFY(object.opacity() == 0.); + QCOMPARE(object.opacity(), 0.); object.setOpacity(0); QCOMPARE(spy.count(), 1); object.setProperty("opacity", .5); QCOMPARE(spy.count(), 2); - QVERIFY(object.property("opacity") == .5); + QCOMPARE(object.property("opacity").toDouble(), .5); } void tst_QGraphicsObject::enabled() { MyGraphicsObject object; QSignalSpy spy(&object, SIGNAL(enabledChanged())); - QVERIFY(object.isEnabled() == true); + QVERIFY(object.isEnabled()); object.setEnabled(false); QCOMPARE(spy.count(), 1); - QVERIFY(object.isEnabled() == false); + QVERIFY(!object.isEnabled()); object.setEnabled(false); QCOMPARE(spy.count(), 1); object.setProperty("enabled", true); QCOMPARE(spy.count(), 2); - QVERIFY(object.property("enabled") == true); + QVERIFY(object.property("enabled").toBool()); } void tst_QGraphicsObject::visible() { MyGraphicsObject object; QSignalSpy spy(&object, SIGNAL(visibleChanged())); - QVERIFY(object.isVisible() == true); + QVERIFY(object.isVisible()); object.setVisible(false); QCOMPARE(spy.count(), 1); - QVERIFY(object.isVisible() == false); + QVERIFY(!object.isVisible()); object.setVisible(false); QCOMPARE(spy.count(), 1); object.setProperty("visible", true); QCOMPARE(spy.count(), 2); - QVERIFY(object.property("visible") == true); + QVERIFY(object.property("visible").toBool()); } class DeleteTester : public QGraphicsObject diff --git a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp index f3a683fe8b..d8a8ed6b4b 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp @@ -97,8 +97,8 @@ private slots: void paint_2(); void setWidget_data(); void setWidget(); - void eventFilter_data(); - void eventFilter(); + void testEventFilter_data(); + void testEventFilter(); void focusInEvent_data(); void focusInEvent(); void focusInEventNoWidget(); @@ -179,6 +179,7 @@ private slots: void mapToGlobal(); void mapToGlobalWithoutScene(); void QTBUG_43780_visibility(); + void forwardTouchEvent(); }; // Subclass that exposes the protected functions. @@ -314,7 +315,7 @@ void tst_QGraphicsProxyWidget::qgraphicsproxywidget() SubQGraphicsProxyWidget proxy; proxy.paint(0, 0, 0); proxy.setWidget(0); - QVERIFY(proxy.type() == QGraphicsProxyWidget::Type); + QCOMPARE(proxy.type(), int(QGraphicsProxyWidget::Type)); QVERIFY(!proxy.widget()); QEvent event(QEvent::None); proxy.call_eventFilter(0, &event); @@ -533,7 +534,7 @@ void tst_QGraphicsProxyWidget::setWidget() } Q_DECLARE_METATYPE(QEvent::Type) -void tst_QGraphicsProxyWidget::eventFilter_data() +void tst_QGraphicsProxyWidget::testEventFilter_data() { QTest::addColumn<QEvent::Type>("eventType"); QTest::addColumn<bool>("fromObject"); // big grin evil @@ -552,7 +553,7 @@ void tst_QGraphicsProxyWidget::eventFilter_data() } // protected bool eventFilter(QObject* object, QEvent* event) -void tst_QGraphicsProxyWidget::eventFilter() +void tst_QGraphicsProxyWidget::testEventFilter() { QFETCH(QEvent::Type, eventType); QFETCH(bool, fromObject); @@ -1223,6 +1224,7 @@ void tst_QGraphicsProxyWidget::mousePressReleaseEvent() QGraphicsScene scene; QGraphicsView view(&scene); + view.resize(500, 500); view.show(); QVERIFY(QTest::qWaitForWindowExposed(&view)); @@ -1231,7 +1233,6 @@ void tst_QGraphicsProxyWidget::mousePressReleaseEvent() QPushButton *widget = new QPushButton; QSignalSpy spy(widget, SIGNAL(clicked())); widget->resize(50, 50); - view.resize(100, 100); if (hasWidget) { proxy->setWidget(widget); proxy->show(); @@ -3017,36 +3018,36 @@ void tst_QGraphicsProxyWidget::createProxyForChildWidget() layout->addWidget(rightDial); window.setLayout(layout); - QVERIFY(window.graphicsProxyWidget() == 0); - QVERIFY(checkbox->graphicsProxyWidget() == 0); + QVERIFY(!window.graphicsProxyWidget()); + QVERIFY(!checkbox->graphicsProxyWidget()); QGraphicsProxyWidget *windowProxy = scene.addWidget(&window); QGraphicsView view(&scene); view.show(); view.resize(500,500); - QVERIFY(window.graphicsProxyWidget() == windowProxy); - QVERIFY(box->graphicsProxyWidget() == 0); - QVERIFY(checkbox->graphicsProxyWidget() == 0); + QCOMPARE(window.graphicsProxyWidget(), windowProxy); + QVERIFY(!box->graphicsProxyWidget()); + QVERIFY(!checkbox->graphicsProxyWidget()); QPointer<QGraphicsProxyWidget> checkboxProxy = windowProxy->createProxyForChildWidget(checkbox); QGraphicsProxyWidget *boxProxy = box->graphicsProxyWidget(); QVERIFY(boxProxy); - QVERIFY(checkbox->graphicsProxyWidget() == checkboxProxy); - QVERIFY(checkboxProxy->parentItem() == boxProxy); - QVERIFY(boxProxy->parentItem() == windowProxy); + QCOMPARE(checkbox->graphicsProxyWidget(), checkboxProxy.data()); + QCOMPARE(checkboxProxy->parentItem(), boxProxy); + QCOMPARE(boxProxy->parentItem(), windowProxy); QVERIFY(checkboxProxy->mapToScene(QPointF()) == checkbox->mapTo(&window, QPoint())); - QVERIFY(checkboxProxy->size() == checkbox->size()); - QVERIFY(boxProxy->size() == box->size()); + QCOMPARE(checkboxProxy->size().toSize(), checkbox->size()); + QCOMPARE(boxProxy->size().toSize(), box->size()); window.resize(500,500); - QVERIFY(windowProxy->size() == QSize(500,500)); + QCOMPARE(windowProxy->size().toSize(), QSize(500,500)); QVERIFY(checkboxProxy->mapToScene(QPointF()) == checkbox->mapTo(&window, QPoint())); - QVERIFY(checkboxProxy->size() == checkbox->size()); - QVERIFY(boxProxy->size() == box->size()); + QCOMPARE(checkboxProxy->size().toSize(), checkbox->size()); + QCOMPARE(boxProxy->size().toSize(), box->size()); QTest::qWait(10); @@ -3064,9 +3065,9 @@ void tst_QGraphicsProxyWidget::createProxyForChildWidget() boxProxy->setWidget(0); - QVERIFY(checkbox->graphicsProxyWidget() == 0); - QVERIFY(box->graphicsProxyWidget() == 0); - QVERIFY(checkboxProxy == 0); + QVERIFY(!checkbox->graphicsProxyWidget()); + QVERIFY(!box->graphicsProxyWidget()); + QVERIFY(checkboxProxy.isNull()); delete boxProxy; } @@ -3766,5 +3767,73 @@ void tst_QGraphicsProxyWidget::QTBUG_43780_visibility() QVERIFY(comboPopup->isVisible()); } +class TouchWidget : public QWidget +{ +public: + TouchWidget(QWidget *parent = 0) : QWidget(parent) {} + + bool event(QEvent *event) + { + switch (event->type()) { + case QEvent::TouchBegin: + case QEvent::TouchUpdate: + case QEvent::TouchEnd: + event->accept(); + return true; + break; + default: + break; + } + + return QWidget::event(event); + } +}; + +// QTBUG_45737 +void tst_QGraphicsProxyWidget::forwardTouchEvent() +{ + QGraphicsScene *scene = new QGraphicsScene; + + TouchWidget *widget = new TouchWidget; + + widget->setAttribute(Qt::WA_AcceptTouchEvents); + + QGraphicsProxyWidget *proxy = new QGraphicsProxyWidget; + + proxy->setAcceptTouchEvents(true); + proxy->setWidget(widget); + + scene->addItem(proxy); + + QGraphicsView *view = new QGraphicsView(scene); + + view->show(); + + EventSpy eventSpy(widget); + + QTouchDevice *device = new QTouchDevice; + device->setType(QTouchDevice::TouchScreen); + QWindowSystemInterface::registerTouchDevice(device); + + QCOMPARE(eventSpy.counts[QEvent::TouchBegin], 0); + QCOMPARE(eventSpy.counts[QEvent::TouchUpdate], 0); + QCOMPARE(eventSpy.counts[QEvent::TouchEnd], 0); + + QTest::touchEvent(view, device).press(0, QPoint(10, 10), view); + QTest::touchEvent(view, device).move(0, QPoint(15, 15), view); + QTest::touchEvent(view, device).move(0, QPoint(16, 16), view); + QTest::touchEvent(view, device).release(0, QPoint(15, 15), view); + + QApplication::processEvents(); + + QCOMPARE(eventSpy.counts[QEvent::TouchBegin], 1); + QCOMPARE(eventSpy.counts[QEvent::TouchUpdate], 2); + QCOMPARE(eventSpy.counts[QEvent::TouchEnd], 1); + + delete view; + delete proxy; + delete scene; +} + QTEST_MAIN(tst_QGraphicsProxyWidget) #include "tst_qgraphicsproxywidget.moc" diff --git a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp index 7bd0393760..ae71b0412f 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsscene/tst_qgraphicsscene.cpp @@ -1282,33 +1282,16 @@ void tst_QGraphicsScene::removeItem() view.show(); QApplication::setActiveWindow(&view); QVERIFY(QTest::qWaitForWindowActive(&view)); - QTest::mouseMove(view.viewport(), QPoint(-1, -1)); - { - QMouseEvent moveEvent(QEvent::MouseMove, view.mapFromScene(hoverItem->scenePos() + QPointF(20, 20)), Qt::NoButton, 0, 0); - QApplication::sendEvent(view.viewport(), &moveEvent); - } - qApp->processEvents(); // update - qApp->processEvents(); // draw - QVERIFY(!hoverItem->isHovered); + QTest::mouseMove(view.viewport(), view.mapFromScene(hoverItem->scenePos() + QPointF(20, 20)), Qt::NoButton); + QTRY_VERIFY(!hoverItem->isHovered); - { - QTest::qWait(250); - QTest::mouseMove(view.viewport(), view.mapFromScene(hoverItem->scenePos()), Qt::NoButton); - QTest::qWait(10); - QMouseEvent moveEvent(QEvent::MouseMove, view.mapFromScene(hoverItem->scenePos()), Qt::NoButton, 0, 0); - QApplication::sendEvent(view.viewport(), &moveEvent); - } - qApp->processEvents(); // update - qApp->processEvents(); // draw - QVERIFY(hoverItem->isHovered); + QTest::mouseMove(view.viewport(), view.mapFromScene(hoverItem->scenePos()), Qt::NoButton); + QTRY_VERIFY(hoverItem->isHovered); scene.removeItem(hoverItem); hoverItem->setAcceptsHoverEvents(false); scene.addItem(hoverItem); - qApp->processEvents(); // <- delayed update is called - qApp->processEvents(); // <- scene schedules pending update - qApp->processEvents(); // <- pending update is sent to view - QVERIFY(!hoverItem->isHovered); + QTRY_VERIFY(!hoverItem->isHovered); } void tst_QGraphicsScene::focusItem() @@ -3509,6 +3492,8 @@ void tst_QGraphicsScene::task160653_selectionChanged() QSignalSpy spy(&scene, SIGNAL(selectionChanged())); QGraphicsView view(&scene); + view.show(); + QVERIFY(QTest::qWaitForWindowActive(&view)); QTest::mouseClick( view.viewport(), Qt::LeftButton, 0, view.mapFromScene(scene.items().first()->scenePos())); QCOMPARE(spy.count(), 1); @@ -4742,9 +4727,9 @@ void tst_QGraphicsScene::minimumRenderSize() QTRY_VERIFY(view.repaints > viewRepaints); viewRepaints = view.repaints; - QVERIFY(viewRepaints == bigParent->repaints); - QVERIFY(viewRepaints == smallChild->repaints); - QVERIFY(viewRepaints == smallerGrandChild->repaints); + QCOMPARE(viewRepaints, bigParent->repaints); + QCOMPARE(viewRepaints, smallChild->repaints); + QCOMPARE(viewRepaints, smallerGrandChild->repaints); // Setting a minimum render size should cause a repaint scene.setMinimumRenderSize(0.5); @@ -4753,9 +4738,9 @@ void tst_QGraphicsScene::minimumRenderSize() QTRY_VERIFY(view.repaints > viewRepaints); viewRepaints = view.repaints; - QVERIFY(viewRepaints == bigParent->repaints); - QVERIFY(viewRepaints == smallChild->repaints); - QVERIFY(viewRepaints == smallerGrandChild->repaints); + QCOMPARE(viewRepaints, bigParent->repaints); + QCOMPARE(viewRepaints, smallChild->repaints); + QCOMPARE(viewRepaints, smallerGrandChild->repaints); // Scaling should cause a repaint of big items only. view.scale(0.1, 0.1); @@ -4764,8 +4749,8 @@ void tst_QGraphicsScene::minimumRenderSize() QTRY_VERIFY(view.repaints > viewRepaints); viewRepaints = view.repaints; - QVERIFY(viewRepaints == bigParent->repaints); - QVERIFY(viewRepaints == smallChild->repaints); + QCOMPARE(viewRepaints, bigParent->repaints); + QCOMPARE(viewRepaints, smallChild->repaints); QVERIFY(smallChild->repaints > smallerGrandChild->repaints); // Scaling further should cause even fewer items to be repainted @@ -4775,7 +4760,7 @@ void tst_QGraphicsScene::minimumRenderSize() QTRY_VERIFY(view.repaints > viewRepaints); viewRepaints = view.repaints; - QVERIFY(viewRepaints == bigParent->repaints); + QCOMPARE(viewRepaints, bigParent->repaints); QVERIFY(bigParent->repaints > smallChild->repaints); QVERIFY(smallChild->repaints > smallerGrandChild->repaints); } diff --git a/tests/auto/widgets/graphicsview/qgraphicsview/BLACKLIST b/tests/auto/widgets/graphicsview/qgraphicsview/BLACKLIST index be7a7e398b..3cba8bad7e 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsview/BLACKLIST +++ b/tests/auto/widgets/graphicsview/qgraphicsview/BLACKLIST @@ -1,4 +1,18 @@ [task255529_transformationAnchorMouseAndViewportMargins] -ubuntu-14.04 +xcb [cursor] -ubuntu-14.04 +xcb +[cursor2] +xcb +[rubberBandExtendSelection] +xcb +[rotated_rubberBand] +xcb +[sendEvent] +xcb +[forwardMousePress] +xcb +[hoverLeave] +xcb +[resizeAnchor] +xcb diff --git a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp index d1d4c1ab86..98473fb5cc 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsview/tst_qgraphicsview.cpp @@ -145,7 +145,7 @@ class tst_QGraphicsView : public QObject public: tst_QGraphicsView() - : platformName(qApp->platformName().toLower()) + : platformName(QGuiApplication::platformName().toLower()) { } private slots: void initTestCase(); @@ -255,7 +255,6 @@ private slots: void task186827_deleteReplayedItem(); void task207546_focusCrash(); void task210599_unsetDragWhileDragging(); - void task236394_sendShortcutOverrideEvent(); void task239729_noViewUpdate_data(); void task239729_noViewUpdate(); void task239047_fitInViewSmallViewport(); @@ -3369,14 +3368,6 @@ void tst_QGraphicsView::task210599_unsetDragWhileDragging() QCOMPARE(basePos, view.mapFromScene(0, 0)); } -void tst_QGraphicsView::task236394_sendShortcutOverrideEvent() -{ - QGraphicsView view; - view.show(); - QKeyEvent event(QEvent::ShortcutOverride, Qt::Key_A, 0, QString("A")); - QApplication::sendEvent(&view, &event); -} - class ChangedListener : public QObject { Q_OBJECT @@ -3525,7 +3516,7 @@ void tst_QGraphicsView::embeddedViews() v2->QWidget::render(&actual); QTransform b = item->transform; - QVERIFY(a == b); + QCOMPARE(a, b); delete v1; } diff --git a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp index 9b92c34fb5..ec2203e615 100644 --- a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp @@ -182,14 +182,6 @@ private slots: void QTBUG_45867_send_itemChildAddedChange_to_parent(); }; - -static void sendMouseMove(QWidget *widget, const QPoint &point, Qt::MouseButton button = Qt::NoButton, Qt::MouseButtons buttons = 0) -{ - QTest::mouseMove(widget, point); - QMouseEvent event(QEvent::MouseMove, point, button, buttons, 0); - QApplication::sendEvent(widget, &event); -} - // Subclass that exposes the protected functions. class SubQGraphicsWidget : public QGraphicsWidget { public: @@ -197,7 +189,7 @@ public: : QGraphicsWidget(parent, windowFlags), eventCount(0) { } - void initStyleOption(QStyleOption *option) + void initStyleOption(QStyleOption *option) const { QGraphicsWidget::initStyleOption(option); } void call_changeEvent(QEvent* event) @@ -1110,8 +1102,8 @@ void tst_QGraphicsWidget::initStyleOption() { QGraphicsScene scene; QGraphicsView view(&scene); + view.resize(300, 300); view.show(); - QApplication::setActiveWindow(&view); QVERIFY(QTest::qWaitForWindowActive(&view)); view.setAlignment(Qt::AlignTop | Qt::AlignLeft); @@ -1133,10 +1125,8 @@ void tst_QGraphicsWidget::initStyleOption() } QFETCH(bool, underMouse); if (underMouse) { - view.resize(300, 300); - view.show(); - QVERIFY(QTest::qWaitForWindowActive(&view)); - sendMouseMove(view.viewport(), view.mapFromScene(widget->mapToScene(widget->boundingRect().center()))); + QCursor::setPos(view.viewport()->mapToGlobal(view.mapFromScene(widget->mapToScene(widget->boundingRect().center())))); + QTest::qWait(100); } QFETCH(QPalette, palette); |