From f88091c190a1e47544bb40230ec1e0a64851a1f5 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Fri, 12 Apr 2024 13:57:11 -0700 Subject: [PATCH] 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 (cherry picked from commit 8381a4b44fbd9528035af5e6d7458a2d5b9b7e7a) Reviewed-by: Qt Cherry-pick Bot --- tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index 418b8dd8210..68ab515623a 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -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(v)); case QMetaType::Char32: + return QString::number(qvariant_cast(v)); + case QMetaType::Char: case QMetaType::UChar: return QString::number(v.toUInt()); case QMetaType::SChar: