tst_QVariant: fix stringification of char16_t and char32_t

QVariant::toUInt() cannot convert from those two, so we always ended up
with 0, producing lots of duplicated test rows.

Fixes: QTBUG-124349
Change-Id: Ie28eadac333c4bcd8c08fffd17c5a3e39a2cc3f6
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
(cherry picked from commit 8381a4b44fbd9528035af5e6d7458a2d5b9b7e7a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Thiago Macieira 2024-04-12 13:57:11 -07:00 committed by Qt Cherry-pick Bot
parent 29213f2546
commit f88091c190

View File

@ -2997,9 +2997,11 @@ void tst_QVariant::compareNumerics_data() const
QString::number(v.toULongLong()) :
QString::number(v.toLongLong());
switch (v.typeId()) {
case QMetaType::Char:
case QMetaType::Char16:
return QString::number(qvariant_cast<char16_t>(v));
case QMetaType::Char32:
return QString::number(qvariant_cast<char32_t>(v));
case QMetaType::Char:
case QMetaType::UChar:
return QString::number(v.toUInt());
case QMetaType::SChar: