--- a/mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaContactAvailability.cpp Thu Aug 19 09:51:39 2010 +0300
+++ b/mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaContactAvailability.cpp Tue Aug 31 15:12:07 2010 +0300
@@ -30,13 +30,8 @@
// EXTERNAL INCLUDES
#include <digia/eunit/eunitmacros.h>
-#include <CPbkContactItem.h>
-#include <CPbkContactEngine.h>
-#include <CPbkFieldInfo.h>
#include <cntfldst.h>
#include <cntfield.h>
-#include <PbkFields.hrh>
-#include <CPbkFieldsInfo.h>
#include <cntfilt.h>
#include <digia/eunit/eunitdecorators.h>
@@ -52,7 +47,6 @@
_LIT(KLastName,"Meikalainen");
_LIT(KFirstLastName,"Matti Meikalainen");
_LIT(KLastFirstName,"Meikalainen Matti");
-_LIT( KTelNumber, "12345" );
// CONSTRUCTION
UT_CMusAvaContactAvailability* UT_CMusAvaContactAvailability::NewL()
@@ -180,73 +174,11 @@
void UT_CMusAvaContactAvailability::UT_CMusAvaController_DoExecuteL1_L()
{
- CContactIdArray* contactIdArray = NULL;
- CPbkContactItem* contactItem = NULL;
- CPbkContactItem* contactItemTmp = NULL;
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- //contact
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- TRAPD( error, iContactAvailability->DoExecuteL() );
- if ( error == KErrNoMemory ) User::Leave( error );
- TInt count;
- EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
- if ( count > 0 && error != KErrNone )
- {
- User::Leave( KErrNoMemory );
- }
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_DoExecuteL2_L()
{
- CContactIdArray* contactIdArray = NULL;
- CPbkContactItem* contactItem = NULL;
- CPbkContactItem* contactItemTmp = NULL;
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- CContactTextField* urlAtSignField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdSIPID );
- if ( urlAtSignField )
- {
- urlAtSignField->SetTextL( _L("sip:test@10.21.30.50") );
- }
- else
- {
- EUNIT_ASSERT( !urlAtSignField );
- }
- EUNIT_ENABLE_ALLOC_DECORATOR;
iConcreteSettings->SetTelNumberL( KPlusNumber );
@@ -269,20 +201,35 @@
{
User::Leave( KErrNoMemory );
}
+ }
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- }
-void UT_CMusAvaContactAvailability::UT_CMusAvaController_CallConnectedLL()
+void UT_CMusAvaContactAvailability::UT_CMusAvaController_DoExecuteL3_L()
{
- TRAPD( error, iContactAvailability->CallConnectedL( KTelNumber ) );
- if ( error == KErrNone )
- {
- EUNIT_ASSERT_EQUALS( iContactAvailability->State(),
- MMusAvaObserver::EMusAvaStatusAvailable );
- EUNIT_ASSERT_EQUALS( iConcreteSettings->TelNumber(), KTelNumber );
- }
+ iConcreteSettings->SetTelNumberL( KPlusNumber );
+
+ TRAPD( error, iContactAvailability->DoExecuteL() );
+ EUNIT_ASSERT( error == KErrNoMemory || error == KErrNone );
+ if ( error == KErrNoMemory ) User::Leave( error );
+ TInt count;
+ EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
+ if ( count > 0 && error != KErrNone )
+ {
+ User::Leave( KErrNoMemory );
+ }
+
+ iConcreteSettings->SetTelNumberL( KPlusNumber );
+
+ TRAP( error, iContactAvailability->DoExecuteL() );
+ if ( error == KErrNoMemory ) User::Leave( error );
+ EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
+ if ( count > 0 && error != KErrNone )
+ {
+ User::Leave( KErrNoMemory );
+ }
+
}
+
+
void UT_CMusAvaContactAvailability::UT_CMusAvaController_NameL()
{
EUNIT_ASSERT( iContactAvailability->Name() == MMusAvaObserver::EMusAvaNameContactStatus );
@@ -349,1138 +296,52 @@
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ContactLL()
{
- CContactIdArray* contactIdArray = NULL;
- CPbkContactItem* contactItem = NULL;
+ }
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- EUNIT_ENABLE_ALLOC_DECORATOR;
- CleanupStack::PushL( contactEngine );
-
- // Non cont or phone number added to contact DB
- TBool ret;
- TRAPD( error, ret = iContactAvailability->ContactL( contactIdArray, *contactEngine ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( !ret );
- EUNIT_ASSERT( contactIdArray == NULL );
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- //contact
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber );
-
- TRAP( error, ret = iContactAvailability->ContactL( contactIdArray, *contactEngine ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( ret );
- EUNIT_ASSERT( contactIdArray != NULL );
-
- delete contactIdArray;
- contactIdArray = NULL;
-
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
-
- }
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ContactArrayLL()
{
- CContactIdArray* array = NULL;
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* pbkContactEngine = CPbkContactEngine::NewL();
- EUNIT_ENABLE_ALLOC_DECORATOR;
- CleanupStack::PushL( pbkContactEngine );
-
- //No number found
- TInt ret = NULL;
- TRAPD( error, ret = iContactAvailability->ContactArrayL( array,
- *pbkContactEngine ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( ret == KErrNotFound );
- EUNIT_ASSERT( array == NULL );
- //Number length 0
- iConcreteSettings->SetTelNumberL( _L("") );
- TRAP( error, ret = iContactAvailability->ContactArrayL( array,
- *pbkContactEngine ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( ret == KErrNotFound );
- EUNIT_ASSERT( array == NULL );
- //Number found
- iConcreteSettings->SetTelNumberL( KNumber );
- TRAP( error, ret = iContactAvailability->ContactArrayL( array,
- *pbkContactEngine ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( ret == KErrNone );
- EUNIT_ASSERT( array != NULL );
- EUNIT_ASSERT( array->Count() > 0 );
+ }
- CleanupStack::PopAndDestroy( pbkContactEngine );
-
- delete array;
- array = NULL;
- }
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ContactItemL()
{
- CPbkContactItem* tmpItem = NULL;
- CContactIdArray* tmpContactIdArray = NULL;
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- CPbkContactItem* contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- // CContactIdArray == 0
- //tmpContactIdArray = CContactIdArray::NewLC();
- //EUNIT_ASSERT_EQUALS( KErrNotFound, iContactAvailability->ContactItem(
- //*tmpContactIdArray, tmpItem ) );
- //CleanupStack::PopAndDestroy( );
-
-
- // CContactIdArray > 0
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
- contactEngine->AddNewContactL( *contactItem );
+ }
- CContactDatabase* contactDatabase = CContactDatabase::OpenL();
- CleanupStack::PushL( contactDatabase );
- CCntFilter* newFilter = CCntFilter::NewL();
- CleanupStack::PushL( newFilter );
- newFilter->Reset();
- newFilter->SetContactFilterTypeALL( ETrue );
- contactDatabase->FilterDatabaseL( *newFilter );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- //CContactIdArray* tmpaArray = newFilter->iIds;
- //Item found
-
- TInt err = iContactAvailability->ContactItem( *( newFilter->iIds ), tmpItem, *contactEngine );
- // NOTE: Multiple contact id's could be in database and KErrNotSupported is
- // returned if more than one. Maybe first run could get result KErrNone and
- // then KErrNotSupported
- EUNIT_ASSERT( ( KErrNotSupported == err ) || ( KErrNone == err ) );
-
- //EUNIT_ASSERT( tmpItem != NULL );
- //delete tmpaArray;
- //contactDatabase->CommitContactL( *tmpItem );
- delete tmpItem;
- //tmpItem = NULL;
- //End test
-
- CleanupStack::PopAndDestroy( newFilter );
-
- contactDatabase->CloseTables();
-
- CleanupStack::PopAndDestroy( contactDatabase );
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
-
-
-
- }
void UT_CMusAvaContactAvailability::UT_CMusAvaController_PhoneResulutionLL()
{
- CDesCArrayFlat* array = new ( ELeave ) CDesCArrayFlat( 10 );
- CleanupStack::PushL( array );
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
- CPbkContactItem* contactItem = contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- //No prefix
- contactItem->RemoveDefaultPhoneNumberField();
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iConcreteSettings->SetTelNumberL( KNumber );
- TBool ret;
- TRAPD( error, ret = iContactAvailability->PhoneResolutionL( *contactItem, array ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( !ret );
-
- EUNIT_ASSERT( array->MdcaCount() == 0);
-
- //Prefix
- iConcreteSettings->SetTelNumberL( KPlusNumber );
-
- TRAP( error, ret = iContactAvailability->PhoneResolutionL( *contactItem, array ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( ret );
- EUNIT_ASSERT( array->MdcaCount() > 0 );
- //remove object from the array
- array->Reset();
-
- ///Number plan is in national mode
- EUNIT_DISABLE_ALLOC_DECORATOR;
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KNumber() );
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->ReleseTelNumberL();
- TRAP( error, ret = iContactAvailability->PhoneResolutionL( *contactItem, array ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( !ret );
- EUNIT_ASSERT( array->MdcaCount() == 0 );
-
-
- //Number plan is in internatiolan mode
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem->RemoveDefaultPhoneNumberField();
- fieldMobile = contactItem->FindField( EPbkFieldIdPhoneNumberMobile );
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iConcreteSettings->ReleseTelNumberL();
- TRAP( error, ret = iContactAvailability->PhoneResolutionL( *contactItem, array ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( ret );
- EUNIT_ASSERT( array->MdcaCount() > 0 );
-
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- CleanupStack::PopAndDestroy( array );
}
-
-
-
-
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ContactIdL()
{
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- CPbkContactItem* contactItem = NULL;
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- TRAP_IGNORE( contactItem = contactEngine->ReadContactL( 1 ) );
- delete contactItem;
-
- contactItem = contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- //Contact field not created
- EUNIT_ASSERT( !iContactAvailability->ContactId( *contactItem, EPbkFieldIdSIPID ) );
-
- //Contact URi not defined
- CContactTextField* urlFieldNotDefined =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdShareView );
- if ( urlFieldNotDefined )
- {
- urlFieldNotDefined->SetTextL( _L("sip:10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlFieldNotDefined );
- }
-
- EUNIT_ASSERT( !iContactAvailability->ContactId( *contactItem, EPbkFieldIdShareView ) );
-
- //Contact field not found
- CContactTextField* urlField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdShareView );
- if ( urlField )
- {
- urlField->SetTextL( _L("test@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlField );
- }
-
- EUNIT_ASSERT( !iContactAvailability->ContactId( *contactItem, EPbkFieldIdSIPID ) );
-
- //Contact field found
- EUNIT_ASSERT( iContactAvailability->ContactId( *contactItem, EPbkFieldIdShareView ) );
-
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ContactIdSearchL()
{
- CPbkContactItem* contactItem = NULL;
- CContactIdArray* contactIdArray = NULL;
- CContactTextField* phoneNumberMobiled = NULL;
- CContactTextField* country = NULL;
- CContactTextField* urlFieldNotDefined = NULL;
- CPbkContactEngine* contactEngine = NULL;
-
-
- //No contact //////////////////////////////////////////////////////////////
- //General info
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- //Clear contacts
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
- CleanupStack::PushL( contactIdArray );
- contactEngine->DeleteContactsL( *contactIdArray );
-
- CleanupStack::PopAndDestroy( contactIdArray );
-
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- TRAP_IGNORE( contactItem = contactEngine->ReadContactL( 1 ) );
- delete contactItem;
-
- AddToMyContact( *contactEngine,
- KNumber(),
- EPbkFieldIdPhoneNumberMobile,
- _L("nokia"),
- EPbkFieldIdCompanyName );
-
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
- CleanupStack::PushL( contactIdArray );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- EUNIT_ASSERT(
- iContactAvailability->ContactIdSearch( *contactIdArray, *contactEngine ) ==
- EPbkFieldIdNone );
-
- contactEngine->DeleteContactsL( *contactIdArray );
- CleanupStack::PopAndDestroy( contactIdArray );
-
- // Field Phone number general found /////////////////////////////////////////////////////////
-
- //Clear contacts
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
- CleanupStack::PushL( contactIdArray );
- contactEngine->DeleteContactsL( *contactIdArray );
-
- CleanupStack::PopAndDestroy( contactIdArray );
-
- AddToMyContact( *contactEngine,
- KNumber(),
- EPbkFieldIdPhoneNumberMobile,
- _L("+35805123456789"),
- EPbkFieldIdPhoneNumberGeneral );
-
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
-
- CleanupStack::PushL( contactIdArray );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- EUNIT_ASSERT(
- iContactAvailability->ContactIdSearch( *contactIdArray, *contactEngine ) ==
- EPbkFieldIdNone );
- //EUNIT_ASSERT( ret == EPbkFieldIdPhoneNumberGeneral );
- contactEngine->DeleteContactsL( *contactIdArray );
- CleanupStack::PopAndDestroy( contactIdArray );
-
- // Field SIP id found /////////////////////////////////////////////////////////
-
- //Clear contacts
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
- CleanupStack::PushL( contactIdArray );
- contactEngine->DeleteContactsL( *contactIdArray );
-
- CleanupStack::PopAndDestroy( contactIdArray );
-
- AddToMyContact( *contactEngine,
- KNumber(),
- EPbkFieldIdPhoneNumberMobile,
- _L("test@10.21.32.51"),
- EPbkFieldIdSIPID );
-
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
-
- CleanupStack::PushL( contactIdArray );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- TPbkFieldId ret = iContactAvailability->ContactIdSearch( *contactIdArray, *contactEngine );
- if ( ret == EPbkFieldIdNone )
- {
- User::Leave( KErrNoMemory );
- }
- EUNIT_ASSERT( ret == EPbkFieldIdSIPID );
- contactEngine->DeleteContactsL( *contactIdArray );
- CleanupStack::PopAndDestroy( contactIdArray );
-
- // Share View found
- //Clear contacts
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
- CleanupStack::PushL( contactIdArray );
- contactEngine->DeleteContactsL( *contactIdArray );
-
- CleanupStack::PopAndDestroy( contactIdArray );
-
- AddToMyContact( *contactEngine,
- KNumber(),
- EPbkFieldIdPhoneNumberMobile,
- _L("test@10.21.32.51"),
- EPbkFieldIdShareView );
-
- contactIdArray = contactEngine->MatchPhoneNumberL(
- KNumber(),
- KNumberMatchingDigitsRequired );
-
- CleanupStack::PushL( contactIdArray );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- ret = iContactAvailability->ContactIdSearch( *contactIdArray, *contactEngine );
- if ( ret == EPbkFieldIdNone )
- {
- User::Leave( KErrNoMemory );
- }
- EUNIT_ASSERT( ret == EPbkFieldIdShareView );
-
- contactEngine->DeleteContactsL( *contactIdArray );
- CleanupStack::PopAndDestroy( contactIdArray );
- CleanupStack::PopAndDestroy( contactEngine );
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ResolveAddressesLL()
{
- CDesCArrayFlat* array = new ( ELeave ) CDesCArrayFlat( 10 );
- CleanupStack::PushL( array );
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- CPbkContactItem* contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- //Test cases
- //Sip Uri without At sign
- CContactTextField* urlSipField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdSIPID );
-
-
- if ( urlSipField )
- {
- urlSipField->SetTextL( _L("sip:10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlSipField );
- }
-
- TBool ret;
- TRAPD( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdSIPID ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( !ret );
- EUNIT_ASSERT( array->Count() == 0 );
-
-
- //Undefined Uri
- CContactTextField* urlUndefinedField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdPushToTalk );
- if ( urlUndefinedField )
- {
- urlUndefinedField->SetTextL( _L("test@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlUndefinedField );
- }
- contactEngine->AddNewContactL( *contactItem );
- TRAP( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdSIPID ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( !ret );
-
- EUNIT_ASSERT( array->Count() == 0 );
-
- //Sip Uri
- CContactTextField* urlAtSignField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdSIPID );
- if ( urlAtSignField )
- {
- urlAtSignField->SetTextL( _L("sip:test@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlAtSignField );
- }
- contactEngine->AddNewContactL( *contactItem );
- TRAP( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdSIPID ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( ret );
- EUNIT_ASSERT( array->Count() > 0 );
-
- //Clear array
- array->Reset();
-
- //ShareView Uri
- CContactTextField* urlShareViewField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdShareView );
- if ( urlShareViewField )
- {
- urlShareViewField->SetTextL( _L("test@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlShareViewField );
- }
-
- TRAP( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdShareView ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( ret );
- EUNIT_ASSERT( array != NULL );
- EUNIT_ASSERT( array->Count() > 0 );
- array->Reset();
-
-
- //End test
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- CleanupStack::PopAndDestroy( array );
-
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ResolveAddressesLOpSpecificL()
{
- CDesCArrayFlat* array = new ( ELeave ) CDesCArrayFlat( 10 );
- CleanupStack::PushL( array );
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- CPbkContactItem* contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- //Test cases
- //Sip Uri without test string
- CContactTextField* urlAtSignField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdSIPID );
- if ( urlAtSignField )
- {
- urlAtSignField->SetTextL( _L("sip:test@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlAtSignField );
- }
- contactEngine->AddNewContactL( *contactItem );
- TBool ret;
- TRAPD( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdSIPID ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( !ret );
- EUNIT_ASSERT_EQUALS( array->Count(), 0 );
-
- //Clear array
- array->Reset();
-
- //Sip Uri with test string (*#)
- urlAtSignField =
- EditableContactFieldL( *contactEngine, *contactItem, EPbkFieldIdSIPID );
- if ( urlAtSignField )
- {
- urlAtSignField->SetTextL( _L("sip:test*#@10.21.32.51") );
- }
- else
- {
- EUNIT_ASSERT( !urlAtSignField );
- }
- contactEngine->AddNewContactL( *contactItem );
- TRAP( error, ret = iContactAvailability->ResolveAddressesL( *contactItem,
- array,
- EPbkFieldIdSIPID ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT ( ret );
- EUNIT_ASSERT( array->Count() > 0 );
-
- //Clear array
- array->Reset();
-
- //End test
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- CleanupStack::PopAndDestroy( array );
-
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ResolvePhoneContactLL()
{
- CDesCArrayFlat* array = new ( ELeave ) CDesCArrayFlat( 10 );
- CleanupStack::PushL( array );
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- CPbkContactItem* contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
- ///Number plan is in national mode
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("0401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->MdcaCount() == 0 );
- //Number plan is in internatiolan mode
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem->RemoveDefaultPhoneNumberField();
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("+358401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->MdcaCount() > 0 );
- array->Reset();
-
- //tel uri
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem->RemoveDefaultPhoneNumberField();
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("tel:+358401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->Count() == 0 );
-
- //End test
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- CleanupStack::PopAndDestroy( array );
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_ResolvePhoneContactLOpSpecificL()
{
- CDesCArrayFlat* array = new ( ELeave ) CDesCArrayFlat( 10 );
- CleanupStack::PushL( array );
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- CPbkContactItem* contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
- ///Number plan is in national mode
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("0401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->MdcaCount() > 0 );
- //Number plan is in internatiolan mode
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem->RemoveDefaultPhoneNumberField();
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("+358401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->MdcaCount() > 0 );
- array->Reset();
-
- //tel uri
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem->RemoveDefaultPhoneNumberField();
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL(_L("tel:+358401234567"));
- EUNIT_ENABLE_ALLOC_DECORATOR;
- iContactAvailability->ResolvePhoneContactL( *contactItem, array );
- EUNIT_ASSERT( array->Count() > 0 );
-
- //End test
- CleanupStack::PopAndDestroy( contactItem );
- CleanupStack::PopAndDestroy( contactEngine );
- CleanupStack::PopAndDestroy( array );
- }
-
-CContactTextField* UT_CMusAvaContactAvailability::EditableContactFieldL(
- CPbkContactEngine& aContactEngine,
- CPbkContactItem& aContact,
- TPbkFieldId aFieldId )
- {
- /* CContactDatabase* contactDatabase = NULL;
- contactDatabase = CContactDatabase::OpenL();
- CleanupStack::PushL( contactDatabase );
- CCntFilter* newFilter = CCntFilter::NewLC();
- newFilter->Reset();
- newFilter->SetContactFilterTypeALL( ETrue );
- contactDatabase->FilterDatabaseL( *newFilter );
-
- CContactIdArray* contactsId = newFilter->iIds;
- if ( contactsId->Count() )
- {
- aContactEngine.DeleteContactsL( *contactsId );
- }
- //contactDatabase->CommitContactL():
-
- CleanupStack::PopAndDestroy( 2 );
- CleanupStack::PopAndDestroy( contactDatabase );*/
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- const CPbkFieldsInfo& fieldsInfo = aContactEngine.FieldsInfo();
- // Try to get the SIP URI storage field for this contact
- TPbkContactItemField* itemField = aContact.FindField( aFieldId );
-
- if ( !itemField )
- {
- CPbkFieldInfo* fieldInfo = fieldsInfo.Find( aFieldId );
- // Add field to this contact
- if ( fieldInfo )
- {
- CleanupStack::PushL( fieldInfo );
- // Contact takes ownership of the field.
- aContact.AddFieldL( *fieldInfo );
- CleanupStack::Pop( fieldInfo );
- itemField = aContact.FindField( aFieldId );
- if ( itemField )
- {
- return itemField->TextStorage();
- }
- else
- {
- EUNIT_ASSERT( !itemField );
- }
- }
- else
- {
- EUNIT_ASSERT( !fieldInfo );
- }
- }
- else
- {
- return itemField->TextStorage();
- }
- EUNIT_ENABLE_ALLOC_DECORATOR;
- return NULL; // Should never reach here, just to avoid warnings.
}
-void UT_CMusAvaContactAvailability::AddFields( CPbkContactEngine& aContactEngine,
- CPbkContactItem& contact,
- const TDesC& aText,
- TPbkFieldId aFieldId )
- {
- const CPbkFieldsInfo& fieldsInfo = aContactEngine.FieldsInfo();
- // Try to get the storage field for this contact
- TPbkContactItemField* itemField = contact.FindField( aFieldId );
-
- if ( itemField == NULL )
- {
- CPbkFieldInfo* fieldInfo = fieldsInfo.Find( aFieldId );
- // Add field to this contact
- if ( fieldInfo )
- {
- CleanupStack::PushL( fieldInfo );
- // Contact takes ownership of the field.
- contact.AddFieldL( *fieldInfo );
- CleanupStack::Pop( fieldInfo );
- itemField = contact.FindField( aFieldId );
- if ( itemField )
- {
- itemField->TextStorage()->SetTextL( aText );
- }
- else
- {
- EUNIT_ASSERT( !itemField );
- }
- }
- else
- {
- EUNIT_ASSERT( !fieldInfo );
- }
- }
- else
- {
- // Set some default fields
- itemField->TextStorage()->SetTextL(aText );
- }
- }
-
-void UT_CMusAvaContactAvailability::AddToMyContact( CPbkContactEngine& aContactEngine,
- const TDesC& aText,
- TPbkFieldId aFieldId,
- const TDesC& aText2,
- TPbkFieldId aFieldId2 )
- {
- // Create a contact with few default fields
- // All the default fields are empty and won't be displayed
- // until some information is stored in them
- /*CPbkContactItem* contact = aContactEngine.CreateEmptyContactL();
- CleanupStack::PushL( contact );
-
- // Set some default fields
- contact->FindField( aFieldId )->TextStorage()->SetTextL(aText );
- // Set some default fields
- contact->FindField( aFieldId2 )->TextStorage()->SetTextL(aText2 );
-
- // Store the contact to the phonebook
- aContactEngine.AddNewContactL( *contact );
- CleanupStack::PopAndDestroy( contact );*/
-
- /*CPbkContactItem* contact = aContactEngine.CreateEmptyContactL();
- CleanupStack::PushL( contact );
-
- const CPbkFieldsInfo& fieldsInfo = aContactEngine.FieldsInfo();
- // Try to get the storage field for this contact
- TPbkContactItemField* itemField = contact->FindField( aFieldId );
-
- if ( itemField == NULL )
- {
- CPbkFieldInfo* fieldInfo = fieldsInfo.Find( aFieldId );
- // Add field to this contact
- if ( fieldInfo )
- {
- CleanupStack::PushL( fieldInfo );
- // Contact takes ownership of the field.
- contact->AddFieldL( *fieldInfo );
- CleanupStack::Pop( fieldInfo );
- itemField = contact->FindField( aFieldId );
- if ( itemField )
- {
- itemField->TextStorage()->SetTextL( aText );
- }
- else
- {
- EUNIT_ASSERT( !itemField );
- }
- }
- else
- {
- EUNIT_ASSERT( !fieldInfo );
- }
- }
- else
- {
- // Set some default fields
- itemField->TextStorage()->SetTextL(aText );
- }
- // Store the contact to the phonebook
- aContactEngine.AddNewContactL( *contact );
- CleanupStack::PopAndDestroy( contact );*/
-
- CPbkContactItem* contact = aContactEngine.CreateEmptyContactL();
- CleanupStack::PushL( contact );
-
- AddFields( aContactEngine, *contact, aText, aFieldId );
- AddFields( aContactEngine, *contact, aText2, aFieldId2 );
- // Store the contact to the phonebook
- aContactEngine.AddNewContactL( *contact );
- CleanupStack::PopAndDestroy( contact );
-
- }
-
void UT_CMusAvaContactAvailability::UT_CMusAvaController_IsExistAlreadyL()
{
- _LIT( KTestUri1, "sip:1@test.net");
- _LIT( KTestUri2, "sip:2@test.net");
- _LIT( KTestUri3, "sip:3@test.net");
- _LIT( KTestUri5, "sip:5@test.net");
-
- TBufC16<16> str1(KTestUri1);
- HBufC16* ptr1;
- ptr1 = str1.AllocLC();
-
- TBufC16<16> str2(KTestUri2);
- HBufC16* ptr2;
- ptr2 = str2.AllocLC();
-
- TBufC16<16> str3(KTestUri3);
- HBufC16* ptr3;
- ptr3 = str3.AllocLC();
-
- CDesCArrayFlat* array = new( ELeave ) CDesCArrayFlat(1);
- CleanupStack::PushL(array);
- array->AppendL(*ptr1);
- array->AppendL(*ptr2);
- array->AppendL(*ptr3);
-
- TBool exist = EFalse;
-
- // Test 1 :
- exist = iContactAvailability->IsExistAlready(*array,KTestUri1);
- EUNIT_ASSERT(exist);
- // Test 2 :
- exist = iContactAvailability->IsExistAlready(*array,KTestUri5);
- EUNIT_ASSERT(!exist);
-
- array->Reset();
- CleanupStack::PopAndDestroy(array);
- CleanupStack::PopAndDestroy(ptr3);
- CleanupStack::PopAndDestroy(ptr2);
- CleanupStack::PopAndDestroy(ptr1);
}
void UT_CMusAvaContactAvailability::UT_CMusAvaController_UpdateContactNameLL()
{
- CPbkContactItem* contactItem = NULL;
-
- EUNIT_DISABLE_ALLOC_DECORATOR;
- CPbkContactEngine* contactEngine = CPbkContactEngine::NewL();
- CleanupStack::PushL( contactEngine );
-
- // dummy initialization, other ways CPbkContactEngine leaks memory
- CPbkContactItem* pbkItem = NULL;
- TRAP_IGNORE( pbkItem = contactEngine->ReadContactL( 1 ) );
- delete pbkItem;
-
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- //contact firstname && iBeginWithFirstName = ETrue
- TPbkContactItemField* fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- TPbkContactItemField* fieldMobile1 = contactItem->FindField(EPbkFieldIdFirstName);
- fieldMobile1->TextStorage()->SetTextL( KFirstName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = ETrue;
- TRAPD( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KFirstName ) == NULL );
-
- CleanupStack::PopAndDestroy( contactItem );
- CContactIdArray* array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- //contact firstname && iBeginWithFirstName = EFalse
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdFirstName);
- fieldMobile1->TextStorage()->SetTextL( KFirstName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = EFalse;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KFirstName ) == NULL );
-
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- //contact lastname && iBeginWithFirstName = ETrue
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdLastName);
- fieldMobile1->TextStorage()->SetTextL( KLastName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = ETrue;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KLastName ) == NULL );
-
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- //contact lastname && iBeginWithFirstName = EFalse
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
+ }
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdLastName);
- fieldMobile1->TextStorage()->SetTextL( KLastName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = EFalse;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KLastName ) == NULL );
-
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- //contact firstname && lastname && iBeginWithFirstName = ETrue
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdFirstName);
- fieldMobile1->TextStorage()->SetTextL( KFirstName() );
-
- TPbkContactItemField* fieldMobile2 = contactItem->FindField(EPbkFieldIdLastName);
- fieldMobile2->TextStorage()->SetTextL( KLastName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = ETrue;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KFirstLastName ) == NULL );
-//
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- //contact firstname && lastname && iBeginWithFirstName = EFalse
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdFirstName);
- fieldMobile1->TextStorage()->SetTextL( KFirstName() );
-
- fieldMobile2 = contactItem->FindField(EPbkFieldIdLastName);
- fieldMobile2->TextStorage()->SetTextL( KLastName() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = EFalse;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KLastFirstName ) == NULL );
-
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
-
- // contact name only contain 1 character
- _LIT(KNameWithOneChar,"M");
- for (int i = 0; i < 1; ++i )
- {
- EUNIT_DISABLE_ALLOC_DECORATOR;
- contactItem= contactEngine->CreateEmptyContactL();
- CleanupStack::PushL( contactItem );
-
- fieldMobile = contactItem->FindField(EPbkFieldIdPhoneNumberMobile);
- fieldMobile->TextStorage()->SetTextL( KPlusNumber() );
-
- fieldMobile1 = contactItem->FindField(EPbkFieldIdFirstName);
- fieldMobile1->TextStorage()->SetTextL( KNameWithOneChar() );
-
- contactEngine->AddNewContactL( *contactItem );
- EUNIT_ENABLE_ALLOC_DECORATOR;
-
- iConcreteSettings->SetTelNumberL( KPlusNumber() );
-
- iContactAvailability->iBeginWithFirstName = i;
- TRAP( error,
- iContactAvailability->UpdateContactNameL( contactItem->ContactItem() ) );
- if ( error == KErrNoMemory ) User::Leave( error );
- EUNIT_ASSERT( error == KErrNone );
- EUNIT_ASSERT( iContactAvailability->iContactName->Compare( KNameWithOneChar ) == 0 );
-
- CleanupStack::PopAndDestroy( contactItem );
- array = NULL;
- iContactAvailability->ContactArrayL( array, *contactEngine );
- CleanupStack::PushL( array );
- contactEngine->DeleteContactsL( *array, ETrue );
- CleanupStack::PopAndDestroy( array );
- }
-
- CleanupStack::PopAndDestroy( contactEngine );
- }
// TEST TABLE
EUNIT_BEGIN_TEST_TABLE(
@@ -1515,6 +376,13 @@
"DoExecuteL_2",
"FUNCTIONALITY",
SetupL, UT_CMusAvaController_DoExecuteL2_L, Teardown)
+
+EUNIT_TEST(
+ "DoExecuteL_3 - test ",
+ "CMusAvaContactAvailability",
+ "DoExecuteL_3",
+ "FUNCTIONALITY",
+ SetupL, UT_CMusAvaController_DoExecuteL3_L, Teardown)
EUNIT_TEST(
"Name - test ",
@@ -1635,12 +503,6 @@
"FUNCTIONALITY",
SetupL, UT_CMusAvaController_UpdateContactNameLL, Teardown)
-EUNIT_TEST(
- "UpdateContactNameL - test ",
- "CMusAvaContactAvailability",
- "UpdateContactNameL",
- "FUNCTIONALITY",
- SetupL, UT_CMusAvaController_CallConnectedLL, Teardown)
EUNIT_END_TEST_TABLE
// END OF FILE