summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/itemviews
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2012-07-18 13:12:59 +0200
committerQt by Nokia <qt-info@nokia.com>2012-07-20 09:27:28 +0200
commit87618403976aa82450895da6196a944195980de7 (patch)
tree906d035678d8a31e57a94c01e8756b0085b3e1e4 /tests/auto/widgets/itemviews
parentc081107206cb1d31415539c4429f7896b997cf71 (diff)
Implement waitForWindowExposed and friends for widget windows.
- Implement waitForWindowExposed() for toplevel windows. - Implement waitForWindowShown(QWidget *) and mark as deprecated in line with waitForWindowShown(QWindow*). - Use in tests. - Simplify tests (collapse waitForExposed, setActive into setActiveWindow, waitForActive), remove most hard-coded timeouts. - Stabilize graphicsview tests by using waitForWindowActive. Change-Id: Ic7c061e2745b36f71a715ee4e47c0346b11a91e8 Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Diffstat (limited to 'tests/auto/widgets/itemviews')
-rw-r--r--tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp16
-rw-r--r--tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp9
-rw-r--r--tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp4
-rw-r--r--tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp10
-rw-r--r--tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp9
-rw-r--r--tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp6
6 files changed, 19 insertions, 35 deletions
diff --git a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp
index c6c8131422..70b8be8dc8 100644
--- a/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp
+++ b/tests/auto/widgets/itemviews/qabstractitemview/tst_qabstractitemview.cpp
@@ -761,9 +761,7 @@ static void sendMouseMove(QWidget *widget, QPoint pos = QPoint())
QMouseEvent event(QEvent::MouseMove, pos, widget->mapToGlobal(pos), Qt::NoButton, 0, 0);
QCursor::setPos(widget->mapToGlobal(pos));
qApp->processEvents();
-#if defined(Q_WS_X11)
- qt_x11_wait_for_window_manager(widget);
-#endif
+ QVERIFY(QTest::qWaitForWindowExposed(widget));
QApplication::sendEvent(widget, &event);
}
@@ -920,10 +918,8 @@ void tst_QAbstractItemView::dragAndDrop()
widget.show();
view.show();
-#if defined(Q_WS_X11)
- qt_x11_wait_for_window_manager(&widget);
- qt_x11_wait_for_window_manager(&view);
-#endif
+ QVERIFY(QTest::qWaitForWindowExposed(&widget));
+ QVERIFY(QTest::qWaitForWindowExposed(&view));
widget.dragAndDrop(&view, dropAction);
if (model.dropAction() == dropAction
@@ -965,9 +961,7 @@ void tst_QAbstractItemView::dragAndDropOnChild()
view.setFixedSize(size, size);
view.move(int(size * 1.5), int(size * 1.5));
view.show();
-#if defined(Q_WS_X11)
- qt_x11_wait_for_window_manager(&view);
-#endif
+ QVERIFY(QTest::qWaitForWindowExposed(&view));
view.dragAndDrop(view.visualRect(parent).center(),
view.visualRect(child).center());
@@ -1046,8 +1040,8 @@ void tst_QAbstractItemView::setItemDelegate()
}
}
v.show();
+ QVERIFY(QTest::qWaitForWindowExposed(&v));
#ifdef Q_WS_X11
- qt_x11_wait_for_window_manager(&v);
QCursor::setPos(v.geometry().center());
QApplication::syncX();
#endif
diff --git a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
index 9d27b7db08..b3afdb949e 100644
--- a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
+++ b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
@@ -460,9 +460,7 @@ void tst_QItemDelegate::font()
TestItemDelegate *delegate = new TestItemDelegate(&table);
table.setItemDelegate(delegate);
table.show();
-#ifdef Q_WS_X11
- qt_x11_wait_for_window_manager(&table);
-#endif
+ QVERIFY(QTest::qWaitForWindowExposed(&table));
QTableWidgetItem *item = new QTableWidgetItem;
item->setText(itemText);
@@ -993,11 +991,8 @@ void tst_QItemDelegate::decoration()
TestItemDelegate delegate;
table.setItemDelegate(&delegate);
table.show();
-#ifdef Q_WS_X11
- qt_x11_wait_for_window_manager(&table);
-#endif
QApplication::setActiveWindow(&table);
- QTRY_COMPARE(QApplication::activeWindow(), static_cast<QWidget*>(&table));
+ QVERIFY(QTest::qWaitForWindowActive(&table));
QVariant value;
switch ((QVariant::Type)type) {
diff --git a/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp b/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp
index 14d3f07ee8..6ed83a3b97 100644
--- a/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp
+++ b/tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp
@@ -1682,7 +1682,9 @@ void tst_QListView::keyboardSearch()
QListView view;
view.setModel(&model);
view.show();
- QTest::qWait(30);
+ qApp->setActiveWindow(&view);
+ QVERIFY(QTest::qWaitForWindowActive(&view));
+
// QCOMPARE(view.currentIndex() , model.index(0,0));
QTest::keyClick(&view, Qt::Key_K);
diff --git a/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp b/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp
index 9407fe0856..31cc87b843 100644
--- a/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp
+++ b/tests/auto/widgets/itemviews/qlistwidget/tst_qlistwidget.cpp
@@ -1523,12 +1523,7 @@ void tst_QListWidget::fastScroll()
// Make sure the widget gets the first full repaint. On
// some WMs, we'll get two (first inactive exposure, then
// active exposure.
- QTest::qWaitForWindowShown(&widget);
-#ifdef Q_WS_X11
- qt_x11_wait_for_window_manager(&widget);
-#endif
- QApplication::processEvents();
- QTest::qWait(500);
+ QVERIFY(QTest::qWaitForWindowActive(&topLevel));
QSize itemSize = widget.visualItemRect(widget.item(0)).size();
QVERIFY(!itemSize.isEmpty());
@@ -1671,7 +1666,8 @@ void tst_QListWidget::QTBUG14363_completerWithAnyKeyPressedEditTriggers()
new QListWidgetItem(QLatin1String("completer"), &listWidget);
listWidget.show();
listWidget.setCurrentItem(item);
- QTest::qWaitForWindowShown(&listWidget);
+ qApp->setActiveWindow(&listWidget);
+ QVERIFY(QTest::qWaitForWindowActive(&listWidget));
listWidget.setFocus();
QCOMPARE(qApp->focusWidget(), &listWidget);
diff --git a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp
index 320483bb14..f61b776106 100644
--- a/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp
+++ b/tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp
@@ -3360,9 +3360,8 @@ void tst_QTreeView::task224091_appendColumns()
treeView->setModel(model);
topLevel->show();
treeView->resize(50,50);
-
- QTest::qWaitForWindowShown(treeView);
- qApp->processEvents();
+ qApp->setActiveWindow(topLevel);
+ QVERIFY(QTest::qWaitForWindowActive(topLevel));
QList<QStandardItem *> projlist;
for (int k = 0; k < 10; ++k)
@@ -3846,8 +3845,8 @@ void tst_QTreeView::keyboardNavigationWithDisabled()
view.resize(200, view.visualRect(model.index(0,0)).height()*10);
topLevel.show();
QApplication::setActiveWindow(&topLevel);
- QTest::qWaitForWindowShown(&topLevel);
- QTRY_VERIFY(topLevel.isActiveWindow());
+ QVERIFY(QTest::qWaitForWindowActive(&topLevel));
+ QVERIFY(topLevel.isActiveWindow());
view.setCurrentIndex(model.index(1, 0));
QTest::keyClick(view.viewport(), Qt::Key_Up);
diff --git a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp
index 69a9bc2953..9c495f89bf 100644
--- a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp
+++ b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp
@@ -242,9 +242,7 @@ void tst_QTreeWidget::initTestCase()
testWidget = new CustomTreeWidget();
testWidget->show();
-#ifdef Q_WS_X11
- qt_x11_wait_for_window_manager(testWidget);
-#endif
+ QVERIFY(QTest::qWaitForWindowExposed(testWidget));
}
void tst_QTreeWidget::cleanupTestCase()
@@ -459,7 +457,7 @@ void tst_QTreeWidget::editItem()
QTreeWidget tree;
populate(&tree, topLevelItems, new TreeItem(QStringList() << "1" << "2"));
tree.show();
- QTest::qWaitForWindowShown(&tree);
+ QVERIFY(QTest::qWaitForWindowActive(&tree));
QSignalSpy itemChangedSpy(
&tree, SIGNAL(itemChanged(QTreeWidgetItem*,int)));