summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/text/qbytearray
diff options
context:
space:
mode:
authorMårten Nordheim <marten.nordheim@qt.io>2021-08-10 19:30:03 +0200
committerMårten Nordheim <marten.nordheim@qt.io>2021-08-17 03:53:45 +0200
commit4603d7e231edb13c91f1f3b5d2414e751aa73533 (patch)
tree622e9753721158ebb55ea4fc654e6188d1e8b0bf /tests/auto/corelib/text/qbytearray
parentb43afd5315dc8f78bda4331a66886ca61a3e8dce (diff)
QString/QByteArray::number(double): Test big numbers
Exhausts the entire buffer which double-conversion is left to work with. Also has a large amount of precision, which apparently we need to store temporarily. Task-number: QTBUG-88484 Change-Id: I87e8c323676465f1b8695e086020df1240d0d0d7 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests/auto/corelib/text/qbytearray')
-rw-r--r--tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp b/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
index 9f4949f5b3..41695ec0c3 100644
--- a/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
+++ b/tests/auto/corelib/text/qbytearray/tst_qbytearray.cpp
@@ -1304,12 +1304,18 @@ void tst_QByteArray::number_double_data()
// This function is implemented in ../shared/test_number_shared.h
add_number_double_shared_data([](NumberDoubleTestData datum) {
QByteArray ba(datum.expected.data(), datum.expected.size());
- QTest::addRow("%s, format '%c', precision %d", ba.data(), datum.f, datum.p)
+ const char *title = !datum.optTitle.isEmpty() ? datum.optTitle.data() : ba.data();
+ QTest::addRow("%s, format '%c', precision %d", title, datum.f, datum.p)
<< datum.d << datum.f << datum.p << ba;
if (datum.f != 'f') { // Also test uppercase format
datum.f = toupper(datum.f);
QByteArray upper = ba.toUpper();
- QTest::addRow("%s, format '%c', precision %d", upper.data(), datum.f, datum.p)
+ QByteArray upperTitle = QByteArray(title);
+ if (!datum.optTitle.isEmpty())
+ upperTitle += ", uppercase";
+ else
+ upperTitle = upperTitle.toUpper();
+ QTest::addRow("%s, format '%c', precision %d", upperTitle.data(), datum.f, datum.p)
<< datum.d << datum.f << datum.p << upper;
}
});