tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp
changeset 33 3e2da88830cd
parent 30 5dc02b23752f
child 37 758a864f9613
--- a/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp	Tue Jul 06 15:10:48 2010 +0300
+++ b/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp	Wed Aug 18 10:37:55 2010 +0300
@@ -55,6 +55,10 @@
 
 #include "../shared/testhttpserver.h"
 
+#ifdef Q_OS_SYMBIAN
+// In Symbian OS test data is located in applications private dir
+#define SRCDIR "."
+#endif
 
 #define SERVER_PORT 14451
 #define SERVER_ADDR "http://127.0.0.1:14451"
@@ -84,7 +88,6 @@
     void resized();
     void preserveAspectRatio();
     void smooth();
-    void pixmap();
     void svg();
     void big();
     void tiling_QTBUG_6716();
@@ -120,8 +123,8 @@
 void tst_qdeclarativeimage::imageSource_data()
 {
     QTest::addColumn<QString>("source");
-    QTest::addColumn<qreal>("width");
-    QTest::addColumn<qreal>("height");
+    QTest::addColumn<double>("width");
+    QTest::addColumn<double>("height");
     QTest::addColumn<bool>("remote");
     QTest::addColumn<bool>("async");
     QTest::addColumn<QString>("error");
@@ -133,6 +136,7 @@
     QTest::newRow("local async not found") << QUrl::fromLocalFile(SRCDIR "/data/no-such-file-1.png").toString() << 0.0 << 0.0 << false
         << true << "file::2:1: QML Image: Cannot open: " + QUrl::fromLocalFile(SRCDIR "/data/no-such-file-1.png").toString();
     QTest::newRow("remote") << SERVER_ADDR "/colors.png" << 120.0 << 120.0 << true << false << "";
+    QTest::newRow("remote redirected") << SERVER_ADDR "/oldcolors.png" << 120.0 << 120.0 << true << false << "";
     QTest::newRow("remote svg") << SERVER_ADDR "/heart.svg" << 550.0 << 500.0 << true << false << "";
     QTest::newRow("remote not found") << SERVER_ADDR "/no-such-file.png" << 0.0 << 0.0 << true
         << false << "file::2:1: QML Image: Error downloading " SERVER_ADDR "/no-such-file.png - server replied: Not found";
@@ -142,8 +146,8 @@
 void tst_qdeclarativeimage::imageSource()
 {
     QFETCH(QString, source);
-    QFETCH(qreal, width);
-    QFETCH(qreal, height);
+    QFETCH(double, width);
+    QFETCH(double, height);
     QFETCH(bool, remote);
     QFETCH(bool, async);
     QFETCH(QString, error);
@@ -152,6 +156,7 @@
     if (remote) {
         QVERIFY(server.isValid());
         server.serveDirectory(SRCDIR "/data");
+        server.addRedirect("oldcolors.png", SERVER_ADDR "/colors.png");
     }
 
     if (!error.isEmpty())
@@ -174,8 +179,8 @@
 
     if (error.isEmpty()) {
         TRY_WAIT(obj->status() == QDeclarativeImage::Ready);
-        QCOMPARE(obj->width(), width);
-        QCOMPARE(obj->height(), height);
+        QCOMPARE(obj->width(), qreal(width));
+        QCOMPARE(obj->height(), qreal(height));
         QCOMPARE(obj->fillMode(), QDeclarativeImage::Stretch);
         QCOMPARE(obj->progress(), 1.0);
     } else {
@@ -257,36 +262,6 @@
     delete obj;
 }
 
-void tst_qdeclarativeimage::pixmap()
-{
-    QString componentStr = "import Qt 4.7\nImage { pixmap: testPixmap }";
-
-    QPixmap pixmap;
-    QDeclarativeContext *ctxt = engine.rootContext();
-    ctxt->setContextProperty("testPixmap", pixmap);
-
-    QDeclarativeComponent component(&engine);
-    component.setData(componentStr.toLatin1(), QUrl::fromLocalFile(""));
-
-    QDeclarativeImage *obj = qobject_cast<QDeclarativeImage*>(component.create());
-    QVERIFY(obj != 0);
-    QCOMPARE(obj->source(), QUrl());
-    QVERIFY(obj->status() == QDeclarativeImage::Null);
-    QCOMPARE(obj->width(), 0.);
-    QCOMPARE(obj->height(), 0.);
-    QCOMPARE(obj->fillMode(), QDeclarativeImage::Stretch);
-    QCOMPARE(obj->progress(), 0.0);
-    QVERIFY(obj->pixmap().isNull());
-
-    pixmap = QPixmap(SRCDIR "/data/colors.png");
-    ctxt->setContextProperty("testPixmap", pixmap);
-    QCOMPARE(obj->width(), 120.);
-    QCOMPARE(obj->height(), 120.);
-    QVERIFY(obj->status() == QDeclarativeImage::Ready);
-
-    delete obj;
-}
-
 void tst_qdeclarativeimage::svg()
 {
     QString src = QUrl::fromLocalFile(SRCDIR "/data/heart.svg").toString();
@@ -303,6 +278,8 @@
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-mac.png"));
 #elif defined(Q_OS_WIN32)
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-win32.png"));
+#elif defined(QT_ARCH_ARM)
+    QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart-arm.png"));
 #else
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart.png"));
 #endif
@@ -317,6 +294,8 @@
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-mac.png"));
 #elif defined(Q_OS_WIN32)
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-win32.png"));
+#elif defined(QT_ARCH_ARM)
+    QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200-arm.png"));
 #else
     QCOMPARE(obj->pixmap(), QPixmap(SRCDIR "/data/heart200.png"));
 #endif