diff -r 33a5d2bbf6fc -r 73a1feb507fb mmsharing/livecommsui/lcuiengine/tsrc/ut_lcuieng/src/ut_lcactivitymanager.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mmsharing/livecommsui/lcuiengine/tsrc/ut_lcuieng/src/ut_lcactivitymanager.cpp Tue Aug 31 15:12:07 2010 +0300 @@ -0,0 +1,159 @@ +/* +* 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_lcactivitymanager.h" +#include "lcactivitymanager.h" +#include "centralrepository_stub_helper.h" +#include + +const int utDisplayTimeout = 10; + +////////////////////////////////////////////////////////////////////////////// +// Stub of User::InactivityTime() and User::ResetInactivityTime() +TTimeIntervalSeconds utInactivityInterval = 0; + +TTimeIntervalSeconds User::InactivityTime() +{ + return utInactivityInterval; +} + +void User::ResetInactivityTime() +{ + utInactivityInterval = 0; +} +////////////////////////////////////////////////////////////////////////////// + + + +void UT_LcActivityManager::initTestCase() +{ +} + +void UT_LcActivityManager::cleanupTestCase() +{ +} + + +void UT_LcActivityManager::init() +{ + CentralRepositoryStubHelper::reset(); + CentralRepositoryStubHelper::setCurrentVal(utDisplayTimeout); + mActivityManager = new LcActivityManager; +} + +void UT_LcActivityManager::cleanup() +{ + delete mActivityManager; +} + +void UT_LcActivityManager::testConstructor() +{ + // Inactivity timeout initialized with value from cenrep + QVERIFY( mActivityManager ); + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout == utDisplayTimeout - 2 ); + + // Fetching value from cenrep failed, timeout initialized with default value + delete mActivityManager; + mActivityManager = 0; + CentralRepositoryStubHelper::setFailCode(-1); + mActivityManager = new LcActivityManager; + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout == 5 ); //see lcDefaultInactivityTimeout + QVERIFY( mActivityManager->mInactivityTimeout != utDisplayTimeout - 2 ); +} + +void UT_LcActivityManager::testInitInactivityTimeout() +{ + // Creation of cenrep failed, timeout value not changed + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout == utDisplayTimeout - 2 ); + CentralRepositoryStubHelper::setFailCode(KErrNoMemory); + CentralRepositoryStubHelper::setCurrentVal(2); + QVERIFY( mActivityManager->initInactivityTimeout() == KErrNoMemory ); + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout + != CentralRepositoryStubHelper::currentVal() - 2 ); + QVERIFY( mActivityManager->mInactivityTimeout == utDisplayTimeout - 2 ); + + // Fetching value from cenrep failed + CentralRepositoryStubHelper::setFailCode(KErrNotFound); + CentralRepositoryStubHelper::setCurrentVal(3); + QVERIFY( mActivityManager->initInactivityTimeout() == KErrNotFound ); + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout + == CentralRepositoryStubHelper::currentVal() - 2 ); + + // Timeout initialized with cenrep value + CentralRepositoryStubHelper::reset(); + CentralRepositoryStubHelper::setCurrentVal(2); + QVERIFY( mActivityManager->initInactivityTimeout() == KErrNone ); + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( mActivityManager->mInactivityTimeout + == CentralRepositoryStubHelper::currentVal() ); +} + +void UT_LcActivityManager::testEnableActivitySimulation() +{ + // Starting activity simulation for the 1st time + QVERIFY( mActivityManager->mTimerId == -1 ); + mActivityManager->mInactivityTimeout = 5; + utInactivityInterval = 1; + QVERIFY( User::InactivityTime().Int() == 1 ); + mActivityManager->enableActivitySimulation(true); + QVERIFY( mActivityManager->mTimerId > 0 ); + QVERIFY( User::InactivityTime().Int() == 1 ); + + // Starting activity simulation again, user inactivity reached threshold + utInactivityInterval = mActivityManager->mInactivityTimeout = 5; + QVERIFY( User::InactivityTime().Int() == 5 ); + mActivityManager->enableActivitySimulation(true); + QVERIFY( mActivityManager->mTimerId > 0 ); + QVERIFY( User::InactivityTime().Int() == 0 ); + + // Disabling ongoing activity simulation + QVERIFY( mActivityManager->mTimerId > 0 ); + mActivityManager->enableActivitySimulation(false); + QVERIFY( mActivityManager->mTimerId == -1 ); + + // Disabling when no activity simulation running + QVERIFY( mActivityManager->mTimerId == -1 ); + mActivityManager->enableActivitySimulation(false); + QVERIFY( mActivityManager->mTimerId == -1 ); +} + +void UT_LcActivityManager::testIsActivitySimulationEnabled() +{ + QVERIFY( mActivityManager->mTimerId == -1 ); + QVERIFY( !mActivityManager->isActivitySimulationEnabled() ); + + mActivityManager->mTimerId = 1; + QVERIFY( mActivityManager->isActivitySimulationEnabled() ); +} + +void UT_LcActivityManager::testTimerEvent() +{ + // Time event for some other timer, nothing to do + mActivityManager->mTimerId = 10; + QTimerEvent dummyTimerEvent(5); + mActivityManager->timerEvent(&dummyTimerEvent); + QVERIFY( mActivityManager->mTimerId == 10 ); + + // Time event for inactivity timer, timer is restarted + QTimerEvent inactivityTimerEvent(mActivityManager->mTimerId); + mActivityManager->timerEvent(&inactivityTimerEvent); + QVERIFY( mActivityManager->mTimerId != 10 ); +}