diff options
author | Christian Strømme <christian.stromme@digia.com> | 2012-10-05 16:32:19 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-10-08 17:38:20 +0200 |
commit | 0ed3cf2a1c487387bbc958317c791c9c53cf5a16 (patch) | |
tree | 85b9a0215759d0e5b0906be2f29b39da635d8e06 /tests/auto/corelib/tools/qvector | |
parent | 2cce297b58ae50486094a6dcc148484a4a4bace5 (diff) |
Removed the "tst_QVector::outOfMemory" test.
The test is useless as we assert if the requested size exceeds
a certain limit. We could, as an alternative,
throw an exception, but in the end it's the caller's responsibility
to ensure that the requested size is a sane value.
Task-number: QTBUG-27285
Change-Id: I738950a6a2b51671a54e4d25c7e4c3ac0d7f63b8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests/auto/corelib/tools/qvector')
-rw-r--r-- | tests/auto/corelib/tools/qvector/tst_qvector.cpp | 148 |
1 files changed, 0 insertions, 148 deletions
diff --git a/tests/auto/corelib/tools/qvector/tst_qvector.cpp b/tests/auto/corelib/tools/qvector/tst_qvector.cpp index f5d77d4acc..6304477ba3 100644 --- a/tests/auto/corelib/tools/qvector/tst_qvector.cpp +++ b/tests/auto/corelib/tools/qvector/tst_qvector.cpp @@ -250,7 +250,6 @@ private slots: void testOperators() const; - void outOfMemory(); void reserve(); void reallocAfterCopy_data(); void reallocAfterCopy(); @@ -1739,153 +1738,6 @@ struct Foo ~Foo() { delete p; ++fooDtor; } }; -void tst_QVector::outOfMemory() -{ - fooCtor = 0; - fooDtor = 0; - - const int N = 0x7fffffff / sizeof(Foo); - - { - QVector<Foo> a; - - QSKIP("QTBUG-27285 - This test crashes on many of our machines."); - a.resize(N); - if (a.size() == N) { - QVERIFY(a.capacity() >= N); - QCOMPARE(fooCtor, N); - QCOMPARE(fooDtor, 0); - - for (int i = 0; i < N; i += 35000) - a[i] = Foo(); - } else { - // this is the case we're actually testing - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - QCOMPARE(fooCtor, 0); - QCOMPARE(fooDtor, 0); - - a.resize(5); - QCOMPARE(a.size(), 5); - QVERIFY(a.capacity() >= 5); - QCOMPARE(fooCtor, 5); - QCOMPARE(fooDtor, 0); - - const int Prealloc = a.capacity(); - a.resize(Prealloc + 1); - QCOMPARE(a.size(), Prealloc + 1); - QVERIFY(a.capacity() >= Prealloc + 1); - QCOMPARE(fooCtor, Prealloc + 6); - QCOMPARE(fooDtor, 5); - - a.resize(0x10000000); - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - QCOMPARE(fooCtor, Prealloc + 6); - QCOMPARE(fooDtor, Prealloc + 6); - } - } - - fooCtor = 0; - fooDtor = 0; - - { - QVector<Foo> a(N); - if (a.size() == N) { - QVERIFY(a.capacity() >= N); - QCOMPARE(fooCtor, N); - QCOMPARE(fooDtor, 0); - - for (int i = 0; i < N; i += 35000) - a[i] = Foo(); - } else { - // this is the case we're actually testing - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - QCOMPARE(fooCtor, 0); - QCOMPARE(fooDtor, 0); - } - } - - Foo foo; - - fooCtor = 0; - fooDtor = 0; - - { - QVector<Foo> a(N, foo); - if (a.size() == N) { - QVERIFY(a.capacity() >= N); - QCOMPARE(fooCtor, N); - QCOMPARE(fooDtor, 0); - - for (int i = 0; i < N; i += 35000) - a[i] = Foo(); - } else { - // this is the case we're actually testing - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - QCOMPARE(fooCtor, 0); - QCOMPARE(fooDtor, 0); - } - } - - fooCtor = 0; - fooDtor = 0; - - { - QVector<Foo> a; - a.resize(10); - QCOMPARE(fooCtor, 10); - QCOMPARE(fooDtor, 0); - - QVector<Foo> b(a); - QCOMPARE(fooCtor, 10); - QCOMPARE(fooDtor, 0); - - a.resize(N); - if (a.size() == N) { - QCOMPARE(fooCtor, N + 10); - } else { - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - QCOMPARE(fooCtor, 10); - QCOMPARE(fooDtor, 0); - - QCOMPARE(b.size(), 10); - QVERIFY(b.capacity() >= 10); - } - } - - { - QVector<int> a; - a.resize(10); - - QVector<int> b(a); - - a.resize(N); - if (a.size() == N) { - for (int i = 0; i < N; i += 60000) - a[i] = i; - } else { - QCOMPARE(a.size(), 0); - QCOMPARE(a.capacity(), 0); - - QCOMPARE(b.size(), 10); - QVERIFY(b.capacity() >= 10); - } - - b.resize(N - 1); - if (b.size() == N - 1) { - for (int i = 0; i < N - 1; i += 60000) - b[i] = i; - } else { - QCOMPARE(b.size(), 0); - QCOMPARE(b.capacity(), 0); - } - } -} - void tst_QVector::reserve() { fooCtor = 0; |