hswidgetmodel/tsrc/t_hswidgetmodelexe/src/testwidgetprovidermanifest.cpp
author Jaakko Haukipuro (Nokia-MS/Oulu) <Jaakko.Haukipuro@nokia.com>
Thu, 16 Sep 2010 12:11:40 +0100
changeset 117 c63ee96dbe5f
permissions -rw-r--r--
Missing activityfw and taskswitcher components - fix for Bug 3670

/*
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:  Tests for WidgetBase class.
*
*/


#include "testwidgetmodel.h"
#include "hswidgetprovidermanifest.h"
#include "hsiwidgetprovider.h"






void TestWidgetModel::testWidgetProviderManifest()
{
    
	HsWidgetProviderManifest manifest1;
    manifest1.loadFromXml("notfound.manifest");
	QVERIFY(manifest1.widgets().count() == 0);

    HsWidgetProviderManifest manifest2;
    manifest2.loadFromXml("notwellformedwidget.manifest");
	QVERIFY(manifest2.widgets().count() == 0);

	HsWidgetProviderManifest manifest3;
    manifest3.loadFromXml("invalidwidget.manifest");
	QVERIFY(manifest3.widgets().count() == 0);
   
    HsWidgetProviderManifest manifest4;
    manifest4.loadFromXml("validwidget.manifest");

    QVERIFY(manifest4.loadOnQuery() == false);
    QVERIFY(manifest4.widgets().count() > 0);
    QList<HsWidgetToken> widgets = manifest4.widgets();
    QCOMPARE(widgets.at(0).mLibrary, widgets.at(1).mLibrary);
    QVERIFY(widgets.at(0).mUri == "homescreen.nokia.com/widget/testwidget");

	HsWidgetProviderManifest manifest5;
    manifest5.loadFromXml("validwidget2.manifest");
    QVERIFY(manifest5.loadOnQuery() == true);
    QVERIFY(manifest5.widgets().count() > 0);
    QList<HsWidgetToken> widgets5 = manifest5.widgets();
    QVERIFY(widgets5.at(0).mLibrary == "testwidgetprovider.dll");
    QVERIFY(widgets5.at(0).mUri == "homescreen.nokia.com/widget/testwidget");
    
}

void TestWidgetModel::testWidgetManifests()
{
    HsWidgetProviderManifest manifest;
    manifest.loadFromXml("validwidget.manifest");
    QList<HsWidgetToken> widgets = manifest.widgets();
    QVERIFY(widgets.count() == 2);
}