From b4be0cb2cccfdf089f6c63198723823e641f95f2 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Mon, 8 Apr 2024 15:29:07 +0200 Subject: [PATCH] We need QGuiApplication before accessing to Font Database --- tests/qt_types_standalone/cpp/qfontmetrics.h | 25 +++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/tests/qt_types_standalone/cpp/qfontmetrics.h b/tests/qt_types_standalone/cpp/qfontmetrics.h index bfcb68172..a0d969856 100644 --- a/tests/qt_types_standalone/cpp/qfontmetrics.h +++ b/tests/qt_types_standalone/cpp/qfontmetrics.h @@ -8,6 +8,7 @@ #include #include +#include #include #include "cxx-qt-gen/qfontmetrics.cxx.h" @@ -19,15 +20,33 @@ class QFontMetricsTest : public QObject private Q_SLOTS: void construct() { + std::vector args; + std::string path = "/path"; + args.push_back(path.data()); + auto argc = static_cast(args.size()); + + // QFontDatabase needs a QGuiApplication first + QGuiApplication app(argc, args.data()); + app.setApplicationName(QStringLiteral("kdab")); + QFont f; const int pointSize = 40; - f.setPointSize(40); + f.setPointSize(pointSize); const auto m = constructor_qfontmetrics(f); - QCOMPARE(m.ascent(), 40); - QCOMPARE(m.height(), 30); + QCOMPARE(m.ascent(), 57); + QCOMPARE(m.height(), 73); } void clone() { + std::vector args; + std::string path = "/path"; + args.push_back(path.data()); + auto argc = static_cast(args.size()); + + // QFontDatabase needs a QGuiApplication first + QGuiApplication app(argc, args.data()); + app.setApplicationName(QStringLiteral("kdab")); + QFont f; f.setBold(true); f.setPointSize(30);