tst_Q(Any)StringView: check conversion from winrt::hstring

Instead of adding more QString::fromMyFavoriteStringImpl(), just check
that

   QStringView{myFavoriteStringImpl}.toString()

works.

It does.

Pick-to: 6.5
Task-number: QTBUG-111886
Change-Id: I337282611360b4a56a10c8acfd2d7d53ea196d5b
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
bb10
Marc Mutz 2023-03-24 08:22:56 +01:00
parent e81aa64280
commit a81ea3d114
2 changed files with 33 additions and 0 deletions

View File

@ -7,6 +7,9 @@
#include <QString>
#include <QStringBuilder>
#include <QVarLengthArray>
#if QT_CONFIG(cpp_winrt)
# include <private/qt_winrtbase_p.h>
#endif
#include <private/qxmlstream_p.h>
#include <QTest>
@ -236,6 +239,19 @@ static_assert(!CanConvert<std::list<wchar_t>>);
static_assert(CanConvert<QStringBuilder<QString, QString>>);
#if QT_CONFIG(cpp_winrt)
//
// winrt::hstring (QTBUG-111886)
//
static_assert(CanConvert< winrt::hstring >);
static_assert(CanConvert<const winrt::hstring >);
static_assert(CanConvert< winrt::hstring&>);
static_assert(CanConvert<const winrt::hstring&>);
#endif // QT_CONFIG(cpp_winrt)
class tst_QAnyStringView : public QObject
{

View File

@ -7,8 +7,12 @@
#include <QChar>
#include <QVarLengthArray>
#include <QList>
#if QT_CONFIG(cpp_winrt)
# include <private/qt_winrtbase_p.h>
#endif
#include <private/qxmlstream_p.h>
#include <QTest>
#include <string>
@ -127,6 +131,19 @@ static_assert(CanConvert<std::array<wchar_t, 123>>::value == CanConvertFromWChar
static_assert(!CanConvert<std::deque<wchar_t>>::value);
static_assert(!CanConvert<std::list<wchar_t>>::value);
#if QT_CONFIG(cpp_winrt)
//
// winrt::hstring (QTBUG-111886)
//
static_assert(CanConvert< winrt::hstring >::value);
static_assert(CanConvert<const winrt::hstring >::value);
static_assert(CanConvert< winrt::hstring&>::value);
static_assert(CanConvert<const winrt::hstring&>::value);
#endif // QT_CONFIG(cpp_winrt)
class tst_QStringView : public QObject
{
Q_OBJECT