summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMårten Nordheim <marten.nordheim@qt.io>2020-10-23 12:00:56 +0200
committerMårten Nordheim <marten.nordheim@qt.io>2020-10-28 08:48:23 +0200
commit205629bb6240a4aae52aa62f6f6c9c302148efd2 (patch)
tree16b18f48b9ea58b284a1ae46b1c96bd5ef41bcbc /tests
parent2c4874be40aa40b698315cac0ad768e5c650a740 (diff)
QByteArray: make (ap|pre)pend(const QByteArray &) consider reserved
Append was previously optimized for lhs being empty but it should've also taken into account if space had been reserved. Apply the same optimization to prepend while we're at it. Change-Id: I5e5d33a3189b9ad88d45e858a2ac412cbc294f79 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp b/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
index 2f0f5654ca..cf70a7bbaa 100644
--- a/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
+++ b/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
@@ -838,6 +838,12 @@ void tst_QByteArray::prepend()
QCOMPARE(ba.prepend(-1, 'x'), QByteArray("321foo"));
QCOMPARE(ba.prepend(3, 'x'), QByteArray("xxx321foo"));
QCOMPARE(ba.prepend("\0 ", 2), QByteArray::fromRawData("\0 xxx321foo", 11));
+
+ QByteArray tenChars;
+ tenChars.reserve(10);
+ QByteArray twoChars("ab");
+ tenChars.prepend(twoChars);
+ QCOMPARE(tenChars.capacity(), 10);
}
void tst_QByteArray::prependExtended_data()
@@ -882,6 +888,12 @@ void tst_QByteArray::append()
QCOMPARE(ba.append("\0"), QByteArray("foo123xxx"));
QCOMPARE(ba.append("\0", 1), QByteArray::fromRawData("foo123xxx\0", 10));
QCOMPARE(ba.size(), 10);
+
+ QByteArray tenChars;
+ tenChars.reserve(10);
+ QByteArray twoChars("ab");
+ tenChars.append(twoChars);
+ QCOMPARE(tenChars.capacity(), 10);
}
void tst_QByteArray::appendExtended_data()