From 56309fe1461c4ea3ca654e535a525165c28a0f12 Mon Sep 17 00:00:00 2001 From: Warwick Allison Date: Fri, 26 Mar 2010 15:59:43 +1000 Subject: Test transforms. --- .../qdeclarativeitem/tst_qdeclarativeitem.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp b/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp index 7665e18..d800411 100644 --- a/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp +++ b/tests/auto/declarative/qdeclarativeitem/tst_qdeclarativeitem.cpp @@ -61,6 +61,8 @@ private slots: void mapCoordinates(); void mapCoordinates_data(); void propertyChanges(); + void transforms(); + void transforms_data(); private: template @@ -402,6 +404,25 @@ void tst_QDeclarativeItem::mapCoordinates_data() QTest::newRow(QTest::toString(i)) << i << i; } +void tst_QDeclarativeItem::transforms_data() +{ + QTest::addColumn("qml"); + QTest::addColumn("matrix"); + QTest::newRow("translate") << QByteArray("import Qt 4.6\nItem { transform: Translate { x: 10; y: 20 } }") << QMatrix(1,0,0,1,10,20); + QTest::newRow("rotation") << QByteArray("import Qt 4.6\nItem { transform: Rotation { angle: 90 } }") << QMatrix(0,1,-1,0,0,0); + QTest::newRow("scale") << QByteArray("import Qt 4.6\nItem { transform: Scale { xScale: 1.5; yScale: -2 } }") << QMatrix(1.5,0,0,-2,0,0); +} + +void tst_QDeclarativeItem::transforms() +{ + QFETCH(QByteArray, qml); + QFETCH(QMatrix, matrix); + QDeclarativeComponent component(&engine); + component.setData(qml, QUrl::fromLocalFile("")); + QDeclarativeItem *item = qobject_cast(component.create()); + QCOMPARE(item->sceneMatrix(), matrix); +} + void tst_QDeclarativeItem::propertyChanges() { QDeclarativeView *canvas = new QDeclarativeView(0); -- cgit v0.12