diff -r 890b5dd735f8 -r f15ac8e65a02 vtuis/lcvtindicatorplugin/tsrc/ut_lcvtindicatorplugin/src/ut_lcvtindicatorplugin.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vtuis/lcvtindicatorplugin/tsrc/ut_lcvtindicatorplugin/src/ut_lcvtindicatorplugin.cpp Tue Aug 31 15:16:10 2010 +0300 @@ -0,0 +1,170 @@ +/* +* Copyright (c) 2009 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: +* +*/ +#include "ut_lcvtindicatorplugin.h" +#include "lcvtindicatorplugin.h" +#include "qprocess.h" + +#include + +const static QString lcVtIndicator = "com.nokia.hb.indicator.lcvtindicatorplugin/1.0"; + + +void UT_LcVtIndicatorPlugin::initTestCase() +{ + +} + +void UT_LcVtIndicatorPlugin::cleanupTestCase() +{ +} + +void UT_LcVtIndicatorPlugin::init() +{ + mLcVtIndicatorPlugin = new LcVtIndicatorPlugin(); +} + +void UT_LcVtIndicatorPlugin::cleanup() +{ + delete mLcVtIndicatorPlugin; + mLcVtIndicatorPlugin = 0; +} + +void UT_LcVtIndicatorPlugin::testLcVtIndicatorPlugin() +{ + QVERIFY( mLcVtIndicatorPlugin ); +} + +void UT_LcVtIndicatorPlugin::testIndicatorTypes() +{ + QCOMPARE(mLcVtIndicatorPlugin->indicatorTypes()[0], lcVtIndicator); +} + +void UT_LcVtIndicatorPlugin::testAccessAllowed() +{ + QVERIFY( mLcVtIndicatorPlugin->accessAllowed(QString(), QVariantMap()) ); +} + +void UT_LcVtIndicatorPlugin::testCreateIndicator() +{ + mLcVtIndicatorPlugin->createIndicator(lcVtIndicator); +} + +void UT_LcVtIndicatorPlugin::testError() +{ + QVERIFY( !mLcVtIndicatorPlugin->error() ); +} + + +void UT_LcVtIndicatorPlugin::testHandleInteraction() +{ + QSignalSpy spy(mLcVtIndicatorPlugin, SIGNAL(deactivate())); + + //No interation requered + QVERIFY( !mLcVtIndicatorPlugin->handleInteraction( + HbIndicatorInterface::NoInteraction) ); + QCOMPARE( spy.count(), 0 ); + + //Indicator activated, no VT running => deactivating + QVERIFY( !mLcVtIndicatorPlugin->handleInteraction( + HbIndicatorInterface::InteractionActivated) ); + QCOMPARE( spy.count(), 1 ); + + //Indicator activated, VT running => bringing to FG + spy.clear(); + QVERIFY( mLcVtIndicatorPlugin->bringVtToForeground() ); + QVERIFY( QProcess::isRunning ); + QCOMPARE( spy.count(), 0 ); +} + +void UT_LcVtIndicatorPlugin::testIndicatorData() +{ + //No params defined + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::DecorationNameRole) == QVariant(QString()) ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::MonoDecorationNameRole) == QVariant(QString()) ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::PrimaryTextRole) == QVariant(QString()) ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::SecondaryTextRole) == QVariant() ); + //Non-existing param role + QVERIFY( mLcVtIndicatorPlugin->indicatorData(999) == QVariant() ); + + //Parameters defined + QVariantMap parameters; + parameters.insert( + QVariant(HbIndicatorInterface::DecorationNameRole).toString(), + QVariant("decoration") ); + parameters.insert( + QVariant(HbIndicatorInterface::MonoDecorationNameRole).toString(), + QVariant("mono_decoration") ); + parameters.insert( + QVariant(HbIndicatorInterface::PrimaryTextRole ).toString(), + QVariant("primary_text") ); + parameters.insert( + QVariant(HbIndicatorInterface::SecondaryTextRole ).toString(), + QVariant("secondary_text") ); + + mLcVtIndicatorPlugin->mParameter = parameters; + + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::DecorationNameRole) + == QVariant("decoration") ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::MonoDecorationNameRole) + == QVariant("mono_decoration") ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::PrimaryTextRole) + == QVariant("primary_text") ); + QVERIFY( mLcVtIndicatorPlugin->indicatorData( + HbIndicatorInterface::SecondaryTextRole) + == QVariant() ); +} + +void UT_LcVtIndicatorPlugin::testHandleClientRequest() +{ + QVariantMap parameters; + parameters.insert("key", QVariant("value")); + mLcVtIndicatorPlugin->mParameter = parameters; + QSignalSpy spy(mLcVtIndicatorPlugin, SIGNAL(dataChanged())); + + // Deactivate, params cleareds + QVERIFY( !mLcVtIndicatorPlugin->mParameter.isNull() ); + QVERIFY( !mLcVtIndicatorPlugin->handleClientRequest( + HbIndicatorInterface::RequestDeactivate, QVariant()) ); + QCOMPARE( spy.count(), 0 ); + QVERIFY( mLcVtIndicatorPlugin->mParameter.isNull() ); + + // Activate request, parameters changed + parameters.insert("key", QVariant("value")); + QVERIFY( mLcVtIndicatorPlugin->handleClientRequest( + HbIndicatorInterface::RequestActivate, QVariant(parameters)) ); + QCOMPARE( spy.count(), 1 ); + + // Activate request, parameters not changed + spy.clear(); + QVERIFY( mLcVtIndicatorPlugin->handleClientRequest( + HbIndicatorInterface::RequestActivate, QVariant(parameters)) ); + QCOMPARE( spy.count(), 0 ); +} + +void UT_LcVtIndicatorPlugin::testBringVtToForeground() +{ + QVERIFY( !mLcVtIndicatorPlugin->bringVtToForeground() ); + QVERIFY( QProcess::isRunning ); +} +