summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/corelib')
-rw-r--r--tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp6
-rw-r--r--tests/auto/corelib/io/qloggingregistry/qtlogging.ini2
-rw-r--r--tests/auto/corelib/io/qloggingregistry/tst_qloggingregistry.cpp10
-rw-r--r--tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp6
-rw-r--r--tests/auto/corelib/json/tst_qtjson.cpp14
-rw-r--r--tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp9
-rw-r--r--tests/auto/corelib/tools/qarraydata/qarraydata.pro4
-rw-r--r--tests/auto/corelib/tools/qarraydata/simplevector.h10
-rw-r--r--tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp2
-rw-r--r--tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro3
-rw-r--r--tests/auto/corelib/tools/qhash/qhash.pro2
-rw-r--r--tests/auto/corelib/tools/qhash/tst_qhash.cpp4
-rw-r--r--tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro3
-rw-r--r--tests/auto/corelib/tools/qlist/qlist.pro2
-rw-r--r--tests/auto/corelib/tools/qlist_strictiterators/qlist_strictiterators.pro3
-rw-r--r--tests/auto/corelib/tools/qmap/qmap.pro2
-rw-r--r--tests/auto/corelib/tools/qmap/tst_qmap.cpp2
-rw-r--r--tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro3
-rw-r--r--tests/auto/corelib/tools/qmargins/tst_qmargins.cpp108
-rw-r--r--tests/auto/corelib/tools/qrect/tst_qrect.cpp29
-rw-r--r--tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp4
-rw-r--r--tests/auto/corelib/tools/qvector/qvector.pro2
-rw-r--r--tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro3
-rw-r--r--tests/auto/corelib/tools/tools.pro7
24 files changed, 214 insertions, 26 deletions
diff --git a/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp b/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp
index 36e01a0ccd..79df4b7055 100644
--- a/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp
+++ b/tests/auto/corelib/global/qnumeric/tst_qnumeric.cpp
@@ -167,6 +167,9 @@ void tst_QNumeric::floatDistance()
QFETCH(float, val1);
QFETCH(float, val2);
QFETCH(quint32, expectedDistance);
+#ifdef Q_OS_BLACKBERRY
+ QEXPECT_FAIL("denormal", "See QTBUG-37094", Continue);
+#endif
QCOMPARE(qFloatDistance(val1, val2), expectedDistance);
}
@@ -211,6 +214,9 @@ void tst_QNumeric::floatDistance_double()
QFETCH(double, val1);
QFETCH(double, val2);
QFETCH(quint64, expectedDistance);
+#ifdef Q_OS_BLACKBERRY
+ QEXPECT_FAIL("denormal", "See QTBUG-37094", Continue);
+#endif
QCOMPARE(qFloatDistance(val1, val2), expectedDistance);
}
diff --git a/tests/auto/corelib/io/qloggingregistry/qtlogging.ini b/tests/auto/corelib/io/qloggingregistry/qtlogging.ini
index 63b384e36a..fd7a4f8c54 100644
--- a/tests/auto/corelib/io/qloggingregistry/qtlogging.ini
+++ b/tests/auto/corelib/io/qloggingregistry/qtlogging.ini
@@ -1,2 +1,2 @@
-[rules]
+[Rules]
*=true
diff --git a/tests/auto/corelib/io/qloggingregistry/tst_qloggingregistry.cpp b/tests/auto/corelib/io/qloggingregistry/tst_qloggingregistry.cpp
index b538525161..dc6f16828b 100644
--- a/tests/auto/corelib/io/qloggingregistry/tst_qloggingregistry.cpp
+++ b/tests/auto/corelib/io/qloggingregistry/tst_qloggingregistry.cpp
@@ -63,16 +63,16 @@ private slots:
{
//
// Logging configuration can be described
- // in an .ini file. [rules] is the
+ // in an .ini file. [Rules] is the
// default category, and optional ...
//
QLoggingSettingsParser parser;
- parser.setContent("[rules]\n"
+ parser.setContent("[Rules]\n"
"default=false\n"
"default=true");
QCOMPARE(parser.rules().size(), 2);
- parser.setContent("[rules]\n"
+ parser.setContent("[Rules]\n"
"default=false");
QCOMPARE(parser.rules().size(), 1);
@@ -115,7 +115,7 @@ private slots:
QFile file(dir.absoluteFilePath("qtlogging.ini"));
QVERIFY(file.open(QFile::WriteOnly | QFile::Text));
QTextStream out(&file);
- out << "[rules]\n";
+ out << "[Rules]\n";
out << "Digia.*=false\n";
file.close();
@@ -153,7 +153,7 @@ private slots:
// set Config rule
QLoggingSettingsParser parser;
- parser.setContent("[rules]\nDigia.*=false");
+ parser.setContent("[Rules]\nDigia.*=false");
registry->configRules=parser.rules();
registry->updateRules();
diff --git a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp
index 9788b78771..9e3457a25a 100644
--- a/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp
+++ b/tests/auto/corelib/itemmodels/qitemselectionmodel/tst_qitemselectionmodel.cpp
@@ -43,6 +43,8 @@
#include <QtGui/QtGui>
+#include <algorithm>
+
class tst_QItemSelectionModel : public QObject
{
Q_OBJECT
@@ -1833,7 +1835,7 @@ void tst_QItemSelectionModel::selectedRows()
QModelIndexList selectedRowIndexes = selectionModel.selectedRows(column);
QCOMPARE(selectedRowIndexes.count(), expectedRows.count());
- qSort(selectedRowIndexes);
+ std::sort(selectedRowIndexes.begin(), selectedRowIndexes.end());
for (int l = 0; l < selectedRowIndexes.count(); ++l) {
QCOMPARE(selectedRowIndexes.at(l).row(), expectedRows.at(l));
QCOMPARE(selectedRowIndexes.at(l).column(), column);
@@ -1893,7 +1895,7 @@ void tst_QItemSelectionModel::selectedColumns()
QModelIndexList selectedColumnIndexes = selectionModel.selectedColumns(row);
QCOMPARE(selectedColumnIndexes.count(), expectedColumns.count());
- qSort(selectedColumnIndexes);
+ std::sort(selectedColumnIndexes.begin(), selectedColumnIndexes.end());
for (int l = 0; l < selectedColumnIndexes.count(); ++l) {
QCOMPARE(selectedColumnIndexes.at(l).column(), expectedColumns.at(l));
QCOMPARE(selectedColumnIndexes.at(l).row(), row);
diff --git a/tests/auto/corelib/json/tst_qtjson.cpp b/tests/auto/corelib/json/tst_qtjson.cpp
index aee5875613..6736a33405 100644
--- a/tests/auto/corelib/json/tst_qtjson.cpp
+++ b/tests/auto/corelib/json/tst_qtjson.cpp
@@ -360,6 +360,10 @@ void tst_QtJson::testNumbers_2()
QJsonDocument jDocument2(QJsonDocument::fromJson(ba));
for (int power = 0; power <= 1075; power++) {
floatValues_1[power] = jDocument2.object().value(QString::number(power)).toDouble();
+#ifdef Q_OS_BLACKBERRY
+ if (power >= 970)
+ QEXPECT_FAIL("", "See QTBUG-37066", Abort);
+#endif
QVERIFY2(floatValues[power] == floatValues_1[power], QString("floatValues[%1] != floatValues_1[%1]").arg(power).toLatin1());
}
@@ -1299,11 +1303,17 @@ void tst_QtJson::toJsonLargeNumericValues()
" ]\n"
"}\n";
+#ifdef Q_OS_BLACKBERRY
+ QEXPECT_FAIL("", "See QTBUG-37066", Continue);
+#endif
QCOMPARE(json, expected);
QJsonDocument doc;
doc.setObject(object);
json = doc.toJson();
+#ifdef Q_OS_BLACKBERRY
+ QEXPECT_FAIL("", "See QTBUG-37066", Continue);
+#endif
QCOMPARE(json, expected);
}
@@ -1705,6 +1715,10 @@ void tst_QtJson::parseNumbers()
json += numbers[i].str;
json += " ]";
QJsonDocument doc = QJsonDocument::fromJson(json);
+#ifdef Q_OS_BLACKBERRY
+ if (0 == QString::compare(numbers[i].str, "1.1e-308"))
+ QEXPECT_FAIL("", "See QTBUG-37066", Abort);
+#endif
QVERIFY(!doc.isEmpty());
QCOMPARE(doc.isArray(), true);
QCOMPARE(doc.isObject(), false);
diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
index 47900204e7..acff6a55ba 100644
--- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
+++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
@@ -49,12 +49,19 @@
# include <pthread.h>
#endif
+#include <algorithm>
+
// At least these specific versions of MSVC2010 has a severe performance problem with this file,
// taking about 1 hour to compile if the portion making use of variadic macros is enabled.
#if defined(_MSC_FULL_VER) && (_MSC_FULL_VER >= 160030319) && (_MSC_FULL_VER <= 160040219)
# define TST_QMETATYPE_BROKEN_COMPILER
#endif
+// mingw gcc 4.8 also takes way too long, letting the CI system abort the test
+#if defined(__MINGW32__)
+# define TST_QMETATYPE_BROKEN_COMPILER
+#endif
+
Q_DECLARE_METATYPE(QMetaType::Type)
class tst_QMetaType: public QObject
@@ -2148,7 +2155,7 @@ void tst_QMetaType::compareCustomType()
{
QFETCH(QVariantList, unsorted);
QFETCH(QVariantList, sorted);
- qSort(unsorted);
+ std::sort(unsorted.begin(), unsorted.end());
QCOMPARE(unsorted, sorted);
}
diff --git a/tests/auto/corelib/tools/qarraydata/qarraydata.pro b/tests/auto/corelib/tools/qarraydata/qarraydata.pro
index d13cc86cf5..d5fe08c009 100644
--- a/tests/auto/corelib/tools/qarraydata/qarraydata.pro
+++ b/tests/auto/corelib/tools/qarraydata/qarraydata.pro
@@ -1,6 +1,6 @@
TARGET = tst_qarraydata
-SOURCES += tst_qarraydata.cpp
-HEADERS += simplevector.h
+SOURCES += $$PWD/tst_qarraydata.cpp
+HEADERS += $$PWD/simplevector.h
QT = core testlib
CONFIG += testcase parallel_test
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/corelib/tools/qarraydata/simplevector.h b/tests/auto/corelib/tools/qarraydata/simplevector.h
index ea3892ec5c..40917c0172 100644
--- a/tests/auto/corelib/tools/qarraydata/simplevector.h
+++ b/tests/auto/corelib/tools/qarraydata/simplevector.h
@@ -269,9 +269,9 @@ public:
if (first == last)
return;
- T *const begin = d->begin();
- T *const where = begin + position;
- const T *const end = begin + d->size;
+ const iterator begin = d->begin();
+ const iterator where = begin + position;
+ const iterator end = begin + d->size;
if (d.needsDetach()
|| capacity() - size() < size_t(last - first)) {
SimpleVector detached(Data::allocate(
@@ -290,8 +290,8 @@ public:
if ((first >= where && first < end)
|| (last > where && last <= end)) {
// Copy overlapping data first and only then shuffle it into place
- T *start = d->begin() + position;
- T *middle = d->end();
+ iterator start = d->begin() + position;
+ iterator middle = d->end();
d->copyAppend(first, last);
std::rotate(start, middle, d->end());
diff --git a/tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp b/tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp
index f9ce7425f6..60b807a7bc 100644
--- a/tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp
+++ b/tests/auto/corelib/tools/qarraydata/tst_qarraydata.cpp
@@ -1559,7 +1559,7 @@ void tst_QArrayData::literals()
#endif
QVERIFY(v.isSharable());
- QCOMPARE((void*)(v.constBegin() + v.size()), (void*)v.constEnd());
+ QCOMPARE((void*)(const char*)(v.constBegin() + v.size()), (void*)(const char*)v.constEnd());
for (int i = 0; i < 10; ++i)
QCOMPARE(const_(v)[i], char('A' + i));
diff --git a/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro b/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro
new file mode 100644
index 0000000000..b01fbd84d1
--- /dev/null
+++ b/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro
@@ -0,0 +1,3 @@
+include(../qarraydata/qarraydata.pro)
+TARGET = tst_qarraydata_strictiterators
+DEFINES += QT_STRICT_ITERATORS=1 tst_QArrayData=tst_QArrayData_StrictIterators
diff --git a/tests/auto/corelib/tools/qhash/qhash.pro b/tests/auto/corelib/tools/qhash/qhash.pro
index 630eabdb7c..1ed062ca91 100644
--- a/tests/auto/corelib/tools/qhash/qhash.pro
+++ b/tests/auto/corelib/tools/qhash/qhash.pro
@@ -1,5 +1,5 @@
CONFIG += testcase parallel_test
TARGET = tst_qhash
QT = core testlib
-SOURCES = tst_qhash.cpp
+SOURCES = $$PWD/tst_qhash.cpp
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/corelib/tools/qhash/tst_qhash.cpp b/tests/auto/corelib/tools/qhash/tst_qhash.cpp
index ddb72a3c32..73f8973245 100644
--- a/tests/auto/corelib/tools/qhash/tst_qhash.cpp
+++ b/tests/auto/corelib/tools/qhash/tst_qhash.cpp
@@ -44,6 +44,8 @@
#include <qhash.h>
#include <qmap.h>
+#include <algorithm>
+
class tst_QHash : public QObject
{
Q_OBJECT
@@ -1167,7 +1169,7 @@ template <typename T>
QList<T> sorted(const QList<T> &list)
{
QList<T> res = list;
- qSort(res);
+ std::sort(res.begin(), res.end());
return res;
}
diff --git a/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro b/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro
new file mode 100644
index 0000000000..715e9bf0c9
--- /dev/null
+++ b/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro
@@ -0,0 +1,3 @@
+include(../qhash/qhash.pro)
+TARGET = tst_qhash_strictiterators
+DEFINES += QT_STRICT_ITERATORS tst_QHash=tst_QHash_StrictIterators
diff --git a/tests/auto/corelib/tools/qlist/qlist.pro b/tests/auto/corelib/tools/qlist/qlist.pro
index d3f8d83177..43c06e0ee1 100644
--- a/tests/auto/corelib/tools/qlist/qlist.pro
+++ b/tests/auto/corelib/tools/qlist/qlist.pro
@@ -2,5 +2,5 @@ CONFIG += testcase
CONFIG += parallel_test
TARGET = tst_qlist
QT = core testlib
-SOURCES = tst_qlist.cpp
+SOURCES = $$PWD/tst_qlist.cpp
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/corelib/tools/qlist_strictiterators/qlist_strictiterators.pro b/tests/auto/corelib/tools/qlist_strictiterators/qlist_strictiterators.pro
new file mode 100644
index 0000000000..e39ad38919
--- /dev/null
+++ b/tests/auto/corelib/tools/qlist_strictiterators/qlist_strictiterators.pro
@@ -0,0 +1,3 @@
+include(../qlist/qlist.pro)
+TARGET = tst_qlist_strictiterators
+DEFINES += QT_STRICT_ITERATORS tst_QList=tst_QList_StrictIterators
diff --git a/tests/auto/corelib/tools/qmap/qmap.pro b/tests/auto/corelib/tools/qmap/qmap.pro
index 5601bc528c..460b6654fb 100644
--- a/tests/auto/corelib/tools/qmap/qmap.pro
+++ b/tests/auto/corelib/tools/qmap/qmap.pro
@@ -1,5 +1,5 @@
CONFIG += testcase parallel_test
TARGET = tst_qmap
QT = core testlib
-SOURCES = tst_qmap.cpp
+SOURCES = $$PWD/tst_qmap.cpp
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/corelib/tools/qmap/tst_qmap.cpp b/tests/auto/corelib/tools/qmap/tst_qmap.cpp
index dea657f842..e812e5a337 100644
--- a/tests/auto/corelib/tools/qmap/tst_qmap.cpp
+++ b/tests/auto/corelib/tools/qmap/tst_qmap.cpp
@@ -39,8 +39,6 @@
**
****************************************************************************/
-#define QT_STRICT_ITERATORS
-
#include <qmap.h>
#include <QtTest/QtTest>
#include <QDebug>
diff --git a/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro b/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro
new file mode 100644
index 0000000000..6c1f4727c1
--- /dev/null
+++ b/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro
@@ -0,0 +1,3 @@
+include(../qmap/qmap.pro)
+TARGET = tst_qmap_strictiterators
+DEFINES += QT_STRICT_ITERATORS tst_QMap=tst_QMap_StrictIterators
diff --git a/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp b/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp
index ec83740196..409a82aab2 100644
--- a/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp
+++ b/tests/auto/corelib/tools/qmargins/tst_qmargins.cpp
@@ -51,6 +51,10 @@ private slots:
void getSetCheck();
void dataStreamCheck();
void operators();
+
+ void getSetCheckF();
+ void dataStreamCheckF();
+ void operatorsF();
};
// Testing get/set functions
@@ -123,6 +127,13 @@ void tst_QMargins::operators()
QCOMPARE(a, halved);
QCOMPARE(m1 + (-m1), QMargins());
+
+ QMargins m3 = QMargins(10, 11, 12, 13);
+ QCOMPARE(m3 + 1, QMargins(11, 12, 13, 14));
+ QCOMPARE(1 + m3, QMargins(11, 12, 13, 14));
+ QCOMPARE(m3 - 1, QMargins(9, 10, 11, 12));
+ QCOMPARE(+m3, QMargins(10, 11, 12, 13));
+ QCOMPARE(-m3, QMargins(-10, -11, -12, -13));
}
// Testing QDataStream operators
@@ -150,5 +161,102 @@ void tst_QMargins::dataStreamCheck()
}
}
+// Testing get/set functions
+void tst_QMargins::getSetCheckF()
+{
+ QMarginsF margins;
+ // int QMarginsF::width()
+ // void QMarginsF::setWidth(int)
+ margins.setLeft(1.1);
+ QCOMPARE(1.1, margins.left());
+ margins.setTop(2.2);
+ QCOMPARE(2.2, margins.top());
+ margins.setBottom(3.3);
+ QCOMPARE(3.3, margins.bottom());
+ margins.setRight(4.4);
+ QCOMPARE(4.4, margins.right());
+
+ margins = QMarginsF();
+ QVERIFY(margins.isNull());
+ margins.setLeft(5.5);
+ margins.setRight(5.5);
+ QVERIFY(!margins.isNull());
+ QCOMPARE(margins, QMarginsF(5.5, 0.0, 5.5, 0.0));
+}
+
+void tst_QMargins::operatorsF()
+{
+ const QMarginsF m1(12.1, 14.1, 16.1, 18.1);
+ const QMarginsF m2(2.1, 3.1, 4.1, 5.1);
+
+ const QMarginsF added = m1 + m2;
+ QCOMPARE(added, QMarginsF(14.2, 17.2, 20.2, 23.2));
+ QMarginsF a = m1;
+ a += m2;
+ QCOMPARE(a, added);
+
+ const QMarginsF subtracted = m1 - m2;
+ QCOMPARE(subtracted, QMarginsF(10.0, 11.0, 12.0, 13.0));
+ a = m1;
+ a -= m2;
+ QCOMPARE(a, subtracted);
+
+ QMarginsF h = m1;
+ h += 2.1;
+ QCOMPARE(h, QMarginsF(14.2, 16.2, 18.2, 20.2));
+ h -= 2.1;
+ QCOMPARE(h, m1);
+
+ const QMarginsF doubled = m1 * 2.0;
+ QCOMPARE(doubled, QMarginsF(24.2, 28.2, 32.2, 36.2));
+ QCOMPARE(2.0 * m1, doubled);
+ QCOMPARE(m1 * 2.0, doubled);
+
+ a = m1;
+ a *= 2.0;
+ QCOMPARE(a, doubled);
+
+ const QMarginsF halved = m1 / 2.0;
+ QCOMPARE(halved, QMarginsF(6.05, 7.05, 8.05, 9.05));
+
+ a = m1;
+ a /= 2.0;
+ QCOMPARE(a, halved);
+
+ QCOMPARE(m1 + (-m1), QMarginsF());
+
+ QMarginsF m3 = QMarginsF(10.3, 11.4, 12.5, 13.6);
+ QCOMPARE(m3 + 1.1, QMarginsF(11.4, 12.5, 13.6, 14.7));
+ QCOMPARE(1.1 + m3, QMarginsF(11.4, 12.5, 13.6, 14.7));
+ QCOMPARE(m3 - 1.1, QMarginsF(9.2, 10.3, 11.4, 12.5));
+ QCOMPARE(+m3, QMarginsF(10.3, 11.4, 12.5, 13.6));
+ QCOMPARE(-m3, QMarginsF(-10.3, -11.4, -12.5, -13.6));
+}
+
+// Testing QDataStream operators
+void tst_QMargins::dataStreamCheckF()
+{
+ QByteArray buffer;
+
+ // stream out
+ {
+ QMarginsF marginsOut(1.1, 2.2, 3.3, 4.4);
+ QDataStream streamOut(&buffer, QIODevice::WriteOnly);
+ streamOut << marginsOut;
+ }
+
+ // stream in & compare
+ {
+ QMarginsF marginsIn;
+ QDataStream streamIn(&buffer, QIODevice::ReadOnly);
+ streamIn >> marginsIn;
+
+ QCOMPARE(marginsIn.left(), 1.1);
+ QCOMPARE(marginsIn.top(), 2.2);
+ QCOMPARE(marginsIn.right(), 3.3);
+ QCOMPARE(marginsIn.bottom(), 4.4);
+ }
+}
+
QTEST_APPLESS_MAIN(tst_QMargins)
#include "tst_qmargins.moc"
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");
diff --git a/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp b/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp
index 4245fe1418..2c0967da1c 100644
--- a/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp
+++ b/tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp
@@ -47,6 +47,8 @@
#include <qdebug.h>
#include <qlist.h>
+#include <algorithm>
+
class tst_QTextBoundaryFinder : public QObject
{
Q_OBJECT
@@ -203,7 +205,7 @@ static void doTestData(const QString &testString, const QList<int> &expectedBrea
// test toPreviousBoundary()
{
QList<int> expectedBreakPositionsRev = expectedBreakPositions;
- qSort(expectedBreakPositionsRev.begin(), expectedBreakPositionsRev.end(), qGreater<int>());
+ std::sort(expectedBreakPositionsRev.begin(), expectedBreakPositionsRev.end(), qGreater<int>());
QList<int> actualBreakPositions;
boundaryFinder.toEnd();
diff --git a/tests/auto/corelib/tools/qvector/qvector.pro b/tests/auto/corelib/tools/qvector/qvector.pro
index 98fd2f2120..22edde3412 100644
--- a/tests/auto/corelib/tools/qvector/qvector.pro
+++ b/tests/auto/corelib/tools/qvector/qvector.pro
@@ -1,5 +1,5 @@
CONFIG += testcase parallel_test
TARGET = tst_qvector
QT = core testlib
-SOURCES = tst_qvector.cpp
+SOURCES = $$PWD/tst_qvector.cpp
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro b/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro
new file mode 100644
index 0000000000..d6cad86aac
--- /dev/null
+++ b/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro
@@ -0,0 +1,3 @@
+include(../qvector/qvector.pro)
+TARGET = tst_qvector_strictiterators
+DEFINES += QT_STRICT_ITERATORS=1 tst_QVector=tst_QVector_StrictIterators
diff --git a/tests/auto/corelib/tools/tools.pro b/tests/auto/corelib/tools/tools.pro
index 996879ea69..d5c9e50190 100644
--- a/tests/auto/corelib/tools/tools.pro
+++ b/tests/auto/corelib/tools/tools.pro
@@ -2,6 +2,7 @@ TEMPLATE=subdirs
SUBDIRS=\
qalgorithms \
qarraydata \
+ qarraydata_strictiterators \
qbitarray \
qbytearray \
qbytearraylist \
@@ -20,11 +21,14 @@ SUBDIRS=\
qexplicitlyshareddatapointer \
qfreelist \
qhash \
+ qhash_strictiterators \
qline \
qlinkedlist \
qlist \
+ qlist_strictiterators \
qlocale \
qmap \
+ qmap_strictiterators \
qmargins \
qmessageauthenticationcode \
qpair \
@@ -54,4 +58,5 @@ SUBDIRS=\
qtimezone \
qtimeline \
qvarlengtharray \
- qvector
+ qvector \
+ qvector_strictiterators