aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/qtquick2/qquickgridview/tst_qquickgridview.cpp45
-rw-r--r--tests/auto/qtquick2/qquickvisualdatamodel/tst_qquickvisualdatamodel.cpp32
2 files changed, 36 insertions, 41 deletions
diff --git a/tests/auto/qtquick2/qquickgridview/tst_qquickgridview.cpp b/tests/auto/qtquick2/qquickgridview/tst_qquickgridview.cpp
index 241e2e9dc0..b1edb2246b 100644
--- a/tests/auto/qtquick2/qquickgridview/tst_qquickgridview.cpp
+++ b/tests/auto/qtquick2/qquickgridview/tst_qquickgridview.cpp
@@ -134,23 +134,28 @@ private:
template<typename T>
void tst_qquickgridview_move(int from, int to, int n, T *items)
{
- if (n == 1) {
- items->move(from, to);
- } else {
- T replaced;
- int i=0;
- typename T::ConstIterator it=items->begin(); it += from+n;
- for (; i<to-from; ++i,++it)
- replaced.append(*it);
- i=0;
- it=items->begin(); it += from;
- for (; i<n; ++i,++it)
- replaced.append(*it);
- typename T::ConstIterator f=replaced.begin();
- typename T::Iterator t=items->begin(); t += from;
- for (; f != replaced.end(); ++f, ++t)
- *t = *f;
- }
+ if (from > to) {
+ // Only move forwards - flip if backwards moving
+ int tfrom = from;
+ int tto = to;
+ from = tto;
+ to = tto+n;
+ n = tfrom-tto;
+ }
+
+ T replaced;
+ int i=0;
+ typename T::ConstIterator it=items->begin(); it += from+n;
+ for (; i<to-from; ++i,++it)
+ replaced.append(*it);
+ i=0;
+ it=items->begin(); it += from;
+ for (; i<n; ++i,++it)
+ replaced.append(*it);
+ typename T::ConstIterator f=replaced.begin();
+ typename T::Iterator t=items->begin(); t += from;
+ for (; f != replaced.end(); ++f, ++t)
+ *t = *f;
}
void tst_QQuickGridView::initTestCase()
@@ -969,7 +974,7 @@ void tst_QQuickGridView::moved()
QQuickText *name;
QQuickText *number;
- QQuickView *canvas = createView();
+ QScopedPointer<QQuickView> canvas(createView());
canvas->show();
TestModel model;
@@ -997,7 +1002,7 @@ void tst_QQuickGridView::moved()
model.moveItems(from, to, count);
// wait for items to move
- QTest::qWait(300);
+ QTRY_COMPARE(QQuickItemPrivate::get(gridview)->polishScheduled, false);
// Confirm items positioned correctly and indexes correct
int firstVisibleIndex = qCeil(contentY / 60.0) * 3;
@@ -1022,8 +1027,6 @@ void tst_QQuickGridView::moved()
if (item == currentItem)
QTRY_COMPARE(gridview->currentIndex(), i);
}
-
- delete canvas;
}
void tst_QQuickGridView::moved_data()
diff --git a/tests/auto/qtquick2/qquickvisualdatamodel/tst_qquickvisualdatamodel.cpp b/tests/auto/qtquick2/qquickvisualdatamodel/tst_qquickvisualdatamodel.cpp
index 9e27a202b2..af3af57436 100644
--- a/tests/auto/qtquick2/qquickvisualdatamodel/tst_qquickvisualdatamodel.cpp
+++ b/tests/auto/qtquick2/qquickvisualdatamodel/tst_qquickvisualdatamodel.cpp
@@ -688,26 +688,18 @@ void tst_qquickvisualdatamodel::qaimRowsMoved()
QSignalSpy spy(obj, SIGNAL(modelUpdated(QDeclarativeChangeSet,bool)));
model.emitMove(sourceFirst, sourceLast, destinationChild);
- // QAbstractItemModel also emits the changed signal when items are moved.
- QCOMPARE(spy.count(), 2);
-
- bool move = false;
- for (int i = 0; i < 2; ++i) {
- QCOMPARE(spy[1].count(), 2);
- QDeclarativeChangeSet changeSet = spy[i][0].value<QDeclarativeChangeSet>();
- if (!changeSet.changes().isEmpty())
- continue;
- move = true;
- QCOMPARE(changeSet.removes().count(), 1);
- QCOMPARE(changeSet.removes().at(0).index, expectFrom);
- QCOMPARE(changeSet.removes().at(0).count, expectCount);
- QCOMPARE(changeSet.inserts().count(), 1);
- QCOMPARE(changeSet.inserts().at(0).index, expectTo);
- QCOMPARE(changeSet.inserts().at(0).count, expectCount);
- QCOMPARE(changeSet.removes().at(0).moveId, changeSet.inserts().at(0).moveId);
- QCOMPARE(spy[i][1].toBool(), false);
- }
- QVERIFY(move);
+ QCOMPARE(spy.count(), 1);
+
+ QCOMPARE(spy[0].count(), 2);
+ QDeclarativeChangeSet changeSet = spy[0][0].value<QDeclarativeChangeSet>();
+ QCOMPARE(changeSet.removes().count(), 1);
+ QCOMPARE(changeSet.removes().at(0).index, expectFrom);
+ QCOMPARE(changeSet.removes().at(0).count, expectCount);
+ QCOMPARE(changeSet.inserts().count(), 1);
+ QCOMPARE(changeSet.inserts().at(0).index, expectTo);
+ QCOMPARE(changeSet.inserts().at(0).count, expectCount);
+ QCOMPARE(changeSet.removes().at(0).moveId, changeSet.inserts().at(0).moveId);
+ QCOMPARE(spy[0][1].toBool(), false);
delete obj;
}