summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMarius Bugge Monsen <mmonsen@trolltech.com>2009-06-10 14:43:21 +0200
committerMarius Bugge Monsen <mmonsen@trolltech.com>2009-06-10 14:43:21 +0200
commitdf1b73b21d1e90e1c37705b44747ee671220bc22 (patch)
tree0de95deec582076bf5acae3c24ed1daa0b2293e6 /tests
parent541891f3bc60833e0c7aefa5b1f21b60cabc8495 (diff)
Make sure QtGraphicsListView::maximumOffset() only returns positive values. Auto-test included.
Diffstat (limited to 'tests')
-rw-r--r--tests/qgraphicslistview/tst_qgraphicslistview.cpp80
1 files changed, 80 insertions, 0 deletions
diff --git a/tests/qgraphicslistview/tst_qgraphicslistview.cpp b/tests/qgraphicslistview/tst_qgraphicslistview.cpp
index 4fa76aa..2b0e339 100644
--- a/tests/qgraphicslistview/tst_qgraphicslistview.cpp
+++ b/tests/qgraphicslistview/tst_qgraphicslistview.cpp
@@ -157,10 +157,90 @@ void tst_QtGraphicsListView::getSetCheck()
void tst_QtGraphicsListView::maximumOffset_data()
{
+ QTest::addColumn<int>("count");
+ QTest::addColumn<int>("orientation");
+ QTest::addColumn<QSizeF>("size");
+ QTest::addColumn<qreal>("maximumOffset");
+
+ QTest::newRow("no items, vertical, all visible")
+ << 0
+ << int(Qt::Vertical)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("one item, vertical, all visible")
+ << 5
+ << int(Qt::Vertical)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("five items, vertical, all visible")
+ << 5
+ << int(Qt::Vertical)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("six items, vertical")
+ << 6
+ << int(Qt::Vertical)
+ << QSizeF(100, 100)
+ << 20.;
+
+ QTest::newRow("ten items, vertical")
+ << 10
+ << int(Qt::Vertical)
+ << QSizeF(100, 100)
+ << 100.;
+
+ QTest::newRow("no items, horizontal, all visible")
+ << 0
+ << int(Qt::Horizontal)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("one item, horizontal, all visible")
+ << 5
+ << int(Qt::Horizontal)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("five items, horizontal, all visible")
+ << 5
+ << int(Qt::Horizontal)
+ << QSizeF(100, 100)
+ << 0.;
+
+ QTest::newRow("six items, horizontal")
+ << 6
+ << int(Qt::Horizontal)
+ << QSizeF(100, 100)
+ << 20.;
+
+ QTest::newRow("ten items, horizontal")
+ << 10
+ << int(Qt::Horizontal)
+ << QSizeF(100, 100)
+ << 100.;
}
void tst_QtGraphicsListView::maximumOffset()
{
+ QFETCH(int, count);
+ QFETCH(int, orientation);
+ QFETCH(QSizeF, size);
+ QFETCH(qreal, maximumOffset);
+
+ QtListDefaultModel model;
+ for (int i = 0; i < count; ++i)
+ model.insertItem(i, new QtListDefaultItem());
+
+ view->setOrientation(static_cast<Qt::Orientation>(orientation));
+ view->setGeometry(QRectF(QPointF(0, 0), size));
+ view->setItemCreator(new QtGraphicsListViewItemCreator<GraphicsListViewItem>());
+ view->setModel(&model);
+ view->doLayout();
+
+ QCOMPARE(view->maximumOffset(), maximumOffset);
}
void tst_QtGraphicsListView::maximumFirstIndex_data()