From a6d2e45d5765c0c05e408c6c74a05c9d70fe1bdb Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Tue, 28 May 2024 11:28:10 +0200 Subject: [PATCH] tst_QString: add more checks for unary arg() calls Add missing checks for integral overloads uint, short and ushort and character overloads char and char16_t (the latter being a reproducer for QTBUG-125588). Pick-to: 6.7 6.5 6.2 Task-number: QTBUG-125588 Change-Id: I479e4c8c3cd86c3f85ab3c9d44b79158b0a48476 Reviewed-by: Ivan Solovev --- tests/auto/corelib/text/qstring/tst_qstring.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/auto/corelib/text/qstring/tst_qstring.cpp b/tests/auto/corelib/text/qstring/tst_qstring.cpp index d56a9ebd20b..64370e97d79 100644 --- a/tests/auto/corelib/text/qstring/tst_qstring.cpp +++ b/tests/auto/corelib/text/qstring/tst_qstring.cpp @@ -6647,10 +6647,19 @@ void tst_QString::arg() // number overloads QCOMPARE( s4.arg(0), QLatin1String("[0]") ); QCOMPARE( s4.arg(-1), QLatin1String("[-1]") ); + QCOMPARE( s4.arg(0U), QLatin1String("[0]")); + QCOMPARE( s4.arg(short(-4200)), QLatin1String("[-4200]")); + QCOMPARE( s4.arg(ushort(42000)), QLatin1String("[42000]")); QCOMPARE( s4.arg(4294967295UL), QLatin1String("[4294967295]") ); // ULONG_MAX 32 QCOMPARE( s4.arg(Q_INT64_C(9223372036854775807)), // LLONG_MAX QLatin1String("[9223372036854775807]") ); + // char-ish overloads + QCOMPARE(s4.arg('\xE4'), QStringView(u"[ä]")); + QEXPECT_FAIL("", "QTBUG-125588", Continue); + QCOMPARE(s4.arg(u'ø'), QStringView(u"[ø]")); + //QCOMPARE(s4.arg(u8'a'), QLatin1String("[a]")); + QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: , foo"); QCOMPARE(QString().arg(foo), QString()); QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\" , 0");