diff options
Diffstat (limited to 'tests/auto')
7 files changed, 56 insertions, 33 deletions
diff --git a/tests/auto/gui/text/qfont/tst_qfont.cpp b/tests/auto/gui/text/qfont/tst_qfont.cpp index 4cc5a81329..7af48eda01 100644 --- a/tests/auto/gui/text/qfont/tst_qfont.cpp +++ b/tests/auto/gui/text/qfont/tst_qfont.cpp @@ -311,10 +311,11 @@ void tst_QFont::resolve() QCOMPARE(font6.families(), fontFamilies); QFont font7, font8; + // This will call setFamilies() directly now font7.setFamily(QLatin1String("Helvetica")); font8.setFamilies(fontFamilies); font7 = font7.resolve(font8); - QCOMPARE(font7.families(), QStringList({"Helvetica", "Arial"})); + QCOMPARE(font7.families(), QStringList({"Helvetica"})); QCOMPARE(font7.family(), "Helvetica"); } @@ -710,6 +711,7 @@ void tst_QFont::sharing() void tst_QFont::familyNameWithCommaQuote_data() { + QTest::addColumn<QString>("enteredFamilyName"); QTest::addColumn<QString>("familyName"); QTest::addColumn<QString>("chosenFamilyName"); @@ -717,15 +719,16 @@ void tst_QFont::familyNameWithCommaQuote_data() if (standardFont.isEmpty()) QSKIP("No default font available on the system"); const QString weirdFont(QLatin1String("'My, weird'' font name',")); + const QString bogusFont(QLatin1String("BogusFont")); const QString commaSeparated(standardFont + QLatin1String(",Times New Roman")); const QString commaSeparatedWeird(weirdFont + QLatin1String(",") + standardFont); - const QString commaSeparatedBogus(QLatin1String("BogusFont,") + standardFont); + const QString commaSeparatedBogus(bogusFont + QLatin1String(",") + standardFont); - QTest::newRow("standard") << standardFont << standardFont; - QTest::newRow("weird") << weirdFont << weirdFont; - QTest::newRow("commaSeparated") << commaSeparated << standardFont; - QTest::newRow("commaSeparatedWeird") << commaSeparatedWeird << weirdFont; - QTest::newRow("commaSeparatedBogus") << commaSeparatedBogus << standardFont; + QTest::newRow("standard") << standardFont << standardFont << standardFont; + QTest::newRow("weird") << weirdFont << QString("'My") << standardFont; + QTest::newRow("commaSeparated") << commaSeparated << standardFont << standardFont; + QTest::newRow("commaSeparatedWeird") << commaSeparatedWeird << QString("'My") << standardFont; + QTest::newRow("commaSeparatedBogus") << commaSeparatedBogus << bogusFont << standardFont; } void tst_QFont::familyNameWithCommaQuote() @@ -804,8 +807,8 @@ void tst_QFont::setFamiliesAndFamily() QVERIFY(weirdFontId != -1); QFont f; - f.setFamilies(families); f.setFamily(family); + f.setFamilies(families); QCOMPARE(QFontInfo(f).family(), chosenFamilyName); QFontDatabase::removeApplicationFont(weirdFontId); diff --git a/tests/auto/gui/text/qfontcache/tst_qfontcache.cpp b/tests/auto/gui/text/qfontcache/tst_qfontcache.cpp index 5c5bdf06ea..ec652997fc 100644 --- a/tests/auto/gui/text/qfontcache/tst_qfontcache.cpp +++ b/tests/auto/gui/text/qfontcache/tst_qfontcache.cpp @@ -72,23 +72,29 @@ tst_QFontCache::~tst_QFontCache() void tst_QFontCache::engineData_data() { QTest::addColumn<QString>("family"); - QTest::addColumn<QString>("cacheKey"); - - QTest::newRow("unquoted-family-name") << QString("Times New Roman") << QString("Times New Roman"); - QTest::newRow("quoted-family-name") << QString("'Times New Roman'") << QString("Times New Roman"); - QTest::newRow("invalid") << QString("invalid") << QString("invalid"); - QTest::newRow("multiple") << QString("invalid, Times New Roman") << QString("invalid,Times New Roman"); - QTest::newRow("multiple spaces") << QString("invalid, Times New Roman ") << QString("invalid,Times New Roman"); - QTest::newRow("multiple spaces quotes") << QString("'invalid', Times New Roman ") << QString("invalid,Times New Roman"); - QTest::newRow("multiple2") << QString("invalid, Times New Roman , foobar, 'baz'") << QString("invalid,Times New Roman,foobar,baz"); - QTest::newRow("invalid spaces") << QString("invalid spaces, Times New Roman ") << QString("invalid spaces,Times New Roman"); - QTest::newRow("invalid spaces quotes") << QString("'invalid spaces', 'Times New Roman' ") << QString("invalid spaces,Times New Roman"); + QTest::addColumn<QStringList>("cacheKey"); + + QTest::newRow("unquoted-family-name") << QString("Times New Roman") << QStringList({"Times New Roman"}); + QTest::newRow("quoted-family-name") << QString("'Times New Roman'") << QStringList({"Times New Roman"}); + QTest::newRow("invalid") << QString("invalid") << QStringList({"invalid"}); + QTest::newRow("multiple") << QString("invalid, Times New Roman") + << QStringList({"invalid", "Times New Roman"}); + QTest::newRow("multiple spaces") << QString("invalid, Times New Roman ") + << QStringList({"invalid", "Times New Roman"}); + QTest::newRow("multiple spaces quotes") << QString("'invalid', Times New Roman ") + << QStringList({"invalid", "Times New Roman"}); + QTest::newRow("multiple2") << QString("invalid, Times New Roman , foobar, 'baz'") + << QStringList({"invalid", "Times New Roman", "foobar", "baz"}); + QTest::newRow("invalid spaces") << QString("invalid spaces, Times New Roman ") + << QStringList({"invalid spaces", "Times New Roman"}); + QTest::newRow("invalid spaces quotes") << QString("'invalid spaces', 'Times New Roman' ") + << QStringList({"invalid spaces", "Times New Roman"}); } void tst_QFontCache::engineData() { QFETCH(QString, family); - QFETCH(QString, cacheKey); + QFETCH(QStringList, cacheKey); QFont f(family); f.exactMatch(); // loads engine @@ -104,7 +110,7 @@ void tst_QFontCache::engineData() if (req.pointSize < 0) req.pointSize = req.pixelSize*72.0/d->dpi; - req.family = cacheKey; + req.families = cacheKey; QFontEngineData *engineData = QFontCache::instance()->findEngineData(req); diff --git a/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp b/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp index aaa3433173..a018279098 100644 --- a/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp +++ b/tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp @@ -3570,13 +3570,13 @@ void tst_QTextDocument::mergeFontFamilies() cursor.setPosition(QByteArray("Hello World").length(), QTextCursor::KeepAnchor); cursor.mergeCharFormat(newFormat); - QVERIFY(td.toHtml().contains(QLatin1String("font-family:'MS Shell Dlg 2','Jokerman';"))); + QVERIFY(td.toHtml().contains(QLatin1String("font-family:'Jokerman';"))); QTextCharFormat newFormatFamilies; newFormatFamilies.setFontFamilies({ QLatin1String("Arial"), QLatin1String("Helvetica") }); cursor.mergeCharFormat(newFormatFamilies); - QVERIFY(td.toHtml().contains(QLatin1String("font-family:'Arial','Helvetica','Jokerman'"))); + QVERIFY(td.toHtml().contains(QLatin1String("font-family:'Arial','Helvetica'"))); newFormatFamilies.setFontFamilies({ QLatin1String("Arial"), QLatin1String("Jokerman"), QLatin1String("Helvetica") }); cursor.mergeCharFormat(newFormatFamilies); diff --git a/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp b/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp index 3fdfa8ae99..da06b765e0 100644 --- a/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp +++ b/tests/auto/gui/text/qtextdocumentfragment/tst_qtextdocumentfragment.cpp @@ -1661,19 +1661,22 @@ void tst_QTextDocumentFragment::html_cssShorthandFont() const char html[] = "<span style=\"font: 50px sans-serif\">Foo</span>"; setHtml(html); QCOMPARE(cursor.charFormat().property(QTextFormat::FontPixelSize).toInt(), 50); - QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamily).toString(), QString("sans-serif")); + QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamilies).toStringList(), + QStringList{"sans-serif"}); } { const char html[] = "<span style=\"font: 50pt sans-serif\">Foo</span>"; setHtml(html); QCOMPARE(cursor.charFormat().property(QTextFormat::FontPointSize).toInt(), 50); - QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamily).toString(), QString("sans-serif")); + QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamilies).toStringList(), + QStringList{"sans-serif"}); } { const char html[] = "<span style='font:7.0pt \"Times New Roman\"'>Foo</span>"; setHtml(html); QCOMPARE(cursor.charFormat().property(QTextFormat::FontPointSize).toInt(), 7); - QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamily).toString(), QString("Times New Roman")); + QCOMPARE(cursor.charFormat().property(QTextFormat::FontFamilies).toStringList(), + QStringList{"Times New Roman"}); } { const char html[] = "<span style='font:bold 7.0pt'>Foo</span>"; diff --git a/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp b/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp index ef5e3a0e0b..3a0afcffa1 100644 --- a/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp +++ b/tests/auto/gui/text/qtextformat/tst_qtextformat.cpp @@ -693,14 +693,17 @@ void tst_QTextFormat::dataStreamCompatibility() QTextCharFormat format; format.setFontStretch(42); format.setFontLetterSpacingType(QFont::AbsoluteSpacing); + format.setFontFamily(QLatin1String("Arial")); // Sanity check { QMap<int, QVariant> properties = format.properties(); QVERIFY(properties.contains(QTextFormat::FontLetterSpacingType)); QVERIFY(properties.contains(QTextFormat::FontStretch)); + QVERIFY(properties.contains(QTextFormat::FontFamilies)); QVERIFY(!properties.contains(QTextFormat::OldFontLetterSpacingType)); QVERIFY(!properties.contains(QTextFormat::OldFontStretch)); + QVERIFY(!properties.contains(QTextFormat::FontFamily)); } QByteArray memory; @@ -728,8 +731,10 @@ void tst_QTextFormat::dataStreamCompatibility() QMap<int, QVariant> properties = other.properties(); QVERIFY(properties.contains(QTextFormat::FontLetterSpacingType)); QVERIFY(properties.contains(QTextFormat::FontStretch)); + QVERIFY(properties.contains(QTextFormat::FontFamilies)); QVERIFY(!properties.contains(QTextFormat::OldFontLetterSpacingType)); QVERIFY(!properties.contains(QTextFormat::OldFontStretch)); + QVERIFY(!properties.contains(QTextFormat::FontFamily)); } } @@ -746,8 +751,10 @@ void tst_QTextFormat::dataStreamCompatibility() stream >> properties; QVERIFY(properties.contains(QTextFormat::FontLetterSpacingType)); QVERIFY(properties.contains(QTextFormat::FontStretch)); + QVERIFY(properties.contains(QTextFormat::FontFamilies)); QVERIFY(!properties.contains(QTextFormat::OldFontLetterSpacingType)); QVERIFY(!properties.contains(QTextFormat::OldFontStretch)); + QVERIFY(!properties.contains(QTextFormat::FontFamily)); } } @@ -777,8 +784,10 @@ void tst_QTextFormat::dataStreamCompatibility() QMap<int, QVariant> properties = other.properties(); QVERIFY(properties.contains(QTextFormat::FontLetterSpacingType)); QVERIFY(properties.contains(QTextFormat::FontStretch)); + QVERIFY(properties.contains(QTextFormat::FontFamilies)); QVERIFY(!properties.contains(QTextFormat::OldFontLetterSpacingType)); QVERIFY(!properties.contains(QTextFormat::OldFontStretch)); + QVERIFY(!properties.contains(QTextFormat::FontFamily)); } } @@ -797,8 +806,10 @@ void tst_QTextFormat::dataStreamCompatibility() stream >> properties; QVERIFY(!properties.contains(QTextFormat::FontLetterSpacingType)); QVERIFY(!properties.contains(QTextFormat::FontStretch)); + QVERIFY(!properties.contains(QTextFormat::FontFamilies)); QVERIFY(properties.contains(QTextFormat::OldFontLetterSpacingType)); QVERIFY(properties.contains(QTextFormat::OldFontStretch)); + QVERIFY(properties.contains(QTextFormat::FontFamily)); } } diff --git a/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp b/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp index c85bb737bf..e752ef8ec7 100644 --- a/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp +++ b/tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp @@ -142,7 +142,7 @@ static void doShapingTests() if (e->fontEngine(e->layoutData->items[0])->type() == QFontEngine::Box) QSKIP("OpenType support missing for script"); - QCOMPARE(e->fontEngine(e->layoutData->items[0])->fontDef.family, font.family()); + QCOMPARE(e->fontEngine(e->layoutData->items[0])->fontDef.families.first(), font.family()); ushort nglyphs = glyphs.size(); if (!glyphs.isEmpty()) { @@ -1098,7 +1098,7 @@ void tst_QTextScriptEngine::controlInSyllable_qtbug14204() QFontEngine *fe = e->fontEngine(e->layoutData->items[0]); if (fe->type() == QFontEngine::Box) QSKIP("OpenType support missing for script"); - QCOMPARE(fe->fontDef.family, font.family()); + QCOMPARE(fe->fontDef.families.first(), font.family()); e->shape(0); QCOMPARE(e->layoutData->items[0].num_glyphs, ushort(3)); @@ -1156,7 +1156,7 @@ void tst_QTextScriptEngine::combiningMarks_qtbug15675() QFontEngine *fe = e->fontEngine(e->layoutData->items[0]); if (fe->type() == QFontEngine::Box) QSKIP("OpenType support missing for script"); - QCOMPARE(fe->fontDef.family, font.family()); + QCOMPARE(fe->fontDef.families.first(), font.family()); e->shape(0); const int diff = e->layoutData->items[0].num_glyphs - string.size(); @@ -1197,7 +1197,7 @@ void tst_QTextScriptEngine::thaiIsolatedSaraAm() QFontEngine *fe = e->fontEngine(e->layoutData->items[0]); if (fe->type() == QFontEngine::Box) QSKIP("OpenType support missing for script"); - QCOMPARE(fe->fontDef.family, font.family()); + QCOMPARE(fe->fontDef.families.first(), font.family()); e->shape(0); QVERIFY(e->layoutData->items[0].num_glyphs > 0); diff --git a/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp b/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp index 1f06c537c6..0d95102f66 100644 --- a/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp +++ b/tests/auto/widgets/widgets/qfontcombobox/tst_qfontcombobox.cpp @@ -91,7 +91,7 @@ void tst_QFontComboBox::currentFont_data() // Normalize the names QFont defaultFont; QFontInfo fi(defaultFont); - defaultFont = QFont(fi.family()); // make sure we have a real font name and not something like 'Sans Serif'. + defaultFont = QFont(QStringList{fi.family()}); // make sure we have a real font name and not something like 'Sans Serif'. if (!QFontDatabase::isPrivateFamily(defaultFont.family())) QTest::newRow("default") << defaultFont; defaultFont.setPointSize(defaultFont.pointSize() + 10); @@ -99,8 +99,8 @@ void tst_QFontComboBox::currentFont_data() QTest::newRow("default2") << defaultFont; QStringList list = QFontDatabase::families(); for (int i = 0; i < list.count(); ++i) { - QFont f = QFont(QFontInfo(QFont(list.at(i))).family()); - if (!QFontDatabase::isPrivateFamily(f.family())) + QFont f = QFont(QStringList{QFontInfo(QFont(list.at(i))).family()}); + if (!QFontDatabase::isPrivateFamily(f.families().first())) QTest::newRow(qPrintable(list.at(i))) << f; } } |