diff options
author | Liang Qi <liang.qi@qt.io> | 2018-06-07 19:10:53 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2018-06-07 19:10:53 +0200 |
commit | 096e37910d93f9c52976600e985c615ea36fe291 (patch) | |
tree | 713d020f4a04f03d8ca6e111055e7eebe85953a8 /tests/auto/gui/painting | |
parent | 88eda007a3b5046999dd0b287634765efcd8934d (diff) | |
parent | a14a943f9ac3d1e85514d7fb6688c84e624ac850 (diff) |
Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
.qmake.conf
src/corelib/kernel/qeventdispatcher_cf.mm
src/gui/kernel/qguiapplication_p.h
src/gui/kernel/qwindowsysteminterface.cpp
src/gui/kernel/qwindowsysteminterface.h
src/plugins/platforms/cocoa/qcocoawindow.mm
src/plugins/platforms/cocoa/qnswindowdelegate.mm
src/plugins/platforms/ios/qioseventdispatcher.mm
src/plugins/platforms/windows/qwindowsdrag.h
src/plugins/platforms/windows/qwindowsinternalmimedata.h
src/plugins/platforms/windows/qwindowsmime.cpp
src/plugins/platforms/winrt/qwinrtscreen.cpp
Change-Id: Ic817f265c2386e83839d2bb9ef7419cb29705246
Diffstat (limited to 'tests/auto/gui/painting')
-rw-r--r-- | tests/auto/gui/painting/qtransform/tst_qtransform.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/auto/gui/painting/qtransform/tst_qtransform.cpp b/tests/auto/gui/painting/qtransform/tst_qtransform.cpp index 0a6a95daca..f9366c9227 100644 --- a/tests/auto/gui/painting/qtransform/tst_qtransform.cpp +++ b/tests/auto/gui/painting/qtransform/tst_qtransform.cpp @@ -49,6 +49,8 @@ private slots: void matrix(); void testOffset(); void types(); + void types2_data(); + void types2(); void scalarOps(); void transform(); void mapEmptyPath(); @@ -65,6 +67,7 @@ private: }; Q_DECLARE_METATYPE(QTransform) +Q_DECLARE_METATYPE(QTransform::TransformationType) void tst_QTransform::mapRect_data() { @@ -568,6 +571,38 @@ void tst_QTransform::types() QCOMPARE(m5.type(), QTransform::TxScale); } +void tst_QTransform::types2_data() +{ + QTest::addColumn<QTransform>("t1"); + QTest::addColumn<QTransform::TransformationType>("type"); + + QTest::newRow( "identity" ) << QTransform() << QTransform::TxNone; + QTest::newRow( "translate" ) << QTransform().translate(10, -0.1) << QTransform::TxTranslate; + QTest::newRow( "scale" ) << QTransform().scale(10, -0.1) << QTransform::TxScale; + QTest::newRow( "rotate" ) << QTransform().rotate(10) << QTransform::TxRotate; + QTest::newRow( "shear" ) << QTransform().shear(10, -0.1) << QTransform::TxShear; + QTest::newRow( "project" ) << QTransform().rotate(10, Qt::XAxis) << QTransform::TxProject; + QTest::newRow( "combined" ) << QTransform().translate(10, -0.1).scale(10, -0.1).rotate(10, Qt::YAxis) << QTransform::TxProject; +} + +void tst_QTransform::types2() +{ +#define CHECKTXTYPE(func) { QTransform t2(func); \ + QTransform t3(t2.m11(), t2.m12(), t2.m13(), t2.m21(), t2.m22(), t2.m23(), t2.m31(), t2.m32(), t2.m33()); \ + QVERIFY2(t3.type() == t2.type(), #func); \ + } + + QFETCH( QTransform, t1 ); + QFETCH( QTransform::TransformationType, type ); + + Q_ASSERT(t1.type() == type); + + CHECKTXTYPE(t1.adjoint()); + CHECKTXTYPE(t1.inverted()); + CHECKTXTYPE(t1.transposed()); + +#undef CHECKTXTYPE +} void tst_QTransform::scalarOps() { |