From c07e1130d9fbfec2aeda2248341858b12a99fb93 Mon Sep 17 00:00:00 2001 From: Rohan McGovern Date: Mon, 1 Aug 2011 16:44:09 +1000 Subject: test: fixed failure of tst_qicon This test unconditionally assumed that SVG support was available. This is an invalid circular dependency: the test is in qtbase and depends on qtsvg, which depends on qtbase. Change the test so that it uses SVG support only if available. Change-Id: Ia63ce74abdecd4bcf7a4e0714b8cb7c488e17495 Reviewed-on: http://codereview.qt.nokia.com/2426 Reviewed-by: Qt Sanity Bot Reviewed-by: Sergio Ahumada --- tests/auto/qicon/tst_qicon.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'tests/auto/qicon/tst_qicon.cpp') diff --git a/tests/auto/qicon/tst_qicon.cpp b/tests/auto/qicon/tst_qicon.cpp index cd3f84f4b0..4c430f9435 100644 --- a/tests/auto/qicon/tst_qicon.cpp +++ b/tests/auto/qicon/tst_qicon.cpp @@ -41,7 +41,7 @@ #include - +#include #include #if defined(Q_OS_SYMBIAN) @@ -87,6 +87,8 @@ private slots: void task239461_custom_iconengine_crash(); private: + bool haveImageFormat(QByteArray const&); + QString oldCurrentDir; const static QIcon staticIcon; @@ -112,6 +114,11 @@ void tst_QIcon::cleanup() } } +bool tst_QIcon::haveImageFormat(QByteArray const& desiredFormat) +{ + return QImageReader::supportedImageFormats().contains(desiredFormat); +} + tst_QIcon::tst_QIcon() { } @@ -205,6 +212,10 @@ void tst_QIcon::actualSize2() void tst_QIcon::svgActualSize() { + if (!haveImageFormat("svg")) { + QSKIP("SVG support is not available", SkipAll); + } + const QString prefix = QLatin1String(SRCDIR) + QLatin1String("/"); QIcon icon(prefix + "rect.svg"); QCOMPARE(icon.actualSize(QSize(16, 16)), QSize(16, 2)); @@ -415,6 +426,9 @@ void tst_QIcon::detach() void tst_QIcon::svg() { + if (!haveImageFormat("svg")) { + QSKIP("SVG support is not available", SkipAll); + } QIcon icon1("heart.svg"); QVERIFY(!icon1.pixmap(32).isNull()); @@ -521,14 +535,14 @@ void tst_QIcon::availableSizes() QCOMPARE(availableSizes.at(0), QSize(16,16)); } - { + if (haveImageFormat("svg")) { // checks that there are no availableSizes for scalable images. QIcon icon("heart.svg"); QList availableSizes = icon.availableSizes(); QVERIFY(availableSizes.isEmpty()); } - { + if (haveImageFormat("svg")) { // even if an a scalable image contain added pixmaps, // availableSizes still should be empty. QIcon icon("heart.svg"); -- cgit v1.2.3