From 690761a4ad6bd9accb4b038d9d398ca7924037ec Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 22 Mar 2023 07:49:37 +0100 Subject: tst_QVariant: add a test contrasting Qt 5/6 isNull behavior A null QString used to make a QVariant containing it null in Qt 5, but this is no longer the case. Add a test that get_if works as expected. Task-number: QTBUG-111598 Change-Id: I0f3511e1b33f4a9d67755269455680feda22ddca Reviewed-by: Qt CI Bot Reviewed-by: Fabian Kosmale Reviewed-by: Thiago Macieira --- tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index cbe3f90b94..6667d95e0d 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -381,6 +381,7 @@ private slots: void getIf_int() { getIf_impl(42); } void getIf_QString() { getIf_impl(u"string"_s); }; void getIf_NonDefaultConstructible(); + void getIfSpecial(); void get_int() { get_impl(42); } void get_QString() { get_impl(u"string"_s); } @@ -5724,6 +5725,12 @@ void tst_QVariant::getIf_NonDefaultConstructible() getIf_impl(NonDefaultConstructible{42}); } +void tst_QVariant::getIfSpecial() +{ + QVariant v{QString{}}; // used to be a null QVariant in Qt 5 + QCOMPARE_NE(get_if(&v), nullptr); // not anymore... +} + void tst_QVariant::get_NonDefaultConstructible() { get_impl(NonDefaultConstructible{42}); -- cgit v1.2.3