summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/itemviews/qitemdelegate
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2019-01-26 08:35:40 +0100
committerLiang Qi <liang.qi@qt.io>2019-01-26 08:35:40 +0100
commit980567b3a32b2e2f00c86f2d627cd82b5230dd0f (patch)
treebc8cc4005b2e07cbc5cad8ba30f8c9fa4f236c3d /tests/auto/widgets/itemviews/qitemdelegate
parente81acde7d0cf5fb44a3fb2cf0bf7aaa2c65f807e (diff)
parent730cbad8824bcfcb7ab60371a6563cfb6dd5658d (diff)
Merge remote-tracking branch 'origin/5.12' into dev
Conflicts: src/android/templates/AndroidManifest.xml tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Change-Id: I4c9679e3a8ebba118fbf4772301ff8fde60455b9
Diffstat (limited to 'tests/auto/widgets/itemviews/qitemdelegate')
-rw-r--r--tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST4
-rw-r--r--tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp34
2 files changed, 24 insertions, 14 deletions
diff --git a/tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST b/tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST
index c6aeebc8f8..fea108f3fd 100644
--- a/tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST
+++ b/tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST
@@ -2,7 +2,3 @@
opensuse-42.3 ci
[testLineEditValidation]
opensuse-42.3 ci
-[comboBox]
-# QTBUG-67282
-opensuse
-opensuse-leap
diff --git a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
index adedace8b2..7fd1822295 100644
--- a/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
+++ b/tests/auto/widgets/itemviews/qitemdelegate/tst_qitemdelegate.cpp
@@ -727,6 +727,16 @@ void tst_QItemDelegate::dateTimeEditor_data()
<< QDate(2006, 10, 31);
}
+static QDateTimeEdit *findDateTimeEdit(const QWidget *widget)
+{
+ const auto dateTimeEditors = widget->findChildren<QDateTimeEdit *>();
+ for (auto dateTimeEditor : dateTimeEditors) {
+ if (qstrcmp(dateTimeEditor->metaObject()->className(), "QDateTimeEdit") == 0)
+ return dateTimeEditor;
+ }
+ return nullptr;
+}
+
void tst_QItemDelegate::dateTimeEditor()
{
QFETCH(QTime, time);
@@ -742,17 +752,24 @@ void tst_QItemDelegate::dateTimeEditor()
item3->setData(Qt::DisplayRole, QDateTime(date, time));
QTableWidget widget(1, 3);
+ widget.setWindowTitle(QLatin1String(QTest::currentTestFunction())
+ + QLatin1String("::")
+ + QLatin1String(QTest::currentDataTag()));
widget.setItem(0, 0, item1);
widget.setItem(0, 1, item2);
widget.setItem(0, 2, item3);
widget.show();
+ QVERIFY(QTest::qWaitForWindowExposed(&widget));
+ QApplication::setActiveWindow(&widget);
widget.editItem(item1);
QTestEventLoop::instance().enterLoop(1);
- QTimeEdit *timeEditor = widget.viewport()->findChild<QTimeEdit *>();
- QVERIFY(timeEditor);
+
+ QTimeEdit *timeEditor = nullptr;
+ auto viewport = widget.viewport();
+ QTRY_VERIFY( (timeEditor = viewport->findChild<QTimeEdit *>()) );
QCOMPARE(timeEditor->time(), time);
// The data must actually be different in order for the model
// to be updated.
@@ -763,8 +780,8 @@ void tst_QItemDelegate::dateTimeEditor()
widget.setFocus();
widget.editItem(item2);
- QTRY_VERIFY(widget.viewport()->findChild<QDateEdit *>());
- QDateEdit *dateEditor = widget.viewport()->findChild<QDateEdit *>();
+ QDateEdit *dateEditor = nullptr;
+ QTRY_VERIFY( (dateEditor = viewport->findChild<QDateEdit *>()) );
QCOMPARE(dateEditor->date(), date);
dateEditor->setDate(date.addDays(60));
@@ -774,12 +791,8 @@ void tst_QItemDelegate::dateTimeEditor()
QTestEventLoop::instance().enterLoop(1);
- QList<QDateTimeEdit *> dateTimeEditors = widget.findChildren<QDateTimeEdit *>();
- QDateTimeEdit *dateTimeEditor = 0;
- foreach(dateTimeEditor, dateTimeEditors)
- if (dateTimeEditor->metaObject()->className() == QLatin1String("QDateTimeEdit"))
- break;
- QVERIFY(dateTimeEditor);
+ QDateTimeEdit *dateTimeEditor = nullptr;
+ QTRY_VERIFY( (dateTimeEditor = findDateTimeEdit(viewport)) );
QCOMPARE(dateTimeEditor->date(), date);
QCOMPARE(dateTimeEditor->time(), time);
dateTimeEditor->setTime(time.addSecs(600));
@@ -1387,6 +1400,7 @@ void tst_QItemDelegate::comboBox()
widget.setItem(0, 0, item1);
widget.show();
QVERIFY(QTest::qWaitForWindowExposed(&widget));
+ QApplication::setActiveWindow(&widget);
widget.editItem(item1);