qthighway/tsrc/inc/testdata.h
branchRCL_3
changeset 9 5d007b20cfd0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qthighway/tsrc/inc/testdata.h	Tue Aug 31 16:02:37 2010 +0300
@@ -0,0 +1,341 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation, version 2.1 of the License.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not,
+* see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/".
+*
+* Description:
+*
+*/
+
+#ifndef TESTDATA_H_
+#define TESTDATA_H_
+
+#include <xqaiwinterfacedescriptor.h>
+#include <QString>
+#include <QStringList>
+#include <QHash>
+#include <QMultiHash>
+#include <xqappmgr.h>
+#include <QDebug>
+
+const QString IUriView = "com.nokia.symbian.IUriView"; 
+const QString IFileView = "com.nokia.symbian.IFileView";
+
+#ifdef __WINS__
+    const QString drive = "c";
+#else
+    const QString drive = "z";
+#endif
+
+typedef QHash<int, QVariant> FileDrm; 
+
+class InterfaceData
+{
+public:
+    InterfaceData(QString serviceName, QString interfaceName,int major, int minor):
+        mServiceName(serviceName), mInterfaceName(interfaceName), mMajor(major), mMinor(minor){}
+    
+    void addProperty(XQAiwInterfaceDescriptor::PropertyKey key, QVariant value)
+    {
+        mProperties[key] = value;
+    }
+    
+    void addCustomProperty(QString key, QString value)
+    {
+        mCustomProperties[key] = value;
+    }
+    
+    bool compare(const XQAiwInterfaceDescriptor& interface, QStringList& log)
+    {
+        if(mServiceName != interface.serviceName())
+        {
+            return false;
+        }
+        
+        if(mInterfaceName != interface.interfaceName())
+        {
+            return false;
+        }
+               
+        if(mMajor != interface.majorVersion())
+        {
+            return false;
+        }
+               
+        if(mMinor != interface.minorVersion())
+        {
+            return false;
+        }
+               
+        if(mProperties[XQAiwInterfaceDescriptor::Capabilities] != interface.property(XQAiwInterfaceDescriptor::Capabilities))
+        {
+            log << "[QTH] [Test_XQApplicationManager] different capabilities";
+            return false;
+        }
+               
+        if(mProperties[XQAiwInterfaceDescriptor::Location] != interface.property(XQAiwInterfaceDescriptor::Location))
+        {
+            log << "[QTH] [Test_XQApplicationManager] different location";
+            return false;
+        }
+               
+        if(mProperties[XQAiwInterfaceDescriptor::ServiceDescription] != interface.property(XQAiwInterfaceDescriptor::ServiceDescription))
+        {
+            log << "[QTH] [Test_XQApplicationManager] different service description";
+            return false;
+        }
+               
+        if(mProperties[XQAiwInterfaceDescriptor::InterfaceDescription] != interface.property(XQAiwInterfaceDescriptor::InterfaceDescription))
+        {
+            log << "[QTH] [Test_XQApplicationManager] different interface description";
+            return false;
+        }
+               
+        if(mProperties[XQAiwInterfaceDescriptor::ImplementationId] != interface.property(XQAiwInterfaceDescriptor::ImplementationId))
+        {
+            log << "[QTH] [Test_XQApplicationManager] different implementation ID";
+            return false;
+        }
+        
+        QStringList customPropKeys = interface.customPropertyKeys();
+        foreach(QString key, customPropKeys)
+        {
+            if(mCustomProperties[key] != interface.customProperty(key))
+            {
+                log << "[QTH] [Test_XQApplicationManager] different custom property:" 
+                         << key << " test value:" << mCustomProperties[key] << " system value:" << interface.customProperty(key);
+                return false;
+            }
+        }
+        
+        return true;
+    }
+           
+public:
+    QString mServiceName;
+    QString mInterfaceName;
+    QHash<XQAiwInterfaceDescriptor::PropertyKey, QVariant> mProperties;
+    QHash<QString, QString> mCustomProperties;
+    int mMajor;
+    int mMinor;
+};
+
+class TestData
+{
+public:
+    TestData()
+    {
+        // interfaces
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_1");
+            QString interfaceName("interface_1");
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xE42DF0E6)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+           
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_1");
+            QString interfaceName("interface_2");
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xE42DF0E6)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_1");
+            QString interfaceName("interface_3");
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface 3")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xE42DF0E6)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_1");
+            QString interfaceName(IUriView);
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface for showing URIs")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xE42DF0E6)));
+            interface->addCustomProperty("schemes","qhattestto");
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_1");
+            QString interfaceName(IFileView);
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface for showing Files")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xE42DF0E6)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+    
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_2");
+            QString interfaceName("interface_1");
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface 1")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xED698FE0)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_2");
+            QString interfaceName("interface_2");
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xED698FE0)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_2");
+            QString interfaceName(IUriView);
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface for showing URIs")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xED698FE0)));
+            interface->addCustomProperty("schemes","qhattestto");
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        {
+            QString serviceName("com.nokia.services.qthighway.test.service_2");
+            QString interfaceName(IFileView);
+            InterfaceData* interface = new InterfaceData(serviceName, interfaceName, 1, 0);
+            interface->addProperty(XQAiwInterfaceDescriptor::InterfaceDescription, QVariant(QString("Interface for showing Files")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ServiceDescription, QVariant(QString("QtHighway automatic tests server 2")));
+            interface->addProperty(XQAiwInterfaceDescriptor::Location, QVariant(QString("No path")));
+            interface->addProperty(XQAiwInterfaceDescriptor::ImplementationId, QVariant(int(0xED698FE0)));
+            services.insert(serviceName, interface);
+            interfaces.insert(interfaceName, interface);
+        }
+        
+        // DRM files
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(0);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("text/plain"));
+            
+            files[QString(drive + ":\\data\\Others\\test.txt")] = drm;
+            
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(1);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("audio/aac"));
+            
+            files[QString(drive + ":\\data\\Others\\111-test1.odf")] = drm;
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(0);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("image/jpeg"));
+            
+            files[QString(drive + ":\\data\\Others\\one.jpg")] = drm;
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(0);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("application/vnd.oma.drm.roap-trigger+xml"));
+            
+            files[QString(drive + ":\\data\\Others\\RoAcqoffer-111-aac-i15m.ort")] = drm;
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(1);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("audio/sp-midi"));
+            
+            files[QString(drive + ":\\data\\Others\\SD_Celebration_SP.dcf")] = drm;
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(1);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant();
+            drm[XQApplicationManager::MimeType] = QVariant(QString("image/jpeg"));
+            
+            files[QString(drive + ":\\data\\Others\\SD_jpg_sun.dcf")] = drm;
+        }
+        
+        {
+            FileDrm drm;
+            drm[XQApplicationManager::IsProtected] = QVariant(1);
+            drm[XQApplicationManager::IsForwardable] = QVariant(1);
+            drm[XQApplicationManager::Description] = QVariant(QString(""));
+            drm[XQApplicationManager::MimeType] = QVariant(QString("audio/x-ms-wma"));
+            
+            files[QString(drive + ":\\data\\Others\\STC1_128_44_16_2_CBR.wma")] = drm;
+        }
+            
+
+    }
+    
+    ~TestData()
+    {
+        foreach(InterfaceData* interface , interfaces.values())
+            delete interface;
+    }
+    
+public:
+    QMultiHash<QString, InterfaceData*> services;
+    QMultiHash<QString, InterfaceData*> interfaces;
+    QHash<QString, FileDrm> files;
+};
+
+TestData testData;
+
+#endif /* TESTDATA_H_ */