diff options
author | Eric Lemanissier <eric.lemanissier@gmail.com> | 2018-03-09 12:09:09 +0100 |
---|---|---|
committer | Eric Lemanissier <eric.lemanissier@gmail.com> | 2018-03-10 06:15:31 +0000 |
commit | 1e27219968f760501c99f9f744f172d475a57162 (patch) | |
tree | 3dfa953002034f8f35e23c2688cadf4d0229b823 /tests | |
parent | fee8944cbe2a976e1b4a71c5df048e84a0bc6db0 (diff) |
add missing tests of rvalue overloads for QVarLengthArray and QVectorv5.11.0-beta2
they were missing in dd58ddd5d97f0663d5fafb7e81bff4fc7db13ba7
Change-Id: I52a2f855ead7716f8fe887524b27d4bd258f43d3
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp | 9 | ||||
-rw-r--r-- | tests/auto/corelib/tools/qvector/tst_qvector.cpp | 18 |
2 files changed, 25 insertions, 2 deletions
diff --git a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp index ced1d08d65..ac4c8c8d4e 100644 --- a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp +++ b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp @@ -966,12 +966,14 @@ void tst_QVarLengthArray::insertMove() QCOMPARE(MyBase::liveCount, 4); vec.append(std::move(m3)); + QVERIFY(m3.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m3)); QCOMPARE(MyBase::errorCount, 0); QCOMPARE(MyBase::liveCount, 4); QCOMPARE(MyBase::movedCount, 1); vec.push_back(std::move(m4)); + QVERIFY(m4.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m3)); QVERIFY(vec.at(1).wasConstructedAt(&m4)); QCOMPARE(MyBase::errorCount, 0); @@ -979,6 +981,7 @@ void tst_QVarLengthArray::insertMove() QCOMPARE(MyBase::movedCount, 2); vec.prepend(std::move(m1)); + QVERIFY(m1.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m1)); QVERIFY(vec.at(1).wasConstructedAt(&m3)); QVERIFY(vec.at(2).wasConstructedAt(&m4)); @@ -987,9 +990,11 @@ void tst_QVarLengthArray::insertMove() QCOMPARE(MyBase::movedCount, 3); vec.insert(1, std::move(m2)); + QVERIFY(m2.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m1)); QVERIFY(vec.at(1).wasConstructedAt(&m2)); QVERIFY(vec.at(2).wasConstructedAt(&m3)); + QVERIFY(vec.at(3).wasConstructedAt(&m4)); QCOMPARE(MyBase::copyCount, 0); QCOMPARE(MyBase::liveCount, 4); @@ -1014,15 +1019,19 @@ void tst_QVarLengthArray::nonCopyable() int *const ptr4 = val4.get(); vec.append(std::move(val3)); + QVERIFY(!val3); QVERIFY(ptr3 == vec.at(0).get()); vec.append(std::move(val4)); + QVERIFY(!val4); QVERIFY(ptr3 == vec.at(0).get()); QVERIFY(ptr4 == vec.at(1).get()); vec.prepend(std::move(val1)); + QVERIFY(!val1); QVERIFY(ptr1 == vec.at(0).get()); QVERIFY(ptr3 == vec.at(1).get()); QVERIFY(ptr4 == vec.at(2).get()); vec.insert(1, std::move(val2)); + QVERIFY(!val2); QVERIFY(ptr1 == vec.at(0).get()); QVERIFY(ptr2 == vec.at(1).get()); QVERIFY(ptr3 == vec.at(2).get()); diff --git a/tests/auto/corelib/tools/qvector/tst_qvector.cpp b/tests/auto/corelib/tools/qvector/tst_qvector.cpp index ef10357b6d..600291715a 100644 --- a/tests/auto/corelib/tools/qvector/tst_qvector.cpp +++ b/tests/auto/corelib/tools/qvector/tst_qvector.cpp @@ -2895,26 +2895,40 @@ void tst_QVector::insertMove() const const int instancesCount = Movable::counter.loadAcquire(); { QVector<Movable> vec; + vec.reserve(5); + Movable m0; Movable m1; Movable m2; Movable m3; Movable m4; vec.append(std::move(m3)); + QVERIFY(m3.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m3)); vec.push_back(std::move(m4)); + QVERIFY(m4.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m3)); QVERIFY(vec.at(1).wasConstructedAt(&m4)); vec.prepend(std::move(m1)); + QVERIFY(m1.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m1)); QVERIFY(vec.at(1).wasConstructedAt(&m3)); QVERIFY(vec.at(2).wasConstructedAt(&m4)); vec.insert(1, std::move(m2)); + QVERIFY(m2.wasConstructedAt(nullptr)); QVERIFY(vec.at(0).wasConstructedAt(&m1)); QVERIFY(vec.at(1).wasConstructedAt(&m2)); QVERIFY(vec.at(2).wasConstructedAt(&m3)); - - QCOMPARE(Movable::counter.loadAcquire(), instancesCount + 8); + QVERIFY(vec.at(3).wasConstructedAt(&m4)); + vec.push_front(std::move(m0)); + QVERIFY(m0.wasConstructedAt(nullptr)); + QVERIFY(vec.at(0).wasConstructedAt(&m0)); + QVERIFY(vec.at(1).wasConstructedAt(&m1)); + QVERIFY(vec.at(2).wasConstructedAt(&m2)); + QVERIFY(vec.at(3).wasConstructedAt(&m3)); + QVERIFY(vec.at(4).wasConstructedAt(&m4)); + + QCOMPARE(Movable::counter.loadAcquire(), instancesCount + 10); } QCOMPARE(Movable::counter.loadAcquire(), instancesCount); } |