diff -r 73a1feb507fb -r bc78a40cd63c mmsharing/mmshengine/tsrc/ut_engine/src/ut_musengsessionmanager.cpp --- a/mmsharing/mmshengine/tsrc/ut_engine/src/ut_musengsessionmanager.cpp Tue Aug 31 15:12:07 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,293 +0,0 @@ -/* -* 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: -* -*/ - - -// INTERNAL INCLUDES -#include "musengstubs.h" -#include "ut_musengsessionmanager.h" -#include "musengsessionmanager.h" -#include "musengmcesession.h" -#include "musengmceoutsession.h" -#include "mussessionproperties.h" -#include "centralrepository.h" -#include "e32property.h" -#include "musengtestdefs.h" - -// SYSTEM INCLUDES -#include - - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -UT_CMusEngSessionManager* UT_CMusEngSessionManager::NewL() - { - UT_CMusEngSessionManager* self = UT_CMusEngSessionManager::NewLC(); - CleanupStack::Pop( self ); - return self; - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -UT_CMusEngSessionManager* UT_CMusEngSessionManager::NewLC() - { - UT_CMusEngSessionManager* self = new( ELeave )UT_CMusEngSessionManager(); - CleanupStack::PushL( self ); - self->ConstructL(); - return self; - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -UT_CMusEngSessionManager::~UT_CMusEngSessionManager() - { - // NOP - } - -// ----------------------------------------------------------------------------- -// Default constructor -// ----------------------------------------------------------------------------- -// -UT_CMusEngSessionManager::UT_CMusEngSessionManager() - { - } - -// ----------------------------------------------------------------------------- -// Second phase construct -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::ConstructL() - { - // The ConstructL from the base class CEUnitTestSuiteClass must be called. - // It generates the test case table. - CEUnitTestSuiteClass::ConstructL(); - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::SetupL() - { - User::LeaveIfError( - RProperty::Set( - NMusSessionApi::KCategoryUid, - NMusSessionApi::KUseCase, - MultimediaSharing::EMusLiveVideo ) ); - iSessionManager = CMusEngSessionManager::NewL(); - - iLcUiProvider = new( ELeave )CLcUiProviderStub; - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::Teardown() - { - delete iSessionManager; - delete iLcUiProvider; - // The Central Repository stub is using RProperty stub to store global data. - // The global data must be freed here. - PropertyHelper::Close(); - } - -// TEST CASES - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::UT_NewL() - { - EUNIT_ASSERT( iSessionManager->iSession != NULL ) - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::UT_SessionL() - { - EUNIT_ASSERT( iSessionManager->iSession == &( iSessionManager->Session() ) ) - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::UT_IsFeatureSupportedL() - { - EUNIT_ASSERT( - iSessionManager->IsFeatureSupported( CLcEngine::ELcShowAcceptQuery ) ) - - EUNIT_ASSERT( - iSessionManager->IsFeatureSupported( CLcEngine::ELcShowInvitingNote ) ) - - EUNIT_ASSERT( - iSessionManager->IsFeatureSupported( CLcEngine::ELcShowWaitingNote ) ) - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::UT_CreateMusSessionL() - { - CMusEngMceSession* session = NULL; - - // Live session - session = - iSessionManager->CreateMusSessionL( - MultimediaSharing::EMusLiveVideo ); - EUNIT_ASSERT( session != NULL ) - delete session; - - // Clip session - session = - iSessionManager->CreateMusSessionL( - MultimediaSharing::EMusClipVideo ); - EUNIT_ASSERT( session != NULL ) - delete session; - - // Receive session - session = - iSessionManager->CreateMusSessionL( - MultimediaSharing::EMusReceive ); - EUNIT_ASSERT( session != NULL ) - delete session; - - // Two way session - session = - iSessionManager->CreateMusSessionL( - MultimediaSharing::EMusTwoWayVideo ); - EUNIT_ASSERT( session != NULL ) - delete session; - - // Two way receive session - session = - iSessionManager->CreateMusSessionL( - MultimediaSharing::EMusReceiveTwoWayVideo ); - EUNIT_ASSERT( session != NULL ) - delete session; - - // Other session types - EUNIT_ASSERT_SPECIFIC_LEAVE( - iSessionManager->CreateMusSessionL( MultimediaSharing::EMusStillImage ), - KErrNotSupported ) - - EUNIT_ASSERT_SPECIFIC_LEAVE( - iSessionManager->CreateMusSessionL( MultimediaSharing::EMusContinue ), - KErrNotSupported ) - } - -// ----------------------------------------------------------------------------- -// -// ----------------------------------------------------------------------------- -// -void UT_CMusEngSessionManager::UT_PropertyChangedL() - { - iSessionManager->Session().SetLcUiProvider( iLcUiProvider ); - - // Background startup not active, property change ignored - MLcSession* origSession = &iSessionManager->Session(); - iSessionManager->PropertyChanged( - NMusSessionApi::KUseCase, MultimediaSharing::EMusReceiveTwoWayVideo ); - - EUNIT_ASSERT( origSession == &iSessionManager->Session() ); - EUNIT_ASSERT( iLcUiProvider->iCalledFunction != CLcUiProviderStub::EHandleForegroundStatus ); - - // Background startup active, usecase not changed, no effect - User::LeaveIfError( RProperty::Set( NMusSessionApi::KCategoryUid, - NMusSessionApi::KFastMode, - MusSettingsKeys::EFastModeOn ) ); - iSessionManager->iSession->iBackground = ETrue; - origSession = &iSessionManager->Session(); - iSessionManager->PropertyChanged( - NMusSessionApi::KUseCase, iSessionManager->iCurrentUseCase ); - - EUNIT_ASSERT( origSession == &iSessionManager->Session() ); - EUNIT_ASSERT( iLcUiProvider->iCalledFunction != CLcUiProviderStub::EHandleForegroundStatus ); - - // Background startup active, usecase changed, uiprovider informed and - // new session replaces old one - origSession = &iSessionManager->Session(); - iSessionManager->PropertyChanged( - NMusSessionApi::KUseCase, MultimediaSharing::EMusClipVideo ); - if ( origSession == &iSessionManager->Session() ) - { - // Couldn't create new session because running out of memory - User::Leave( KErrNoMemory ); - } - EUNIT_ASSERT( origSession != &iSessionManager->Session() ); - EUNIT_ASSERT( iLcUiProvider->iCalledFunction == CLcUiProviderStub::EHandleForegroundStatus ); - EUNIT_ASSERT( iLcUiProvider->iForeground ); - } - -// TEST TABLE - -EUNIT_BEGIN_TEST_TABLE( - UT_CMusEngSessionManager, - "UT_CMusEngSessionManager", - "UNIT" ) - -EUNIT_TEST( - "NewL - test ", - "CMusEngSessionManager", - "NewL", - "FUNCTIONALITY", - SetupL, UT_NewL, Teardown) - -EUNIT_TEST( - "Session - test ", - "CMusEngSessionManager", - "Session", - "FUNCTIONALITY", - SetupL, UT_SessionL, Teardown) - -EUNIT_TEST( - "IsFeatureSupported - test ", - "CMusEngSessionManager", - "IsFeatureSupported", - "FUNCTIONALITY", - SetupL, UT_IsFeatureSupportedL, Teardown) - -EUNIT_TEST( - "CreateMusSessionL - test ", - "CMusEngSessionManager", - "CreateMusSessionL", - "FUNCTIONALITY", - SetupL, UT_CreateMusSessionL, Teardown) - -EUNIT_TEST( - "PropertyChanged - test ", - "CMusEngSessionManager", - "PropertyChanged", - "FUNCTIONALITY", - SetupL, UT_PropertyChangedL, Teardown) - -EUNIT_END_TEST_TABLE - - -// END OF FILE - -