83 QFETCH(QList<QRectF>, expectedWidgets); |
83 QFETCH(QList<QRectF>, expectedWidgets); |
84 |
84 |
85 HsWidgetPositioningOnWidgetAdd *converter = |
85 HsWidgetPositioningOnWidgetAdd *converter = |
86 new HsAnchorPointInBottomRight; |
86 new HsAnchorPointInBottomRight; |
87 |
87 |
88 QList<QRectF> convertedWidgets = |
88 HsWidgetPositioningOnWidgetAdd::Result result; |
89 converter->convert(contentArea, QList<QRectF>(), |
89 result = converter->convert(contentArea, QList<QRectF>(), |
90 widgets, QPointF()); |
90 widgets, QPointF()); |
91 |
91 |
92 QCOMPARE(convertedWidgets.count(), |
92 QCOMPARE(result.calculatedRects.count(), |
93 expectedWidgets.count()); |
93 expectedWidgets.count()); |
94 |
94 |
95 for (int i = 0; i < expectedWidgets.count(); ++i) { |
95 for (int i = 0; i < expectedWidgets.count(); ++i) { |
96 QVERIFY(hsRectCompare(convertedWidgets.at(i),expectedWidgets.at(i))); |
96 QVERIFY(hsRectCompare(result.calculatedRects.at(i),expectedWidgets.at(i))); |
97 } |
97 } |
98 |
98 |
99 delete converter; |
99 delete converter; |
100 } |
100 } |
101 |
101 |
111 QTest::newRow("case1.1") |
111 QTest::newRow("case1.1") |
112 << QRectF() << QList<QRectF>() << QList<QRectF>() << QList<QRectF>(); |
112 << QRectF() << QList<QRectF>() << QList<QRectF>() << QList<QRectF>(); |
113 |
113 |
114 // invalid parameters |
114 // invalid parameters |
115 QTest::newRow("case1.2") |
115 QTest::newRow("case1.2") |
116 << QRectF(0, 0, 100, 100) << QList<QRectF>() |
|
117 << (QList<QRectF>() << QRectF(0, 0, 10, 10) << QRectF(0, 0, 10, 10) << QRectF(0, 0, 10, 10)) |
|
118 << (QList<QRectF>() << QRectF(0, 0, 10, 10) << QRectF(15, 0, 10, 10) << QRectF(30, 0, 10, 10)); |
|
119 |
|
120 // basic set of similar size rects to simple content area's first row |
|
121 QTest::newRow("case1.3") |
|
122 << QRectF(54, 763, 24, 5434) |
116 << QRectF(54, 763, 24, 5434) |
123 << (QList<QRectF>() << QRectF(343, 321, 1034, 102) << QRectF(3320, 3420, 1430, 1043) << QRectF(0, 43, 10, 997)) |
117 << (QList<QRectF>() << QRectF(343, 321, 1034, 102) << QRectF(3320, 3420, 1430, 1043) << QRectF(0, 43, 10, 997)) |
124 << (QList<QRectF>() << QRectF(322, 12, 835, 623) << QRectF(624, 56, 536, 895) << QRectF(31, 423, 32, 9823)) |
118 << (QList<QRectF>() << QRectF(322, 12, 835, 623) << QRectF(624, 56, 536, 895) << QRectF(31, 423, 32, 9823)) |
125 << QList<QRectF>(); |
119 << QList<QRectF>(); |
126 |
120 |
|
121 // basic set of similar size rects to simple content area's first row |
|
122 QTest::newRow("case1.3") |
|
123 << QRectF(0, 0, 100, 100) << QList<QRectF>() |
|
124 << (QList<QRectF>() << QRectF(0, 0, 10, 10) << QRectF(0, 0, 10, 10) << QRectF(0, 0, 10, 10)) |
|
125 << (QList<QRectF>() << QRectF(0, 0, 10, 10) << QRectF(15, 0, 10, 10) << QRectF(30, 0, 10, 10)); |
|
126 |
127 // set of similar height rects to simple content area on multiple rows |
127 // set of similar height rects to simple content area on multiple rows |
128 QTest::newRow("case1.4") |
128 QTest::newRow("case1.4") |
129 << QRectF(0, 0, 100, 100) << QList<QRectF>() |
129 << QRectF(0, 0, 100, 100) << QList<QRectF>() |
130 << (QList<QRectF>() << QRectF(0, 0, 40, 10) << QRectF(0, 0, 50, 10) << QRectF(0, 0, 95, 10) << QRectF(0, 0, 50, 10) << QRectF(0, 0, 10, 10)) |
130 << (QList<QRectF>() << QRectF(0, 0, 40, 10) << QRectF(0, 0, 50, 10) << QRectF(0, 0, 95, 10) << QRectF(0, 0, 50, 10) << QRectF(0, 0, 10, 10)) |
131 << (QList<QRectF>() << QRectF(0, 0, 40, 10) << QRectF(45, 0, 50, 10) << QRectF(0, 15, 95, 10) << QRectF(0, 30, 50, 10) << QRectF(55, 30, 10, 10)); |
131 << (QList<QRectF>() << QRectF(0, 0, 40, 10) << QRectF(45, 0, 50, 10) << QRectF(0, 15, 95, 10) << QRectF(0, 30, 50, 10) << QRectF(55, 30, 10, 10)); |
153 QFETCH(QList<QRectF>, expectedWidgets); |
153 QFETCH(QList<QRectF>, expectedWidgets); |
154 |
154 |
155 HsWidgetOrganizer *widgetOrganizer = |
155 HsWidgetOrganizer *widgetOrganizer = |
156 new HsWidgetOrganizer(5, HsConfiguration::SearchRowByRow); |
156 new HsWidgetOrganizer(5, HsConfiguration::SearchRowByRow); |
157 |
157 |
158 QList<QRectF> convertedWidgets = widgetOrganizer->convert(contentArea, existingWidgets, |
158 HsWidgetPositioningOnWidgetAdd::Result result; |
159 widgets, QPointF()); |
159 result = widgetOrganizer->convert(contentArea, existingWidgets, |
|
160 widgets, QPointF()); |
160 // Verify amount |
161 // Verify amount |
161 QCOMPARE(convertedWidgets.count(), expectedWidgets.count()); |
162 QCOMPARE(result.calculatedRects.count(), expectedWidgets.count()); |
162 // Compare calculated and expected values |
163 // Compare calculated and expected values |
163 for (int i = 0; i < expectedWidgets.count(); ++i) { |
164 for (int i = 0; i < expectedWidgets.count(); ++i) { |
164 QVERIFY(hsRectCompare(convertedWidgets.at(i), expectedWidgets.at(i))); |
165 QVERIFY(hsRectCompare(result.calculatedRects.at(i), expectedWidgets.at(i))); |
165 } |
166 } |
166 |
167 |
167 delete widgetOrganizer; |
168 delete widgetOrganizer; |
168 } |
169 } |
169 |
170 |
197 QFETCH(QList<QRectF>, expectedWidgets); |
198 QFETCH(QList<QRectF>, expectedWidgets); |
198 |
199 |
199 mainWindow.setOrientation(Qt::Horizontal); |
200 mainWindow.setOrientation(Qt::Horizontal); |
200 HsWidgetOrganizer *widgetOrganizer = |
201 HsWidgetOrganizer *widgetOrganizer = |
201 new HsWidgetOrganizer(5, HsConfiguration::SearchColumnByColumn); |
202 new HsWidgetOrganizer(5, HsConfiguration::SearchColumnByColumn); |
202 QList<QRectF> convertedWidgets = widgetOrganizer->convert(contentArea, existingWidgets, |
203 |
203 widgets, QPointF()); |
204 HsWidgetPositioningOnWidgetAdd::Result result; |
204 QCOMPARE(convertedWidgets.count(), expectedWidgets.count()); |
205 result = widgetOrganizer->convert(contentArea, existingWidgets, |
205 for (int i = 0; i < expectedWidgets.count(); ++i) { |
206 widgets, QPointF()); |
206 QVERIFY(hsRectCompare(convertedWidgets.at(i), expectedWidgets.at(i))); |
207 QCOMPARE(result.calculatedRects.count(), expectedWidgets.count()); |
|
208 for (int i = 0; i < expectedWidgets.count(); ++i) { |
|
209 QVERIFY(hsRectCompare(result.calculatedRects.at(i), expectedWidgets.at(i))); |
207 } |
210 } |
208 |
211 |
209 delete widgetOrganizer; |
212 delete widgetOrganizer; |
210 // set orientation back to normal |
213 // set orientation back to normal |
211 mainWindow.setOrientation(Qt::Vertical); |
214 mainWindow.setOrientation(Qt::Vertical); |
241 QFETCH(QList<QRectF>, widgets); |
244 QFETCH(QList<QRectF>, widgets); |
242 QFETCH(QList<QRectF>, expectedWidgets); |
245 QFETCH(QList<QRectF>, expectedWidgets); |
243 |
246 |
244 HsWidgetOrganizer *widgetOrganizer = |
247 HsWidgetOrganizer *widgetOrganizer = |
245 new HsWidgetOrganizer(1, HsConfiguration::SearchRowByRow); |
248 new HsWidgetOrganizer(1, HsConfiguration::SearchRowByRow); |
246 QList<QRectF> convertedWidgets = widgetOrganizer->convert(contentArea, existingWidgets, |
249 |
|
250 HsWidgetPositioningOnWidgetAdd::Result result; |
|
251 result = widgetOrganizer->convert(contentArea, existingWidgets, |
247 widgets, QPointF()); |
252 widgets, QPointF()); |
248 QCOMPARE(convertedWidgets.count(), expectedWidgets.count()); |
253 QCOMPARE(result.calculatedRects.count(), expectedWidgets.count()); |
249 for (int i = 0; i < expectedWidgets.count(); ++i) { |
254 for (int i = 0; i < expectedWidgets.count(); ++i) { |
250 QVERIFY(hsRectCompare(convertedWidgets.at(i), expectedWidgets.at(i))); |
255 QVERIFY(hsRectCompare(result.calculatedRects.at(i), expectedWidgets.at(i))); |
251 } |
256 } |
252 |
257 |
253 delete widgetOrganizer; |
258 delete widgetOrganizer; |
254 } |
259 } |
255 |
260 |