diff -r b31261fd4e04 -r ccd8e69b5392 mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaSip.cpp --- a/mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaSip.cpp Tue Feb 02 00:09:07 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,478 +0,0 @@ -/* -* Copyright (c) 2004 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: -* -*/ - - -// CLASS HEADER -#include "sipprofile.h" -#include "UT_CMusAvaSip.h" -#include "muslogger.h" -#include "mussettings.inl" -#include "CSipSseTestTls.h" -#include "mussettingskeys.h" -#include "musavasipdefaulthandler.h" -#include "sipconnectionobserver.h" -#include "musavasipdefaulthandler.h" -#include "musavasipconnectionadapter.h" -#include "musavasettingsimp.h" -#include "musavaregisteravailability.h" -#include "musavasipprofileregistryobserver.h" -#include "musavacapabilitytesthelper.h" //remove compilation warning -#include "CSipSseTestTls.h" - -// EXTERNAL INCLUDES -#include -#include -//#include -#include -#include -#include -#include - - -// INTERNAL INCLUDES -#include "musavasip.h" - - - -// CONSTRUCTION -UT_CMusAvaSip* UT_CMusAvaSip::NewL() - { - UT_CMusAvaSip* self = UT_CMusAvaSip::NewLC(); - CleanupStack::Pop(); - - return self; - } - -UT_CMusAvaSip* UT_CMusAvaSip::NewLC() - { - UT_CMusAvaSip* self = new( ELeave ) UT_CMusAvaSip(); - CleanupStack::PushL( self ); - - self->ConstructL(); - - return self; - } - -// Destructor (virtual by CBase) -UT_CMusAvaSip::~UT_CMusAvaSip() - { - } - -// Default constructor -UT_CMusAvaSip::UT_CMusAvaSip() - { - } - -// Second phase construct -void UT_CMusAvaSip::ConstructL() - { - // The ConstructL from the base class CEUnitTestSuiteClass must be called. - // It generates the test case table. - CEUnitTestSuiteClass::ConstructL(); - } - -// METHODS - - - -void UT_CMusAvaSip::SetupL( ) - { - SIPStrings::OpenL(); - CSipSseTestTls::OpenL(); - iProfileId = MultimediaSharingSettings::SipProfileSettingL(); - iMusAvaSip = CMusAvaSip::NewL(); - } - -void UT_CMusAvaSip::Teardown( ) - { - delete iMusAvaSip; - iMusAvaSip = NULL; - MultimediaSharingSettings::SetSipProfileSettingL( iProfileId ); - CSipSseTestTls::Close(); - SIPStrings::Close(); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_NewLL( ) - { - EUNIT_ASSERT( iMusAvaSip->iSip ); - EUNIT_ASSERT( iMusAvaSip->iSipObserver ); - EUNIT_ASSERT( iMusAvaSip->iSipConnectionObserver ); - EUNIT_ASSERT( iMusAvaSip->iSipProfileRegistryObserver ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_AddAdapterLL() - { - CMusAvaSipDefaultHandler* defaultHandler - = new( ELeave ) CMusAvaSipDefaultHandler(); - CleanupStack::PushL( defaultHandler ); - iMusAvaSip->AddAdapterL( *defaultHandler ); - EUNIT_ASSERT( iMusAvaSip->iSipConnectionObserver ); - CleanupStack::PopAndDestroy( defaultHandler ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_RemoveAdapterL() - { - CMusAvaSipDefaultHandler* defaultHandler - = new( ELeave ) CMusAvaSipDefaultHandler(); - CleanupStack::PushL( defaultHandler ); - iMusAvaSip->AddAdapterL( *defaultHandler ); - EUNIT_ASSERT( iMusAvaSip->iSipConnectionObserver ); - iMusAvaSip->RemoveAdapter( *defaultHandler ); - // EUNIT_ASSERT( !iMusAvaSip->iSipConnectionObserver->iObservers.Count() ); - CleanupStack::PopAndDestroy( defaultHandler ); - } -void UT_CMusAvaSip::UT_CMusAvaSip_CreateProfileL() - { - // Test Profile - //No profile - TInt ret = NULL; - TRAPD( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - TInt count = 0; - EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count ); - if ( count > 0 && ret == KErrNone ) - { - User::Leave( KErrNoMemory ); - } - EUNIT_ASSERT ( ret ); - - // Test Profile - //Profile created - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - iMusAvaSip->iSipProfileRegistry = CSIPProfileRegistry::NewL( - *iMusAvaSip->iSip, - *iMusAvaSip->iSipProfileRegistryObserver ); - iMusAvaSip->iSipProfile = - iMusAvaSip->GetMusProfileL( *iMusAvaSip->iSipProfileRegistry ); - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( KErrNoMemory ); - EUNIT_ASSERT ( ret ); - - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - //Test sip profile registry - //No profile registry, registry creation fails - CSipSseTestTls::Storage()->iRegistryBehavior = KRegistryLeaveAtConstruct; - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( !ret ); - CSipSseTestTls::Storage()->Reset(); - - //Create sip profile registry - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - - iMusAvaSip->iSipProfileRegistry = CSIPProfileRegistry::NewL( - *iMusAvaSip->iSip, - *iMusAvaSip->iSipProfileRegistryObserver ); - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( ret ); - - //Test sip profile registry - //No profile registry, registry creation ok - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( ret ); - //Create sip profile registry - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - iMusAvaSip->iSipProfileRegistry = CSIPProfileRegistry::NewL( - *iMusAvaSip->iSip, - *iMusAvaSip->iSipProfileRegistryObserver ); - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( ret ); - // Test profile settings - // Resolve profile fail - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - // Profile found, profile id not found - CSipSseTestTls::Storage()->iProfileBehavior = KSIPProfileIdFetchFails; - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( ret ); - CSipSseTestTls::Storage()->Reset(); - - // Profile found, iap id not found - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - CSipSseTestTls::Storage()->iProfileBehavior = KSIPIapIdFetchFails; - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( !ret ); - CSipSseTestTls::Storage()->Reset(); - - // All ok - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - TRAP( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_ASSERT ( ret ); - - } - -void UT_CMusAvaSip::UT_CMusAvaSip_CreateSipProfileL() - { - // Test Profile - //No profile - TInt ret = NULL; - TRAPD( error, ret = iMusAvaSip->CreateSipProfile() ); - if ( error == KErrNoMemory ) User::Leave( error ); - TInt count = 0; - EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count ); - if ( count > 0 && ret == KErrNone ) - { - User::Leave( KErrNoMemory ); - } - EUNIT_ASSERT ( ret ); - // Test Profile - //Profile created - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - iMusAvaSip->iSipProfileRegistry = CSIPProfileRegistry::NewL( - *iMusAvaSip->iSip, - *iMusAvaSip->iSipProfileRegistryObserver ); - iMusAvaSip->iSipProfile = - iMusAvaSip->GetMusProfileL( *iMusAvaSip->iSipProfileRegistry ); - TRAP( error, ret = iMusAvaSip->CreateSipProfile() ); - if ( error == KErrNoMemory ) User::Leave( error ); - EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count ); - if ( count > 0 && ret == KErrNone ) - { - User::Leave( KErrNoMemory ); - } - EUNIT_ASSERT ( ret ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_ProfileL() - { - //No profile - EUNIT_ASSERT( iMusAvaSip->Profile() == NULL ); - //Profile created - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - EUNIT_ASSERT( iMusAvaSip->CreateProfileL()); - EUNIT_ASSERT( iMusAvaSip->Profile() != NULL ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_ProfileRegistryL() - { - //Create SIP Profile Registry - CSIPProfileRegistry* registry = &iMusAvaSip->ProfileRegistryL(); - EUNIT_ASSERT( registry != NULL ); - //SIP Profile Registry is created - registry = &iMusAvaSip->ProfileRegistryL(); - EUNIT_ASSERT( registry != NULL ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_ConnectionL() - { - //No connection - EUNIT_ASSERT( iMusAvaSip->iSipConnection == NULL ); - //Connection is created when SIP profile is created - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - EUNIT_ASSERT( iMusAvaSip->CreateProfileL() ); - - //Still no connection - EUNIT_ASSERT( iMusAvaSip->iSipConnection == NULL ); - - TRAPD( err, iMusAvaSip->ConnectionL( EFalse ) ); - EUNIT_ASSERT( err == KErrSIPInvalidRegistrationState ); - - // Forced creation (done normally when profile is registered). - EUNIT_ASSERT( iMusAvaSip->ConnectionL() != NULL ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_ConnectionObserverL() - { - MSIPConnectionObserver& con = iMusAvaSip->ConnectionObserver(); - EUNIT_ASSERT( &con != NULL ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_SipL() - { - CSIP& sip = iMusAvaSip->Sip(); - EUNIT_ASSERT( &sip != NULL ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_CreateSIPConnectionLL() - { - TUint32 iapId; - //Profile created - delete iMusAvaSip; - iMusAvaSip = NULL; - iMusAvaSip = CMusAvaSip::NewL(); - MultimediaSharingSettings::SetSipProfileSettingL( 0 ); - iMusAvaSip->CreateSipProfile(); - iMusAvaSip->Profile()->GetParameter( KSIPAccessPointId, iapId ); - iMusAvaSip->iIapId = iapId; - iMusAvaSip->CreateSIPConnectionL(); - EUNIT_ASSERT( iMusAvaSip->ConnectionL( EFalse )->IapId() == iapId ); - } - -void UT_CMusAvaSip::UT_CMusAvaSip_OwnDomainL() - { - // Profile does not exist - HBufC* ownDomain = iMusAvaSip->OwnDomainLC(); - EUNIT_ASSERT( ownDomain->Length() == 0 ); - CleanupStack::PopAndDestroy( ownDomain ); - ownDomain = NULL; - - // Profile exists, no aors - MultimediaSharingSettings::SetSipProfileSettingL( 1 ); - TInt ret = NULL; - TRAPD( error, ret = iMusAvaSip->CreateProfileL() ); - if ( error == KErrNoMemory ) User::Leave( error ); - TInt count = 0; - EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count ); - if ( count > 0 && ret == KErrNone ) - { - User::Leave( KErrNoMemory ); - } - EUNIT_ASSERT ( ret ); - ownDomain = iMusAvaSip->OwnDomainLC(); - EUNIT_ASSERT( ownDomain->Length() == 0 ); - CleanupStack::PopAndDestroy( ownDomain ); - ownDomain = NULL; - - // Empty aors - CSIPProfile* profile = iMusAvaSip->Profile(); - delete profile->iArray; - profile->iArray = NULL; - profile->iArray = new ( ELeave ) CDesC8ArrayFlat( 1 ); - ownDomain = iMusAvaSip->OwnDomainLC(); - EUNIT_ASSERT( ownDomain->Length() == 0 ); - CleanupStack::PopAndDestroy( ownDomain ); - ownDomain = NULL; - - // Aors found - profile->iArray->AppendL( _L8("sip:user@domain.com") ); - ownDomain = iMusAvaSip->OwnDomainLC(); - EUNIT_ASSERT( ownDomain->Length() > 0 ); - CleanupStack::PopAndDestroy( ownDomain ); - } - -// TEST TABLE - -EUNIT_BEGIN_TEST_TABLE( - UT_CMusAvaSip, - "CMusAvaSip.", - "UNIT" ) - -EUNIT_TEST( - "NewL - test ", - "CMusAvaSip", - "NewL", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_NewLL, Teardown) - -EUNIT_TEST( - "AddAdapterL - test ", - "CMusAvaSip", - "AddAdapterL", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_AddAdapterLL, Teardown) - -EUNIT_TEST( - "RemoveAdapter - test ", - "CMusAvaSip", - "RemoveAdapter", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_RemoveAdapterL, Teardown) - - -EUNIT_TEST( - "CreateProfile - test ", - "CMusAvaSip", - "CreateProfile", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_CreateProfileL, Teardown) - -EUNIT_TEST( - "CreateSipProfile - test ", - "CMusAvaSip", - "CreateSipProfile", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_CreateSipProfileL, Teardown) - - -EUNIT_TEST( - "ProfileL - test ", - "CMusAvaSip", - "ProfileL", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_ProfileL, Teardown) - -EUNIT_TEST( - "ProfileRegistry - test ", - "CMusAvaSip", - "ProfileRegistry", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_ProfileRegistryL, Teardown) - - EUNIT_TEST( - "Connection - test ", - "CMusAvaSip", - "Connection", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_ConnectionL, Teardown) - -EUNIT_TEST( - "ConnectionObserver - test ", - "CMusAvaSip", - "ConnectionObserver", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_ConnectionObserverL, Teardown) - -EUNIT_TEST( - "Sip - test ", - "CMusAvaSip", - "Sip", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_SipL, Teardown) - -EUNIT_TEST( - "CreateSIPConnectionL - test ", - "CMusAvaSip", - "CreateSIPConnectionL", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_CreateSIPConnectionLL, Teardown) - -EUNIT_TEST( - "OwnDomainLC - test ", - "CMusAvaSip", - "OwnDomainLC", - "FUNCTIONALITY", - SetupL, UT_CMusAvaSip_OwnDomainL, Teardown) - -EUNIT_END_TEST_TABLE - -// END OF FILE