diff options
author | Robin Burchell <robin.burchell@collabora.com> | 2011-12-09 17:21:12 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-12-12 17:27:19 +0100 |
commit | 6802e3165ea0d7c7bb5b4249ef1bb82f85febf86 (patch) | |
tree | 5c2ec37d676ef0ca1a0181c81148ed78bd56fa36 | |
parent | 3ac957690c09992269e02d0ec7527cb406a0db23 (diff) |
Add QVarLengthArray::length().
This also adds a unit test for length()/count()/size(), since there wasn't one
testing it explicitly.
Change-Id: Ifb7f113aa97beef5f76e5fb246eb38495344b0ad
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Marco Schmidt <Marco.Schmidt@Taugamma.de>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
-rw-r--r-- | src/corelib/tools/qvarlengtharray.h | 1 | ||||
-rw-r--r-- | src/corelib/tools/qvarlengtharray.qdoc | 7 | ||||
-rw-r--r-- | tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp | 62 |
3 files changed, 70 insertions, 0 deletions
diff --git a/src/corelib/tools/qvarlengtharray.h b/src/corelib/tools/qvarlengtharray.h index 6da6cf524d..fd8c26c128 100644 --- a/src/corelib/tools/qvarlengtharray.h +++ b/src/corelib/tools/qvarlengtharray.h @@ -95,6 +95,7 @@ public: } inline int size() const { return s; } inline int count() const { return s; } + inline int length() const { return s; } inline bool isEmpty() const { return (s == 0); } inline void resize(int size); inline void clear() { resize(0); } diff --git a/src/corelib/tools/qvarlengtharray.qdoc b/src/corelib/tools/qvarlengtharray.qdoc index b1d7a1a5b1..a932e9fbcb 100644 --- a/src/corelib/tools/qvarlengtharray.qdoc +++ b/src/corelib/tools/qvarlengtharray.qdoc @@ -118,6 +118,13 @@ \sa isEmpty(), resize() */ +/*! \fn int QVarLengthArray::length() const + + Same as size(). + + \sa isEmpty(), resize() +*/ + /*! \fn bool QVarLengthArray::isEmpty() const Returns true if the array has size 0; otherwise returns false. diff --git a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp index 0bdc49a15a..54bab55360 100644 --- a/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp +++ b/tests/auto/corelib/tools/qvarlengtharray/tst_qvarlengtharray.cpp @@ -55,6 +55,7 @@ private slots: void appendCausingRealloc(); void resize(); void realloc(); + void count(); }; int fooCtor = 0; @@ -593,5 +594,66 @@ void tst_QVarLengthArray::realloc() QVERIFY(reallocTestProceed); } +void tst_QVarLengthArray::count() +{ + // tests size(), count() and length(), since they're the same thing + { + const QVarLengthArray<int> list; + QCOMPARE(list.length(), 0); + QCOMPARE(list.count(), 0); + QCOMPARE(list.size(), 0); + } + + { + QVarLengthArray<int> list; + list.append(0); + QCOMPARE(list.length(), 1); + QCOMPARE(list.count(), 1); + QCOMPARE(list.size(), 1); + } + + { + QVarLengthArray<int> list; + list.append(0); + list.append(1); + QCOMPARE(list.length(), 2); + QCOMPARE(list.count(), 2); + QCOMPARE(list.size(), 2); + } + + { + QVarLengthArray<int> list; + list.append(0); + list.append(0); + list.append(0); + QCOMPARE(list.length(), 3); + QCOMPARE(list.count(), 3); + QCOMPARE(list.size(), 3); + } + + // test removals too + { + QVarLengthArray<int> list; + list.append(0); + list.append(0); + list.append(0); + QCOMPARE(list.length(), 3); + QCOMPARE(list.count(), 3); + QCOMPARE(list.size(), 3); + list.removeLast(); + QCOMPARE(list.length(), 2); + QCOMPARE(list.count(), 2); + QCOMPARE(list.size(), 2); + list.removeLast(); + QCOMPARE(list.length(), 1); + QCOMPARE(list.count(), 1); + QCOMPARE(list.size(), 1); + list.removeLast(); + QCOMPARE(list.length(), 0); + QCOMPARE(list.count(), 0); + QCOMPARE(list.size(), 0); + } +} + QTEST_APPLESS_MAIN(tst_QVarLengthArray) #include "tst_qvarlengtharray.moc" |