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 <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
This commit is contained in:
Rohan McGovern 2011-08-01 16:44:09 +10:00 committed by Qt by Nokia
parent 569cd194d2
commit c07e1130d9
2 changed files with 17 additions and 5 deletions

View File

@ -27,5 +27,3 @@ wince* {
} else {
DEFINES += SRCDIR=\\\"$$PWD\\\"
}
CONFIG+=insignificant_test

View File

@ -41,7 +41,7 @@
#include <QtTest/QtTest>
#include <QImageReader>
#include <qicon.h>
#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<QSize> 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");