summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/tools/qrect/tst_qrect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/corelib/tools/qrect/tst_qrect.cpp')
-rw-r--r--tests/auto/corelib/tools/qrect/tst_qrect.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/auto/corelib/tools/qrect/tst_qrect.cpp b/tests/auto/corelib/tools/qrect/tst_qrect.cpp
index 1b11673bd1..81222552ca 100644
--- a/tests/auto/corelib/tools/qrect/tst_qrect.cpp
+++ b/tests/auto/corelib/tools/qrect/tst_qrect.cpp
@@ -135,6 +135,7 @@ private slots:
void newMoveBottomRight_data();
void newMoveBottomRight();
void margins();
+ void marginsf();
void translate_data();
void translate();
@@ -3496,6 +3497,10 @@ void tst_QRect::margins()
QCOMPARE(added, margins + rectangle);
QCOMPARE(added, rectangle.marginsAdded(margins));
+ const QRect subtracted = rectangle - margins;
+ QCOMPARE(subtracted, QRect(QPoint(12, 13), QSize(44, 42)));
+ QCOMPARE(subtracted, rectangle.marginsRemoved(margins));
+
QRect a = rectangle;
a += margins;
QCOMPARE(added, a);
@@ -3506,6 +3511,30 @@ void tst_QRect::margins()
QCOMPARE(a, rectangle.marginsRemoved(margins));
}
+void tst_QRect::marginsf()
+{
+ const QRectF rectangle = QRectF(QPointF(10.5, 10.5), QSizeF(50.5 ,150.5));
+ const QMarginsF margins = QMarginsF(2.5, 3.5, 4.5, 5.5);
+
+ const QRectF added = rectangle + margins;
+ QCOMPARE(added, QRectF(QPointF(8.0, 7.0), QSizeF(57.5, 159.5)));
+ QCOMPARE(added, margins + rectangle);
+ QCOMPARE(added, rectangle.marginsAdded(margins));
+
+ const QRectF subtracted = rectangle - margins;
+ QCOMPARE(subtracted, QRectF(QPointF(13.0, 14.0), QSizeF(43.5, 141.5)));
+ QCOMPARE(subtracted, rectangle.marginsRemoved(margins));
+
+ QRectF a = rectangle;
+ a += margins;
+ QCOMPARE(added, a);
+
+ a = rectangle;
+ a -= margins;
+ QCOMPARE(a, QRectF(QPoint(13.0, 14.0), QSizeF(43.5, 141.5)));
+ QCOMPARE(a, rectangle.marginsRemoved(margins));
+}
+
void tst_QRect::translate_data()
{
QTest::addColumn<QRect>("r");