telephonyserverplugins/common_tsy/test/integration/src/cctsyintegrationtestphonebookstore.cpp
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
equal deleted inserted replaced
-1:000000000000 0:3553901f7fa8
       
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 // Test step definitions for the PhoneBookStore functional unit.
       
    15 // 
       
    16 //
       
    17 
       
    18 /**
       
    19  @internalTechnology
       
    20 */
       
    21  
       
    22 #include <etelmm.h>
       
    23 
       
    24 #include "cetelsessionmgr.h"
       
    25 #include "cctsyintegrationtestphonebookstore.h" 
       
    26 
       
    27 const TInt KPBDataClientBuf10 = 500;
       
    28 const TInt KPBDataClientBuf50 = 2500;
       
    29 const TInt KPBDataClientBuf100 = 5000;
       
    30 
       
    31 //15 names and numbers
       
    32 _LIT16(KAnnText,"Ann");
       
    33 _LIT16(KMattSText,"MattS");
       
    34 _LIT16(KAndyText,"Andy");
       
    35 _LIT16(KMattMText,"MattM");
       
    36 _LIT16(KPaulText,"Paul");
       
    37 _LIT16(KMumAndDadText,"Mum and Dad");
       
    38 _LIT16(KHenrikText,"Henrik");
       
    39 _LIT16(KHenrikSVText,"HenrikSV");
       
    40 _LIT16(KMikaelText,"Mikael");
       
    41 _LIT16(KIngeText,"Inge");
       
    42 _LIT16(KAndersText,"Anders");
       
    43 _LIT16(KTextTooLong,"ABCDEFGHIJKLMNOPQRSTUVWXYZABCD");
       
    44 
       
    45 _LIT16(KAnnPhoneNum,"01632960000");
       
    46 _LIT16(KMattSPhoneNum,"01632960000");
       
    47 _LIT16(KAndyPhoneNum,"01632960000");
       
    48 _LIT16(KMattMPhoneNum,"01632960000");
       
    49 _LIT16(KPaulPhoneNum,"01632960000");
       
    50 _LIT16(KMumAndDadPhoneNum,"01632960000");
       
    51 _LIT16(KHenrikPhoneNum,"01632960000");
       
    52 _LIT16(KHenrikSVPhoneNum,"01632960000");
       
    53 _LIT16(KMikaelPhoneNum,"01632960000");
       
    54 _LIT16(KIngePhoneNum,"01632960000");
       
    55 _LIT16(KAndersPhoneNum,"01632960000");
       
    56 _LIT16(KNumberTooLong,"0171123456789012345678901234567331111114011111111150111111116011111111701111111180111");// needs to be over 80 since the  phone can take that many digits
       
    57 
       
    58 	
       
    59 CCTSYIntegrationTestPhoneBookStoreBase::CCTSYIntegrationTestPhoneBookStoreBase(CEtelSessionMgr& aEtelSessionMgr)
       
    60 	: CCTSYIntegrationTestSuiteStepBase(aEtelSessionMgr), iSimTsyTestHelper(*this), iPhoneTsyTestHelper(*this), iNetworkTsyTestHelper(*this)
       
    61 /**
       
    62  * Constructor
       
    63  */
       
    64 	{
       
    65 	}
       
    66 
       
    67 CCTSYIntegrationTestPhoneBookStoreBase::~CCTSYIntegrationTestPhoneBookStoreBase()
       
    68 /*
       
    69  * Destructor
       
    70  */
       
    71 	{
       
    72 	}
       
    73 
       
    74 TBool CCTSYIntegrationTestPhoneBookStoreBase::EncodeTLVFormat(CPhoneBookBuffer* aPbBuffer
       
    75 		, TBuf<KBufSize>& aNumber, TUint8 aNumberType, TBuf<KBufSize>& aName)
       
    76 /**
       
    77  * member function for encoding in ASN.1 TLV(Tag-Length-Value) format taking four arguments and returning TBool value
       
    78  * 
       
    79  * @param aPbBuffer a CPhoneBookBuffer pointer to hold encoded binary stream
       
    80  * @param aNumber a reference to TBuf<KBufSize> holding phone number to be encoded
       
    81  * @param aNumberType a TUint8 argument holding type phone number to be encoded
       
    82  * @param aName a reference to TBuf<KBufSize> holding the name to be encoded
       
    83  *
       
    84  * @return ETrue if success, EFalse otherwise.
       
    85  */
       
    86 	{	
       
    87 	TBool functionExecutionStatus = ETrue; //Success
       
    88     TInt ret = aPbBuffer->AddNewEntryTag();
       
    89 	if(ret != KErrNone)
       
    90 		{	
       
    91 		DEBUG_PRINTF1(_L("CPhoneBookBuffer::AddNewEntryTag failed"));
       
    92 		functionExecutionStatus = EFalse;
       
    93 		}
       
    94 	ret = aPbBuffer->PutTagAndValue(RMobilePhoneBookStore::ETagPBNumber
       
    95 			, aNumber);
       
    96 	if(ret != KErrNone)
       
    97 		{		
       
    98 		DEBUG_PRINTF1(_L("CPhoneBookBuffer::PutTagAndValue failed for number"));
       
    99 		functionExecutionStatus = EFalse;
       
   100 		}
       
   101 	// convert number type into TLV format and append it to allocated buffer
       
   102 	ret=aPbBuffer->PutTagAndValue(RMobilePhoneBookStore::ETagPBTonNpi, aNumberType);
       
   103 	if(ret != KErrNone)
       
   104 		{	
       
   105 		DEBUG_PRINTF1(_L("CPhoneBookBuffer::PutTagAndValue failed for number type"));
       
   106 		functionExecutionStatus = EFalse;
       
   107 		}
       
   108 	// convert text into TLV format and append it to allocated buffer
       
   109 	ret=aPbBuffer->PutTagAndValue(RMobilePhoneBookStore::ETagPBText, aName);
       
   110 	if(ret != KErrNone)
       
   111 		{	
       
   112 		DEBUG_PRINTF1(_L("CPhoneBookBuffer::PutTagAndValue failed for name"));
       
   113 		functionExecutionStatus = EFalse;
       
   114 		}
       
   115 	return functionExecutionStatus;
       
   116 	}
       
   117 
       
   118 TBool CCTSYIntegrationTestPhoneBookStoreBase::DecodeTLVFormat
       
   119 		(CPhoneBookBuffer* aPbBuffer, TInt aBufLen, TBuf<KBufSize>& aNumber
       
   120 				, TBuf<KBufSize>& aName, TInt aIndex)
       
   121 /**
       
   122  * member function for decoding a buffer in ASN.1 TLV(Tag-Length-Value) format taking five arguments and returning TBool value
       
   123  * 
       
   124  * @param aPbBuffer a CPhoneBookBuffer pointer to holding encoded binary stream to be decoded
       
   125  * @param aBufLen a TInt argument holding the length of the buffer to be decoded
       
   126  * @param aNumber a reference to TBuf<KBufSize> to hold decoded phone number
       
   127  * @param aName a reference to TBuf<KBufSize> to hold decoded name
       
   128  * @param aIndex a TInt argument holding the index of the record to be decoded
       
   129  *
       
   130  * @return ETrue if success, EFalse otherwise.
       
   131  */
       
   132 	{
       
   133 	TBool functionExecutionStatus = EFalse; //Failure
       
   134 	
       
   135 	TUint8 tagValue(0);
       
   136 	CPhoneBookBuffer::TPhBkTagType dataType;
       
   137 	TPtrC field(NULL,0);
       
   138 	
       
   139 	aPbBuffer->StartRead();       // Start reading received phonebook data
       
   140 	TInt offset = 0;
       
   141 	TInt pbRecordIndex = 0;
       
   142 	while(offset < aBufLen)
       
   143 		{
       
   144 		TInt ret = aPbBuffer->GetTagAndType(tagValue, dataType);
       
   145 		if( ret == KErrNotFound ) // Reached the end of phonebook data
       
   146 			{		
       
   147 			break;		
       
   148 			}
       
   149 			
       
   150 		switch(dataType)
       
   151 			{
       
   152 			case CPhoneBookBuffer::EPhBkTypeInt8:
       
   153 				{
       
   154 				TUint8 int8(0);
       
   155 				offset = offset + 1; // add tag-field only in case that is beginning of new field
       
   156 				if(tagValue == RMobilePhoneBookStore::ETagPBTonNpi)
       
   157 					{
       
   158 					aPbBuffer->GetValue(int8); //
       
   159 					offset = offset + 1; // 1-byte integer
       
   160 					}
       
   161 				}
       
   162 			break;
       
   163 
       
   164 			case CPhoneBookBuffer::EPhBkTypeInt16:
       
   165 				{
       
   166 				TUint16 int16(0);
       
   167 				aPbBuffer->GetValue(int16);
       
   168 				offset = offset + 3; // 2-byte integer + tag-field
       
   169 				}
       
   170 			break;
       
   171 
       
   172 			case CPhoneBookBuffer::EPhBkTypeInt32:
       
   173 				{
       
   174 				TUint32 int32(0);
       
   175 				aPbBuffer->GetValue(int32);
       
   176 				offset = offset + 5; // 4-byte integer + tag-field
       
   177 				}
       
   178 			break;
       
   179 
       
   180 			case CPhoneBookBuffer::EPhBkTypeDes16:
       
   181 				{				
       
   182 				aPbBuffer->GetValue(field);
       
   183 				offset = offset + field.Length() + 3; // add desc length + length-field + tag-field
       
   184 				if(tagValue == RMobilePhoneBookStore::ETagPBText)
       
   185 					{
       
   186 					aName = field;
       
   187 					}
       
   188 				else if(tagValue == RMobilePhoneBookStore::ETagPBNumber)
       
   189 					{
       
   190 					aNumber = field;	
       
   191 					pbRecordIndex++;
       
   192 					if(pbRecordIndex == aIndex)
       
   193 						{
       
   194 						functionExecutionStatus = ETrue;
       
   195 						return functionExecutionStatus;  //completed reading the required record
       
   196 						}
       
   197 					}
       
   198 				}
       
   199 				break;
       
   200 			default:
       
   201 				break;
       
   202 			} // end switch aDataType
       
   203 		} // end while
       
   204 	
       
   205 	return functionExecutionStatus;
       
   206 	}
       
   207 
       
   208 CCTSYIntegrationTestPhoneBookStore0001Base::CCTSYIntegrationTestPhoneBookStore0001Base(CEtelSessionMgr& aEtelSessionMgr)
       
   209 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
   210 /**
       
   211  * Constructor.
       
   212  */
       
   213 	{
       
   214 	
       
   215 	}
       
   216 
       
   217 CCTSYIntegrationTestPhoneBookStore0001Base::~CCTSYIntegrationTestPhoneBookStore0001Base()
       
   218 /**
       
   219  * Destructor.
       
   220  */
       
   221 	{
       
   222 	}
       
   223 
       
   224 void CCTSYIntegrationTestPhoneBookStore0001Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId
       
   225 						,RMobilePhoneBookStore::TMobilePhoneBookLocation aExpectedPhoneBookLocation,
       
   226 						TUint32 aExpectedCaps)
       
   227 /**
       
   228  * TestDesc: Get phone store information.
       
   229  * TestExpectedResults: Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
   230  * Reason for test: Verify phone store information returned is correct.
       
   231  */
       
   232 	{
       
   233 
       
   234 	//
       
   235 	// SET UP
       
   236 	//
       
   237 
       
   238 	// Open the phone book subsession  
       
   239 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
   240 			, KMainPhone, aPhoneBookId);
       
   241 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
   242 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
   243 	
       
   244 	//
       
   245 	// SET UP END
       
   246 	//
       
   247 	
       
   248 	StartTest();
       
   249 	
       
   250 	//
       
   251 	// TEST START
       
   252 	//	
       
   253 
       
   254 	// Get the phone book store information with RMobilePhoneStore::GetInfo 
       
   255 	TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStore
       
   256 		, EMobilePhoneStoreGetInfo);
       
   257 	CleanupStack::PushL(phoneStoreInfoStatus);
       
   258 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
   259 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
   260 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   261 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneStoreInfoStatus
       
   262 		, ETimeShort), KErrNone, 	
       
   263 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   264 	ASSERT_EQUALS(phoneStoreInfoStatus.Int(), KErrNone,
       
   265 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   266 	// Check RMobilePhoneBookStore::TMobilePhoneBookInfoV1 (or derived class) returned contains:
       
   267 	// iType == RMobilePhoneStore::EPhoneBookStore 
       
   268 	// iTotalEntries >= -1 
       
   269 	// iUsedEntries >= -1 
       
   270 	// iMaxNumLength >= -1 
       
   271 	// iMaxTextLength >= -1 
       
   272 	ASSERT_EQUALS(phoneBookInfo.iType, RMobilePhoneStore::EPhoneBookStore,
       
   273 		_L("RMobilePhoneBookStore::GetInfo did not return RMobilePhoneStore::EPhoneBookStore."));
       
   274 	ASSERT_TRUE((phoneBookInfo.iTotalEntries >= -1),
       
   275 		_L("RMobilePhoneBookStore::GetInfo returned incorrect TotalEntries."));
       
   276 	ASSERT_TRUE((phoneBookInfo.iUsedEntries >= -1),
       
   277 		_L("RMobilePhoneBookStore::GetInfo returned incorrect UsedEntries."));
       
   278 	ASSERT_TRUE((phoneBookInfo.iMaxNumLength >= -1),
       
   279 		_L("RMobilePhoneBookStore::GetInfo returned incorrect MaxNumLength."));
       
   280 	ASSERT_TRUE((phoneBookInfo.iMaxTextLength >= -1),
       
   281 		_L("RMobilePhoneBookStore::GetInfo returned incorrect MaxTextLength."));
       
   282 
       
   283 	// If we are testing the BDN phonebook 
       
   284 	// iLocation == RMobilePhoneBookStore::ELocationUnknown 
       
   285 	// otherwise check 
       
   286 	// iLocation == RMobilePhoneBookStore::ELocationIccMemory 	
       
   287 	ASSERT_EQUALS(phoneBookInfo.iLocation
       
   288 		, aExpectedPhoneBookLocation,
       
   289 		_L("RMobilePhoneBookStore::GetInfo returned incorrect Location information."));
       
   290 
       
   291 	// Check iCaps for the following depending on which phone book is currently being tested:
       
   292 	// ADN phone book: iCaps == RMobilePhoneStore::KCapsReadAccess | RMobilePhoneStore::KCapsWriteAccess | RMobilePhoneStore::KCapsDeleteAll | RMobilePhoneStore::KCapsNotifyEvent 
       
   293 	// FDN phone book: iCaps == RMobilePhoneStore::KCapsReadAccess | RMobilePhoneStore::KCapsWriteAccess | RMobilePhoneStore::KCapsDeleteAll | RMobilePhoneStore::KCapsNotifyEvent | RMobilePhoneBookStore::KCapsRestrictedWriteAccess 
       
   294 	// VMBX (voice mail box) phone book: iCaps == RMobilePhoneStore::KCapsReadAccess | RMobilePhoneStore::KCapsWriteAccess | RMobilePhoneStore::KCapsDeleteAll | RMobilePhoneStore::KCapsNotifyEvent 
       
   295 	// SDN phone book: iCaps == RMobilePhoneStore::KCapsReadAccess 
       
   296 	// BDN phone book: iCaps == 0 
       
   297 	// MBDN (mailbox dialling numbers) phone book: iCaps == RMobilePhoneStore::KCapsReadAccess | RMobilePhoneStore::KCapsWriteAccess 
       
   298 	ASSERT_BITS_SET(phoneBookInfo.iCaps, aExpectedCaps, KNoUnwantedBits, 
       
   299 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
   300 	
       
   301 	
       
   302 	//
       
   303 	// TEST END
       
   304 	//
       
   305 
       
   306     StartCleanup();
       
   307 	
       
   308 	CleanupStack::PopAndDestroy(&phoneStoreInfoStatus);
       
   309 	
       
   310 	}
       
   311 
       
   312 
       
   313 CCTSYIntegrationTestPhoneBookStore0002Base::CCTSYIntegrationTestPhoneBookStore0002Base(CEtelSessionMgr& aEtelSessionMgr)
       
   314 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
   315 /**
       
   316  * Constructor.
       
   317  */
       
   318 	{
       
   319 	
       
   320 	}
       
   321 
       
   322 CCTSYIntegrationTestPhoneBookStore0002Base::~CCTSYIntegrationTestPhoneBookStore0002Base()
       
   323 /**
       
   324  * Destructor.
       
   325  */
       
   326 	{
       
   327 	}
       
   328 
       
   329 void CCTSYIntegrationTestPhoneBookStore0002Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
   330 /**
       
   331  * TestDesc: Read single and multiple phonebook entries.
       
   332  * TestExpectedResults: Pass - Single and multiple entries read successfully.
       
   333  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
   334  */
       
   335 	{
       
   336 
       
   337 	//
       
   338 	// SET UP
       
   339 	//
       
   340 
       
   341 	
       
   342 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess | KCapsDeleteAll 
       
   343 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL
       
   344 		(KMainServer, KMainPhone, aPhoneBookId);
       
   345 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
   346 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
   347 
       
   348 	
       
   349 	TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStore
       
   350 		, EMobilePhoneStoreGetInfo);
       
   351 	CleanupStack::PushL(phoneStoreInfoStatus);
       
   352 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
   353 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
   354 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   355 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   356 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   357 	CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   358 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   359 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
   360 							| RMobilePhoneStore::KCapsReadAccess
       
   361 							| RMobilePhoneStore::KCapsDeleteAll;
       
   362 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
   363 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
   364 		
       
   365 	// Delete all entries from the phone book with RMobilePhoneBookStore::DeleteAll 
       
   366 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
   367 		, EMobilePhoneStoreDeleteAll);
       
   368 	CleanupStack::PushL(deleteStoreStatus);
       
   369 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
   370 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
   371 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
   372 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
   373 		|| deleteStoreStatus.Int() == KErrNotFound),
       
   374 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."))
       
   375 
       
   376 	// Write entries into the first 10 slots of the phone book. 
       
   377 	const TUint32 count = 10;	
       
   378 	TFixedArray<TBuf<KBufSize>,count> names;
       
   379 	TFixedArray<TBuf<KBufSize>,count> numbers;	
       
   380 	names[0].Copy(KAnnText);
       
   381 	numbers[0].Copy(KAnnPhoneNum);
       
   382 	names[1].Copy(KMattSText);
       
   383 	numbers[1].Copy(KMattSPhoneNum);
       
   384 	names[2].Copy(KAndyText);
       
   385 	numbers[2].Copy(KAndyPhoneNum);
       
   386 	names[3].Copy(KMattMText);
       
   387 	numbers[3].Copy(KMattMPhoneNum);
       
   388 	names[4].Copy(KPaulText);
       
   389 	numbers[4].Copy(KPaulPhoneNum);
       
   390 	names[5].Copy(KMumAndDadText);
       
   391 	numbers[5].Copy(KMumAndDadPhoneNum);
       
   392 	names[6].Copy(KHenrikText);
       
   393 	numbers[6].Copy(KHenrikPhoneNum);
       
   394 	names[7].Copy(KHenrikSVText);
       
   395 	numbers[7].Copy(KHenrikSVPhoneNum);
       
   396 	names[8].Copy(KMikaelText);
       
   397 	numbers[8].Copy(KMikaelPhoneNum);
       
   398 	names[9].Copy(KIngeText);
       
   399 	numbers[9].Copy(KIngePhoneNum);	
       
   400 	TBuf8<KPBDataClientBuf10> pbData;  // Client reserved space for phonebook data
       
   401 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
   402 	CleanupStack::PushL(pbBuffer);
       
   403 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
   404 	for(TInt i=1;i<=count;++i)
       
   405 		{
       
   406 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   407 		pbData.FillZ();
       
   408 		pbData.Zero();
       
   409 		TBool ret = EncodeTLVFormat(pbBuffer, numbers[i-1], (TUint8)RMobilePhone::EUnknownNumber
       
   410 				, names[i-1]);
       
   411 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));	
       
   412 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore
       
   413 								, EMobilePhoneBookStoreWrite);
       
   414 		CleanupStack::PushL(phoneBookWriteStatus);
       
   415 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);		
       
   416 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
   417 				, ETimeMedium), KErrNone,
       
   418 				_L("RMobilePhoneBookStore::Write timed-out"));
       
   419 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
   420 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
   421 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);
       
   422 		}
       
   423 
       
   424 	//
       
   425 	// SET UP END
       
   426 	//
       
   427 	
       
   428 	StartTest();
       
   429 	
       
   430 	//
       
   431 	// TEST START
       
   432 	//
       
   433 	
       
   434 	
       
   435 	// ===  Read single entry from each of filled slots ===
       
   436 
       
   437 	for(TInt i = 1; i <= count; ++i)
       
   438 		{
       
   439 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   440 		pbData.FillZ();
       
   441 		pbData.Zero();		
       
   442 		TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
   443 			, EMobilePhoneBookStoreRead);	
       
   444 		CleanupStack::PushL(phoneBookReadStatus);
       
   445 		
       
   446 		// For each of the filled phone book slots, read a single entry from the phone book using RMobilePhoneBookStore::Read and setting aNumSlots = 1		
       
   447 		phoneBookStore.Read(phoneBookReadStatus, i, 1, pbData);
       
   448 		ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   449 			, ETimeMedium), KErrNone,
       
   450 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   451 		ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
   452 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   453 
       
   454 		// Check that the aPBData TLV descriptor returned contains correct entry information.
       
   455 		TBuf<KBufSize> readNumber;
       
   456 		TBuf<KBufSize> readName;		
       
   457 		TInt bufLen = pbData.Length(); 
       
   458 
       
   459 		// decode PB data received in TLV format		
       
   460 		TBool ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
   461 		ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"))				
       
   462 		ASSERT_EQUALS_DES16(numbers[i-1], readNumber,
       
   463 			_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
   464 		ASSERT_EQUALS_DES16(names[i-1], readName,
       
   465 			_L("RMobilePhoneBookStore::Read completed with incorrect name"));		
       
   466 		CleanupStack::PopAndDestroy(&phoneBookReadStatus);
       
   467 		}
       
   468 	// ===  Read five entries where all requested slots are filled ===
       
   469 	// Read 5 entries from the phone book using RMobilePhoneBookStore::Read with aNumSlots = 5 and using aIndex = 1, aIndex = 5 
       
   470 	// Read from phone book starting from aIndex=1 reading 5 slots
       
   471 
       
   472 	pbData.FillZ();
       
   473 	pbData.Zero();	
       
   474 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
   475 			, EMobilePhoneBookStoreRead);	
       
   476 	CleanupStack::PushL(phoneBookReadStatus);
       
   477 	phoneBookStore.Read(phoneBookReadStatus, 1, 5, pbData);
       
   478 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   479 			, ETimeMedium), KErrNone,
       
   480 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   481 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
   482 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   483 	TInt bufLen = pbData.Length(); 
       
   484 	// Check that the aPBData TLV descriptor returned contains 5 entries with correct entry information.
       
   485 	for(TInt i = 1; i <= 5; ++i)
       
   486 		{
       
   487 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   488 		TBuf<KBufSize> readNumber;
       
   489 		TBuf<KBufSize> readName;		
       
   490 		// decode PB data received in TLV format		
       
   491 		TBool ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, i);
       
   492 		ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
   493 
       
   494 		ASSERT_EQUALS_DES16(numbers[i-1], readNumber,
       
   495 			_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
   496 		ASSERT_EQUALS_DES16(names[i-1], readName,
       
   497 			_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
   498 		}
       
   499 
       
   500 	// Read from phone book starting from aIndex=5 reading 5 slots
       
   501 	pbData.FillZ();
       
   502 	pbData.Zero();	
       
   503 	phoneBookStore.Read(phoneBookReadStatus, 5, 5, pbData);
       
   504 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   505 			, ETimeMedium), KErrNone,
       
   506 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   507 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
   508 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   509 	bufLen = pbData.Length();
       
   510 	for(TInt i = 1; i <= 5; ++i)
       
   511 		{
       
   512 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   513 		TBuf<KBufSize> readNumber;
       
   514 		TBuf<KBufSize> readName;		
       
   515 		// decode PB data received in TLV format		
       
   516 		TBool ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, i);
       
   517 		ASSERT_TRUE(ret,_L("DecodeTLVFormat failed"));
       
   518 		ASSERT_EQUALS_DES16(numbers[(i+4)-1], readNumber,
       
   519 			_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
   520 		ASSERT_EQUALS_DES16(names[(i+4)-1], readName,
       
   521 			_L("RMobilePhoneBookStore::Read completed with incorrect name"));		
       
   522 		}	
       
   523 
       
   524 	// ===  Read five entries where some of requested slots are filled ===
       
   525 	// Read 5 entries from the phone book using RMobilePhoneBookStore::Read with aNumSlots = 5 and using aIndex = 7 
       
   526 	pbData.FillZ();
       
   527 	pbData.Zero();	
       
   528 	phoneBookStore.Read(phoneBookReadStatus, 7, 5, pbData);
       
   529 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   530 			, ETimeMedium), KErrNone,
       
   531 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   532 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
   533 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   534 	bufLen = pbData.Length();
       
   535 	// Check that the aPBData TLV descriptor returned contains 4 entries with correct entry information.
       
   536 	for(TInt i = 1; i <= 5; ++i)
       
   537 		{
       
   538 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   539 		TBuf<KBufSize> readNumber;
       
   540 		TBuf<KBufSize> readName;		
       
   541 		// decode PB data received in TLV format		
       
   542 		TBool ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, i);
       
   543 		
       
   544 		// For first 4 entries, check that received entry is same as that written 
       
   545 		if(i < 5)
       
   546 			{
       
   547 			ASSERT_TRUE(ret,_L("DecodeTLVFormat failed"));
       
   548 			ASSERT_EQUALS_DES16(numbers[(i+6)-1], readNumber,
       
   549 				_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
   550 			ASSERT_EQUALS_DES16(names[(i+6)-1], readName,
       
   551 				_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
   552 			}
       
   553 		else
       
   554 			{
       
   555 			ASSERT_TRUE(!ret,_L("test found more entries than was expected"));
       
   556 			}
       
   557 		}
       
   558 	
       
   559 	//
       
   560 	// TEST END
       
   561 	//
       
   562 
       
   563     StartCleanup();
       
   564     
       
   565 	// 1 phoneStoreInfoStatus
       
   566 	// 2 deleteStoreStatus
       
   567 	// 3 pbBuffer
       
   568 	// 4 phoneBookReadStatus	
       
   569 	CleanupStack::PopAndDestroy(4,&phoneStoreInfoStatus);	
       
   570 	
       
   571 	}
       
   572 
       
   573 
       
   574 CCTSYIntegrationTestPhoneBookStore0003Base::CCTSYIntegrationTestPhoneBookStore0003Base(CEtelSessionMgr& aEtelSessionMgr)
       
   575 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
   576 /**
       
   577  * Constructor.
       
   578  */
       
   579 	{
       
   580 	
       
   581 	}
       
   582 
       
   583 CCTSYIntegrationTestPhoneBookStore0003Base::~CCTSYIntegrationTestPhoneBookStore0003Base()
       
   584 /**
       
   585  * Destructor.
       
   586  */
       
   587 	{
       
   588 	}
       
   589 
       
   590 void CCTSYIntegrationTestPhoneBookStore0003Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
   591 /**
       
   592  * TestDesc: Read single and multiple phonebook entries which are not present.
       
   593  * TestExpectedResults: Pass - KErrNotFound returned.
       
   594  * Reason for test: Verify KErrNotFound is returned.
       
   595  */
       
   596 	{
       
   597 
       
   598 	//
       
   599 	// SET UP
       
   600 	//
       
   601 	// Get the phone store information with Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess | KCapsDeleteAll 
       
   602 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
   603 			, KMainPhone, aPhoneBookId);
       
   604 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
   605 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
   606 	TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStore
       
   607 		, EMobilePhoneStoreGetInfo);
       
   608 	CleanupStack::PushL(phoneStoreInfoStatus);
       
   609 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
   610 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
   611 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   612 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   613 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   614 	CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   615 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   616 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
   617 							| RMobilePhoneStore::KCapsReadAccess
       
   618 							| RMobilePhoneStore::KCapsDeleteAll;
       
   619 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
   620 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
   621 		
       
   622 	// Delete all entries from the phone book with RMobilePhoneBookStore::DeleteAll 
       
   623 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
   624 		, EMobilePhoneStoreDeleteAll);
       
   625 	CleanupStack::PushL(deleteStoreStatus);
       
   626 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
   627 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
   628 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
   629 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
   630 		|| deleteStoreStatus.Int() == KErrNotFound),
       
   631 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
   632 
       
   633 	// Get the phone store information and check iUsedEntries = 0, store the value of iTotalEntries. 
       
   634 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   635 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   636 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   637 	CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   638 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   639 	CHECK_EQUALS_L(phoneBookInfo.iUsedEntries, 0, 
       
   640 		_L("RMobilePhoneBookStore::GetInfo returned iUsedEntries not equal to zero"));
       
   641 
       
   642 	//
       
   643 	// SET UP END
       
   644 	//
       
   645 	
       
   646 	StartTest();
       
   647 	
       
   648 	//
       
   649 	// TEST START
       
   650 	//
       
   651 		
       
   652 	// ===  Read single entry from first slot ===
       
   653 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
   654 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
   655 	CleanupStack::PushL(pbBuffer);
       
   656 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
   657 
       
   658 	// Read a single entry from the phone book using aNumSlots=1 and aIndex = 1 
       
   659 	pbData.FillZ();
       
   660 	pbData.Zero();	
       
   661 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
   662 			, EMobilePhoneBookStoreRead);	
       
   663 	CleanupStack::PushL(phoneBookReadStatus);
       
   664 
       
   665 	phoneBookStore.Read(phoneBookReadStatus, 1, 1, pbData);
       
   666 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   667 			, ETimeMedium), KErrNone,
       
   668 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   669 	
       
   670 	// Check KErrNotFound is returned.
       
   671 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   672 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   673 
       
   674 	// ===  Read single entry from middle of phone book ===
       
   675 
       
   676 	// Read a single entry from the phone book using aNumSlots=1 and aIndex = 10 
       
   677 	phoneBookStore.Read(phoneBookReadStatus, 10, 1, pbData);
       
   678 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   679 			, ETimeMedium), KErrNone,
       
   680 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   681 	
       
   682 	// Check KErrNotFound is returned.
       
   683 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   684 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   685 
       
   686 	// ===  Read single entry from end of phone book ===
       
   687 
       
   688 	// Read a single entry from the phone book using aNumSlots=1 and aIndex = iTotalEntries 
       
   689 	phoneBookStore.Read(phoneBookReadStatus, phoneBookInfo.iTotalEntries, 1, pbData);
       
   690 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   691 			, ETimeMedium), KErrNone,
       
   692 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   693 	
       
   694 	// Check KErrNotFound is returned.
       
   695 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   696 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   697 
       
   698 	// ===  Read multiple entries starting from first index ===
       
   699 
       
   700 	// Read 5 entries from the phone book using aNumSlots = 5 and aIndex = 1. 
       
   701 	phoneBookStore.Read(phoneBookReadStatus, 1, 5, pbData);
       
   702 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   703 			, ETimeMedium), KErrNone,
       
   704 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   705 	
       
   706 	// Check KErrNotFound is returned.
       
   707 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   708 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   709 
       
   710 	// ===  Read multiple entries starting from middle of phone book ===
       
   711 
       
   712 	// Read 5 entries from the phone book using aNumSlots = 5 and aIndex = 10. 
       
   713 	phoneBookStore.Read(phoneBookReadStatus, 10, 5, pbData);
       
   714 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   715 			, ETimeMedium), KErrNone,
       
   716 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   717 	
       
   718 	// Check KErrNotFound is returned.
       
   719 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   720 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   721 			
       
   722 	// ===  Read multiple entries up to the end of the phone book ===
       
   723 
       
   724 	// Read 5 entries from the phone book using aNumSlots = 5 and aIndex = iTotalEntries-5. 
       
   725 	phoneBookStore.Read(phoneBookReadStatus, phoneBookInfo.iTotalEntries-5, 5, pbData);
       
   726 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   727 			, ETimeMedium), KErrNone,
       
   728 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   729 	
       
   730 	// Check KErrNotFound is returned.
       
   731 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
   732 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   733 
       
   734 	// ===  Read multiple entries going over the end of the phone book ===
       
   735 
       
   736 	// Read 5 entries from the phone book using aNumSlots = 5 and aIndex = iTotalEntries-2. 
       
   737 	phoneBookStore.Read(phoneBookReadStatus, phoneBookInfo.iTotalEntries-2, 5, pbData);
       
   738 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   739 			, ETimeMedium), KErrNone,
       
   740 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   741 	
       
   742 	// Check KErrNotFound or KErrArgument is returned
       
   743 	ASSERT_TRUE( ( phoneBookReadStatus.Int() == KErrArgument
       
   744 					|| phoneBookReadStatus.Int() == KErrNotFound ), 
       
   745 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   746 	
       
   747 	//
       
   748 	// TEST END
       
   749 	//
       
   750 
       
   751     StartCleanup();
       
   752 	
       
   753 	//1 phoneStoreInfoStatus
       
   754 	//2 deleteStoreStatus
       
   755 	//3 pbBuffer
       
   756 	//4 phoneBookReadStatus
       
   757 	CleanupStack::PopAndDestroy(4,&phoneStoreInfoStatus);
       
   758 	
       
   759 	}
       
   760 
       
   761 
       
   762 CCTSYIntegrationTestPhoneBookStore0004Base::CCTSYIntegrationTestPhoneBookStore0004Base(CEtelSessionMgr& aEtelSessionMgr)
       
   763 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
   764 /**
       
   765  * Constructor.
       
   766  */
       
   767 	{
       
   768 	
       
   769 	}
       
   770 
       
   771 CCTSYIntegrationTestPhoneBookStore0004Base::~CCTSYIntegrationTestPhoneBookStore0004Base()
       
   772 /**
       
   773  * Destructor.
       
   774  */
       
   775 	{
       
   776 	}
       
   777 
       
   778 void CCTSYIntegrationTestPhoneBookStore0004Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
   779 /**
       
   780   *TestDesc: Read phonebook entry using invalid index.
       
   781  * TestExpectedResults: Pass - KErrArgument returned.
       
   782  * Reason for test: Verify KErrArgument returned.
       
   783  */
       
   784 	{
       
   785 
       
   786 	//
       
   787 	// SET UP
       
   788 	//
       
   789 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess 
       
   790 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
   791 			, KMainPhone, aPhoneBookId);
       
   792 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
   793 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
   794 	TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStore
       
   795 		, EMobilePhoneStoreGetInfo);
       
   796 	CleanupStack::PushL(phoneStoreInfoStatus);
       
   797 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
   798 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
   799 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   800 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   801 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   802 	CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   803 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   804 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
   805 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10040);
       
   806 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
   807 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
   808 
       
   809 	//
       
   810 	// SET UP END
       
   811 	//
       
   812 	
       
   813 	StartTest();
       
   814 	
       
   815 	//
       
   816 	// TEST START
       
   817 	//
       
   818 	
       
   819 	
       
   820 	// ===  Read an entry with an invalid slot number ===
       
   821 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
   822 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
   823 	CleanupStack::PushL(pbBuffer);
       
   824 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
   825 
       
   826 	// Read a single entry from the phone book using aNumSlots=1 and aIndex = -1 
       
   827 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
   828 			, EMobilePhoneBookStoreRead);	
       
   829 	CleanupStack::PushL(phoneBookReadStatus);
       
   830 
       
   831 	phoneBookStore.Read(phoneBookReadStatus, -1, 1, pbData);
       
   832 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   833 			, ETimeMedium), KErrNone,
       
   834 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   835 	
       
   836 	// Check KErrArgument is returned.
       
   837 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   838 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   839 
       
   840 	// Read a single entry from the phone book using aNumSlots=1 and aIndex = -10 
       
   841 	phoneBookStore.Read(phoneBookReadStatus, -10, 1, pbData);
       
   842 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   843 			, ETimeMedium), KErrNone,
       
   844 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   845 	
       
   846 	// Check KErrArgument is returned.
       
   847 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   848 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   849 
       
   850 	// Read a single entry from the phone book using aNumSlots=10 and aIndex = -50 
       
   851 	phoneBookStore.Read(phoneBookReadStatus, -50, 10, pbData);
       
   852 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   853 			, ETimeMedium), KErrNone,
       
   854 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   855 	
       
   856 	// Check KErrArgument is returned.
       
   857 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   858 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   859 
       
   860 	// ===  Read an entry with an invalid value for aNumSlots ===
       
   861 
       
   862 	// Read a single entry from the phone book using aNumSlots=0 and aIndex = 1 
       
   863 	phoneBookStore.Read(phoneBookReadStatus, 1, 0, pbData);
       
   864 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   865 			, ETimeMedium), KErrNone,
       
   866 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   867 	
       
   868 	// Check KErrArgument is returned.
       
   869 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   870 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   871 
       
   872 	// Read a single entry from the phone book using aNumSlots=-1 and aIndex = 1 
       
   873 	phoneBookStore.Read(phoneBookReadStatus, 1, -1, pbData);
       
   874 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   875 			, ETimeMedium), KErrNone,
       
   876 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   877 	
       
   878 	// Check KErrArgument is returned.
       
   879 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   880 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   881 
       
   882 	// Read a single entry from the phone book using aNumSlots=-10 and aIndex = 10 
       
   883 	phoneBookStore.Read(phoneBookReadStatus, 10, -10, pbData);
       
   884 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
   885 			, ETimeMedium), KErrNone,
       
   886 			_L("RMobilePhoneBookStore::Read timed-out"));
       
   887 	
       
   888 	// Check KErrArgument is returned.
       
   889 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrArgument, 
       
   890 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
   891 
       
   892 	//
       
   893 	// TEST END
       
   894 	//
       
   895 
       
   896     StartCleanup();
       
   897 	
       
   898 	//1 phoneStoreInfoStatus
       
   899 	//2 pbBuffer
       
   900 	//3 phoneBookReadStatus
       
   901 	CleanupStack::PopAndDestroy(3,&phoneStoreInfoStatus);
       
   902 	
       
   903 	}
       
   904 
       
   905 
       
   906 CCTSYIntegrationTestPhoneBookStore0005Base::CCTSYIntegrationTestPhoneBookStore0005Base(CEtelSessionMgr& aEtelSessionMgr)
       
   907 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
   908 /**
       
   909  * Constructor.
       
   910  */
       
   911 	{
       
   912 	
       
   913 	}
       
   914 
       
   915 CCTSYIntegrationTestPhoneBookStore0005Base::~CCTSYIntegrationTestPhoneBookStore0005Base()
       
   916 /**
       
   917  * Destructor.
       
   918  */
       
   919 	{
       
   920 	}
       
   921 
       
   922 void CCTSYIntegrationTestPhoneBookStore0005Base::DoTestProcedureL(TFixedArray<TPhoneBookStoreId,2>& aPhoneBookTypeArray)
       
   923 /**
       
   924  * TestDesc: Read and write multiple phonebooks simultaneously.
       
   925  * TestExpectedResults: Pass - Numbers read successfully.
       
   926  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
   927  */
       
   928 	{
       
   929 
       
   930 	//
       
   931 	// SET UP
       
   932 	//
       
   933 
       
   934 	const TInt noOfPhoneBooks = 2;
       
   935 	//	Not supported - KMeDialledPhoneBook, KMeMissedPhoneBook, KMeReceivedPhoneBook, KCombinedAdnPhoneBook, KTaAdnPhoneBook, KIccFdnPhoneBook, KIccSdnPhoneBook, KIccBdnPhoneBook,KIccLndPhoneBook, KIccVoiceMailBox,	KIccLndPhoneBook
       
   936 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
   937 	RMobilePhoneBookStore *phoneBookStore[noOfPhoneBooks];	
       
   938 	for(TInt i = 0; i< noOfPhoneBooks; ++i)
       
   939 		{
       
   940 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
   941 		RMobilePhoneBookStore& phoneBookStr = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer, KMainPhone, aPhoneBookTypeArray[i]);		
       
   942 		iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookTypeArray[i]);		
       
   943 		phoneBookStore[i] = &phoneBookStr;		
       
   944 		TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStr
       
   945 				, EMobilePhoneStoreGetInfo);
       
   946 		CleanupStack::PushL(phoneStoreInfoStatus);
       
   947 		RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
   948 		RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
   949 		phoneBookStr.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   950 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   951 			_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   952 		CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   953 			 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   954 		 // Ensure that SIM used is not full.
       
   955 		if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
   956 			{
       
   957 			// delete some entries
       
   958 			TInt index = 1;
       
   959 			
       
   960 			TExtEtelRequestStatus deleteStoreStatus(phoneBookStr,EMobilePhoneStoreDelete);
       
   961 			CleanupStack::PushL(deleteStoreStatus);
       
   962 			phoneBookStr.Delete(deleteStoreStatus,index);
       
   963 			CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
   964 					_L("RMobilePhoneBookStore::Delete timed-out"));
       
   965 			CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
   966 							|| deleteStoreStatus.Int() == KErrNone ),		
       
   967 						 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
   968 			index = 2;
       
   969 			phoneBookStr.Delete(deleteStoreStatus,index);
       
   970 			CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
   971 					_L("RMobilePhoneBookStore::Delete timed-out"));
       
   972 			CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
   973 							|| deleteStoreStatus.Int() == KErrNone ),		
       
   974 						 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
   975 			//deleteStoreStatus
       
   976 			CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
   977 
       
   978 			}
       
   979 		phoneBookStr.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
   980 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
   981 			_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
   982 		CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
   983 			 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
   984 		CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
   985 			 _L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
   986 
       
   987 		// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess 
       
   988 		TUint32 expectedCaps =  RMobilePhoneStore::KCapsWriteAccess
       
   989 				| RMobilePhoneStore::KCapsReadAccess;
       
   990 		CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
   991 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
   992 
       
   993 
       
   994 		//1 phoneStoreInfoStatus
       
   995 		//2 deleteStoreStatus
       
   996 		CleanupStack::PopAndDestroy(&phoneStoreInfoStatus);
       
   997 		}
       
   998 	
       
   999 	//
       
  1000 	// SET UP END
       
  1001 	//
       
  1002 	
       
  1003 	StartTest();
       
  1004 	
       
  1005 	//
       
  1006 	// TEST START
       
  1007 	//
       
  1008 	TFixedArray<TBuf8<KPBDataClientBuf10>,2> pbData; // Client reserved space for phonebook data
       
  1009 	TFixedArray<CPhoneBookBuffer*,2> pbBuffer;
       
  1010 	pbBuffer[0] = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1011 	CleanupStack::PushL(pbBuffer[0]);
       
  1012 	pbBuffer[0]->Set(&pbData[0]); // Set it to point to the Client buffer
       
  1013 	pbBuffer[1] = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1014 	CleanupStack::PushL(pbBuffer[1]);
       
  1015 	pbBuffer[1]->Set(&pbData[1]); // Set it to point to the Client buffer
       
  1016 
       
  1017 	// Get all the subsessions for all supported phone books. ADN, SDN etc. 
       
  1018 	_LIT(KTel,"123456%03d");
       
  1019 	_LIT(KText,"TelNo %03d");	
       
  1020 	TFixedArray<TBuf<KBufSize>,noOfPhoneBooks> names;
       
  1021 	TFixedArray<TBuf<KBufSize>,noOfPhoneBooks> numbers;
       
  1022 	TInt index[noOfPhoneBooks];
       
  1023 	TFixedArray<TExtEtelRequestStatus*,noOfPhoneBooks> phoneBookWriteStatus;
       
  1024 	TExtEtelRequestStatus pbWriteStatus1(*phoneBookStore[0], EMobilePhoneBookStoreWrite);
       
  1025 	CleanupStack::PushL(pbWriteStatus1);
       
  1026 	phoneBookWriteStatus[0] = &pbWriteStatus1;
       
  1027 	TExtEtelRequestStatus pbWriteStatus2(*phoneBookStore[1], EMobilePhoneBookStoreWrite);
       
  1028 	CleanupStack::PushL(pbWriteStatus2);
       
  1029 	phoneBookWriteStatus[1] = &pbWriteStatus2;
       
  1030 
       
  1031 	
       
  1032 	// Write a single entry to each phone book using RMobilePhoneBookStore::Write 
       
  1033 	for(TInt i = 0; i< noOfPhoneBooks; ++i)
       
  1034 		{
       
  1035 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1036 		numbers[i].Format(KTel,i);
       
  1037 		names[i].Format(KText,i);
       
  1038 		TBool ret = EncodeTLVFormat(pbBuffer[i], numbers[i], (TUint8)RMobilePhone::EUnknownNumber
       
  1039 				, names[i]);
       
  1040 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  1041 		index[i]=-1;
       
  1042 		phoneBookStore[i]->Write(*phoneBookWriteStatus[i], pbData[i], index[i]);
       
  1043 
       
  1044 		}
       
  1045 	
       
  1046 	for(TInt i = 0; i< noOfPhoneBooks; ++i)
       
  1047 		{
       
  1048 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1049 		// Wait for each request to complete for each of the TExtEtelRequestStatus's used in the write operation.
       
  1050 		ASSERT_EQUALS(WaitForRequestWithTimeOut(*phoneBookWriteStatus[i]
       
  1051   				, ETimeMedium), KErrNone,
       
  1052   				_L("RMobilePhoneBookStore::Write timed-out"));
       
  1053 		// Check KErrNone is returned for each phone book
       
  1054   		ASSERT_EQUALS(phoneBookWriteStatus[i]->Int(), KErrNone, 
       
  1055   					_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1056 		}
       
  1057 
       
  1058 	// Read the written entry from each phone book using RMobilePhoneBookStore::Read 	
       
  1059 	TFixedArray<TExtEtelRequestStatus*,noOfPhoneBooks> phoneBookReadStatus;
       
  1060 	TExtEtelRequestStatus pbReadStatus1(*phoneBookStore[0], EMobilePhoneBookStoreRead);
       
  1061 	CleanupStack::PushL(pbReadStatus1);
       
  1062 	phoneBookReadStatus[0] = &pbReadStatus1;
       
  1063 	TExtEtelRequestStatus pbReadStatus2(*phoneBookStore[1], EMobilePhoneBookStoreRead);
       
  1064 	CleanupStack::PushL(pbReadStatus2);
       
  1065 	phoneBookReadStatus[1] = &pbReadStatus2;
       
  1066 	
       
  1067 	for(TInt i = 0; i < noOfPhoneBooks; ++i)
       
  1068 		{
       
  1069 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1070 		pbData[i].FillZ();
       
  1071 		pbData[i].Zero();
       
  1072 		phoneBookStore[i]->Read(*phoneBookReadStatus[i], index[i], 1, pbData[i]);
       
  1073 		}
       
  1074 	
       
  1075 	for(TInt i = 0; i< noOfPhoneBooks; ++i)
       
  1076 		{
       
  1077 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1078 		// Wait for each request to complete for each of the TExtEtelRequestStatus's used in the read operation. 	
       
  1079 		ASSERT_EQUALS(WaitForRequestWithTimeOut(*phoneBookReadStatus[i]
       
  1080             				, ETimeMedium), KErrNone,
       
  1081             				_L("RMobilePhoneBookStore::Read timed-out"));
       
  1082 		// Check KErrNone is returned for each phone book		
       
  1083         ASSERT_EQUALS(phoneBookReadStatus[i]->Int(), KErrNone, 
       
  1084         		_L("RMobilePhoneBookStore::Read returned with an error"));		
       
  1085 		}
       
  1086 
       
  1087 	//
       
  1088 	// TEST END
       
  1089 	//
       
  1090 
       
  1091     StartCleanup();
       
  1092 
       
  1093 	// 1 pbBuffer[0]
       
  1094 	// 2 pbBuffer[1]
       
  1095     // 3 pbWriteStatus1
       
  1096     // 4 pbWriteStatus2
       
  1097     // 5 pbReadStatus1
       
  1098     // 6 pbReadStatus2
       
  1099     for(TInt i = 0; i< noOfPhoneBooks; ++i)
       
  1100 		{
       
  1101 		phoneBookWriteStatus[i] = NULL;
       
  1102 		phoneBookReadStatus[i] = NULL;
       
  1103 		}
       
  1104     CleanupStack::PopAndDestroy(6,pbBuffer[0]);	
       
  1105 	}
       
  1106 
       
  1107 
       
  1108 
       
  1109 CCTSYIntegrationTestPhoneBookStore0006Base::CCTSYIntegrationTestPhoneBookStore0006Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1110 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1111 /**
       
  1112  * Constructor.
       
  1113  */
       
  1114 	{
       
  1115 	
       
  1116 	}
       
  1117 
       
  1118 CCTSYIntegrationTestPhoneBookStore0006Base::~CCTSYIntegrationTestPhoneBookStore0006Base()
       
  1119 /**
       
  1120  * Destructor.
       
  1121  */
       
  1122 	{
       
  1123 	}
       
  1124 
       
  1125 void CCTSYIntegrationTestPhoneBookStore0006Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  1126 /**
       
  1127  * @SYMTestCaseDesc: Read with no SIM present.
       
  1128  * @SYMTestExpectedResults: Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  1129  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  1130  */
       
  1131 	{
       
  1132 
       
  1133 	//
       
  1134 	// SET UP
       
  1135 	//
       
  1136 
       
  1137 	//
       
  1138 	// SET UP END
       
  1139 	//
       
  1140 	
       
  1141 	StartTest();
       
  1142 	
       
  1143 	//
       
  1144 	// TEST START
       
  1145 	//
       
  1146 	
       
  1147 	
       
  1148 	// Remove SIM from phone. 
       
  1149 	TBuf<70> prompt(_L("Please ensure that you have removed the SIM before running this test"));
       
  1150 	DisplayUserInteractionPromptL(prompt); // 30 seconds
       
  1151 	
       
  1152 	// Get the phone book subsession. 
       
  1153 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  1154 			, KMainPhone, aPhoneBookId);
       
  1155 
       
  1156 	// Read an entry from the phone book. 
       
  1157 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  1158 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1159 	CleanupStack::PushL(pbBuffer);
       
  1160 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  1161 
       
  1162 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  1163 			, EMobilePhoneBookStoreRead);	
       
  1164 	CleanupStack::PushL(phoneBookReadStatus);
       
  1165 	phoneBookStore.Read(phoneBookReadStatus, 1, 1, pbData);
       
  1166 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  1167 			, ETimeMedium), KErrNone,
       
  1168 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  1169 	
       
  1170 	// Check KErrEtelInitialisationFailure is returned.
       
  1171 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrEtelInitialisationFailure, 
       
  1172 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  1173 
       
  1174 	//
       
  1175 	// TEST END
       
  1176 	//
       
  1177 
       
  1178     StartCleanup();
       
  1179 	
       
  1180 	//1 pbBuffer
       
  1181 	//2 phoneBookReadStatus
       
  1182 	CleanupStack::PopAndDestroy(2,pbBuffer);	
       
  1183 	
       
  1184 	}
       
  1185 
       
  1186 
       
  1187 CCTSYIntegrationTestPhoneBookStore0007Base::CCTSYIntegrationTestPhoneBookStore0007Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1188 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1189 /**
       
  1190  * Constructor.
       
  1191  */
       
  1192 	{
       
  1193 	
       
  1194 	}
       
  1195 
       
  1196 CCTSYIntegrationTestPhoneBookStore0007Base::~CCTSYIntegrationTestPhoneBookStore0007Base()
       
  1197 /**
       
  1198  * Destructor.
       
  1199  */
       
  1200 	{
       
  1201 	}
       
  1202 
       
  1203 void CCTSYIntegrationTestPhoneBookStore0007Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  1204 /**
       
  1205  * TestDesc: Cancel reading multiple entries.
       
  1206  * TestExpectedResults: Pass - Some entries read by the time the request is cancelled.
       
  1207  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  1208  */
       
  1209 	{
       
  1210 
       
  1211 	//
       
  1212 	// SET UP
       
  1213 	//
       
  1214 
       
  1215 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  1216 			, KMainPhone, aPhoneBookId);
       
  1217 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  1218 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  1219 	TExtEtelRequestStatus phoneStoreInfoStatus(phoneBookStore
       
  1220 		, EMobilePhoneStoreGetInfo);
       
  1221 	CleanupStack::PushL(phoneStoreInfoStatus);
       
  1222 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  1223 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  1224 	phoneBookStore.GetInfo(phoneStoreInfoStatus, phoneBookInfoPckg);	
       
  1225 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), KErrNone, 
       
  1226 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1227 	CHECK_EQUALS_L(phoneStoreInfoStatus.Int(),  KErrNone,
       
  1228 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1229 	
       
  1230 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess 
       
  1231 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  1232 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  1233 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  1234 		
       
  1235 	// deleting all entries from store
       
  1236 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  1237 		, EMobilePhoneStoreDeleteAll);
       
  1238 	CleanupStack::PushL(deleteStoreStatus);
       
  1239 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  1240 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  1241 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  1242 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  1243 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  1244 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  1245 
       
  1246 	// Write 100 entries to the phone book to a known slots. 
       
  1247 	TBuf8<KPBDataClientBuf100> pbData; // Client reserved space for phonebook data
       
  1248 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1249 	CleanupStack::PushL(pbBuffer);
       
  1250 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  1251 	
       
  1252 	const TInt count = phoneBookInfo.iTotalEntries / 2; // for FDN
       
  1253 	_LIT(KTel,"123456%03d");
       
  1254 	_LIT(KText,"TelNo %03d");
       
  1255 	CArrayFixFlat<TBuf<KBufSize> > *names;
       
  1256 	names = new ( ELeave ) CArrayFixFlat<TBuf<KBufSize> >( count );
       
  1257 	CleanupStack::PushL(names);
       
  1258 	CArrayFixFlat<TBuf<KBufSize> > *numbers;
       
  1259 	numbers = new ( ELeave ) CArrayFixFlat<TBuf<KBufSize> >( count );
       
  1260 	CleanupStack::PushL(numbers);
       
  1261 
       
  1262 	for(TInt i = 1; i<= count; ++i)
       
  1263 		{
       
  1264 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1265 		TBuf<KBufSize> tempNum;
       
  1266 		TBuf<KBufSize> tempName;
       
  1267 		tempNum.Format(KTel,i);
       
  1268 		numbers->AppendL(tempNum);		
       
  1269 		tempName.Format(KText,i);
       
  1270 		names->AppendL(tempName);
       
  1271 		TBool ret = EncodeTLVFormat(pbBuffer, numbers->At(i-1), (TUint8)RMobilePhone::EUnknownNumber
       
  1272 				, names->At(i-1));
       
  1273 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  1274 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  1275 		CleanupStack::PushL(phoneBookWriteStatus);
       
  1276 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  1277 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1278 				, ETimeMedium), KErrNone,
       
  1279 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  1280 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  1281 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1282 		pbData.FillZ();
       
  1283 		pbData.Zero();
       
  1284 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  1285 		}
       
  1286 
       
  1287 	//
       
  1288 	// SET UP END
       
  1289 	//
       
  1290 	
       
  1291 	StartTest();
       
  1292 	
       
  1293 	//
       
  1294 	// TEST START
       
  1295 	//
       
  1296 	
       
  1297 	// Read 100 entries from the phone book using RMobilePhoneBookStore::Read 
       
  1298 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore, EMobilePhoneBookStoreRead);
       
  1299 	CleanupStack::PushL(phoneBookReadStatus);
       
  1300 	phoneBookStore.Read(phoneBookReadStatus, 1, count, pbData);
       
  1301 	
       
  1302 	// Wait for 5 seconds. 
       
  1303 	User::After(5*KOneSecond);
       
  1304 	
       
  1305 	// Cancel the RMobilePhoneBookStore::Read request. 
       
  1306 	phoneBookStore.CancelAsyncRequest(EMobilePhoneBookStoreRead);
       
  1307 	
       
  1308 	// Check KErrCancel returned for the request.			
       
  1309 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrCancel, 
       
  1310 					_L("RMobilePhoneBookStore::Read Cancel returned incorrect error"));
       
  1311 
       
  1312 	// Check aEntry descriptor passed to RMobilePhoneBookStore::Read contains phone book entry information and contains >0 entries but <100 entries.
       
  1313 	TInt bufLen = pbData.Length(); 
       
  1314 
       
  1315 	for(TInt i=1; i<= count; ++i)
       
  1316 		{
       
  1317 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1318 		TBuf<KBufSize> readNumber;
       
  1319 		TBuf<KBufSize> readName;		
       
  1320 	
       
  1321 		// decode PB data received in TLV format
       
  1322 		TBool ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, i);
       
  1323 		// if decode failed check that number of entries read is between 1 - 99
       
  1324 		if(!ret)
       
  1325 			{
       
  1326 			ASSERT_TRUE((i >= 0 && i < count ), _L("RMobilePhoneBookStore::Read Cancel returned entries out of range 0-100"));
       
  1327 			break;
       
  1328 			}
       
  1329 		ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
  1330 		ASSERT_EQUALS_DES16(numbers->At(i-1), readNumber,
       
  1331 			_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
  1332 		ASSERT_EQUALS_DES16(names->At(i-1), readName,
       
  1333 			_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
  1334 		}
       
  1335 	
       
  1336 	//
       
  1337 	// TEST END
       
  1338 	//
       
  1339 
       
  1340     StartCleanup();
       
  1341 	
       
  1342 	//1 phoneStoreInfoStatus
       
  1343 	//2 deleteStoreStatus
       
  1344     //3 pbBuffer
       
  1345     //4 names
       
  1346     //5 numbers
       
  1347     //6 phoneBookReadStatus
       
  1348     CleanupStack::PopAndDestroy(6,&phoneStoreInfoStatus);
       
  1349 	
       
  1350 	}
       
  1351 
       
  1352 
       
  1353 
       
  1354 CCTSYIntegrationTestPhoneBookStore0008Base::CCTSYIntegrationTestPhoneBookStore0008Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1355 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1356 /**
       
  1357  * Constructor.
       
  1358  */
       
  1359 	{
       
  1360 	
       
  1361 	}
       
  1362 
       
  1363 CCTSYIntegrationTestPhoneBookStore0008Base::~CCTSYIntegrationTestPhoneBookStore0008Base()
       
  1364 /**
       
  1365  * Destructor.
       
  1366  */
       
  1367 	{
       
  1368 	}
       
  1369 
       
  1370 void CCTSYIntegrationTestPhoneBookStore0008Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  1371 /**
       
  1372  * TestDesc: Write national, international numbers to the SIM phone book.
       
  1373  * TestExpectedResults: Pass - Valid numbers written correctly
       
  1374  * Reason for test: Verify entries are written correctly and can be read.
       
  1375  */
       
  1376 	{
       
  1377 
       
  1378 	//
       
  1379 	// SET UP
       
  1380 	//
       
  1381 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL
       
  1382 							(KMainServer, KMainPhone, aPhoneBookId);
       
  1383 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  1384 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  1385 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  1386 		, EMobilePhoneStoreGetInfo);
       
  1387 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  1388 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  1389 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  1390 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1391 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1392 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1393 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1394 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1395 	 // Ensure that SIM used is not full.
       
  1396 	if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
  1397 		{
       
  1398 		// delete some entries
       
  1399 		TInt index = 1;
       
  1400 		
       
  1401 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  1402 		CleanupStack::PushL(deleteStoreStatus);
       
  1403 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1404 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1405 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1406 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1407 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1408 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1409 		index = 2;
       
  1410 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1411 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1412 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1413 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1414 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1415 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1416 		}
       
  1417 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1418 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1419 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1420 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1421 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1422 	CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
  1423 		 _L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  1424 
       
  1425 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess | KCapsNotifyEvent 
       
  1426 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  1427 						  |	RMobilePhoneStore::KCapsReadAccess
       
  1428 						  | RMobilePhoneStore::KCapsNotifyEvent;
       
  1429 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  1430 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  1431 		
       
  1432 	//
       
  1433 	// SET UP END
       
  1434 	//
       
  1435 	
       
  1436 	StartTest();
       
  1437 	
       
  1438 	//
       
  1439 	// TEST START
       
  1440 	//
       
  1441 	TInt const count = 2;
       
  1442 	
       
  1443 	TFixedArray<TBuf<KBufSize>,count> names;
       
  1444 	TFixedArray<TBuf<KBufSize>,count> numbers;	
       
  1445 	names[0].Copy(KAnnText);
       
  1446 	numbers[0].Copy(KAnnPhoneNum);
       
  1447 	names[1].Copy(_L("IntrntnlName"));
       
  1448 	numbers[1].Copy(_L("+441632960000"));
       
  1449 	
       
  1450 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  1451 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1452 	CleanupStack::PushL(pbBuffer);
       
  1453 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  1454 	
       
  1455 	// ===  Find out how many entries are used in the phone book ===
       
  1456 
       
  1457 	for(TInt i = 0; i < count; ++i)
       
  1458 		{
       
  1459 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  1460 		
       
  1461 		// Get phone store information using RMobilePhone::GetPhoneStoreInfo 
       
  1462 		// Store the iUsedEntries returned. 
       
  1463 		TInt mobileGetPhoneStoreUsedEntries = 0;
       
  1464 
       
  1465 		// Get phone book store information using RMobilePhoneStore::GetInfo 
       
  1466 		// Store the iUsedEntries returned. 
       
  1467 		TInt mobileGetInfoUsedEntries = 0;
       
  1468 		RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  1469 		
       
  1470 		ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  1471 				phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  1472 				_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  1473 	
       
  1474 		// ===  Write a valid entry ===
       
  1475 	
       
  1476 		// Write a valid entry with a national number to the phone book specifying a specific index to store the entry which does not contain an entry. 
       
  1477 		// write national number
       
  1478 		TInt index = -1;		
       
  1479 
       
  1480 		// post notification for RMobilePhoneBookStore::Write		 
       
  1481 		TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  1482 		CleanupStack::PushL(notifyStoreEventStatus);
       
  1483 		TUint32 event=0;
       
  1484 		TInt notifyIndex=0;	
       
  1485 		phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  1486 		pbData.FillZ();
       
  1487 		pbData.Zero();
       
  1488 		TBool ret = EncodeTLVFormat(pbBuffer, numbers[i], (TUint8)RMobilePhone::EUnknownNumber
       
  1489 				, names[i]);
       
  1490 		ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));	
       
  1491 		
       
  1492 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  1493 		CleanupStack::PushL(phoneBookWriteStatus);
       
  1494 		phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  1495 		ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1496 				, ETimeMedium), KErrNone,
       
  1497 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  1498 		ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrNone, 
       
  1499 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1500 	
       
  1501 		// Check RMobilePhoneStore::NotifyStoreEvent completes with RMobilePhoneStore::KStoreEntryAdded
       
  1502 		iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryAdded,notifyIndex,KErrNone);
       
  1503 		
       
  1504 		// ===  Read the written entry ===
       
  1505 	
       
  1506 		// Read the entry from the phone book. 
       
  1507 		pbData.FillZ();
       
  1508 		pbData.Zero();		
       
  1509 		TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  1510 			, EMobilePhoneBookStoreRead);	
       
  1511 		CleanupStack::PushL(phoneBookReadStatus);
       
  1512 		
       
  1513 		// For each of the filled phone book slots, read a single entry from the phone book using RMobilePhoneBookStore::Read and setting aNumSlots = 1		
       
  1514 		phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  1515 		ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  1516 			, ETimeMedium), KErrNone,
       
  1517 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  1518 		ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
  1519 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  1520 	
       
  1521 		// Check that the entry information is the same as that written.
       
  1522 		TBuf<KBufSize> readNumber;
       
  1523 		TBuf<KBufSize> readName;		
       
  1524 		TInt bufLen = pbData.Length(); 
       
  1525 	
       
  1526 		// decode PB data received in TLV format		
       
  1527 		ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
  1528 		ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
  1529 		ASSERT_EQUALS_DES16(numbers[i], readNumber,
       
  1530 			_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
  1531 		ASSERT_EQUALS_DES16(names[i], readName,
       
  1532 			_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
  1533 	
       
  1534 		// ===  Get the number of used entries and check it is 1 higher than before writing the new entry ===
       
  1535 		// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 higher than that stored.
       
  1536 		// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is 1 higher than that stored.
       
  1537 		ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, phoneBookInfoPckg,
       
  1538 							mobilePhone,mobileGetInfoUsedEntries+1,  mobileGetPhoneStoreUsedEntries+1),
       
  1539 					KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  1540 		
       
  1541 		//1 notifyStoreEventStatus
       
  1542 		//2 phoneBookWriteStatus
       
  1543 		//3 phoneBookReadStatus
       
  1544 		CleanupStack::PopAndDestroy(3,&notifyStoreEventStatus);				
       
  1545 		}
       
  1546 	//
       
  1547 	// TEST END
       
  1548 	//
       
  1549 
       
  1550     StartCleanup();
       
  1551 	
       
  1552 	//1 phoneBookStoreInfoStatus
       
  1553 	//2 pbBuffer
       
  1554 	CleanupStack::PopAndDestroy(2,&phoneBookStoreInfoStatus);
       
  1555 	
       
  1556 	
       
  1557 	}
       
  1558 
       
  1559 
       
  1560 
       
  1561 CCTSYIntegrationTestPhoneBookStore0009Base::CCTSYIntegrationTestPhoneBookStore0009Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1562 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1563 /**
       
  1564  * Constructor.
       
  1565  */
       
  1566 	{
       
  1567 	
       
  1568 	}
       
  1569 
       
  1570 CCTSYIntegrationTestPhoneBookStore0009Base::~CCTSYIntegrationTestPhoneBookStore0009Base()
       
  1571 /**
       
  1572  * Destructor.
       
  1573  */
       
  1574 	{
       
  1575 	}
       
  1576 
       
  1577 void CCTSYIntegrationTestPhoneBookStore0009Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  1578 /**
       
  1579  * TestDesc: Write invalid entries to SIM phone book (e.g. name too long)
       
  1580  * TestExpectedResults: Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  1581  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  1582  */
       
  1583 	{
       
  1584 
       
  1585 	//
       
  1586 	// SET UP
       
  1587 	//
       
  1588 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  1589 			, KMainPhone, aPhoneBookId);
       
  1590 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  1591 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  1592 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  1593 		, EMobilePhoneStoreGetInfo);
       
  1594 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  1595 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  1596 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  1597 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1598 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1599 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1600 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1601 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1602 	
       
  1603 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess 
       
  1604 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  1605 						  |	RMobilePhoneStore::KCapsReadAccess;
       
  1606 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  1607 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  1608 
       
  1609 	// Ensure there are at least 3 free slots in the phone book 
       
  1610 	if (phoneBookInfo.iUsedEntries + 3 >= phoneBookInfo.iTotalEntries)    
       
  1611 		{
       
  1612 		// delete some entries
       
  1613 		TInt index = 1;
       
  1614 		
       
  1615 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  1616 		CleanupStack::PushL(deleteStoreStatus);
       
  1617 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1618 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1619 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1620 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1621 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1622 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1623 		index = 2;
       
  1624 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1625 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1626 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1627 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1628 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1629 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1630 		index = 3;
       
  1631 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1632 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1633 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1634 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1635 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1636 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1637 		CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
  1638 		}
       
  1639 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1640 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1641 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1642 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1643 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1644 	if(phoneBookInfo.iTotalEntries != -1)
       
  1645 		{
       
  1646 		CHECK_TRUE_L(phoneBookInfo.iUsedEntries+3 < phoneBookInfo.iTotalEntries,
       
  1647 			_L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  1648 		}
       
  1649 	//
       
  1650 	// SET UP END
       
  1651 	//
       
  1652 	
       
  1653 	StartTest();
       
  1654 	
       
  1655 	//
       
  1656 	// TEST START
       
  1657 	//
       
  1658 	
       
  1659 	
       
  1660 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  1661 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1662 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1663 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1664 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1665 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1666 
       
  1667 	// Store iUsedEntries, iMaxNumLength and iMaxTextLength returned for future use 
       
  1668 	TInt mobilePhoneBookStoreUsedEntries = phoneBookInfo.iUsedEntries;
       
  1669 
       
  1670 	// ===  Attempt to write a name that is too long ===
       
  1671 
       
  1672 	TInt index = -1;	
       
  1673 
       
  1674 	// Write an entry to the SIM phone book which has a name of length > iMaxTextLength 				 
       
  1675 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  1676 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1677 	CleanupStack::PushL(pbBuffer);
       
  1678 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  1679 	TBuf<KBufSize> names(KTextTooLong);
       
  1680 	TBuf<KBufSize> numbers(KAnnPhoneNum);	
       
  1681 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  1682 			, names);
       
  1683 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  1684 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  1685 	CleanupStack::PushL(phoneBookWriteStatus);
       
  1686 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  1687 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1688 			, ETimeMedium), KErrNone,
       
  1689 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  1690 			
       
  1691 	// Check KErrGsm0707TextStringTooLong returned
       
  1692 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrGsm0707TextStringTooLong, 
       
  1693 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1694 
       
  1695 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  1696 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1697 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1698 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1699 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1700 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1701 
       
  1702 	// Check that iUsedEntries is same as that stored earlier
       
  1703 	ASSERT_EQUALS(phoneBookInfo.iUsedEntries,mobilePhoneBookStoreUsedEntries,
       
  1704 		 _L("RMobilePhoneBookStore::GetInfo phone book contains more than number of entries written."));
       
  1705 
       
  1706 	// ===  Attempt to write a number that is too long ===
       
  1707 
       
  1708 	// Write an entry to the SIM phone book which has a number of length > iMaxNumLength 
       
  1709 	names.Copy(KAnnText);
       
  1710 	numbers.Copy(KNumberTooLong);	
       
  1711 	pbData.FillZ();
       
  1712 	pbData.Zero();
       
  1713 	ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  1714 			, names);
       
  1715 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  1716 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  1717 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1718 			, ETimeMedium), KErrNone,
       
  1719 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  1720 
       
  1721 		// code block below to be deleted after the defect is fixed
       
  1722 		{
       
  1723 		ERR_PRINTF1(_L("<font color=Cyan>$CTSYProblem: RMobilePhoneBookStore::Write check for MaxNumLength not present in ctsy, forcing failure.<font color=Black>"));
       
  1724 		ASSERT_TRUE(EFalse, _L("force failure for RMobilePhoneBookStore::Write"));
       
  1725 		}
       
  1726 	// Check KErrGsm0707TextStringTooLong returned
       
  1727 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrGsm0707TextStringTooLong, 
       
  1728 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1729 
       
  1730 	// Check that iUsedEntries is same as that stored earlier
       
  1731 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1732 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1733 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1734 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1735 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1736 	ASSERT_EQUALS(phoneBookInfo.iUsedEntries,mobilePhoneBookStoreUsedEntries,
       
  1737 	 _L("RMobilePhoneBookStore::GetInfo phone book contains more than number of entries written."));
       
  1738 
       
  1739 	// ===  Attempt to write a corrupt data entry ===
       
  1740 
       
  1741 	// Write an entry to the SIM phone book with aPBData = random data (a descriptor containing no known tags from RMobilePhoneBookStore::TMobilePBFieldTags) 
       
  1742 	pbData.FillZ();
       
  1743 	pbData.Zero();
       
  1744 	pbData = _L8("randomText");
       
  1745 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  1746 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1747 			, ETimeLong), KErrNone,
       
  1748 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  1749 	
       
  1750 	// Check KErrArgument returned
       
  1751 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrArgument, 
       
  1752 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1753 
       
  1754 	// Check that iUsedEntries is same as that stored earlier
       
  1755 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1756 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1757 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1758 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1759 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1760 	ASSERT_EQUALS(phoneBookInfo.iUsedEntries,mobilePhoneBookStoreUsedEntries,
       
  1761 	 _L("RMobilePhoneBookStore::GetInfo phone book contains more than number of entries written."));
       
  1762 
       
  1763 	
       
  1764 	//
       
  1765 	// TEST END
       
  1766 	//
       
  1767 
       
  1768     StartCleanup();
       
  1769 	
       
  1770 	//1 phoneBookStoreInfoStatus
       
  1771 	//2 pbBuffer
       
  1772 	//3 phoneBookWriteStatus
       
  1773 	CleanupStack::PopAndDestroy(3,&phoneBookStoreInfoStatus);
       
  1774 	
       
  1775 	}
       
  1776 
       
  1777 
       
  1778 
       
  1779 CCTSYIntegrationTestPhoneBookStore0010Base::CCTSYIntegrationTestPhoneBookStore0010Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1780 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1781 /**
       
  1782  * Constructor.
       
  1783  */
       
  1784 	{
       
  1785 	
       
  1786 	}
       
  1787 
       
  1788 CCTSYIntegrationTestPhoneBookStore0010Base::~CCTSYIntegrationTestPhoneBookStore0010Base()
       
  1789 /**
       
  1790  * Destructor.
       
  1791  */
       
  1792 	{
       
  1793 	}
       
  1794 
       
  1795 void CCTSYIntegrationTestPhoneBookStore0010Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  1796 /**
       
  1797  * TestDesc: Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields. 
       
  1798  * TestExpectedResults: Pass - A 40 digit number can be stored and retrieved.
       
  1799  * Reason for test: Verify entry is written to the phone book.
       
  1800  */
       
  1801 	{
       
  1802 
       
  1803 	//
       
  1804 	// SET UP
       
  1805 	//
       
  1806 	
       
  1807 	// Insert USIM which supports extension fields, boot phone, load TSY etc. 
       
  1808 	TBuf<80> prompt(_L("Please insert USIM which supports extension fields, boot phone, load TSY etc"));
       
  1809 	DisplayUserInteractionPromptL(prompt); // 30 seconds
       
  1810 
       
  1811 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  1812 			, KMainPhone, aPhoneBookId);
       
  1813 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  1814 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  1815 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  1816 		, EMobilePhoneStoreGetInfo);
       
  1817 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  1818 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  1819 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  1820 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1821 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1822 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1823 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1824 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1825 	
       
  1826 	// Ensure SIM phone book is not full. 
       
  1827 	if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
  1828 		{
       
  1829 		// delete some entries
       
  1830 		TInt index = 1;
       
  1831 		
       
  1832 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  1833 		CleanupStack::PushL(deleteStoreStatus);
       
  1834 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1835 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1836 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1837 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1838 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1839 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1840 		index = 2;
       
  1841 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  1842 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  1843 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  1844 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  1845 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  1846 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  1847 		CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
  1848 		}
       
  1849 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1850 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1851 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1852 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1853 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1854 	CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
  1855 				_L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  1856 
       
  1857 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess 
       
  1858 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  1859 						  |	RMobilePhoneStore::KCapsReadAccess;
       
  1860 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  1861 		_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  1862 
       
  1863 	
       
  1864 	//
       
  1865 	// SET UP END
       
  1866 	//
       
  1867 	
       
  1868 	StartTest();
       
  1869 	
       
  1870 	//
       
  1871 	// TEST START
       
  1872 	//
       
  1873 	
       
  1874 	// ===  Find out how many entries are used in the phone book ===
       
  1875 
       
  1876 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  1877 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1878 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1879 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1880 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1881 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1882 
       
  1883 	// Store iUsedEntries returned for future use 
       
  1884 	TInt mobilePhoneBookStoreUsedEntries = phoneBookInfo.iUsedEntries;
       
  1885 
       
  1886 	// ===  Write entry to phone book into next free slot ===
       
  1887 
       
  1888 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Write	
       
  1889 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  1890 	CleanupStack::PushL(notifyStoreEventStatus);
       
  1891 	TUint32 event=0;
       
  1892 	TInt notifyIndex=0;	
       
  1893 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);	
       
  1894 				 
       
  1895 	 // Write a 40 digit long number to the SIM phone book supplying aEntry.index = -1 
       
  1896 	 TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  1897 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  1898 	CleanupStack::PushL(pbBuffer);
       
  1899 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  1900 	_LIT16(KLongPhoneNum,"1234567890123456789012345678901234567890");	
       
  1901 	TBuf<KBufSize> names(KAndersText);
       
  1902 	TBuf<KBufSize> numbers(KLongPhoneNum);	
       
  1903 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  1904 			, names);
       
  1905 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  1906 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  1907 	CleanupStack::PushL(phoneBookWriteStatus);
       
  1908 	TInt index = -1;
       
  1909 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  1910 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  1911 			, ETimeMedium), KErrNone,
       
  1912 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  1913 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrNone, 
       
  1914 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  1915 
       
  1916 	// Check RMobilePhoneStore::NotifyStoreEvent returns KStoreEntryAdded
       
  1917 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryAdded,notifyIndex,KErrNone);
       
  1918 
       
  1919 	// ===  Get the number of used entries and check it is 1 higher than before writing the new entry ===
       
  1920 
       
  1921 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 higher than that stored.
       
  1922 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  1923 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  1924 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  1925 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  1926 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  1927 	ASSERT_EQUALS(phoneBookInfo.iUsedEntries,mobilePhoneBookStoreUsedEntries+1,
       
  1928 	 _L("RMobilePhoneBookStore::GetInfo phone book contains more than number of entries written."));
       
  1929 
       
  1930 	// ===  Read entry ===
       
  1931 
       
  1932 	// Read the written entry from the SIM. 
       
  1933 	pbData.FillZ();
       
  1934 	pbData.Zero();
       
  1935 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore, EMobilePhoneBookStoreRead);
       
  1936 	CleanupStack::PushL(phoneBookReadStatus);
       
  1937 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);	
       
  1938 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus, ETimeMedium),KErrNone, 
       
  1939 					_L("RMobilePhoneBookStore::Read did not complete"));
       
  1940 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
  1941 					_L("RMobilePhoneBookStore::Read Cancel returned incorrect error"));
       
  1942 	
       
  1943 	// Check entry information is correct.
       
  1944 	TInt bufLen = pbData.Length(); 
       
  1945 
       
  1946 	TBuf<KBufSize> readNumber;
       
  1947 	TBuf<KBufSize> readName;		
       
  1948 	// decode PB data received in TLV format		
       
  1949 	ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
  1950 	ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));				
       
  1951 	ASSERT_EQUALS_DES16(numbers, readNumber,
       
  1952 		_L("RMobilePhoneBookStore::Read completed with incorrect number"));	
       
  1953 	ASSERT_EQUALS_DES16(names, readName,
       
  1954 		_L("RMobilePhoneBookStore::Read completed with incorrect name"));		
       
  1955 
       
  1956 	//
       
  1957 	// TEST END
       
  1958 	//
       
  1959 
       
  1960     StartCleanup();
       
  1961 	
       
  1962 	//1 phoneBookStoreInfoStatus
       
  1963 	//2 pbBuffer
       
  1964 	//3 notifyStoreEventStatus
       
  1965 	//4 phoneBookWriteStatus
       
  1966 	//5 phoneBookReadStatus
       
  1967 	CleanupStack::PopAndDestroy(5,&phoneBookStoreInfoStatus);
       
  1968 	
       
  1969 	}
       
  1970 
       
  1971 
       
  1972 
       
  1973 CCTSYIntegrationTestPhoneBookStore0011Base::CCTSYIntegrationTestPhoneBookStore0011Base(CEtelSessionMgr& aEtelSessionMgr)
       
  1974 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  1975 /**
       
  1976  * Constructor.
       
  1977  */
       
  1978 	{
       
  1979 	
       
  1980 	}
       
  1981 
       
  1982 CCTSYIntegrationTestPhoneBookStore0011Base::~CCTSYIntegrationTestPhoneBookStore0011Base()
       
  1983 /**
       
  1984  * Destructor.
       
  1985  */
       
  1986 	{
       
  1987 	}
       
  1988 
       
  1989 void CCTSYIntegrationTestPhoneBookStore0011Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  1990 /**
       
  1991  * TestDesc: Write an entry to phonebook at index of -1 (first free slot).
       
  1992  * TestExpectedResults: Pass - Entry written.
       
  1993  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  1994  */
       
  1995 	{
       
  1996 
       
  1997 	//
       
  1998 	// SET UP
       
  1999 	//
       
  2000 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2001 			, KMainPhone, aPhoneBookId);
       
  2002 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2003 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2004 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2005 		, EMobilePhoneStoreGetInfo);
       
  2006 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2007 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2008 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2009 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2010 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2011 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2012 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2013 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2014 	
       
  2015 	// Ensure SIM phone book is not full. 
       
  2016 	if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
  2017 		{
       
  2018 		// delete some entries
       
  2019 		TInt index = 1;
       
  2020 		
       
  2021 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  2022 		CleanupStack::PushL(deleteStoreStatus);
       
  2023 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  2024 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  2025 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  2026 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  2027 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  2028 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  2029 		index = 2;
       
  2030 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  2031 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  2032 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  2033 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  2034 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  2035 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  2036 		CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
  2037 		}
       
  2038 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2039 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2040 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2041 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2042 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2043 	CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
  2044 				_L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  2045 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess | KCapsNotifyEvent 
       
  2046 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  2047 						|	RMobilePhoneStore::KCapsReadAccess
       
  2048 						| 	RMobilePhoneStore::KCapsNotifyEvent;
       
  2049 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  2050 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  2051 
       
  2052 	//
       
  2053 	// SET UP END
       
  2054 	//
       
  2055 	
       
  2056 	StartTest();
       
  2057 	
       
  2058 	//
       
  2059 	// TEST START
       
  2060 	//
       
  2061 	
       
  2062 	
       
  2063 	// ===  Find out how many entries are used in the phone book ===
       
  2064 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  2065 	// Store iUsedEntries returned for future use 
       
  2066 	TInt mobileGetInfoUsedEntries = 0;
       
  2067 
       
  2068 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  2069 	// Store iUsedEntries returned for future use 
       
  2070 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  2071 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  2072 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  2073 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  2074 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  2075 	
       
  2076 	// ===  Write an entry to the first free slot ===	
       
  2077 	TInt index = -1;
       
  2078 	
       
  2079 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Write				 
       
  2080 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  2081 	CleanupStack::PushL(notifyStoreEventStatus);
       
  2082 	TUint32 event=0;
       
  2083 	TInt notifyIndex=0;	
       
  2084 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  2085 	
       
  2086 	// Write a valid entry to the phone book using RMobilePhoneBookStore::Write supplying aEntry.index = -1 
       
  2087 	TBuf<KBufSize> names(KAndersText);
       
  2088 	TBuf<KBufSize> numbers(KAndersPhoneNum);	
       
  2089 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2090 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2091 	CleanupStack::PushL(pbBuffer);
       
  2092 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  2093 
       
  2094 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2095 			, names);
       
  2096 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  2097 	
       
  2098 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2099 	CleanupStack::PushL(phoneBookWriteStatus);
       
  2100 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2101 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2102 			, ETimeMedium), KErrNone,
       
  2103 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2104 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrNone, 
       
  2105 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2106 
       
  2107 	// Store the aEntry.iIndex returned for future use 
       
  2108 	TInt returnIndex = index;
       
  2109 	
       
  2110 	// Check RMobilePhoneStore::NotifyStoreEvent returns RMobilePhoneBookStore::KStoreEntryAdded
       
  2111 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryAdded,notifyIndex,KErrNone);
       
  2112 	
       
  2113 	// ===  Get the number of used entries and check it is 1 higher than before writing the new entry ===
       
  2114 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 higher than that stored.
       
  2115 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is 1 higher than that stored.
       
  2116 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  2117 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries+1,  mobileGetPhoneStoreUsedEntries+1),
       
  2118 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  2119 	
       
  2120 	// ===  Read the written entry ===
       
  2121 
       
  2122 	// Read the written entry at index aEntry.iIndex returned from the write 
       
  2123 	pbData.FillZ();
       
  2124 	pbData.Zero();		
       
  2125 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  2126 		, EMobilePhoneBookStoreRead);	
       
  2127 	CleanupStack::PushL(phoneBookReadStatus);	
       
  2128 	phoneBookStore.Read(phoneBookReadStatus, returnIndex, 1, pbData);
       
  2129 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  2130 		, ETimeMedium), KErrNone,
       
  2131 		_L("RMobilePhoneBookStore::Read timed-out"));
       
  2132 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
  2133 		_L("RMobilePhoneBookStore::Read returned with an error"));
       
  2134 		
       
  2135 	// Check RMobilePhoneBookStore::Read returns correct entry information 
       
  2136 	TBuf<KBufSize> readNumber;
       
  2137 	TBuf<KBufSize> readName;		
       
  2138 	TInt bufLen = pbData.Length(); 
       
  2139 	
       
  2140 	// decode PB data received in TLV format		
       
  2141 	ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
  2142 	ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
  2143 	ASSERT_EQUALS_DES16(numbers, readNumber,
       
  2144 		_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
  2145 	ASSERT_EQUALS_DES16(names, readName,
       
  2146 		_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
  2147 	
       
  2148 	//
       
  2149 	// TEST END
       
  2150 	//
       
  2151 
       
  2152     StartCleanup();
       
  2153 	
       
  2154     //1 phoneBookStoreInfoStatus
       
  2155     //2 pbBuffer	
       
  2156     //3 notifyStoreEventStatus
       
  2157 	//4 phoneBookWriteStatus
       
  2158 	//5 phoneBookReadStatus    
       
  2159 	CleanupStack::PopAndDestroy(5,&phoneBookStoreInfoStatus);
       
  2160 		
       
  2161 	}
       
  2162 
       
  2163 
       
  2164 
       
  2165 CCTSYIntegrationTestPhoneBookStore0012Base::CCTSYIntegrationTestPhoneBookStore0012Base(CEtelSessionMgr& aEtelSessionMgr)
       
  2166 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  2167 /**
       
  2168  * Constructor.
       
  2169  */
       
  2170 	{
       
  2171 	
       
  2172 	}
       
  2173 
       
  2174 CCTSYIntegrationTestPhoneBookStore0012Base::~CCTSYIntegrationTestPhoneBookStore0012Base()
       
  2175 /**
       
  2176  * Destructor.
       
  2177  */
       
  2178 	{
       
  2179 	}
       
  2180 
       
  2181 void CCTSYIntegrationTestPhoneBookStore0012Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  2182 /**
       
  2183  * TestDesc: Write an entry to phonebook supplying an invalid index.
       
  2184  * TestExpectedResults: Pass - KErrArgument returned when writing to an invalid index.
       
  2185  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  2186  */
       
  2187 	{
       
  2188 
       
  2189 	//
       
  2190 	// SET UP
       
  2191 	//
       
  2192 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2193 			, KMainPhone, aPhoneBookId);
       
  2194 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2195 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2196 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2197 		, EMobilePhoneStoreGetInfo);
       
  2198 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2199 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2200 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2201 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2202 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2203 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2204 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2205 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2206 	
       
  2207 	// Ensure phone book is not full. 
       
  2208 	if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
  2209 		{
       
  2210 		// delete some entries
       
  2211 		TInt index = 1;
       
  2212 		
       
  2213 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  2214 		CleanupStack::PushL(deleteStoreStatus);
       
  2215 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  2216 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  2217 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  2218 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  2219 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  2220 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  2221 		index = 2;
       
  2222 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  2223 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  2224 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  2225 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  2226 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  2227 					 _L("RMobilePhoneBookStore::Delete returned with an error."));			 
       
  2228 		CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
  2229 		}
       
  2230 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2231 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2232 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2233 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2234 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2235 	CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
  2236 			_L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  2237 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess 
       
  2238 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  2239 						|	RMobilePhoneStore::KCapsReadAccess;
       
  2240 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  2241 				_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  2242 
       
  2243 	//
       
  2244 	// SET UP END
       
  2245 	//
       
  2246 	
       
  2247 	StartTest();
       
  2248 	
       
  2249 	//
       
  2250 	// TEST START
       
  2251 	//
       
  2252 	TBuf<KBufSize> names(KAndersText);
       
  2253 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  2254 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2255 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2256 	CleanupStack::PushL(pbBuffer);
       
  2257 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  2258 
       
  2259 	// Repeat steps 1 to 3 for aEntry.index = -2, -10 
       
  2260 	const TInt indexCount = 3;
       
  2261 	TFixedArray<TInt,indexCount> indexList;
       
  2262 	indexList[0] = 0;
       
  2263 	indexList[1] = -2;
       
  2264 	indexList[2] = -10;
       
  2265 	
       
  2266 	for ( TInt i = 0; i < indexCount; ++i)
       
  2267 		{
       
  2268 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  2269 		
       
  2270 		// ===  1. Find out how many entries are used in the phone book ===
       
  2271 		// ===  Find out how many entries are used in the phone book ===
       
  2272 
       
  2273 		// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  2274 		// Store iUsedEntries returned for future use 
       
  2275 		TInt mobileGetInfoUsedEntries = 0;
       
  2276 
       
  2277 		// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  2278 		// Store iUsedEntries returned for future use 
       
  2279 		TInt mobileGetPhoneStoreUsedEntries = 0;
       
  2280 		
       
  2281 		RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  2282 		ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  2283 				phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  2284 				_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  2285 		
       
  2286 		// ===  2. Attempt to write an entry to invalid index ===
       
  2287 	
       
  2288 		// Write an entry using RMobilePhoneBookStore::Write 
       
  2289 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2290 				, names);
       
  2291 		ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  2292 		
       
  2293 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2294 		CleanupStack::PushL(phoneBookWriteStatus);
       
  2295 		phoneBookStore.Write(phoneBookWriteStatus, pbData, indexList[i]);
       
  2296 		ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2297 				, ETimeMedium), KErrNone,
       
  2298 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  2299 	
       
  2300 		// Check KErrArgument is returned
       
  2301 		ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrArgument, 
       
  2302 				_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2303 		
       
  2304 		// ===  3. Get the number of used entries and check it is same as before the attempted write ===
       
  2305 		// Check RMobilePhoneStore::GetInfo returns same iUsedEntries as before
       
  2306 		// Check RMobilePhone::GetPhoneStoreInfo returns same iUsedEntries as before
       
  2307 		ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  2308 				phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,  mobileGetPhoneStoreUsedEntries),
       
  2309 				KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  2310 
       
  2311 		//1 phoneBookWriteStatus
       
  2312 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);
       
  2313 		}
       
  2314 
       
  2315 
       
  2316 	// ===  Attempt to write an entry to an index that is higher than the max slot number ===
       
  2317 
       
  2318 	// Write an entry using RMobilePhoneBookStore::Write and aEntry.index = 10000 
       
  2319 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2320 	CleanupStack::PushL(phoneBookWriteStatus);
       
  2321 	TInt index = 10000;
       
  2322 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2323 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2324 			, ETimeMedium), KErrNone,
       
  2325 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2326 
       
  2327 	// Check error returned is not KErrNone
       
  2328 	ASSERT_TRUE(phoneBookWriteStatus.Int() != KErrNone, 
       
  2329 			_L("RMobilePhoneBookStore::Write returned with an error"));	
       
  2330 
       
  2331 	
       
  2332 	//
       
  2333 	// TEST END
       
  2334 	//
       
  2335 
       
  2336     StartCleanup();
       
  2337 	// 1 phoneBookStoreInfoStatus
       
  2338     // 2 pbBuffer
       
  2339     // 3 phoneBookWriteStatus
       
  2340 	CleanupStack::PopAndDestroy(3,&phoneBookStoreInfoStatus);	
       
  2341 	
       
  2342 	}
       
  2343 
       
  2344 
       
  2345 
       
  2346 CCTSYIntegrationTestPhoneBookStore0013Base::CCTSYIntegrationTestPhoneBookStore0013Base(CEtelSessionMgr& aEtelSessionMgr)
       
  2347 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  2348 /**
       
  2349  * Constructor.
       
  2350  */
       
  2351 	{
       
  2352 	}
       
  2353 
       
  2354 CCTSYIntegrationTestPhoneBookStore0013Base::~CCTSYIntegrationTestPhoneBookStore0013Base()
       
  2355 /**
       
  2356  * Destructor.
       
  2357  */
       
  2358 	{
       
  2359 	}
       
  2360 
       
  2361 void CCTSYIntegrationTestPhoneBookStore0013Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  2362 /**
       
  2363  * TestDesc: Write an entry which makes the phonebook full.
       
  2364  * TestExpectedResults: Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  2365  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  2366  */
       
  2367 	{
       
  2368 
       
  2369 	//
       
  2370 	// SET UP
       
  2371 	//
       
  2372 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2373 			, KMainPhone, aPhoneBookId);
       
  2374 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2375 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2376 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2377 		, EMobilePhoneStoreGetInfo);
       
  2378 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2379 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2380 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2381 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2382 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2383 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2384 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2385 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2386 	
       
  2387 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess | KCapsNotifyEvent 
       
  2388 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  2389 						|	RMobilePhoneStore::KCapsReadAccess
       
  2390 						| 	RMobilePhoneStore::KCapsNotifyEvent;
       
  2391 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  2392 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  2393 	
       
  2394 	//delete all entries before filling phone
       
  2395 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  2396 			, EMobilePhoneStoreDeleteAll);
       
  2397 	CleanupStack::PushL(deleteStoreStatus);
       
  2398 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  2399 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  2400 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  2401 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  2402 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  2403 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  2404 	
       
  2405 	// Fill phone book until there is only one slot free. 
       
  2406 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2407 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2408 	CleanupStack::PushL(pbBuffer);
       
  2409 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  2410 	
       
  2411 	const TUint32 count = phoneBookInfo.iTotalEntries - 1;
       
  2412 	_LIT(KTel,"123456%03d");
       
  2413 	_LIT(KText,"TelNo %03d");	
       
  2414 	TBuf<KBufSize> name;
       
  2415 	TBuf<KBufSize> number;
       
  2416 	
       
  2417 	for(TInt i = 1; i<= count; ++i)
       
  2418 		{
       
  2419 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  2420 		number.Format(KTel,i);
       
  2421 		name.Format(KText,i);
       
  2422 		TBool ret = EncodeTLVFormat(pbBuffer, number, (TUint8)RMobilePhone::EUnknownNumber
       
  2423 				, name);
       
  2424 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  2425 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2426 		CleanupStack::PushL(phoneBookWriteStatus);
       
  2427 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  2428 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2429 				, ETimeMedium), KErrNone,
       
  2430 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  2431 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  2432 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2433 		pbData.FillZ();
       
  2434 		pbData.Zero();
       
  2435 		number.FillZ();
       
  2436 		number.Zero();
       
  2437 		name.FillZ();
       
  2438 		name.Zero();		
       
  2439 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  2440 		}
       
  2441 	
       
  2442 	//
       
  2443 	// SET UP END
       
  2444 	//
       
  2445 	
       
  2446 	StartTest();
       
  2447 	
       
  2448 	//
       
  2449 	// TEST START
       
  2450 	//
       
  2451 	
       
  2452 	
       
  2453 	// ===  Find out how many entries are used in the phone book ===
       
  2454 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  2455 	// Store iUsedEntries returned for future use 
       
  2456 	TInt mobileGetInfoUsedEntries = 0;
       
  2457 
       
  2458 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  2459 	// Store iUsedEntries returned for future use 
       
  2460 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  2461 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  2462 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  2463 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  2464 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  2465 	
       
  2466 	// ===  Write an entry into the last free slot in the phone book ===
       
  2467 
       
  2468 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Write	
       
  2469 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  2470 	CleanupStack::PushL(notifyStoreEventStatus);
       
  2471 	TUint32 event=0;
       
  2472 	TInt notifyIndex=0;	
       
  2473 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  2474 	
       
  2475 	// Write an entry using RMobilePhoneBookStore::Write and aEntry.index = -1 
       
  2476 	TBuf<KBufSize> names1(KAndersText);
       
  2477 	TBuf<KBufSize> numbers1(KAndersPhoneNum);	
       
  2478 	TInt index = -1;	
       
  2479 	TBool ret = EncodeTLVFormat(pbBuffer, numbers1, (TUint8)RMobilePhone::EUnknownNumber
       
  2480 			, names1);
       
  2481 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  2482 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2483 	CleanupStack::PushL(phoneBookWriteStatus);
       
  2484 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2485 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2486 			, ETimeMedium), KErrNone,
       
  2487 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2488 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  2489 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2490 	
       
  2491 	// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreFull | KStoreEntryAdded
       
  2492 	TUint32 expectedEvent = RMobilePhoneStore::KStoreFull | RMobilePhoneStore::KStoreEntryAdded;
       
  2493 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,expectedEvent,notifyIndex,KErrNone);
       
  2494 
       
  2495 	// ===  Get the number of used entries and check it is 1 higher than before writing the new entry ===
       
  2496 
       
  2497 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 higher than that stored.
       
  2498 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is 1 higher than that stored.	
       
  2499 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  2500 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries+1,  mobileGetPhoneStoreUsedEntries+1),
       
  2501 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  2502 
       
  2503 	// ===  Read the written entry ===
       
  2504 
       
  2505 	// Read the written entry with RMobilePhoneBookStore::Read 
       
  2506 	pbData.FillZ();
       
  2507 	pbData.Zero();		
       
  2508 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  2509 		, EMobilePhoneBookStoreRead);	
       
  2510 	CleanupStack::PushL(phoneBookReadStatus);	
       
  2511 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  2512 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  2513 		, ETimeMedium), KErrNone,
       
  2514 		_L("RMobilePhoneBookStore::Read timed-out"));
       
  2515 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
  2516 		_L("RMobilePhoneBookStore::Read returned with an error"));
       
  2517 	
       
  2518 	// Check entry details are correct
       
  2519 	TBuf<KBufSize> readNumber;
       
  2520 	TBuf<KBufSize> readName;		
       
  2521 	TInt bufLen = pbData.Length(); 
       
  2522 	
       
  2523 	// decode PB data received in TLV format		
       
  2524 	ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
  2525 	ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
  2526 	ASSERT_EQUALS_DES16(numbers1, readNumber,
       
  2527 		_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
  2528 	ASSERT_EQUALS_DES16(names1, readName,
       
  2529 		_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
  2530 
       
  2531 	
       
  2532 	//
       
  2533 	// TEST END
       
  2534 	//
       
  2535 
       
  2536     StartCleanup();
       
  2537 	
       
  2538 	// 1 phoneBookStoreInfoStatus
       
  2539     // 2 deleteStoreStatus
       
  2540     // 3 pbBuffer
       
  2541     // 4 notifyStoreEventStatus
       
  2542     // 5 phoneBookWriteStatus
       
  2543     // 6 phoneBookReadStatus
       
  2544     CleanupStack::PopAndDestroy(6, &phoneBookStoreInfoStatus);
       
  2545 	
       
  2546 	}
       
  2547 
       
  2548 
       
  2549 
       
  2550 CCTSYIntegrationTestPhoneBookStore0014Base::CCTSYIntegrationTestPhoneBookStore0014Base(CEtelSessionMgr& aEtelSessionMgr)
       
  2551 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  2552 /**
       
  2553  * Constructor.
       
  2554  */
       
  2555 	{
       
  2556 	
       
  2557 	}
       
  2558 
       
  2559 CCTSYIntegrationTestPhoneBookStore0014Base::~CCTSYIntegrationTestPhoneBookStore0014Base()
       
  2560 /**
       
  2561  * Destructor.
       
  2562  */
       
  2563 	{
       
  2564 	}
       
  2565 
       
  2566 void CCTSYIntegrationTestPhoneBookStore0014Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  2567 /**
       
  2568  * TestDesc: Write an entry to phonebook when SIM is full.
       
  2569  * TestExpectedResults: Pass - Error is returned on attempt to write.
       
  2570  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  2571  */
       
  2572 	{
       
  2573 
       
  2574 	//
       
  2575 	// SET UP
       
  2576 	//
       
  2577 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2578 			, KMainPhone, aPhoneBookId);
       
  2579 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2580 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2581 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2582 		, EMobilePhoneStoreGetInfo);
       
  2583 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2584 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2585 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2586 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2587 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2588 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2589 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2590 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2591 
       
  2592 	//delete all entries before filling phone
       
  2593 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  2594 			, EMobilePhoneStoreDeleteAll);
       
  2595 	CleanupStack::PushL(deleteStoreStatus);
       
  2596 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  2597 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  2598 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  2599 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  2600 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  2601 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  2602 
       
  2603 	// Fill SIM phone book. 
       
  2604 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2605 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2606 	CleanupStack::PushL(pbBuffer);
       
  2607 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  2608 	
       
  2609 	const TUint32 maxPhonebookEntries  = phoneBookInfo.iTotalEntries;
       
  2610 	
       
  2611 	_LIT(KTel,"123456%03d");
       
  2612 	_LIT(KText,"TelNo %03d");	
       
  2613 	TBuf<KBufSize> names;
       
  2614 	TBuf<KBufSize> numbers;
       
  2615 	
       
  2616 	for(TInt i = 1; i<= maxPhonebookEntries ; ++i)
       
  2617 		{
       
  2618 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  2619 		numbers.Format(KTel,i);
       
  2620 		names.Format(KText,i);
       
  2621 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2622 				, names);
       
  2623 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  2624 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2625 		CleanupStack::PushL(phoneBookWriteStatus);
       
  2626 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  2627 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2628 				, ETimeMedium), KErrNone,
       
  2629 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  2630 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  2631 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2632 		pbData.FillZ();
       
  2633 		pbData.Zero();
       
  2634 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  2635 		}
       
  2636 
       
  2637 	//
       
  2638 	// SET UP END
       
  2639 	//
       
  2640 	
       
  2641 	StartTest();
       
  2642 	
       
  2643 	//
       
  2644 	// TEST START
       
  2645 	//
       
  2646 	
       
  2647 	
       
  2648 	// ===  Find out how many entries are used in the phone book ===
       
  2649 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  2650 	// Store iUsedEntries returned for future use 
       
  2651 	TInt mobileGetInfoUsedEntries = 0;
       
  2652 
       
  2653 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  2654 	// Store iUsedEntries returned for future use 
       
  2655 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  2656 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  2657 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  2658 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  2659 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  2660 	
       
  2661 	// ===  Attempt to write an entry to the phone book ===
       
  2662 
       
  2663 	// Write an entry using RMobilePhoneBookStore::Write and aEntry.index = -1 
       
  2664 	TInt index = -1;
       
  2665 	TBuf<KBufSize> names1(KAndersText);
       
  2666 	TBuf<KBufSize> numbers1(KAndersPhoneNum);
       
  2667 	
       
  2668 	TBool ret = EncodeTLVFormat(pbBuffer, numbers1, (TUint8)RMobilePhone::EUnknownNumber
       
  2669 			, names1);
       
  2670 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  2671 	
       
  2672 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2673 	CleanupStack::PushL(phoneBookWriteStatus);
       
  2674 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2675 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2676 			, ETimeMedium), KErrNone,
       
  2677 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2678 	
       
  2679 	// Check error != KErrNone is returned.
       
  2680 	ASSERT_TRUE(phoneBookWriteStatus.Int() != KErrNone, 
       
  2681 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2682 	
       
  2683 	// ===  Get the number of used entries and check it is the same as before attempted write ===
       
  2684 
       
  2685 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is same as before
       
  2686 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is same as before
       
  2687 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  2688 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,  mobileGetPhoneStoreUsedEntries),
       
  2689 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  2690 
       
  2691 	//
       
  2692 	// TEST END
       
  2693 	//
       
  2694 
       
  2695     StartCleanup();
       
  2696 	
       
  2697 	// 1 phoneBookStoreInfoStatus
       
  2698     // 2 deleteStoreStatus
       
  2699     // 3 pbBuffer
       
  2700     // 4 phoneBookWriteStatus
       
  2701     CleanupStack::PopAndDestroy(4, &phoneBookStoreInfoStatus);
       
  2702 	
       
  2703 	
       
  2704 	}
       
  2705 
       
  2706 
       
  2707 
       
  2708 CCTSYIntegrationTestPhoneBookStore0015Base::CCTSYIntegrationTestPhoneBookStore0015Base(CEtelSessionMgr& aEtelSessionMgr)
       
  2709 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  2710 /**
       
  2711  * Constructor.
       
  2712  */
       
  2713 	{
       
  2714 	
       
  2715 	}
       
  2716 
       
  2717 CCTSYIntegrationTestPhoneBookStore0015Base::~CCTSYIntegrationTestPhoneBookStore0015Base()
       
  2718 /**
       
  2719  * Destructor.
       
  2720  */
       
  2721 	{
       
  2722 	}
       
  2723 
       
  2724 void CCTSYIntegrationTestPhoneBookStore0015Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  2725 /**
       
  2726  * TestDesc: Edit an entry in the SIM phone book.
       
  2727  * TestExpectedResults: Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  2728  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  2729  */
       
  2730 	{
       
  2731 
       
  2732 	//
       
  2733 	// SET UP
       
  2734 	//
       
  2735 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2736 			, KMainPhone, aPhoneBookId);
       
  2737 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2738 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2739 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2740 		, EMobilePhoneStoreGetInfo);
       
  2741 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2742 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2743 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2744 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2745 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2746 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2747 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2748 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2749 	
       
  2750 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsReadAccess | KCapsNotifyEvent 
       
  2751 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  2752 						|  RMobilePhoneStore::KCapsReadAccess
       
  2753 						|  RMobilePhoneStore::KCapsNotifyEvent;
       
  2754 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  2755 						_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  2756 	
       
  2757 	// delete entry before writing to known slot	
       
  2758 	TInt index = 5;
       
  2759 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  2760 	CleanupStack::PushL(deleteStoreStatus);
       
  2761 	phoneBookStore.Delete(deleteStoreStatus,index);
       
  2762 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  2763 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  2764 	CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  2765 					|| deleteStoreStatus.Int() == KErrNone ),		
       
  2766 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  2767 	
       
  2768 	// Write an entry to a known slot in the phone book. 
       
  2769 	TBuf<KBufSize> names(KAndersText);
       
  2770 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  2771 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2772 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2773 	CleanupStack::PushL(pbBuffer);
       
  2774 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  2775 
       
  2776 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2777 			, names);
       
  2778 	CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  2779 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2780 	CleanupStack::PushL(phoneBookWriteStatus);
       
  2781 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2782 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2783 			, ETimeMedium), KErrNone,
       
  2784 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2785 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  2786 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2787 
       
  2788 	//
       
  2789 	// SET UP END
       
  2790 	//
       
  2791 	
       
  2792 	StartTest();
       
  2793 	
       
  2794 	//
       
  2795 	// TEST START
       
  2796 	//
       
  2797 	
       
  2798 	
       
  2799 	// ===  Find out how many entries are used in the phone book ===
       
  2800 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  2801 	// Store iUsedEntries returned for future use 
       
  2802 	TInt mobileGetInfoUsedEntries = 0;
       
  2803 
       
  2804 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  2805 	// Store iUsedEntries returned for future use 
       
  2806 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  2807 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  2808 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  2809 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  2810 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  2811 
       
  2812 	// ===  Write an entry to a slot in the phone book which already contains data ===
       
  2813 
       
  2814 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Write		
       
  2815 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  2816 	CleanupStack::PushL(notifyStoreEventStatus);
       
  2817 	TUint32 event=0;
       
  2818 	TInt notifyIndex=0;	
       
  2819 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  2820 	
       
  2821 	// Write an entry with a different name and number to specific slot 
       
  2822 	names.Copy(KAnnText);
       
  2823 	numbers.Copy(KAnnPhoneNum);
       
  2824 	pbData.FillZ();
       
  2825 	pbData.Zero();
       
  2826 	ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2827 			, names);
       
  2828 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  2829 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  2830 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2831 			, ETimeLong), KErrNone,
       
  2832 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  2833 	ASSERT_EQUALS(phoneBookWriteStatus.Int(), KErrNone, 
       
  2834 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2835 	
       
  2836 	// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreEntryChanged
       
  2837 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryChanged,notifyIndex,KErrNone);
       
  2838 
       
  2839 	// ===  Get the number of used entries and check it is same as before writing the entry ===
       
  2840 
       
  2841 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is same as before
       
  2842 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is same as before
       
  2843 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  2844 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,  mobileGetPhoneStoreUsedEntries),
       
  2845 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  2846 
       
  2847 	// ===  Read the written entry ===
       
  2848 
       
  2849 	// Read the written entry with RMobilePhoneBookStore::Read 
       
  2850 	pbData.FillZ();
       
  2851 	pbData.Zero();		
       
  2852 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  2853 		, EMobilePhoneBookStoreRead);	
       
  2854 	CleanupStack::PushL(phoneBookReadStatus);	
       
  2855 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  2856 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  2857 		, ETimeMedium), KErrNone,
       
  2858 		_L("RMobilePhoneBookStore::Read timed-out"));
       
  2859 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNone, 
       
  2860 		_L("RMobilePhoneBookStore::Read returned with an error"));
       
  2861 		
       
  2862 	// Check entry details are correct
       
  2863 	TBuf<KBufSize> readNumber;
       
  2864 	TBuf<KBufSize> readName;		
       
  2865 	TInt bufLen = pbData.Length(); 
       
  2866 	
       
  2867 	// decode PB data received in TLV format		
       
  2868 	ret = DecodeTLVFormat(pbBuffer, bufLen, readNumber, readName, 1);
       
  2869 	ASSERT_TRUE(ret, _L("DecodeTLVFormat failed"));
       
  2870 	ASSERT_EQUALS_DES16(numbers, readNumber,
       
  2871 		_L("RMobilePhoneBookStore::Read completed with incorrect number"));
       
  2872 	ASSERT_EQUALS_DES16(names, readName,
       
  2873 		_L("RMobilePhoneBookStore::Read completed with incorrect name"));
       
  2874 	
       
  2875 	//
       
  2876 	// TEST END
       
  2877 	//
       
  2878 
       
  2879     StartCleanup();
       
  2880 	
       
  2881     //1 phoneBookStoreInfoStatus
       
  2882     //2 deleteStoreStatus
       
  2883     //3 pbBuffer
       
  2884     //4 notifyStoreEventStatus
       
  2885     //5 phoneBookWriteStatus
       
  2886 	//6 phoneBookReadStatus
       
  2887 	CleanupStack::PopAndDestroy(6,&phoneBookStoreInfoStatus);
       
  2888 	
       
  2889 	}
       
  2890 
       
  2891 
       
  2892 
       
  2893 CCTSYIntegrationTestPhoneBookStore0016Base::CCTSYIntegrationTestPhoneBookStore0016Base(CEtelSessionMgr& aEtelSessionMgr)
       
  2894 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  2895 /**
       
  2896  * Constructor.
       
  2897  */
       
  2898 	{
       
  2899 	
       
  2900 	}
       
  2901 
       
  2902 CCTSYIntegrationTestPhoneBookStore0016Base::~CCTSYIntegrationTestPhoneBookStore0016Base()
       
  2903 /**
       
  2904  * Destructor.
       
  2905  */
       
  2906 	{
       
  2907 	}
       
  2908 
       
  2909 void CCTSYIntegrationTestPhoneBookStore0016Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  2910 /**
       
  2911  * TestDesc: Delete an entry from the SIM phone book.
       
  2912  * TestExpectedResults: Pass - Deletion is successful.
       
  2913  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  2914  */
       
  2915 	{
       
  2916 
       
  2917 	//
       
  2918 	// SET UP
       
  2919 	//
       
  2920 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  2921 			, KMainPhone, aPhoneBookId);
       
  2922 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  2923 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  2924 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  2925 		, EMobilePhoneStoreGetInfo);
       
  2926 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  2927 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  2928 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  2929 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  2930 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  2931 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  2932 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  2933 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  2934 
       
  2935 	// Ensure phone has KCapsReadAccess and KCapsWriteAccess capabilities. 
       
  2936 	TUint32 expectedCaps =  RMobilePhoneStore::KCapsReadAccess
       
  2937 							| RMobilePhoneStore::KCapsWriteAccess;
       
  2938 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  2939 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  2940 	
       
  2941 	//delete all entries before filling phonebook
       
  2942 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  2943 			, EMobilePhoneStoreDeleteAll);
       
  2944 	CleanupStack::PushL(deleteStoreStatus);
       
  2945 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  2946 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  2947 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  2948 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  2949 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  2950 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  2951 
       
  2952 	// Fill the first 250 slots in the phone book. 
       
  2953 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  2954 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  2955 	CleanupStack::PushL(pbBuffer);
       
  2956 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  2957 	
       
  2958 	const TUint32 count = phoneBookInfo.iTotalEntries;
       
  2959 	
       
  2960 	_LIT(KTel,"123456%03d");
       
  2961 	_LIT(KText,"TelNo %03d");	
       
  2962 	TBuf<KBufSize> names;
       
  2963 	TBuf<KBufSize> numbers;
       
  2964 	
       
  2965 	for(TInt i = 1; i<= count; ++i)
       
  2966 		{
       
  2967 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  2968 		numbers.Format(KTel,i);
       
  2969 		names.Format(KText,i);
       
  2970 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  2971 				, names);
       
  2972 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  2973 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  2974 		CleanupStack::PushL(phoneBookWriteStatus);
       
  2975 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  2976 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  2977 				, ETimeMedium), KErrNone,
       
  2978 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  2979 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  2980 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  2981 		pbData.FillZ();
       
  2982 		pbData.Zero();
       
  2983 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  2984 		}
       
  2985 
       
  2986 	//
       
  2987 	// SET UP END
       
  2988 	//
       
  2989 	
       
  2990 	StartTest();
       
  2991 	
       
  2992 	//
       
  2993 	// TEST START
       
  2994 	//
       
  2995 
       
  2996 	// ===  Find out how many entries are used in the phone book ===
       
  2997 
       
  2998 	// Repeat whole test with aIndex = midEntry and aIndex = lastEntry 
       
  2999 	const TInt indexCount = 3;
       
  3000 	TFixedArray<TInt,indexCount> indexList;
       
  3001 	indexList[0] = 1;
       
  3002 	indexList[1] =  phoneBookInfo.iTotalEntries/2; 
       
  3003 	indexList[2] = phoneBookInfo.iTotalEntries;
       
  3004  
       
  3005 	for( TInt i = 0; i < indexCount ; ++i )
       
  3006 		{
       
  3007 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  3008 
       
  3009 		// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3010 		// Store iUsedEntries returned for future use 
       
  3011 		TInt mobileGetInfoUsedEntries = 0;
       
  3012 
       
  3013 		// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  3014 		// Store iUsedEntries returned for future use 
       
  3015 		TInt mobileGetPhoneStoreUsedEntries = 0;
       
  3016 		
       
  3017 		RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3018 		ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  3019 				phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  3020 				_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  3021 		
       
  3022 		// ===  Delete an entry ===
       
  3023 		// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Delete				 
       
  3024 		TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3025 		CleanupStack::PushL(notifyStoreEventStatus);
       
  3026 		TUint32 event=0;
       
  3027 		TInt notifyIndex=0;	
       
  3028 		phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3029 		
       
  3030 		// Delete entry from the phone book specifying aIndex = 1 
       
  3031 		TInt index =indexList[i];
       
  3032 		TExtEtelRequestStatus deleteStoreStatus1(phoneBookStore,EMobilePhoneStoreDelete);
       
  3033 		CleanupStack::PushL(deleteStoreStatus1);
       
  3034 		phoneBookStore.Delete(deleteStoreStatus1,index);
       
  3035 		ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus1, ETimeMedium),KErrNone, 
       
  3036 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3037 		ASSERT_EQUALS(deleteStoreStatus1.Int(), KErrNone,
       
  3038 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3039 		
       
  3040 		// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreEntryDeleted
       
  3041 		iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryDeleted,notifyIndex,KErrNone);	
       
  3042 	
       
  3043 		// ===  Get the number of used entries and check it is 1 lower than before deleting the new entry ===
       
  3044 	
       
  3045 		// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 lower  than that stored.
       
  3046 		// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is 1 lower than that stored.
       
  3047 		ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3048 				phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries-1,  mobileGetPhoneStoreUsedEntries-1),
       
  3049 				KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3050 
       
  3051 		// ===  Attempt to read the deleted entry.  ===
       
  3052 	
       
  3053 		// Read a single entry stored in the slot used in delete 
       
  3054 		pbData.FillZ();
       
  3055 		pbData.Zero();		
       
  3056 		TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  3057 			, EMobilePhoneBookStoreRead);	
       
  3058 		CleanupStack::PushL(phoneBookReadStatus);	
       
  3059 		phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  3060 		ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  3061 			, ETimeMedium), KErrNone,
       
  3062 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  3063 		
       
  3064 		// Check KErrNotFound is returned.
       
  3065 		ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
  3066 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  3067 	
       
  3068 	
       
  3069 		// ===  Attempt to delete the already deleted entry again. ===
       
  3070 	
       
  3071 		// Delete the already deleted entry 
       
  3072 		phoneBookStore.Delete(deleteStoreStatus1,index);
       
  3073 		ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus1, ETimeMedium),KErrNone, 
       
  3074 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3075 	
       
  3076 		// Check KErrNotFound is returned
       
  3077 		ASSERT_EQUALS(deleteStoreStatus1.Int(), KErrNotFound,
       
  3078 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3079 
       
  3080 		//1 notifyStoreEventStatus
       
  3081 		//2 deleteStoreStatus1
       
  3082 		//3 phoneBookReadStatus
       
  3083 		
       
  3084 		CleanupStack::PopAndDestroy(3, &notifyStoreEventStatus);
       
  3085 
       
  3086 		}
       
  3087 
       
  3088 	
       
  3089 	//
       
  3090 	// TEST END
       
  3091 	//
       
  3092 
       
  3093     StartCleanup();
       
  3094 	
       
  3095 	//1 phoneBookStoreInfoStatus
       
  3096     //2 deleteStoreStatus
       
  3097     //3 pbBuffer
       
  3098     CleanupStack::PopAndDestroy(3, &phoneBookStoreInfoStatus);
       
  3099 	
       
  3100 	}
       
  3101 
       
  3102 
       
  3103 
       
  3104 CCTSYIntegrationTestPhoneBookStore0017Base::CCTSYIntegrationTestPhoneBookStore0017Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3105 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3106 /**
       
  3107  * Constructor.
       
  3108  */
       
  3109 	{
       
  3110 	
       
  3111 	}
       
  3112 
       
  3113 CCTSYIntegrationTestPhoneBookStore0017Base::~CCTSYIntegrationTestPhoneBookStore0017Base()
       
  3114 /**
       
  3115  * Destructor.
       
  3116  */
       
  3117 	{
       
  3118 	}
       
  3119 
       
  3120 void CCTSYIntegrationTestPhoneBookStore0017Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3121 /**
       
  3122  * TestDesc: Delete an entry from the SIM phone book supplying an invalid index.
       
  3123  * TestExpectedResults: Pass - KErrArgument returned.
       
  3124  * Reason for test: Verify KErrArgument returned.
       
  3125  */
       
  3126 	{
       
  3127 
       
  3128 	//
       
  3129 	// SET UP
       
  3130 	//
       
  3131 
       
  3132 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3133 			, KMainPhone, aPhoneBookId);
       
  3134 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3135 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3136 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3137 		, EMobilePhoneStoreGetInfo);
       
  3138 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3139 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3140 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3141 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3142 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3143 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3144 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3145 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3146 
       
  3147 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess 
       
  3148 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess;
       
  3149 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3150 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  3151 
       
  3152 	//
       
  3153 	// SET UP END
       
  3154 	//
       
  3155 	
       
  3156 	StartTest();
       
  3157 	
       
  3158 	//
       
  3159 	// TEST START
       
  3160 	//
       
  3161 	
       
  3162 	
       
  3163 	// ===  Find out how many entries are used in the phone book ===
       
  3164 
       
  3165 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3166 	// Store iUsedEntries returned for future use 
       
  3167 	TInt mobileGetInfoUsedEntries = 0;
       
  3168 
       
  3169 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  3170 	// Store iUsedEntries returned for future use 
       
  3171 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  3172 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3173 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  3174 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  3175 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  3176 	
       
  3177 	// ===  Attempt to delete with invalid index ===
       
  3178 	
       
  3179 	// Delete an entry from the phone book using RMobilePhoneStore::Delete with aIndex = -1 
       
  3180 	TInt index = -1;
       
  3181 	
       
  3182 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  3183 	CleanupStack::PushL(deleteStoreStatus);
       
  3184 	phoneBookStore.Delete(deleteStoreStatus,index);
       
  3185 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  3186 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3187 
       
  3188 	// Check KErrArgument is returned
       
  3189 	ASSERT_EQUALS( deleteStoreStatus.Int(), KErrArgument,		
       
  3190 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3191 
       
  3192 	// ===  Get the number of used entries and check it is the same as before attempted delete ===
       
  3193 
       
  3194 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is same as before
       
  3195 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is same as before
       
  3196 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3197 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,  mobileGetPhoneStoreUsedEntries),
       
  3198 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3199 
       
  3200 	// ===  Attempt to delete with invalid index ===
       
  3201 
       
  3202 	// Delete an entry from the phone book using RMobilePhoneStore::Delete with aIndex = -12 
       
  3203 	index = -12;	
       
  3204 	phoneBookStore.Delete(deleteStoreStatus,index);
       
  3205 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  3206 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3207 
       
  3208 	// Check KErrArgument is returned
       
  3209 	ASSERT_EQUALS( deleteStoreStatus.Int(), KErrArgument,		
       
  3210 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3211 	
       
  3212 
       
  3213 	// ===  Get the number of used entries and check it is the same as before attempted delete ===
       
  3214 
       
  3215 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is same as before
       
  3216 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is same as before
       
  3217 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3218 			phoneBookInfoPckg,mobilePhone, mobileGetInfoUsedEntries,  mobileGetPhoneStoreUsedEntries),
       
  3219 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3220 	
       
  3221 	//
       
  3222 	// TEST END
       
  3223 	//
       
  3224 
       
  3225     StartCleanup();
       
  3226 	
       
  3227     //1 phoneBookStoreInfoStatus
       
  3228 	//2 deleteStoreStatus
       
  3229     CleanupStack::PopAndDestroy(2,&phoneBookStoreInfoStatus);
       
  3230 	
       
  3231 	
       
  3232 	}
       
  3233 
       
  3234 
       
  3235 
       
  3236 CCTSYIntegrationTestPhoneBookStore0018Base::CCTSYIntegrationTestPhoneBookStore0018Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3237 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3238 /**
       
  3239  * Constructor.
       
  3240  */
       
  3241 	{
       
  3242 	
       
  3243 	}
       
  3244 
       
  3245 CCTSYIntegrationTestPhoneBookStore0018Base::~CCTSYIntegrationTestPhoneBookStore0018Base()
       
  3246 /**
       
  3247  * Destructor.
       
  3248  */
       
  3249 	{
       
  3250 	}
       
  3251 
       
  3252 void CCTSYIntegrationTestPhoneBookStore0018Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3253 /**
       
  3254  * TestDesc: Delete all entries from the SIM phone book.
       
  3255  * TestExpectedResults: Pass - Deletion is successful.
       
  3256  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  3257  */
       
  3258 	{
       
  3259 
       
  3260 	//
       
  3261 	// SET UP
       
  3262 	//
       
  3263 
       
  3264 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3265 			, KMainPhone, aPhoneBookId);
       
  3266 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3267 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3268 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3269 		, EMobilePhoneStoreGetInfo);
       
  3270 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3271 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3272 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3273 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3274 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3275 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3276 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3277 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3278 
       
  3279 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsDeleteAll 
       
  3280 	TUint32 expectedCaps = RMobilePhoneStore::KCapsDeleteAll;
       
  3281 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3282 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  3283 	
       
  3284 	// Ensure there are at least 10 entries in the SIM phone book. 
       
  3285 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  3286 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  3287 	CleanupStack::PushL(pbBuffer);
       
  3288 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  3289 	
       
  3290 	const TUint32 count = 10;
       
  3291 	
       
  3292 	_LIT(KTel,"123456%03d");
       
  3293 	_LIT(KText,"TelNo %03d");	
       
  3294 	TFixedArray<TBuf<KBufSize>,count> names;
       
  3295 	TFixedArray<TBuf<KBufSize>,count> numbers;
       
  3296 	
       
  3297 	for(TInt i = 1; i<= count; ++i)
       
  3298 		{
       
  3299 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  3300 		numbers[i-1].Format(KTel,i);
       
  3301 		names[i-1].Format(KText,i);
       
  3302 		TBool ret = EncodeTLVFormat(pbBuffer, numbers[i-1], (TUint8)RMobilePhone::EUnknownNumber
       
  3303 				, names[i-1]);
       
  3304 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  3305 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  3306 		CleanupStack::PushL(phoneBookWriteStatus);
       
  3307 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  3308 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  3309 				, ETimeMedium), KErrNone,
       
  3310 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  3311 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  3312 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  3313 		pbData.FillZ();
       
  3314 		pbData.Zero();
       
  3315 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  3316 		}
       
  3317 
       
  3318 	//
       
  3319 	// SET UP END
       
  3320 	//
       
  3321 	
       
  3322 	StartTest();
       
  3323 	
       
  3324 	//
       
  3325 	// TEST START
       
  3326 	//
       
  3327 	
       
  3328 	
       
  3329 	// ===  Delete all the entries in one go ===
       
  3330 	
       
  3331 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::DeleteAll 
       
  3332 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3333 	CleanupStack::PushL(notifyStoreEventStatus);
       
  3334 	TUint32 event=0;
       
  3335 	TInt notifyIndex=0;	
       
  3336 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3337 	
       
  3338 	// Delete all the entries from the SIM phone book. 
       
  3339 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  3340 			, EMobilePhoneStoreDeleteAll);
       
  3341 	CleanupStack::PushL(deleteStoreStatus);
       
  3342 	phoneBookStore.DeleteAll(deleteStoreStatus);
       
  3343 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong),KErrNone, 
       
  3344 			_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  3345 	ASSERT_EQUALS(deleteStoreStatus.Int(), KErrNone,
       
  3346 				 _L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  3347 	
       
  3348 	// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreEmpty
       
  3349 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEmpty,notifyIndex,KErrNone);	
       
  3350 
       
  3351 	// ===  Get the number of used entries and check it is 0 ===
       
  3352 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries == 0
       
  3353 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries == 0	
       
  3354 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3355 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3356 			phoneBookInfoPckg,mobilePhone, 0,  0),
       
  3357 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3358 	
       
  3359 	//
       
  3360 	// TEST END
       
  3361 	//
       
  3362 
       
  3363     StartCleanup();
       
  3364 	
       
  3365     //1 phoneBookStoreInfoStatus
       
  3366     //2 pbBuffer
       
  3367     //3 notifyStoreEventStatus
       
  3368     //4 deleteStoreStatus
       
  3369 	CleanupStack::PopAndDestroy(4,&phoneBookStoreInfoStatus);
       
  3370 	
       
  3371 	}
       
  3372 
       
  3373 
       
  3374 
       
  3375 CCTSYIntegrationTestPhoneBookStore0019Base::CCTSYIntegrationTestPhoneBookStore0019Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3376 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3377 /**
       
  3378  * Constructor.
       
  3379  */
       
  3380 	{
       
  3381 	
       
  3382 	}
       
  3383 
       
  3384 CCTSYIntegrationTestPhoneBookStore0019Base::~CCTSYIntegrationTestPhoneBookStore0019Base()
       
  3385 /**
       
  3386  * Destructor.
       
  3387  */
       
  3388 	{
       
  3389 	}
       
  3390 
       
  3391 void CCTSYIntegrationTestPhoneBookStore0019Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3392 /**
       
  3393  * TestDesc: Fill and delete all entries in the phone book.
       
  3394  * TestExpectedResults: Pass - All entries deleted successfully.
       
  3395  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  3396  */
       
  3397 	{
       
  3398 
       
  3399 	//
       
  3400 	// SET UP
       
  3401 	//
       
  3402 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3403 			, KMainPhone, aPhoneBookId);
       
  3404 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3405 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3406 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3407 		, EMobilePhoneStoreGetInfo);
       
  3408 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3409 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3410 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3411 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3412 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3413 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3414 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3415 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3416 
       
  3417 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsDeleteAll 
       
  3418 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  3419 							| RMobilePhoneStore::KCapsDeleteAll;
       
  3420 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3421 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  3422 	
       
  3423 	// Ensure phone book is empty
       
  3424 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  3425 			, EMobilePhoneStoreDeleteAll);
       
  3426 	CleanupStack::PushL(deleteStoreStatus);
       
  3427 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  3428 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  3429 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  3430 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  3431 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  3432 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  3433 
       
  3434 	//
       
  3435 	// SET UP END
       
  3436 	//
       
  3437 	
       
  3438 	StartTest();
       
  3439 	
       
  3440 	//
       
  3441 	// TEST START
       
  3442 	//
       
  3443 	
       
  3444 	
       
  3445 	// Write entries to the phone book until it is full 
       
  3446 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  3447 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  3448 	CleanupStack::PushL(pbBuffer);
       
  3449 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  3450 	
       
  3451 	const TUint32 maxPhonebookEntries  = phoneBookInfo.iTotalEntries;
       
  3452 	
       
  3453 	_LIT(KTel,"123456%03d");
       
  3454 	_LIT(KText,"TelNo %03d");	
       
  3455 	TBuf<KBufSize> names;
       
  3456 	TBuf<KBufSize> numbers;
       
  3457 	
       
  3458 	for(TInt i = 1; i<= maxPhonebookEntries ; ++i)
       
  3459 		{
       
  3460 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  3461 		// post notification for RMobilePhoneBookStore::Write	
       
  3462 		TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3463 		CleanupStack::PushL(notifyStoreEventStatus);
       
  3464 		TUint32 event=0;
       
  3465 		TInt notifyIndex=0;	
       
  3466 		phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3467 		
       
  3468 		numbers.Format(KTel,i);
       
  3469 		names.Format(KText,i);
       
  3470 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  3471 				, names);
       
  3472 		ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  3473 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  3474 		CleanupStack::PushL(phoneBookWriteStatus);
       
  3475 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  3476 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  3477 				, ETimeMedium), KErrNone,
       
  3478 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  3479 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  3480 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  3481 
       
  3482 		// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreEntryAdded with each write
       
  3483 		iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryAdded,notifyIndex,KErrNone);
       
  3484 
       
  3485 		pbData.FillZ();
       
  3486 		pbData.Zero();
       
  3487 		// 1 notifyStoreEventStatus
       
  3488 		// 2 phoneBookWriteStatus
       
  3489 		CleanupStack::PopAndDestroy(2,&notifyStoreEventStatus);		
       
  3490 		}
       
  3491 
       
  3492 	// ===  Check that the phone book is full ===
       
  3493 
       
  3494 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  	
       
  3495 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3496 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3497 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3498 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3499 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3500 
       
  3501 	// Check that iTotalEntries == iUsedEntries
       
  3502 	ASSERT_EQUALS(phoneBookInfo.iUsedEntries, phoneBookInfo.iTotalEntries, 
       
  3503 			_L("RMobilePhoneBookStore::GetPhoneStoreInfo return incorrect information"));
       
  3504 
       
  3505 	// ===  Delete all entries from the phone book ===
       
  3506 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::DeleteAll	
       
  3507 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3508 	CleanupStack::PushL(notifyStoreEventStatus);
       
  3509 	TUint32 event=0;
       
  3510 	TInt notifyIndex=0;	
       
  3511 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3512 
       
  3513 	// Delete all entries from the full phone book 
       
  3514 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  3515 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  3516 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  3517 	ASSERT_EQUALS(deleteStoreStatus.Int(),KErrNone ,
       
  3518 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  3519 	
       
  3520 	// Check RMobilePhoneStore::NotifyStoreEvent complete with KStoreEmpty
       
  3521 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEmpty,notifyIndex,KErrNone);
       
  3522 
       
  3523 	// ===  Check phone book is empty ===
       
  3524 
       
  3525 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3526 	// Check iUsedEntries == 0 
       
  3527 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo 
       
  3528 	// Check iUsedEntries == 0
       
  3529 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3530 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3531 			phoneBookInfoPckg,mobilePhone, 0,  0),
       
  3532 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3533 	
       
  3534 	//
       
  3535 	// TEST END
       
  3536 	//
       
  3537 
       
  3538     StartCleanup();
       
  3539     
       
  3540     //1 phoneBookStoreInfoStatus
       
  3541     //2 deleteStoreStatus
       
  3542 	//3 pbBuffer
       
  3543 	//4 notifyStoreEventStatus
       
  3544 	CleanupStack::PopAndDestroy(4,&phoneBookStoreInfoStatus);
       
  3545 	
       
  3546 	}
       
  3547 
       
  3548 
       
  3549 
       
  3550 CCTSYIntegrationTestPhoneBookStore0020Base::CCTSYIntegrationTestPhoneBookStore0020Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3551 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3552 /**
       
  3553  * Constructor.
       
  3554  */
       
  3555 	{
       
  3556 	
       
  3557 	}
       
  3558 
       
  3559 CCTSYIntegrationTestPhoneBookStore0020Base::~CCTSYIntegrationTestPhoneBookStore0020Base()
       
  3560 /**
       
  3561  * Destructor.
       
  3562  */
       
  3563 	{
       
  3564 	}
       
  3565 
       
  3566 void CCTSYIntegrationTestPhoneBookStore0020Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3567 /**
       
  3568  * TestDesc: Cancel deletion of all entries from the SIM phone book.
       
  3569  * TestExpectedResults: Pass - Deletion is cancelled.
       
  3570  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  3571  */
       
  3572 	{
       
  3573 	
       
  3574 	//
       
  3575 	// SET UP
       
  3576 	//
       
  3577 
       
  3578 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3579 			, KMainPhone, aPhoneBookId);
       
  3580 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3581 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3582 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3583 		, EMobilePhoneStoreGetInfo);
       
  3584 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3585 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3586 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3587 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3588 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3589 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3590 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3591 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3592 
       
  3593 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsDeleteAll 
       
  3594 	TUint32 expectedCaps = RMobilePhoneStore::KCapsDeleteAll;
       
  3595 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3596 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  3597 	
       
  3598 	// Ensure there are 100 entries in the SIM phone book. 
       
  3599 	TBuf8<KPBDataClientBuf100> pbData; // Client reserved space for phonebook data
       
  3600 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  3601 	CleanupStack::PushL(pbBuffer);
       
  3602 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  3603 	
       
  3604 	TUint32 count = phoneBookInfo.iTotalEntries/2;
       
  3605 
       
  3606 	_LIT(KTel,"123456%03d");
       
  3607 	_LIT(KText,"TelNo %03d");	
       
  3608 	TBuf<KBufSize> names;
       
  3609 	TBuf<KBufSize> numbers;
       
  3610 	
       
  3611 	for(TInt i = 1; i<= count; ++i)
       
  3612 		{
       
  3613 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  3614 		numbers.Format(KTel,i);
       
  3615 		names.Format(KText,i);
       
  3616 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  3617 				, names);
       
  3618 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  3619 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  3620 		CleanupStack::PushL(phoneBookWriteStatus);
       
  3621 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  3622 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  3623 				, ETimeMedium), KErrNone,
       
  3624 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  3625 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  3626 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  3627 		pbData.FillZ();
       
  3628 		pbData.Zero();
       
  3629 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  3630 		}
       
  3631 
       
  3632 	//
       
  3633 	// SET UP END
       
  3634 	//
       
  3635 	
       
  3636 	StartTest();
       
  3637 	
       
  3638 	//
       
  3639 	// TEST START
       
  3640 	//
       
  3641 	
       
  3642 	
       
  3643 	// ===  Find out how many entries are used in the phone book ===
       
  3644 
       
  3645 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3646 	// Store iUsedEntries returned for future use 
       
  3647 	TInt mobileGetInfoUsedEntries = 0;
       
  3648 
       
  3649 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  3650 	// Store iUsedEntries returned for future use 
       
  3651 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  3652 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3653 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  3654 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  3655 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  3656 	
       
  3657 	// Delete all the entries from the SIM phone book. 
       
  3658 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  3659 			, EMobilePhoneStoreDeleteAll);
       
  3660 	CleanupStack::PushL(deleteStoreStatus);
       
  3661 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  3662 
       
  3663 	// Cancel deletion after 1s. 
       
  3664 	User::After(KOneSecond);
       
  3665 	phoneBookStore.CancelAsyncRequest(EMobilePhoneStoreDeleteAll);
       
  3666 	
       
  3667 	// Check TRequestStatus used for deletion is KErrCancel | KErrNone
       
  3668 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  3669 			_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  3670 	ASSERT_TRUE( ( (deleteStoreStatus.Int() == KErrCancel) ||
       
  3671 					(deleteStoreStatus.Int() == KErrNone)),
       
  3672 			_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  3673 
       
  3674 	// ===  Check that the phone book is full ===
       
  3675 
       
  3676 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3677 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3678 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3679 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3680 	ASSERT_EQUALS(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3681 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3682 
       
  3683 	// Check that iUsedEntries has decreased but is not 0
       
  3684 	// or condition for KErrNone case, since cancel is not supported
       
  3685 	ASSERT_TRUE( ( ( phoneBookInfo.iUsedEntries < mobileGetInfoUsedEntries )
       
  3686 			|| ( phoneBookInfo.iUsedEntries != 0 ) ),
       
  3687 			 _L("RMobilePhoneBookStore::GetInfo returned incorrect information."))	
       
  3688 	
       
  3689 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo 
       
  3690 	TExtEtelRequestStatus phoneStoreInfoStatus(mobilePhone, EMobilePhoneGetPhoneStoreInfo);	
       
  3691 	CleanupStack::PushL(phoneStoreInfoStatus);
       
  3692 	RMobilePhoneStore::TMobilePhoneStoreInfoV1 phoneStoreInfo;
       
  3693 	RMobilePhoneStore::TMobilePhoneStoreInfoV1Pckg phoneStoreInfoPckg(phoneStoreInfo);
       
  3694 	/* mobilePhone.GetPhoneStoreInfo(phoneStoreInfoStatus,phoneStoreInfoPckg,aStoreName);
       
  3695 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneStoreInfoStatus, ETimeShort), 
       
  3696 			KErrNone, _L("RMobilePhone::GetPhoneStoreInfo timed-out"));
       
  3697 	ASSERT_EQUALS(phoneStoreInfoStatus.Int(), 
       
  3698 			KErrNone, _L("RMobilePhone::GetPhoneStoreInfo returned with an error"));
       
  3699 
       
  3700 	// Check that iUsedEntries has decreased but is not 0
       
  3701 	ASSERT_TRUE( ( (phoneStoreInfo.iUsedEntries < mobilePhoneStoreUsedEntries)
       
  3702 			&& (phoneStoreInfo.iUsedEntries != 0) ), _L("RMobilePhoneBookStore::GetPhoneStoreInfo return incorrect information"))	*/
       
  3703 
       
  3704 	
       
  3705 	//
       
  3706 	// TEST END
       
  3707 	//
       
  3708 
       
  3709     StartCleanup();
       
  3710 	//1 phoneBookStoreInfoStatus
       
  3711 	//2 pbBuffer
       
  3712 	//3 deleteStoreStatus
       
  3713 	//4 phoneStoreInfoStatus
       
  3714 	CleanupStack::PopAndDestroy(4,&phoneBookStoreInfoStatus);
       
  3715 	
       
  3716 	}
       
  3717 
       
  3718 
       
  3719 
       
  3720 CCTSYIntegrationTestPhoneBookStore0021Base::CCTSYIntegrationTestPhoneBookStore0021Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3721 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3722 /**
       
  3723  * Constructor.
       
  3724  */
       
  3725 	{
       
  3726 	
       
  3727 	}
       
  3728 
       
  3729 CCTSYIntegrationTestPhoneBookStore0021Base::~CCTSYIntegrationTestPhoneBookStore0021Base()
       
  3730 /**
       
  3731  * Destructor.
       
  3732  */
       
  3733 	{
       
  3734 	}
       
  3735 
       
  3736 void CCTSYIntegrationTestPhoneBookStore0021Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3737 /**
       
  3738  * TestCaseDesc: Delete an entry from a full phone book.
       
  3739  * TestExpectedResults: Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  3740  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  3741  */
       
  3742 	{
       
  3743 
       
  3744 	//
       
  3745 	// SET UP
       
  3746 	//
       
  3747 
       
  3748 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3749 			, KMainPhone, aPhoneBookId);
       
  3750 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3751 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3752 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3753 		, EMobilePhoneStoreGetInfo);
       
  3754 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3755 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3756 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3757 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3758 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3759 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3760 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3761 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3762 
       
  3763 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsNotifyEvent 
       
  3764 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  3765 				| 	RMobilePhoneStore::KCapsNotifyEvent;
       
  3766 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3767 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  3768 	
       
  3769 	//delete all entries before filling phonebook
       
  3770 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  3771 			, EMobilePhoneStoreDeleteAll);
       
  3772 	CleanupStack::PushL(deleteStoreStatus);
       
  3773 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  3774 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  3775 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  3776 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  3777 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  3778 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  3779 	
       
  3780 	// Ensure phone book is full 
       
  3781 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  3782 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  3783 	CleanupStack::PushL(pbBuffer);
       
  3784 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  3785 	
       
  3786 	const TUint32 maxPhonebookEntries  = phoneBookInfo.iTotalEntries;
       
  3787 	
       
  3788 	_LIT(KTel,"123456%03d");
       
  3789 	_LIT(KText,"TelNo %03d");	
       
  3790 	TBuf<KBufSize> names;
       
  3791 	TBuf<KBufSize> numbers;
       
  3792 	
       
  3793 	for(TInt i = 1; i<= maxPhonebookEntries ; ++i)
       
  3794 		{
       
  3795 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  3796 		numbers.Format(KTel,i);
       
  3797 		names.Format(KText,i);
       
  3798 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  3799 				, names);
       
  3800 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  3801 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  3802 		CleanupStack::PushL(phoneBookWriteStatus);
       
  3803 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  3804 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  3805 				, ETimeMedium), KErrNone,
       
  3806 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  3807 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  3808 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  3809 		pbData.FillZ();
       
  3810 		pbData.Zero();
       
  3811 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  3812 		}
       
  3813 
       
  3814 	//
       
  3815 	// SET UP END
       
  3816 	//
       
  3817 	
       
  3818 	StartTest();
       
  3819 	
       
  3820 	//
       
  3821 	// TEST START
       
  3822 	//
       
  3823 	
       
  3824 	
       
  3825 	// ===  Find out how many entries are used in the phone book ===
       
  3826 	// Get the phone book information using RMobilePhoneStore::GetInfo 
       
  3827 	// Store iUsedEntries returned for future use 
       
  3828 	TInt mobileGetInfoUsedEntries = 0;
       
  3829 
       
  3830 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  3831 	// Store iUsedEntries returned for future use 
       
  3832 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  3833 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3834 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  3835 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  3836 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  3837 
       
  3838 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Delete				 
       
  3839 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3840 	CleanupStack::PushL(notifyStoreEventStatus);
       
  3841 	TUint32 event=0;
       
  3842 	TInt notifyIndex=0;	
       
  3843 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3844 	
       
  3845 	// Delete an entry from the phone book. 
       
  3846 	TInt index =1;
       
  3847 	TExtEtelRequestStatus deleteStoreStatus1(phoneBookStore,EMobilePhoneStoreDelete);
       
  3848 	CleanupStack::PushL(deleteStoreStatus1);
       
  3849 	phoneBookStore.Delete(deleteStoreStatus1,index);
       
  3850 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus1, ETimeMedium),KErrNone, 
       
  3851 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3852 	ASSERT_EQUALS(deleteStoreStatus1.Int(), KErrNone,
       
  3853 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3854 	
       
  3855 	// Check RMobilePhoneStore::NotifyStoreEvent completes with RMobilePhoneStore::KStoreHasSpace | RMobilePhoneStore::KStoreEntryDeleted
       
  3856 	TUint32 expectedEvent = RMobilePhoneStore::KStoreHasSpace
       
  3857 		| RMobilePhoneStore::KStoreEntryDeleted;
       
  3858 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,expectedEvent,notifyIndex,KErrNone);	
       
  3859 	
       
  3860 	// ===  Get the number of used entries and check it is one lower than before ===
       
  3861 
       
  3862 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries is one lower than before
       
  3863 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries is one lower than before
       
  3864 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  3865 			phoneBookInfoPckg,mobilePhone, mobileGetInfoUsedEntries-1, mobileGetPhoneStoreUsedEntries-1),
       
  3866 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  3867 
       
  3868 	//
       
  3869 	// TEST END
       
  3870 	//
       
  3871 
       
  3872     StartCleanup();
       
  3873 	
       
  3874     //1 phoneBookStoreInfoStatus
       
  3875     //2 deleteStoreStatus
       
  3876     //3 pbBuffer
       
  3877     //4 notifyStoreEventStatus
       
  3878     //5 deleteStoreStatus1
       
  3879     CleanupStack::Pop(5,&phoneBookStoreInfoStatus);	
       
  3880 	
       
  3881 	}
       
  3882 
       
  3883 
       
  3884 
       
  3885 CCTSYIntegrationTestPhoneBookStore0022Base::CCTSYIntegrationTestPhoneBookStore0022Base(CEtelSessionMgr& aEtelSessionMgr)
       
  3886 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  3887 /**
       
  3888  * Constructor.
       
  3889  */
       
  3890 	{
       
  3891 	
       
  3892 	}
       
  3893 
       
  3894 CCTSYIntegrationTestPhoneBookStore0022Base::~CCTSYIntegrationTestPhoneBookStore0022Base()
       
  3895 /**
       
  3896  * Destructor.
       
  3897  */
       
  3898 	{
       
  3899 	}
       
  3900 
       
  3901 void CCTSYIntegrationTestPhoneBookStore0022Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId, const TDesC& aStoreName)
       
  3902 /**
       
  3903  * TestDesc: Delete a long (>20 digit) number from the SIM phone book.
       
  3904  * TestExpectedResults: Pass - Number is deleted.
       
  3905  * Reason for test: Verify entry deleted successfully.
       
  3906  */
       
  3907 	{
       
  3908 
       
  3909 	//
       
  3910 	// SET UP
       
  3911 	//
       
  3912 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  3913 			, KMainPhone, aPhoneBookId);
       
  3914 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  3915 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  3916 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  3917 		, EMobilePhoneStoreGetInfo);
       
  3918 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  3919 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  3920 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  3921 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  3922 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  3923 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  3924 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  3925 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  3926 	
       
  3927 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess | KCapsNotifyEvent 
       
  3928 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess
       
  3929 							| RMobilePhoneStore::KCapsNotifyEvent;
       
  3930 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  3931 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  3932 
       
  3933 	// delete entry before writing to known slot	
       
  3934 	TInt index = 10;;	
       
  3935 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  3936 	CleanupStack::PushL(deleteStoreStatus);
       
  3937 	phoneBookStore.Delete(deleteStoreStatus,index);
       
  3938 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  3939 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  3940 	CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  3941 					|| deleteStoreStatus.Int() == KErrNone ),		
       
  3942 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  3943 
       
  3944 	
       
  3945 	// Write a number longer than 20 digits to the SIM phone book. 
       
  3946 	TBuf<KBufSize> names(KAndersText);
       
  3947 	_LIT16(KLongNumber, "123456789012345678901234567890");
       
  3948 	TBuf<KBufSize> numbers(KLongNumber);
       
  3949 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  3950 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  3951 	CleanupStack::PushL(pbBuffer);
       
  3952 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  3953 
       
  3954 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  3955 			, names);
       
  3956 	CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  3957 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  3958 	CleanupStack::PushL(phoneBookWriteStatus);
       
  3959 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  3960 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  3961 			, ETimeMedium), KErrNone,
       
  3962 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  3963 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  3964 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  3965 	
       
  3966 	//
       
  3967 	// SET UP END
       
  3968 	//
       
  3969 	
       
  3970 	StartTest();
       
  3971 	
       
  3972 	//
       
  3973 	// TEST START
       
  3974 	//
       
  3975 	
       
  3976 	
       
  3977 	// ===  Find out how many entries are used in the phone book ===
       
  3978 
       
  3979 	// Get the phone book information using RMobilePhoneStore::GetInfo using a RMobilePhoneBookStore::TMobilePhoneBookInfoV1  
       
  3980 	// Store iUsedEntries returned for future use 
       
  3981 	TInt mobileGetInfoUsedEntries = 0;
       
  3982 
       
  3983 	// Get the phone book information using RMobilePhone::GetPhoneStoreInfo
       
  3984 	// Store iUsedEntries returned for future use 
       
  3985 	TInt mobileGetPhoneStoreUsedEntries = 0;
       
  3986 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  3987 	ASSERT_EQUALS(iSimTsyTestHelper.GetNumberOfUsedEntriesInStoreL(phoneBookStore, aStoreName,
       
  3988 			phoneBookInfoPckg,mobilePhone,mobileGetInfoUsedEntries,	mobileGetPhoneStoreUsedEntries),KErrNone, 
       
  3989 			_L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));	
       
  3990 	
       
  3991 	// post notification using RMobilePhoneBookStore::NotifyStoreEvent for RMobilePhoneBookStore::Delete				 
       
  3992 	TExtEtelRequestStatus notifyStoreEventStatus(phoneBookStore,EMobilePhoneStoreNotifyStoreEvent);
       
  3993 	CleanupStack::PushL(notifyStoreEventStatus);
       
  3994 	TUint32 event=0;
       
  3995 	TInt notifyIndex=0;	
       
  3996 	phoneBookStore.NotifyStoreEvent(notifyStoreEventStatus, event, notifyIndex);
       
  3997 	
       
  3998 	// Delete the written entry. 
       
  3999 	TExtEtelRequestStatus deleteStoreStatus1(phoneBookStore,EMobilePhoneStoreDelete);
       
  4000 	CleanupStack::PushL(deleteStoreStatus1);
       
  4001 	phoneBookStore.Delete(deleteStoreStatus1,index);
       
  4002 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus1, ETimeMedium),KErrNone, 
       
  4003 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  4004 	ASSERT_EQUALS(deleteStoreStatus1.Int(), KErrNone,
       
  4005 				 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  4006 	
       
  4007 	// Check RMobilePhoneStore::NotifyStoreEvent completes with KStoreEntryDeleted
       
  4008 	iSimTsyTestHelper.WaitForMobilePhoneStoreNotifyStoreEvent(phoneBookStore,notifyStoreEventStatus,event,RMobilePhoneStore::KStoreEntryDeleted,notifyIndex,KErrNone);
       
  4009 
       
  4010 	// ===  Get the number of used entries and check it is 1 lower than before deleting the new entry ===
       
  4011 
       
  4012 	// Check RMobilePhoneStore::GetInfo returns iUsedEntries which is 1 lower  than that stored.
       
  4013 	// Check RMobilePhone::GetPhoneStoreInfo returns iUsedEntries which is 1 lower than that stored.
       
  4014 	ASSERT_EQUALS(iSimTsyTestHelper.AssertNumberOfUsedEntriesCorrectL(phoneBookStore,aStoreName, 
       
  4015 			phoneBookInfoPckg,mobilePhone, mobileGetInfoUsedEntries-1, mobileGetPhoneStoreUsedEntries-1),
       
  4016 			KErrNone, _L("RMobilePhoneStore::GetInfo and RMobilePhone::GetPhoneStoreInfo both returned an error"));
       
  4017 
       
  4018 	// ===  Attempt to read deleted entry ===
       
  4019 
       
  4020 	// Attempt to read the entry in the slot which was just deleted 
       
  4021 	pbData.FillZ();
       
  4022 	pbData.Zero();		
       
  4023 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  4024 		, EMobilePhoneBookStoreRead);	
       
  4025 	CleanupStack::PushL(phoneBookReadStatus);	
       
  4026 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  4027 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  4028 		, ETimeMedium), KErrNone,
       
  4029 		_L("RMobilePhoneBookStore::Read timed-out"));
       
  4030 
       
  4031 	// Check KErrNotFound returned
       
  4032 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
  4033 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  4034 	
       
  4035 	//
       
  4036 	// TEST END
       
  4037 	//
       
  4038 
       
  4039     StartCleanup();
       
  4040 	
       
  4041     //1 phoneBookStoreInfoStatus
       
  4042     //2 deleteStoreStatus
       
  4043     //3 pbBuffer
       
  4044     //4 phoneBookWriteStatus
       
  4045     //5 notifyStoreEventStatus
       
  4046     //6 deleteStoreStatus1
       
  4047     //7 phoneBookReadStatus    
       
  4048     CleanupStack::Pop(7,&phoneBookStoreInfoStatus);	
       
  4049 	
       
  4050 	}
       
  4051 
       
  4052 
       
  4053 
       
  4054 CCTSYIntegrationTestPhoneBookStore0023Base::CCTSYIntegrationTestPhoneBookStore0023Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4055 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4056 /**
       
  4057  * Constructor.
       
  4058  */
       
  4059 	{
       
  4060 	
       
  4061 	}
       
  4062 
       
  4063 CCTSYIntegrationTestPhoneBookStore0023Base::~CCTSYIntegrationTestPhoneBookStore0023Base()
       
  4064 /**
       
  4065  * Destructor.
       
  4066  */
       
  4067 	{
       
  4068 	}
       
  4069 
       
  4070 void CCTSYIntegrationTestPhoneBookStore0023Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4071 /**
       
  4072  * TestDesc: Read a single phone book entry into a buffer that is too small.
       
  4073  * TestExpectedResults: Pass - KErrGeneral returned when the descriptor is too small.
       
  4074  * Reason for test: Verify KErrGeneral returned
       
  4075  */
       
  4076 	{
       
  4077 
       
  4078 	//
       
  4079 	// SET UP
       
  4080 	//
       
  4081 
       
  4082 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4083 			, KMainPhone, aPhoneBookId);
       
  4084 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4085 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4086 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4087 		, EMobilePhoneStoreGetInfo);
       
  4088 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4089 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4090 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4091 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4092 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4093 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4094 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4095 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4096 	
       
  4097 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess 
       
  4098 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  4099 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4100 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  4101 		
       
  4102 	// Ensure there are entries in the phone book in known slots 
       
  4103 	TInt index = -1;;	
       
  4104 	TBuf<KBufSize> names(KAndersText);
       
  4105 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  4106 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  4107 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4108 	CleanupStack::PushL(pbBuffer);
       
  4109 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  4110 
       
  4111 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  4112 			, names);
       
  4113 	CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  4114 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  4115 	CleanupStack::PushL(phoneBookWriteStatus);
       
  4116 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  4117 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  4118 			, ETimeMedium), KErrNone,
       
  4119 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  4120 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  4121 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  4122 	
       
  4123 	//
       
  4124 	// SET UP END
       
  4125 	//
       
  4126 	
       
  4127 	StartTest();
       
  4128 	
       
  4129 	//
       
  4130 	// TEST START
       
  4131 	//
       
  4132 	
       
  4133 	// Attempt to read a single entry from the phone book using a 10 byte descriptor for aPBData 	
       
  4134 	TBuf8<10> pbData1;
       
  4135 	pbBuffer->Set(&pbData1);
       
  4136 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  4137 			, EMobilePhoneBookStoreRead);	
       
  4138 	CleanupStack::PushL(phoneBookReadStatus);
       
  4139 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData1);
       
  4140 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  4141 			, ETimeMedium), KErrNone,
       
  4142 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  4143 	
       
  4144 	// Check KErrGeneral is returned
       
  4145 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrGeneral, 
       
  4146 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  4147 	
       
  4148 	//
       
  4149 	// TEST END
       
  4150 	//
       
  4151 
       
  4152     StartCleanup();
       
  4153 	
       
  4154     //1 phoneBookStoreInfoStatus
       
  4155     //2 pbBuffer
       
  4156     //3 phoneBookWriteStatus
       
  4157     //4 phoneBookReadStatus    
       
  4158     CleanupStack::Pop(4,&phoneBookStoreInfoStatus);	
       
  4159 	
       
  4160 	
       
  4161 	}
       
  4162 
       
  4163 
       
  4164 
       
  4165 CCTSYIntegrationTestPhoneBookStore0024Base::CCTSYIntegrationTestPhoneBookStore0024Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4166 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4167 /**
       
  4168  * Constructor.
       
  4169  */
       
  4170 	{
       
  4171 	
       
  4172 	}
       
  4173 
       
  4174 CCTSYIntegrationTestPhoneBookStore0024Base::~CCTSYIntegrationTestPhoneBookStore0024Base()
       
  4175 /**
       
  4176  * Destructor.
       
  4177  */
       
  4178 	{
       
  4179 	}
       
  4180 
       
  4181 void CCTSYIntegrationTestPhoneBookStore0024Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4182 /**
       
  4183  * TestDesc: Read multiple phone book entries when phone book is empty.
       
  4184  * TestExpectedResults: Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
  4185  * Reason for test: Verify KErrNotFound is returned.
       
  4186  */
       
  4187 	{
       
  4188 
       
  4189 	//
       
  4190 	// SET UP
       
  4191 	//
       
  4192 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4193 			, KMainPhone, aPhoneBookId);
       
  4194 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4195 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4196 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4197 		, EMobilePhoneStoreGetInfo);
       
  4198 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4199 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4200 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4201 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4202 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4203 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4204 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4205 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4206 	
       
  4207 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10040);
       
  4208 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess 
       
  4209 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  4210 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4211 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  4212 	
       
  4213 	// Delete all entries from the phone book 
       
  4214 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  4215 			, EMobilePhoneStoreDeleteAll);
       
  4216 	CleanupStack::PushL(deleteStoreStatus);
       
  4217 	phoneBookStore.DeleteAll(deleteStoreStatus);	
       
  4218 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeVeryLong), KErrNone, 
       
  4219 		_L("RMobilePhoneBookStore::DeleteAll timed-out"));
       
  4220 	CHECK_TRUE_L((deleteStoreStatus.Int()==KErrNone 
       
  4221 		|| deleteStoreStatus.Int() == KErrNotFound),
       
  4222 		_L("RMobilePhoneBookStore::DeleteAll returned with an error."));
       
  4223 
       
  4224 	//
       
  4225 	// SET UP END
       
  4226 	//
       
  4227 	
       
  4228 	StartTest();
       
  4229 	
       
  4230 	//
       
  4231 	// TEST START
       
  4232 	//
       
  4233 	
       
  4234 	
       
  4235 	// Read multiple entries from the phone book. 
       
  4236 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  4237 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4238 	CleanupStack::PushL(pbBuffer);
       
  4239 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  4240 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  4241 			, EMobilePhoneBookStoreRead);	
       
  4242 	CleanupStack::PushL(phoneBookReadStatus);	
       
  4243 	phoneBookStore.Read(phoneBookReadStatus, 1, 10, pbData);
       
  4244 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  4245 			, ETimeMedium), KErrNone,
       
  4246 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  4247 	
       
  4248 		// Check KErrNotFound is returned.
       
  4249 		ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrNotFound, 
       
  4250 				_L("RMobilePhoneBookStore::Read returned with an error"));
       
  4251 	
       
  4252 	//
       
  4253 	// TEST END
       
  4254 	//
       
  4255 
       
  4256     StartCleanup();
       
  4257 	
       
  4258     //1 phoneBookStoreInfoStatus
       
  4259     //2 deleteStoreStatus
       
  4260     //3 pbBuffer
       
  4261     //4 phoneBookReadStatus    
       
  4262     CleanupStack::Pop(4,&phoneBookStoreInfoStatus);	
       
  4263 	
       
  4264 	}
       
  4265 
       
  4266 
       
  4267 
       
  4268 CCTSYIntegrationTestPhoneBookStore0025Base::CCTSYIntegrationTestPhoneBookStore0025Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4269 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4270 /**
       
  4271  * Constructor.
       
  4272  */
       
  4273 	{
       
  4274 	
       
  4275 	}
       
  4276 
       
  4277 CCTSYIntegrationTestPhoneBookStore0025Base::~CCTSYIntegrationTestPhoneBookStore0025Base()
       
  4278 /**
       
  4279  * Destructor.
       
  4280  */
       
  4281 	{
       
  4282 	}
       
  4283 
       
  4284 void CCTSYIntegrationTestPhoneBookStore0025Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4285 /**
       
  4286  * TestDesc: Read multiple phone book entries into a buffer that is too small.
       
  4287  * TestExpectedResults: Pass - KErrGeneral returned when the descriptor is too small.
       
  4288  * Reason for test: Verify KErrGeneral returned
       
  4289  */
       
  4290 	{
       
  4291 
       
  4292 	//
       
  4293 	// SET UP
       
  4294 	//
       
  4295 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4296 			, KMainPhone, aPhoneBookId);
       
  4297 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4298 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4299 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4300 		, EMobilePhoneStoreGetInfo);
       
  4301 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4302 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4303 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4304 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4305 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4306 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4307 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4308 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4309 	
       
  4310 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess  
       
  4311 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  4312 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4313 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  4314 	
       
  4315 	// Write valid entries into the first 50 locations in the phone book. 
       
  4316 	TBuf8<KPBDataClientBuf50> pbData; // Client reserved space for phonebook data
       
  4317 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4318 	CleanupStack::PushL(pbBuffer);
       
  4319 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer
       
  4320 	
       
  4321 	TInt count = phoneBookInfo.iTotalEntries/3;
       
  4322 	_LIT(KTel,"123456%03d");
       
  4323 	_LIT(KText,"TelNo %03d");	
       
  4324 	TBuf<KBufSize> names;
       
  4325 	TBuf<KBufSize> numbers;
       
  4326 	
       
  4327 	for(TInt i = 1; i<= count; ++i)
       
  4328 		{
       
  4329 		DEBUG_PRINTF2(_L("loop iteration : %d"),i);
       
  4330 		numbers.Format(KTel,i);
       
  4331 		names.Format(KText,i);
       
  4332 		TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  4333 				, names);
       
  4334 		CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  4335 		TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  4336 		CleanupStack::PushL(phoneBookWriteStatus);
       
  4337 		phoneBookStore.Write(phoneBookWriteStatus, pbData, i);
       
  4338 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  4339 				, ETimeMedium), KErrNone,
       
  4340 				_L("RMobilePhoneBookStore::Write timed-out"));
       
  4341 		CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  4342 			_L("RMobilePhoneBookStore::Write returned with an error"));
       
  4343 		pbData.FillZ();
       
  4344 		pbData.Zero();
       
  4345 		CleanupStack::PopAndDestroy(&phoneBookWriteStatus);		
       
  4346 		}
       
  4347 
       
  4348 	//
       
  4349 	// SET UP END
       
  4350 	//
       
  4351 	
       
  4352 	StartTest();
       
  4353 	
       
  4354 	//
       
  4355 	// TEST START
       
  4356 	//
       
  4357 	
       
  4358 	
       
  4359 	// Read 50 entries from the phone book using aIndex = 1, aNumSlots = 50 and aPBData = a 10 byte descriptor 
       
  4360 	TBuf8<10> pbData1;
       
  4361 	pbBuffer->Set(&pbData1);
       
  4362 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  4363 			, EMobilePhoneBookStoreRead);	
       
  4364 	CleanupStack::PushL(phoneBookReadStatus);	
       
  4365 	phoneBookStore.Read(phoneBookReadStatus, 1, count, pbData);
       
  4366 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookReadStatus
       
  4367 			, ETimeMedium), KErrNone,
       
  4368 			_L("RMobilePhoneBookStore::Read timed-out"));
       
  4369 	
       
  4370 	// Check KErrGeneral is returned.
       
  4371 	ASSERT_EQUALS(phoneBookReadStatus.Int(), KErrGeneral, 
       
  4372 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  4373 	
       
  4374 	//
       
  4375 	// TEST END
       
  4376 	//
       
  4377 
       
  4378     StartCleanup();
       
  4379 	
       
  4380     //1 phoneBookStoreInfoStatus
       
  4381     //2 pbBuffer
       
  4382     //3 phoneBookReadStatus    
       
  4383     CleanupStack::Pop(3,&phoneBookStoreInfoStatus);	
       
  4384 	
       
  4385 	}
       
  4386 
       
  4387 
       
  4388 
       
  4389 CCTSYIntegrationTestPhoneBookStore0026Base::CCTSYIntegrationTestPhoneBookStore0026Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4390 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4391 /**
       
  4392  * Constructor.
       
  4393  */
       
  4394 	{
       
  4395 	
       
  4396 	}
       
  4397 
       
  4398 CCTSYIntegrationTestPhoneBookStore0026Base::~CCTSYIntegrationTestPhoneBookStore0026Base()
       
  4399 /**
       
  4400  * Destructor.
       
  4401  */
       
  4402 	{
       
  4403 	}
       
  4404 
       
  4405 void CCTSYIntegrationTestPhoneBookStore0026Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4406 /**
       
  4407  * TestCaseDesc: Cancel reading a single entry from the phone book.
       
  4408  * TestExpectedResults: Pass - KErrCancel returned.
       
  4409  * Reason for test: Verify KErrCancel returned.
       
  4410  */
       
  4411 	{
       
  4412 
       
  4413 	//
       
  4414 	// SET UP
       
  4415 	//
       
  4416 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4417 			, KMainPhone, aPhoneBookId);
       
  4418 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4419 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4420 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4421 		, EMobilePhoneStoreGetInfo);
       
  4422 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4423 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4424 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4425 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4426 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4427 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4428 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4429 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4430 	
       
  4431 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsReadAccess  
       
  4432 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  4433 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4434 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  4435 
       
  4436 	// Write an entry to a known location in the phone book
       
  4437 	TInt index = 10;
       
  4438 	TBuf<KBufSize> names(KAndersText);
       
  4439 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  4440 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  4441 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4442 	CleanupStack::PushL(pbBuffer);
       
  4443 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  4444 
       
  4445 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  4446 			, names);
       
  4447 	CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  4448 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  4449 	CleanupStack::PushL(phoneBookWriteStatus);
       
  4450 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  4451 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  4452 			, ETimeMedium), KErrNone,
       
  4453 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  4454 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  4455 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  4456 	
       
  4457 	//
       
  4458 	// SET UP END
       
  4459 	//
       
  4460 	
       
  4461 	StartTest();
       
  4462 	
       
  4463 	//
       
  4464 	// TEST START
       
  4465 	//
       
  4466 	
       
  4467 	
       
  4468 	// Read an entry that exists from the phone book 
       
  4469 	pbData.FillZ();
       
  4470 	pbData.Zero();		
       
  4471 	TExtEtelRequestStatus phoneBookReadStatus(phoneBookStore
       
  4472 		, EMobilePhoneBookStoreRead);	
       
  4473 	CleanupStack::PushL(phoneBookReadStatus);
       
  4474 	
       
  4475 	phoneBookStore.Read(phoneBookReadStatus, index, 1, pbData);
       
  4476 	
       
  4477 	// Cancel read entry by calling CancelAsyncRequest( EMobilePhoneBookStoreRead )  
       
  4478 	phoneBookStore.CancelAsyncRequest(EMobilePhoneBookStoreRead);
       
  4479 	
       
  4480 	// Check KErrCancel or KErrNone is returned
       
  4481 	ASSERT_TRUE(phoneBookReadStatus.Int()==KErrCancel || phoneBookReadStatus.Int()==KErrNone, 
       
  4482 			_L("RMobilePhoneBookStore::Read returned with an error"));
       
  4483 	
       
  4484 	//
       
  4485 	// TEST END
       
  4486 	//
       
  4487 
       
  4488     StartCleanup();
       
  4489 	
       
  4490     //1 phoneBookStoreInfoStatus
       
  4491     //2 pbBuffer
       
  4492     //3 phoneBookWriteStatus
       
  4493     //4 phoneBookReadStatus    
       
  4494     CleanupStack::Pop(4,&phoneBookStoreInfoStatus);	
       
  4495 	
       
  4496 	}
       
  4497 
       
  4498 
       
  4499 
       
  4500 CCTSYIntegrationTestPhoneBookStore0027Base::CCTSYIntegrationTestPhoneBookStore0027Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4501 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4502 /**
       
  4503  * Constructor.
       
  4504  */
       
  4505 	{
       
  4506 	
       
  4507 	}
       
  4508 
       
  4509 CCTSYIntegrationTestPhoneBookStore0027Base::~CCTSYIntegrationTestPhoneBookStore0027Base()
       
  4510 /**
       
  4511  * Destructor.
       
  4512  */
       
  4513 	{
       
  4514 	}
       
  4515 
       
  4516 void CCTSYIntegrationTestPhoneBookStore0027Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4517 /**
       
  4518  * TestDesc: Cancel writing an entry to the phone book.
       
  4519  * TestExpectedResults: Pass - KErrCancel or KErrNone returned.
       
  4520  * Reason for test: Verify KErrCancel returned.
       
  4521  */
       
  4522 	{
       
  4523 
       
  4524 	//
       
  4525 	// SET UP
       
  4526 	//
       
  4527 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4528 			, KMainPhone, aPhoneBookId);
       
  4529 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4530 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4531 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4532 		, EMobilePhoneStoreGetInfo);
       
  4533 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4534 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4535 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4536 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4537 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4538 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4539 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4540 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4541 	
       
  4542 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess 
       
  4543 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess;
       
  4544 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4545 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));	
       
  4546 
       
  4547 	// Ensure phone book is not full 
       
  4548 	if (phoneBookInfo.iUsedEntries == phoneBookInfo.iTotalEntries)    
       
  4549 		{
       
  4550 		// delete some entries
       
  4551 		TInt index = 1;
       
  4552 		
       
  4553 		TExtEtelRequestStatus deleteStoreStatus(phoneBookStore,EMobilePhoneStoreDelete);
       
  4554 		CleanupStack::PushL(deleteStoreStatus);
       
  4555 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  4556 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  4557 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  4558 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  4559 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  4560 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  4561 		index = 2;
       
  4562 		phoneBookStore.Delete(deleteStoreStatus,index);
       
  4563 		CHECK_EQUALS_L(WaitForRequestWithTimeOut(deleteStoreStatus, ETimeMedium),KErrNone, 
       
  4564 				_L("RMobilePhoneBookStore::Delete timed-out"));
       
  4565 		CHECK_TRUE_L( ( deleteStoreStatus.Int() == KErrNotFound 
       
  4566 						|| deleteStoreStatus.Int() == KErrNone ),		
       
  4567 					 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  4568 		CleanupStack::PopAndDestroy(&deleteStoreStatus);
       
  4569 		}
       
  4570 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4571 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4572 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4573 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4574 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4575 	CHECK_TRUE_L(phoneBookInfo.iUsedEntries < phoneBookInfo.iTotalEntries,
       
  4576 				_L("RMobilePhoneBookStore::GetInfo phonebook is full"));
       
  4577 
       
  4578 	//
       
  4579 	// SET UP END
       
  4580 	//
       
  4581 	
       
  4582 	StartTest();
       
  4583 	
       
  4584 	//
       
  4585 	// TEST START
       
  4586 	//
       
  4587 	
       
  4588 	
       
  4589 	TInt index = -1;
       
  4590 	// Write an entry to the phone book in the next available slot 
       
  4591 	TBuf<KBufSize> names(KAndersText);
       
  4592 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  4593 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  4594 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4595 	CleanupStack::PushL(pbBuffer);
       
  4596 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  4597 
       
  4598 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  4599 			, names);
       
  4600 	ASSERT_TRUE(ret,_L("EncodeTLVFormat failed"));
       
  4601 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  4602 	CleanupStack::PushL(phoneBookWriteStatus);
       
  4603 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  4604 
       
  4605 	// Cancel write entry by calling CancelAsyncRequest( EMobilePhoneBookStoreWrite );  
       
  4606 	phoneBookStore.CancelAsyncRequest(EMobilePhoneBookStoreWrite);
       
  4607 	
       
  4608 	// Check KErrCancel or KErrNone returned
       
  4609 	ASSERT_EQUALS(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  4610 			, ETimeMedium), KErrNone,
       
  4611 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  4612 	ASSERT_TRUE( ( (phoneBookWriteStatus.Int() == KErrCancel) ||
       
  4613 					(phoneBookWriteStatus.Int() == KErrNone) ), 
       
  4614 			_L("RMobilePhoneBookStore::Write did not return KErrCancel or KErrNone"));
       
  4615 	
       
  4616 	//
       
  4617 	// TEST END
       
  4618 	//
       
  4619 
       
  4620     StartCleanup();
       
  4621 	
       
  4622     //1 phoneBookStoreInfoStatus
       
  4623     //2 pbBuffer
       
  4624     //3 phoneBookWriteStatus    
       
  4625     CleanupStack::Pop(3,&phoneBookStoreInfoStatus);
       
  4626     
       
  4627 	}
       
  4628 
       
  4629 
       
  4630 
       
  4631 CCTSYIntegrationTestPhoneBookStore0028Base::CCTSYIntegrationTestPhoneBookStore0028Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4632 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4633 /**
       
  4634  * Constructor.
       
  4635  */
       
  4636 	{
       
  4637 	
       
  4638 	}
       
  4639 
       
  4640 CCTSYIntegrationTestPhoneBookStore0028Base::~CCTSYIntegrationTestPhoneBookStore0028Base()
       
  4641 /**
       
  4642  * Destructor.
       
  4643  */
       
  4644 	{
       
  4645 	}
       
  4646 
       
  4647 void CCTSYIntegrationTestPhoneBookStore0028Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4648 /**
       
  4649  * TestDesc: Cancel deleting an entry from the phone book.
       
  4650  * TestExpectedResults: Pass - KErrCancel or KErrNone returned.
       
  4651  * Reason for test: Verify KErrCancel returned.
       
  4652  */
       
  4653 	{
       
  4654 
       
  4655 	//
       
  4656 	// SET UP
       
  4657 	//
       
  4658 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer
       
  4659 			, KMainPhone, aPhoneBookId);
       
  4660 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4661 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4662 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore
       
  4663 		, EMobilePhoneStoreGetInfo);
       
  4664 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4665 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4666 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);	
       
  4667 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);	
       
  4668 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookStoreInfoStatus, ETimeShort), KErrNone, 
       
  4669 		_L("RMobilePhoneBookStore::GetInfo timed-out"));
       
  4670 	CHECK_EQUALS_L(phoneBookStoreInfoStatus.Int(),  KErrNone,
       
  4671 		 _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4672 	
       
  4673 	// Ensure RMobilePhoneStore::GetInfo returns iCaps in set of KCapsWriteAccess 
       
  4674 	TUint32 expectedCaps = RMobilePhoneStore::KCapsWriteAccess;
       
  4675 	CHECK_BITS_SET_L(phoneBookInfo.iCaps, expectedCaps, KNoUnwantedBits,
       
  4676 			_L("RMobilePhoneBookStore::GetInfo returned incorrect caps"));
       
  4677 	
       
  4678 	// Write an entry to the phone book at a known location 
       
  4679 	TInt index = 10;
       
  4680 	TBuf<KBufSize> names(KAndersText);
       
  4681 	TBuf<KBufSize> numbers(KAndersPhoneNum);
       
  4682 	TBuf8<KPBDataClientBuf10> pbData; // Client reserved space for phonebook data
       
  4683 	CPhoneBookBuffer* pbBuffer = new(ELeave) CPhoneBookBuffer(); // used to write phonebook data
       
  4684 	CleanupStack::PushL(pbBuffer);
       
  4685 	pbBuffer->Set(&pbData); // Set it to point to the Client buffer	
       
  4686 
       
  4687 	TBool ret = EncodeTLVFormat(pbBuffer, numbers, (TUint8)RMobilePhone::EUnknownNumber
       
  4688 			, names);
       
  4689 	CHECK_TRUE_L(ret,_L("EncodeTLVFormat failed"));
       
  4690 	TExtEtelRequestStatus phoneBookWriteStatus(phoneBookStore, EMobilePhoneBookStoreWrite);
       
  4691 	CleanupStack::PushL(phoneBookWriteStatus);
       
  4692 	phoneBookStore.Write(phoneBookWriteStatus, pbData, index);
       
  4693 
       
  4694 	CHECK_EQUALS_L(WaitForRequestWithTimeOut(phoneBookWriteStatus
       
  4695 			, ETimeLong), KErrNone,
       
  4696 			_L("RMobilePhoneBookStore::Write timed-out"));
       
  4697 	CHECK_EQUALS_L(phoneBookWriteStatus.Int(), KErrNone, 
       
  4698 		_L("RMobilePhoneBookStore::Write returned with an error"));
       
  4699 		
       
  4700 	//
       
  4701 	// SET UP END
       
  4702 	//
       
  4703 	
       
  4704 	StartTest();
       
  4705 	
       
  4706 	//
       
  4707 	// TEST START
       
  4708 	//
       
  4709 	
       
  4710 	
       
  4711 	// Delete an entry that exists 
       
  4712 	TExtEtelRequestStatus deleteStoreStatus(phoneBookStore
       
  4713 			, EMobilePhoneStoreDeleteAll);
       
  4714 	CleanupStack::PushL(deleteStoreStatus);
       
  4715 	phoneBookStore.Delete(deleteStoreStatus,index);	
       
  4716 
       
  4717 	// Cancel delete entry by calling CancelAsyncRequest( EMobilePhoneStoreDelete ) 
       
  4718 	phoneBookStore.CancelAsyncRequest(EMobilePhoneStoreDelete);
       
  4719 
       
  4720 	// Check KErrCancel or KErrNone is returned
       
  4721 	ASSERT_EQUALS(WaitForRequestWithTimeOut(deleteStoreStatus
       
  4722 			, ETimeMedium), KErrNone,
       
  4723 			_L("RMobilePhoneBookStore::Delete timed-out"));
       
  4724 	ASSERT_TRUE( (deleteStoreStatus.Int() == KErrNone) || 
       
  4725 				(deleteStoreStatus.Int() == KErrCancel),
       
  4726 			 _L("RMobilePhoneBookStore::Delete returned with an error."));
       
  4727 	
       
  4728 	//
       
  4729 	// TEST END
       
  4730 	//
       
  4731 
       
  4732     StartCleanup();
       
  4733 	
       
  4734     //1 phoneBookStoreInfoStatus
       
  4735     //2 pbBuffer
       
  4736     //3 phoneBookWriteStatus    
       
  4737     //4 deleteStoreStatus
       
  4738     CleanupStack::Pop(4,&phoneBookStoreInfoStatus);
       
  4739 	
       
  4740 	
       
  4741 	}
       
  4742 
       
  4743 
       
  4744 CCTSYIntegrationTestPhoneBookStore0029Base::CCTSYIntegrationTestPhoneBookStore0029Base(CEtelSessionMgr& aEtelSessionMgr)
       
  4745 	: CCTSYIntegrationTestPhoneBookStoreBase(aEtelSessionMgr)
       
  4746 /**
       
  4747  * Constructor.
       
  4748  */
       
  4749 	{
       
  4750 	}
       
  4751 
       
  4752 CCTSYIntegrationTestPhoneBookStore0029Base::~CCTSYIntegrationTestPhoneBookStore0029Base()
       
  4753 /**
       
  4754  * Destructor.
       
  4755  */
       
  4756 	{
       
  4757 	}
       
  4758 
       
  4759 void CCTSYIntegrationTestPhoneBookStore0029Base::DoTestProcedureL(TPhoneBookStoreId aPhoneBookId)
       
  4760 /**
       
  4761  * TestDesc: Cancel getting phone store information.
       
  4762  * TestExpectedResults: Pass - KErrCancel or KErrNone returned.
       
  4763  * Reason for test: Verify KErrCancel returned.
       
  4764  */
       
  4765 	{
       
  4766 
       
  4767 	//
       
  4768 	// SET UP
       
  4769 	//
       
  4770 
       
  4771 	//
       
  4772 	// SET UP END
       
  4773 	//
       
  4774 	
       
  4775 	StartTest();
       
  4776 	
       
  4777 	//
       
  4778 	// TEST START
       
  4779 	//
       
  4780 	
       
  4781 	
       
  4782 	// Get the phone store information using RMobilePhoneStore::GetInfo 
       
  4783 	RMobilePhoneBookStore& phoneBookStore = iEtelSessionMgr.GetPhoneBookStoreL(KMainServer, KMainPhone, aPhoneBookId);
       
  4784 	RMmCustomAPI& mmCustomAPI = iEtelSessionMgr.GetCustomApiL(KMainServer, KMainPhone,KMainCustomApi);
       
  4785 	iPhoneTsyTestHelper.WaitForPhoneBookStoreCacheReadyL(mmCustomAPI,aPhoneBookId);
       
  4786 
       
  4787 	TExtEtelRequestStatus phoneBookStoreInfoStatus(phoneBookStore, EMobilePhoneStoreGetInfo);
       
  4788 	CleanupStack::PushL(phoneBookStoreInfoStatus);
       
  4789 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1 phoneBookInfo;
       
  4790 	RMobilePhoneBookStore::TMobilePhoneBookInfoV1Pckg phoneBookInfoPckg(phoneBookInfo);
       
  4791 	phoneBookStore.GetInfo(phoneBookStoreInfoStatus, phoneBookInfoPckg);
       
  4792 	
       
  4793 	// Cancel by calling CancelAsyncRequest( EMobilePhoneStoreGetInfo ) 
       
  4794 	phoneBookStore.CancelAsyncRequest(EMobilePhoneStoreGetInfo);
       
  4795 	
       
  4796 	// Check request is cancelled with KErrCancel | KErrNone
       
  4797 	ASSERT_TRUE(( phoneBookStoreInfoStatus.Int() == KErrCancel
       
  4798 			|| phoneBookStoreInfoStatus.Int() == KErrNone), _L("RMobilePhoneBookStore::GetInfo returned with an error"));
       
  4799 	
       
  4800 	//
       
  4801 	// TEST END
       
  4802 	//
       
  4803 
       
  4804     StartCleanup();
       
  4805 	
       
  4806 	CleanupStack::Pop(&phoneBookStoreInfoStatus);
       
  4807 	
       
  4808 	
       
  4809 	}
       
  4810 
       
  4811 //
       
  4812 // Definitions of actual test cases for each phone book are below.
       
  4813 //
       
  4814 
       
  4815 
       
  4816 CCTSYIntegrationTestPhoneBookStore0001ADN::CCTSYIntegrationTestPhoneBookStore0001ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  4817 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  4818 /**
       
  4819  * Constructor.
       
  4820  */
       
  4821 {
       
  4822 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001ADN::GetTestStepName());
       
  4823 }
       
  4824 
       
  4825 CCTSYIntegrationTestPhoneBookStore0001ADN::~CCTSYIntegrationTestPhoneBookStore0001ADN()
       
  4826 /**
       
  4827  * Destructor.
       
  4828  */
       
  4829 {
       
  4830 }
       
  4831 
       
  4832 TVerdict CCTSYIntegrationTestPhoneBookStore0001ADN::doTestStepL()
       
  4833 /**
       
  4834  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0001
       
  4835  * @SYMFssID BA/CTSY/PBSTR-ADN-0001
       
  4836  * @SYMTestCaseDesc Get phone store information. (ADN phone book)
       
  4837  * @SYMTestPriority High
       
  4838  * @SYMTestActions 
       
  4839  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  4840  * @SYMTestType CIT
       
  4841  * @SYMTestCaseDependencies live/automatic
       
  4842  *
       
  4843  * Reason for test: Verify phone store information returned is correct.
       
  4844  *
       
  4845  * @return - TVerdict code
       
  4846  */
       
  4847 	{
       
  4848 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess 
       
  4849 							| RMobilePhoneStore::KCapsWriteAccess 
       
  4850 							| RMobilePhoneStore::KCapsDeleteAll 
       
  4851 							| RMobilePhoneStore::KCapsNotifyEvent;		
       
  4852 	DoTestProcedureL(KIccAdnPhoneBook,RMobilePhoneBookStore::ELocationIccMemory, expectedCaps);
       
  4853 	return TestStepResult();
       
  4854 	}
       
  4855 
       
  4856 TPtrC CCTSYIntegrationTestPhoneBookStore0001ADN::GetTestStepName()
       
  4857 /**
       
  4858  * @return The test step name.
       
  4859  */
       
  4860 	{
       
  4861 	return _L("CCTSYIntegrationTestPhoneBookStore0001ADN");
       
  4862 	}
       
  4863 
       
  4864 
       
  4865 
       
  4866 CCTSYIntegrationTestPhoneBookStore0001FDN::CCTSYIntegrationTestPhoneBookStore0001FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  4867 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  4868 /**
       
  4869  * Constructor.
       
  4870  */
       
  4871 	{
       
  4872 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001FDN::GetTestStepName());
       
  4873 	}
       
  4874 
       
  4875 CCTSYIntegrationTestPhoneBookStore0001FDN::~CCTSYIntegrationTestPhoneBookStore0001FDN()
       
  4876 /**
       
  4877  * Destructor.
       
  4878  */
       
  4879 	{
       
  4880 	}
       
  4881 
       
  4882 TVerdict CCTSYIntegrationTestPhoneBookStore0001FDN::doTestStepL()
       
  4883 /**
       
  4884  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0001
       
  4885  * @SYMFssID BA/CTSY/PBSTR-FDN-0001
       
  4886  * @SYMTestCaseDesc Get phone store information. (FDN phone book)
       
  4887  * @SYMTestPriority High
       
  4888  * @SYMTestActions 
       
  4889  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  4890  * @SYMTestType CIT
       
  4891  * @SYMTestCaseDependencies live/automatic
       
  4892  *
       
  4893  * Reason for test: Verify phone store information returned is correct.
       
  4894  *
       
  4895  * @return - TVerdict code
       
  4896  */
       
  4897 	{
       
  4898 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess 
       
  4899 							| RMobilePhoneStore::KCapsWriteAccess 
       
  4900 							| RMobilePhoneStore::KCapsDeleteAll 
       
  4901 							| RMobilePhoneStore::KCapsNotifyEvent 
       
  4902 							| RMobilePhoneBookStore::KCapsRestrictedWriteAccess;		
       
  4903 	DoTestProcedureL(KIccFdnPhoneBook,RMobilePhoneBookStore::ELocationIccMemory, expectedCaps);
       
  4904 
       
  4905 	return TestStepResult();
       
  4906 	}
       
  4907 
       
  4908 TPtrC CCTSYIntegrationTestPhoneBookStore0001FDN::GetTestStepName()
       
  4909 /**
       
  4910  * @return The test step name.
       
  4911  */
       
  4912 	{
       
  4913 	return _L("CCTSYIntegrationTestPhoneBookStore0001FDN");
       
  4914 	}
       
  4915 
       
  4916 CCTSYIntegrationTestPhoneBookStore0001BDN::CCTSYIntegrationTestPhoneBookStore0001BDN(CEtelSessionMgr& aEtelSessionMgr)
       
  4917 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  4918 /**
       
  4919  * Constructor.
       
  4920  */
       
  4921 	{
       
  4922 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001BDN::GetTestStepName());
       
  4923 	}
       
  4924 
       
  4925 CCTSYIntegrationTestPhoneBookStore0001BDN::~CCTSYIntegrationTestPhoneBookStore0001BDN()
       
  4926 /**
       
  4927  * Destructor.
       
  4928  */
       
  4929 	{
       
  4930 	}
       
  4931 
       
  4932 TVerdict CCTSYIntegrationTestPhoneBookStore0001BDN::doTestStepL()
       
  4933 /**
       
  4934  * @SYMTestCaseID BA-CTSY-INT-PBSTR-BDN-0001
       
  4935  * @SYMFssID BA/CTSY/PBSTR-BDN-0001
       
  4936  * @SYMTestCaseDesc Get phone store information. (BDN phone book)
       
  4937  * @SYMTestPriority High
       
  4938  * @SYMTestActions 
       
  4939  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  4940  * @SYMTestType CIT
       
  4941  * @SYMTestCaseDependencies live/automatic
       
  4942  *
       
  4943  * Reason for test: Verify phone store information returned is correct.
       
  4944  *
       
  4945  * @return - TVerdict code
       
  4946  */
       
  4947 	{
       
  4948 	// test causing the board to reboot
       
  4949 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10007);
       
  4950 	TUint32 expectedCaps = 0;		
       
  4951 	User::Leave(KErrGeneral); // Test leaving to prevent crashing the hardware. Remove this line when defect is fixed.
       
  4952 	DoTestProcedureL(KIccBdnPhoneBook,RMobilePhoneBookStore::ELocationUnknown, expectedCaps);
       
  4953 	return TestStepResult();
       
  4954 	}
       
  4955 
       
  4956 TPtrC CCTSYIntegrationTestPhoneBookStore0001BDN::GetTestStepName()
       
  4957 /**
       
  4958  * @return The test step name.
       
  4959  */
       
  4960 	{
       
  4961 	return _L("CCTSYIntegrationTestPhoneBookStore0001BDN");
       
  4962 	}
       
  4963 
       
  4964 
       
  4965 CCTSYIntegrationTestPhoneBookStore0001SDN::CCTSYIntegrationTestPhoneBookStore0001SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  4966 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  4967 /**
       
  4968  * Constructor.
       
  4969  */
       
  4970 	{
       
  4971 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001SDN::GetTestStepName());
       
  4972 	}
       
  4973 
       
  4974 CCTSYIntegrationTestPhoneBookStore0001SDN::~CCTSYIntegrationTestPhoneBookStore0001SDN()
       
  4975 /**
       
  4976  * Destructor.
       
  4977  */
       
  4978 	{
       
  4979 	}
       
  4980 
       
  4981 TVerdict CCTSYIntegrationTestPhoneBookStore0001SDN::doTestStepL()
       
  4982 /**
       
  4983  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0001
       
  4984  * @SYMFssID BA/CTSY/PBSTR-SDN-0001
       
  4985  * @SYMTestCaseDesc Get phone store information. (SDN phone book)
       
  4986  * @SYMTestPriority High
       
  4987  * @SYMTestActions 
       
  4988  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  4989  * @SYMTestType CIT
       
  4990  * @SYMTestCaseDependencies live/automatic
       
  4991  *
       
  4992  * Reason for test: Verify phone store information returned is correct.
       
  4993  *
       
  4994  * @return - TVerdict code
       
  4995  */
       
  4996 	{
       
  4997 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess;
       
  4998 	DoTestProcedureL(KIccSdnPhoneBook,RMobilePhoneBookStore::ELocationIccMemory, expectedCaps);
       
  4999 	return TestStepResult();
       
  5000 	}
       
  5001 
       
  5002 TPtrC CCTSYIntegrationTestPhoneBookStore0001SDN::GetTestStepName()
       
  5003 /**
       
  5004  * @return The test step name.
       
  5005  */
       
  5006 	{
       
  5007 	return _L("CCTSYIntegrationTestPhoneBookStore0001SDN");
       
  5008 	}
       
  5009 
       
  5010 
       
  5011 
       
  5012 CCTSYIntegrationTestPhoneBookStore0001VMBX::CCTSYIntegrationTestPhoneBookStore0001VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  5013 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  5014 /**
       
  5015  * Constructor.
       
  5016  */
       
  5017 	{
       
  5018 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001VMBX::GetTestStepName());
       
  5019 	}
       
  5020 
       
  5021 CCTSYIntegrationTestPhoneBookStore0001VMBX::~CCTSYIntegrationTestPhoneBookStore0001VMBX()
       
  5022 /**
       
  5023  * Destructor.
       
  5024  */
       
  5025 {
       
  5026 }
       
  5027 
       
  5028 TVerdict CCTSYIntegrationTestPhoneBookStore0001VMBX::doTestStepL()
       
  5029 /**
       
  5030  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0001
       
  5031  * @SYMFssID BA/CTSY/PBSTR-VMBX-0001
       
  5032  * @SYMTestCaseDesc Get phone store information. (VMBX phone book)
       
  5033  * @SYMTestPriority High
       
  5034  * @SYMTestActions 
       
  5035  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  5036  * @SYMTestType CIT
       
  5037  * @SYMTestCaseDependencies live/automatic
       
  5038  *
       
  5039  * Reason for test: Verify phone store information returned is correct.
       
  5040  *
       
  5041  * @return - TVerdict code
       
  5042  */
       
  5043 	{
       
  5044 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  5045 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess 
       
  5046 							| RMobilePhoneStore::KCapsWriteAccess 
       
  5047 							| RMobilePhoneStore::KCapsDeleteAll 
       
  5048 							| RMobilePhoneStore::KCapsNotifyEvent;		
       
  5049 	DoTestProcedureL(KIccVoiceMailBox,RMobilePhoneBookStore::ELocationIccMemory, expectedCaps);
       
  5050 
       
  5051 	return TestStepResult();
       
  5052 	}
       
  5053 
       
  5054 TPtrC CCTSYIntegrationTestPhoneBookStore0001VMBX::GetTestStepName()
       
  5055 /**
       
  5056  * @return The test step name.
       
  5057  */
       
  5058 	{
       
  5059 	return _L("CCTSYIntegrationTestPhoneBookStore0001VMBX");
       
  5060 	}
       
  5061 
       
  5062 
       
  5063 
       
  5064 CCTSYIntegrationTestPhoneBookStore0001MBDN::CCTSYIntegrationTestPhoneBookStore0001MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5065 : CCTSYIntegrationTestPhoneBookStore0001Base(aEtelSessionMgr)
       
  5066 /**
       
  5067  * Constructor.
       
  5068  */
       
  5069 	{
       
  5070 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0001MBDN::GetTestStepName());
       
  5071 	}
       
  5072 
       
  5073 CCTSYIntegrationTestPhoneBookStore0001MBDN::~CCTSYIntegrationTestPhoneBookStore0001MBDN()
       
  5074 /**
       
  5075  * Destructor.
       
  5076  */
       
  5077 {
       
  5078 }
       
  5079 
       
  5080 TVerdict CCTSYIntegrationTestPhoneBookStore0001MBDN::doTestStepL()
       
  5081 /**
       
  5082  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0001
       
  5083  * @SYMFssID BA/CTSY/PBSTR-MBDN-0001
       
  5084  * @SYMTestCaseDesc Get phone store information. (MBDN phone book)
       
  5085  * @SYMTestPriority High
       
  5086  * @SYMTestActions 
       
  5087  * @SYMTestExpectedResults Pass - RMobilePhoneBookStore::TMobilePhoneBookInfoV1 returned with correct information.
       
  5088  * @SYMTestType CIT
       
  5089  * @SYMTestCaseDependencies live/automatic
       
  5090  *
       
  5091  * Reason for test: Verify phone store information returned is correct.
       
  5092  *
       
  5093  * @return - TVerdict code
       
  5094  */
       
  5095 	{
       
  5096     ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10040);
       
  5097 	
       
  5098 	TUint32 expectedCaps = RMobilePhoneStore::KCapsReadAccess 
       
  5099 							| RMobilePhoneStore::KCapsWriteAccess;		
       
  5100 	DoTestProcedureL(KIccMbdnPhoneBook,RMobilePhoneBookStore::ELocationIccMemory, expectedCaps);
       
  5101 
       
  5102 	return TestStepResult();
       
  5103 	}
       
  5104 
       
  5105 TPtrC CCTSYIntegrationTestPhoneBookStore0001MBDN::GetTestStepName()
       
  5106 /**
       
  5107  * @return The test step name.
       
  5108  */
       
  5109 	{
       
  5110 	return _L("CCTSYIntegrationTestPhoneBookStore0001MBDN");
       
  5111 	}
       
  5112 
       
  5113 
       
  5114 
       
  5115 CCTSYIntegrationTestPhoneBookStore0002ADN::CCTSYIntegrationTestPhoneBookStore0002ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  5116 : CCTSYIntegrationTestPhoneBookStore0002Base(aEtelSessionMgr)
       
  5117 /**
       
  5118  * Constructor.
       
  5119  */
       
  5120 	{
       
  5121 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0002ADN::GetTestStepName());
       
  5122 	}
       
  5123 
       
  5124 CCTSYIntegrationTestPhoneBookStore0002ADN::~CCTSYIntegrationTestPhoneBookStore0002ADN()
       
  5125 /**
       
  5126  * Destructor.
       
  5127  */
       
  5128 {
       
  5129 }
       
  5130 
       
  5131 TVerdict CCTSYIntegrationTestPhoneBookStore0002ADN::doTestStepL()
       
  5132 /**
       
  5133  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0002
       
  5134  * @SYMFssID BA/CTSY/PBSTR-ADN-0002
       
  5135  * @SYMTestCaseDesc Read single and multiple phonebook entries. (ADN phone book)
       
  5136  * @SYMTestPriority High
       
  5137  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5138  * @SYMTestExpectedResults Pass - Single and multiple entries read successfully.
       
  5139  * @SYMTestType CIT
       
  5140  * @SYMTestCaseDependencies live/automatic
       
  5141  *
       
  5142  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
  5143  *
       
  5144  * @return - TVerdict code
       
  5145  */
       
  5146 	{
       
  5147 	DoTestProcedureL(KIccAdnPhoneBook);
       
  5148 	return TestStepResult();
       
  5149 	}
       
  5150 
       
  5151 TPtrC CCTSYIntegrationTestPhoneBookStore0002ADN::GetTestStepName()
       
  5152 /**
       
  5153  * @return The test step name.
       
  5154  */
       
  5155 	{
       
  5156 	return _L("CCTSYIntegrationTestPhoneBookStore0002ADN");
       
  5157 	}
       
  5158 
       
  5159 
       
  5160 
       
  5161 CCTSYIntegrationTestPhoneBookStore0002FDN::CCTSYIntegrationTestPhoneBookStore0002FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5162 : CCTSYIntegrationTestPhoneBookStore0002Base(aEtelSessionMgr)
       
  5163 /**
       
  5164  * Constructor.
       
  5165  */
       
  5166 	{
       
  5167 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0002FDN::GetTestStepName());
       
  5168 	}
       
  5169 
       
  5170 CCTSYIntegrationTestPhoneBookStore0002FDN::~CCTSYIntegrationTestPhoneBookStore0002FDN()
       
  5171 /**
       
  5172  * Destructor.
       
  5173  */
       
  5174 {
       
  5175 }
       
  5176 
       
  5177 TVerdict CCTSYIntegrationTestPhoneBookStore0002FDN::doTestStepL()
       
  5178 /**
       
  5179  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0002
       
  5180  * @SYMFssID BA/CTSY/PBSTR-FDN-0002
       
  5181  * @SYMTestCaseDesc Read single and multiple phonebook entries. (FDN phone book)
       
  5182  * @SYMTestPriority High
       
  5183  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5184  * @SYMTestExpectedResults Pass - Single and multiple entries read successfully.
       
  5185  * @SYMTestType CIT
       
  5186  * @SYMTestCaseDependencies live/automatic
       
  5187  *
       
  5188  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
  5189  *
       
  5190  * @return - TVerdict code
       
  5191  */
       
  5192 	{
       
  5193 	
       
  5194 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  5195 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  5196 	DoTestProcedureL(KIccFdnPhoneBook);
       
  5197 	return TestStepResult();
       
  5198 	}
       
  5199 
       
  5200 TPtrC CCTSYIntegrationTestPhoneBookStore0002FDN::GetTestStepName()
       
  5201 /**
       
  5202  * @return The test step name.
       
  5203  */
       
  5204 	{
       
  5205 	return _L("CCTSYIntegrationTestPhoneBookStore0002FDN");
       
  5206 	}
       
  5207 
       
  5208 
       
  5209 
       
  5210 CCTSYIntegrationTestPhoneBookStore0002SDN::CCTSYIntegrationTestPhoneBookStore0002SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5211 : CCTSYIntegrationTestPhoneBookStore0002Base(aEtelSessionMgr)
       
  5212 /**
       
  5213  * Constructor.
       
  5214  */
       
  5215 	{
       
  5216 	SetTestStepName(CCTSYIntegrationTestPhoneBookStore0002SDN::GetTestStepName());
       
  5217 	}
       
  5218 
       
  5219 CCTSYIntegrationTestPhoneBookStore0002SDN::~CCTSYIntegrationTestPhoneBookStore0002SDN()
       
  5220 /**
       
  5221  * Destructor.
       
  5222  */
       
  5223 {
       
  5224 }
       
  5225 
       
  5226 TVerdict CCTSYIntegrationTestPhoneBookStore0002SDN::doTestStepL()
       
  5227 /**
       
  5228  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0002
       
  5229  * @SYMFssID BA/CTSY/PBSTR-SDN-0002
       
  5230  * @SYMTestCaseDesc Read single and multiple phonebook entries. (SDN phone book)
       
  5231  * @SYMTestPriority High
       
  5232  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5233  * @SYMTestExpectedResults Pass - Single and multiple entries read successfully.
       
  5234  * @SYMTestType CIT
       
  5235  * @SYMTestCaseDependencies live/automatic
       
  5236  *
       
  5237  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
  5238  *
       
  5239  * @return - TVerdict code
       
  5240  */
       
  5241 	{
       
  5242 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  5243 	StartCleanup();
       
  5244 	return TestStepResult();
       
  5245 	}
       
  5246 
       
  5247 TPtrC CCTSYIntegrationTestPhoneBookStore0002SDN::GetTestStepName()
       
  5248 /**
       
  5249  * @return The test step name.
       
  5250  */
       
  5251 	{
       
  5252 	return _L("CCTSYIntegrationTestPhoneBookStore0002SDN");
       
  5253 	}
       
  5254 
       
  5255 
       
  5256 
       
  5257 CCTSYIntegrationTestPhoneBookStore0002VMBX::CCTSYIntegrationTestPhoneBookStore0002VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  5258 : CCTSYIntegrationTestPhoneBookStore0002Base(aEtelSessionMgr)
       
  5259 /**
       
  5260  * Constructor.
       
  5261  */
       
  5262 {
       
  5263 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0002VMBX::GetTestStepName());
       
  5264 }
       
  5265 
       
  5266 CCTSYIntegrationTestPhoneBookStore0002VMBX::~CCTSYIntegrationTestPhoneBookStore0002VMBX()
       
  5267 /**
       
  5268  * Destructor.
       
  5269  */
       
  5270 {
       
  5271 }
       
  5272 
       
  5273 TVerdict CCTSYIntegrationTestPhoneBookStore0002VMBX::doTestStepL()
       
  5274 /**
       
  5275  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0002
       
  5276  * @SYMFssID BA/CTSY/PBSTR-VMBX-0002
       
  5277  * @SYMTestCaseDesc Read single and multiple phonebook entries. (VMBX phone book)
       
  5278  * @SYMTestPriority High
       
  5279  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5280  * @SYMTestExpectedResults Pass - Single and multiple entries read successfully.
       
  5281  * @SYMTestType CIT
       
  5282  * @SYMTestCaseDependencies live/automatic
       
  5283  *
       
  5284  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
  5285  *
       
  5286  * @return - TVerdict code
       
  5287  */
       
  5288 	{
       
  5289 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  5290 	DoTestProcedureL(KIccVoiceMailBox);
       
  5291 	return TestStepResult();
       
  5292 	}
       
  5293 
       
  5294 TPtrC CCTSYIntegrationTestPhoneBookStore0002VMBX::GetTestStepName()
       
  5295 /**
       
  5296  * @return The test step name.
       
  5297  */
       
  5298 	{
       
  5299 	return _L("CCTSYIntegrationTestPhoneBookStore0002VMBX");
       
  5300 	}
       
  5301 
       
  5302 
       
  5303 
       
  5304 CCTSYIntegrationTestPhoneBookStore0002MBDN::CCTSYIntegrationTestPhoneBookStore0002MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5305 : CCTSYIntegrationTestPhoneBookStore0002Base(aEtelSessionMgr)
       
  5306 /**
       
  5307  * Constructor.
       
  5308  */
       
  5309 {
       
  5310 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0002MBDN::GetTestStepName());
       
  5311 }
       
  5312 
       
  5313 CCTSYIntegrationTestPhoneBookStore0002MBDN::~CCTSYIntegrationTestPhoneBookStore0002MBDN()
       
  5314 /**
       
  5315  * Destructor.
       
  5316  */
       
  5317 {
       
  5318 }
       
  5319 
       
  5320 TVerdict CCTSYIntegrationTestPhoneBookStore0002MBDN::doTestStepL()
       
  5321 /**
       
  5322  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0002
       
  5323  * @SYMFssID BA/CTSY/PBSTR-MBDN-0002
       
  5324  * @SYMTestCaseDesc Read single and multiple phonebook entries. (MBDN phone book)
       
  5325  * @SYMTestPriority High
       
  5326  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5327  * @SYMTestExpectedResults Pass - Single and multiple entries read successfully.
       
  5328  * @SYMTestType CIT
       
  5329  * @SYMTestCaseDependencies live/automatic
       
  5330  *
       
  5331  * Reason for test: Verify single and multiple entries can be read and entry information is correct.
       
  5332  *
       
  5333  * @return - TVerdict code
       
  5334  */
       
  5335 	{
       
  5336 
       
  5337 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  5338 	StartCleanup();
       
  5339 	return TestStepResult();
       
  5340 	}
       
  5341 
       
  5342 TPtrC CCTSYIntegrationTestPhoneBookStore0002MBDN::GetTestStepName()
       
  5343 /**
       
  5344  * @return The test step name.
       
  5345  */
       
  5346 	{
       
  5347 	return _L("CCTSYIntegrationTestPhoneBookStore0002MBDN");
       
  5348 	}
       
  5349 
       
  5350 
       
  5351 
       
  5352 CCTSYIntegrationTestPhoneBookStore0003ADN::CCTSYIntegrationTestPhoneBookStore0003ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  5353 : CCTSYIntegrationTestPhoneBookStore0003Base(aEtelSessionMgr)
       
  5354 /**
       
  5355  * Constructor.
       
  5356  */
       
  5357 {
       
  5358 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0003ADN::GetTestStepName());
       
  5359 }
       
  5360 
       
  5361 CCTSYIntegrationTestPhoneBookStore0003ADN::~CCTSYIntegrationTestPhoneBookStore0003ADN()
       
  5362 /**
       
  5363  * Destructor.
       
  5364  */
       
  5365 {
       
  5366 }
       
  5367 
       
  5368 TVerdict CCTSYIntegrationTestPhoneBookStore0003ADN::doTestStepL()
       
  5369 /**
       
  5370  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0003
       
  5371  * @SYMFssID BA/CTSY/PBSTR-ADN-0003
       
  5372  * @SYMTestCaseDesc Read single and multiple phonebook entries which are not present. (ADN phone book)
       
  5373  * @SYMTestPriority High
       
  5374  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5375  * @SYMTestExpectedResults Pass - KErrNotFound returned.
       
  5376  * @SYMTestType CIT
       
  5377  * @SYMTestCaseDependencies live/automatic
       
  5378  *
       
  5379  * Reason for test: Verify KErrNotFound is returned.
       
  5380  *
       
  5381  * @return - TVerdict code
       
  5382  */
       
  5383 	{
       
  5384 	DoTestProcedureL(KIccAdnPhoneBook);
       
  5385 	return TestStepResult();
       
  5386 	}
       
  5387 
       
  5388 TPtrC CCTSYIntegrationTestPhoneBookStore0003ADN::GetTestStepName()
       
  5389 /**
       
  5390  * @return The test step name.
       
  5391  */
       
  5392 	{
       
  5393 	return _L("CCTSYIntegrationTestPhoneBookStore0003ADN");
       
  5394 	}
       
  5395 
       
  5396 
       
  5397 
       
  5398 CCTSYIntegrationTestPhoneBookStore0003FDN::CCTSYIntegrationTestPhoneBookStore0003FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5399 : CCTSYIntegrationTestPhoneBookStore0003Base(aEtelSessionMgr)
       
  5400 /**
       
  5401  * Constructor.
       
  5402  */
       
  5403 {
       
  5404 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0003FDN::GetTestStepName());
       
  5405 }
       
  5406 
       
  5407 CCTSYIntegrationTestPhoneBookStore0003FDN::~CCTSYIntegrationTestPhoneBookStore0003FDN()
       
  5408 /**
       
  5409  * Destructor.
       
  5410  */
       
  5411 {
       
  5412 }
       
  5413 
       
  5414 TVerdict CCTSYIntegrationTestPhoneBookStore0003FDN::doTestStepL()
       
  5415 /**
       
  5416  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0003
       
  5417  * @SYMFssID BA/CTSY/PBSTR-FDN-0003
       
  5418  * @SYMTestCaseDesc Read single and multiple phonebook entries which are not present. (FDN phone book)
       
  5419  * @SYMTestPriority High
       
  5420  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5421  * @SYMTestExpectedResults Pass - KErrNotFound returned.
       
  5422  * @SYMTestType CIT
       
  5423  * @SYMTestCaseDependencies live/automatic
       
  5424  *
       
  5425  * Reason for test: Verify KErrNotFound is returned.
       
  5426  *
       
  5427  * @return - TVerdict code
       
  5428  */
       
  5429 	{
       
  5430 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  5431 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  5432 	DoTestProcedureL(KIccFdnPhoneBook);
       
  5433 	return TestStepResult();
       
  5434 	}
       
  5435 
       
  5436 TPtrC CCTSYIntegrationTestPhoneBookStore0003FDN::GetTestStepName()
       
  5437 /**
       
  5438  * @return The test step name.
       
  5439  */
       
  5440 	{
       
  5441 	return _L("CCTSYIntegrationTestPhoneBookStore0003FDN");
       
  5442 	}
       
  5443 
       
  5444 
       
  5445 
       
  5446 CCTSYIntegrationTestPhoneBookStore0003SDN::CCTSYIntegrationTestPhoneBookStore0003SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5447 : CCTSYIntegrationTestPhoneBookStore0003Base(aEtelSessionMgr)
       
  5448 /**
       
  5449  * Constructor.
       
  5450  */
       
  5451 {
       
  5452 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0003SDN::GetTestStepName());
       
  5453 }
       
  5454 
       
  5455 CCTSYIntegrationTestPhoneBookStore0003SDN::~CCTSYIntegrationTestPhoneBookStore0003SDN()
       
  5456 /**
       
  5457  * Destructor.
       
  5458  */
       
  5459 {
       
  5460 }
       
  5461 
       
  5462 TVerdict CCTSYIntegrationTestPhoneBookStore0003SDN::doTestStepL()
       
  5463 /**
       
  5464  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0003
       
  5465  * @SYMFssID BA/CTSY/PBSTR-SDN-0003
       
  5466  * @SYMTestCaseDesc Read single and multiple phonebook entries which are not present. (SDN phone book)
       
  5467  * @SYMTestPriority High
       
  5468  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5469  * @SYMTestExpectedResults Pass - KErrNotFound returned.
       
  5470  * @SYMTestType CIT
       
  5471  * @SYMTestCaseDependencies live/automatic
       
  5472  *
       
  5473  * Reason for test: Verify KErrNotFound is returned.
       
  5474  *
       
  5475  * @return - TVerdict code
       
  5476  */
       
  5477 	{
       
  5478 
       
  5479 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  5480 	StartCleanup();
       
  5481 	return TestStepResult();
       
  5482 	}
       
  5483 
       
  5484 TPtrC CCTSYIntegrationTestPhoneBookStore0003SDN::GetTestStepName()
       
  5485 /**
       
  5486  * @return The test step name.
       
  5487  */
       
  5488 	{
       
  5489 	return _L("CCTSYIntegrationTestPhoneBookStore0003SDN");
       
  5490 	}
       
  5491 
       
  5492 
       
  5493 
       
  5494 CCTSYIntegrationTestPhoneBookStore0003VMBX::CCTSYIntegrationTestPhoneBookStore0003VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  5495 : CCTSYIntegrationTestPhoneBookStore0003Base(aEtelSessionMgr)
       
  5496 /**
       
  5497  * Constructor.
       
  5498  */
       
  5499 {
       
  5500 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0003VMBX::GetTestStepName());
       
  5501 }
       
  5502 
       
  5503 CCTSYIntegrationTestPhoneBookStore0003VMBX::~CCTSYIntegrationTestPhoneBookStore0003VMBX()
       
  5504 /**
       
  5505  * Destructor.
       
  5506  */
       
  5507 {
       
  5508 }
       
  5509 
       
  5510 TVerdict CCTSYIntegrationTestPhoneBookStore0003VMBX::doTestStepL()
       
  5511 /**
       
  5512  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0003
       
  5513  * @SYMFssID BA/CTSY/PBSTR-VMBX-0003
       
  5514  * @SYMTestCaseDesc Read single and multiple phonebook entries which are not present. (VMBX phone book)
       
  5515  * @SYMTestPriority High
       
  5516  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5517  * @SYMTestExpectedResults Pass - KErrNotFound returned.
       
  5518  * @SYMTestType CIT
       
  5519  * @SYMTestCaseDependencies live/automatic
       
  5520  *
       
  5521  * Reason for test: Verify KErrNotFound is returned.
       
  5522  *
       
  5523  * @return - TVerdict code
       
  5524  */
       
  5525 	{
       
  5526 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  5527 	DoTestProcedureL(KIccVoiceMailBox);
       
  5528 	return TestStepResult();
       
  5529 	}
       
  5530 
       
  5531 TPtrC CCTSYIntegrationTestPhoneBookStore0003VMBX::GetTestStepName()
       
  5532 /**
       
  5533  * @return The test step name.
       
  5534  */
       
  5535 	{
       
  5536 	return _L("CCTSYIntegrationTestPhoneBookStore0003VMBX");
       
  5537 	}
       
  5538 
       
  5539 
       
  5540 
       
  5541 CCTSYIntegrationTestPhoneBookStore0003MBDN::CCTSYIntegrationTestPhoneBookStore0003MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5542 : CCTSYIntegrationTestPhoneBookStore0003Base(aEtelSessionMgr)
       
  5543 /**
       
  5544  * Constructor.
       
  5545  */
       
  5546 {
       
  5547 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0003MBDN::GetTestStepName());
       
  5548 }
       
  5549 
       
  5550 CCTSYIntegrationTestPhoneBookStore0003MBDN::~CCTSYIntegrationTestPhoneBookStore0003MBDN()
       
  5551 /**
       
  5552  * Destructor.
       
  5553  */
       
  5554 {
       
  5555 }
       
  5556 
       
  5557 TVerdict CCTSYIntegrationTestPhoneBookStore0003MBDN::doTestStepL()
       
  5558 /**
       
  5559  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0003
       
  5560  * @SYMFssID BA/CTSY/PBSTR-MBDN-0003
       
  5561  * @SYMTestCaseDesc Read single and multiple phonebook entries which are not present. (MBDN phone book)
       
  5562  * @SYMTestPriority High
       
  5563  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5564  * @SYMTestExpectedResults Pass - KErrNotFound returned.
       
  5565  * @SYMTestType CIT
       
  5566  * @SYMTestCaseDependencies live/automatic
       
  5567  *
       
  5568  * Reason for test: Verify KErrNotFound is returned.
       
  5569  *
       
  5570  * @return - TVerdict code
       
  5571  */
       
  5572 	{
       
  5573 
       
  5574 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  5575 	StartCleanup();
       
  5576 	return TestStepResult();
       
  5577 	}
       
  5578 
       
  5579 TPtrC CCTSYIntegrationTestPhoneBookStore0003MBDN::GetTestStepName()
       
  5580 /**
       
  5581  * @return The test step name.
       
  5582  */
       
  5583 	{
       
  5584 	return _L("CCTSYIntegrationTestPhoneBookStore0003MBDN");
       
  5585 	}
       
  5586 
       
  5587 
       
  5588 
       
  5589 CCTSYIntegrationTestPhoneBookStore0004ADN::CCTSYIntegrationTestPhoneBookStore0004ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  5590 : CCTSYIntegrationTestPhoneBookStore0004Base(aEtelSessionMgr)
       
  5591 /**
       
  5592  * Constructor.
       
  5593  */
       
  5594 {
       
  5595 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0004ADN::GetTestStepName());
       
  5596 }
       
  5597 
       
  5598 CCTSYIntegrationTestPhoneBookStore0004ADN::~CCTSYIntegrationTestPhoneBookStore0004ADN()
       
  5599 /**
       
  5600  * Destructor.
       
  5601  */
       
  5602 {
       
  5603 }
       
  5604 
       
  5605 TVerdict CCTSYIntegrationTestPhoneBookStore0004ADN::doTestStepL()
       
  5606 /**
       
  5607  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0004
       
  5608  * @SYMFssID BA/CTSY/PBSTR-ADN-0004
       
  5609  * @SYMTestCaseDesc Read phonebook entry using invalid index. (ADN phone book)
       
  5610  * @SYMTestPriority High
       
  5611  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5612  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  5613  * @SYMTestType CIT
       
  5614  * @SYMTestCaseDependencies live/automatic
       
  5615  *
       
  5616  * Reason for test: Verify KErrArgument returned.
       
  5617  *
       
  5618  * @return - TVerdict code
       
  5619  */
       
  5620 	{
       
  5621 	DoTestProcedureL(KIccAdnPhoneBook);
       
  5622 	return TestStepResult();
       
  5623 	}
       
  5624 
       
  5625 TPtrC CCTSYIntegrationTestPhoneBookStore0004ADN::GetTestStepName()
       
  5626 /**
       
  5627  * @return The test step name.
       
  5628  */
       
  5629 	{
       
  5630 	return _L("CCTSYIntegrationTestPhoneBookStore0004ADN");
       
  5631 	}
       
  5632 
       
  5633 
       
  5634 
       
  5635 CCTSYIntegrationTestPhoneBookStore0004FDN::CCTSYIntegrationTestPhoneBookStore0004FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5636 : CCTSYIntegrationTestPhoneBookStore0004Base(aEtelSessionMgr)
       
  5637 /**
       
  5638  * Constructor.
       
  5639  */
       
  5640 {
       
  5641 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0004FDN::GetTestStepName());
       
  5642 }
       
  5643 
       
  5644 CCTSYIntegrationTestPhoneBookStore0004FDN::~CCTSYIntegrationTestPhoneBookStore0004FDN()
       
  5645 /**
       
  5646  * Destructor.
       
  5647  */
       
  5648 {
       
  5649 }
       
  5650 
       
  5651 TVerdict CCTSYIntegrationTestPhoneBookStore0004FDN::doTestStepL()
       
  5652 /**
       
  5653  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0004
       
  5654  * @SYMFssID BA/CTSY/PBSTR-FDN-0004
       
  5655  * @SYMTestCaseDesc Read phonebook entry using invalid index. (FDN phone book)
       
  5656  * @SYMTestPriority High
       
  5657  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5658  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  5659  * @SYMTestType CIT
       
  5660  * @SYMTestCaseDependencies live/automatic
       
  5661  *
       
  5662  * Reason for test: Verify KErrArgument returned.
       
  5663  *
       
  5664  * @return - TVerdict code
       
  5665  */
       
  5666 	{
       
  5667 	DoTestProcedureL(KIccFdnPhoneBook);
       
  5668 	return TestStepResult();
       
  5669 	}
       
  5670 
       
  5671 TPtrC CCTSYIntegrationTestPhoneBookStore0004FDN::GetTestStepName()
       
  5672 /**
       
  5673  * @return The test step name.
       
  5674  */
       
  5675 	{
       
  5676 	return _L("CCTSYIntegrationTestPhoneBookStore0004FDN");
       
  5677 	}
       
  5678 
       
  5679 
       
  5680 
       
  5681 CCTSYIntegrationTestPhoneBookStore0004SDN::CCTSYIntegrationTestPhoneBookStore0004SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5682 : CCTSYIntegrationTestPhoneBookStore0004Base(aEtelSessionMgr)
       
  5683 /**
       
  5684  * Constructor.
       
  5685  */
       
  5686 {
       
  5687 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0004SDN::GetTestStepName());
       
  5688 }
       
  5689 
       
  5690 CCTSYIntegrationTestPhoneBookStore0004SDN::~CCTSYIntegrationTestPhoneBookStore0004SDN()
       
  5691 /**
       
  5692  * Destructor.
       
  5693  */
       
  5694 {
       
  5695 }
       
  5696 
       
  5697 TVerdict CCTSYIntegrationTestPhoneBookStore0004SDN::doTestStepL()
       
  5698 /**
       
  5699  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0004
       
  5700  * @SYMFssID BA/CTSY/PBSTR-SDN-0004
       
  5701  * @SYMTestCaseDesc Read phonebook entry using invalid index. (SDN phone book)
       
  5702  * @SYMTestPriority High
       
  5703  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5704  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  5705  * @SYMTestType CIT
       
  5706  * @SYMTestCaseDependencies live/automatic
       
  5707  *
       
  5708  * Reason for test: Verify KErrArgument returned.
       
  5709  *
       
  5710  * @return - TVerdict code
       
  5711  */
       
  5712 	{
       
  5713 	DoTestProcedureL(KIccSdnPhoneBook);
       
  5714 	return TestStepResult();
       
  5715 	}
       
  5716 
       
  5717 TPtrC CCTSYIntegrationTestPhoneBookStore0004SDN::GetTestStepName()
       
  5718 /**
       
  5719  * @return The test step name.
       
  5720  */
       
  5721 	{
       
  5722 	return _L("CCTSYIntegrationTestPhoneBookStore0004SDN");
       
  5723 	}
       
  5724 
       
  5725 
       
  5726 
       
  5727 CCTSYIntegrationTestPhoneBookStore0004VMBX::CCTSYIntegrationTestPhoneBookStore0004VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  5728 : CCTSYIntegrationTestPhoneBookStore0004Base(aEtelSessionMgr)
       
  5729 /**
       
  5730  * Constructor.
       
  5731  */
       
  5732 {
       
  5733 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0004VMBX::GetTestStepName());
       
  5734 }
       
  5735 
       
  5736 CCTSYIntegrationTestPhoneBookStore0004VMBX::~CCTSYIntegrationTestPhoneBookStore0004VMBX()
       
  5737 /**
       
  5738  * Destructor.
       
  5739  */
       
  5740 {
       
  5741 }
       
  5742 
       
  5743 TVerdict CCTSYIntegrationTestPhoneBookStore0004VMBX::doTestStepL()
       
  5744 /**
       
  5745  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0004
       
  5746  * @SYMFssID BA/CTSY/PBSTR-VMBX-0004
       
  5747  * @SYMTestCaseDesc Read phonebook entry using invalid index. (VMBX phone book)
       
  5748  * @SYMTestPriority High
       
  5749  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5750  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  5751  * @SYMTestType CIT
       
  5752  * @SYMTestCaseDependencies live/automatic
       
  5753  *
       
  5754  * Reason for test: Verify KErrArgument returned.
       
  5755  *
       
  5756  * @return - TVerdict code
       
  5757  */
       
  5758 	{
       
  5759 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  5760 	DoTestProcedureL(KIccVoiceMailBox);
       
  5761 	return TestStepResult();
       
  5762 	}
       
  5763 
       
  5764 TPtrC CCTSYIntegrationTestPhoneBookStore0004VMBX::GetTestStepName()
       
  5765 /**
       
  5766  * @return The test step name.
       
  5767  */
       
  5768 	{
       
  5769 	return _L("CCTSYIntegrationTestPhoneBookStore0004VMBX");
       
  5770 	}
       
  5771 
       
  5772 
       
  5773 
       
  5774 CCTSYIntegrationTestPhoneBookStore0004MBDN::CCTSYIntegrationTestPhoneBookStore0004MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5775 : CCTSYIntegrationTestPhoneBookStore0004Base(aEtelSessionMgr)
       
  5776 /**
       
  5777  * Constructor.
       
  5778  */
       
  5779 {
       
  5780 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0004MBDN::GetTestStepName());
       
  5781 }
       
  5782 
       
  5783 CCTSYIntegrationTestPhoneBookStore0004MBDN::~CCTSYIntegrationTestPhoneBookStore0004MBDN()
       
  5784 /**
       
  5785  * Destructor.
       
  5786  */
       
  5787 {
       
  5788 }
       
  5789 
       
  5790 TVerdict CCTSYIntegrationTestPhoneBookStore0004MBDN::doTestStepL()
       
  5791 /**
       
  5792  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0004
       
  5793  * @SYMFssID BA/CTSY/PBSTR-MBDN-0004
       
  5794  * @SYMTestCaseDesc Read phonebook entry using invalid index. (MBDN phone book)
       
  5795  * @SYMTestPriority High
       
  5796  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5797  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  5798  * @SYMTestType CIT
       
  5799  * @SYMTestCaseDependencies live/automatic
       
  5800  *
       
  5801  * Reason for test: Verify KErrArgument returned.
       
  5802  *
       
  5803  * @return - TVerdict code
       
  5804  */
       
  5805 	{
       
  5806 
       
  5807 	DoTestProcedureL(KIccMbdnPhoneBook);
       
  5808 	return TestStepResult();
       
  5809 	}
       
  5810 
       
  5811 TPtrC CCTSYIntegrationTestPhoneBookStore0004MBDN::GetTestStepName()
       
  5812 /**
       
  5813  * @return The test step name.
       
  5814  */
       
  5815 	{
       
  5816 	return _L("CCTSYIntegrationTestPhoneBookStore0004MBDN");
       
  5817 	}
       
  5818 
       
  5819 
       
  5820 
       
  5821 CCTSYIntegrationTestPhoneBookStore0005ADN::CCTSYIntegrationTestPhoneBookStore0005ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  5822 : CCTSYIntegrationTestPhoneBookStore0005Base(aEtelSessionMgr)
       
  5823 /**
       
  5824  * Constructor.
       
  5825  */
       
  5826 {
       
  5827 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0005ADN::GetTestStepName());
       
  5828 }
       
  5829 
       
  5830 CCTSYIntegrationTestPhoneBookStore0005ADN::~CCTSYIntegrationTestPhoneBookStore0005ADN()
       
  5831 /**
       
  5832  * Destructor.
       
  5833  */
       
  5834 {
       
  5835 }
       
  5836 
       
  5837 TVerdict CCTSYIntegrationTestPhoneBookStore0005ADN::doTestStepL()
       
  5838 /**
       
  5839  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0005
       
  5840  * @SYMFssID BA/CTSY/PBSTR-ADN-0005
       
  5841  * @SYMTestCaseDesc Read and write multiple phonebooks simultaneously. (ADN phone book)
       
  5842  * @SYMTestPriority High
       
  5843  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5844  * @SYMTestExpectedResults Pass - Numbers read successfully.
       
  5845  * @SYMTestType CIT
       
  5846  * @SYMTestCaseDependencies live/automatic
       
  5847  *
       
  5848  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
  5849  *
       
  5850  * @return - TVerdict code
       
  5851  */
       
  5852 	{
       
  5853 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  5854 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  5855 	TFixedArray<TPhoneBookStoreId,2> phoneBookTypeArray;
       
  5856 	phoneBookTypeArray[0] = KIccAdnPhoneBook;
       
  5857 	phoneBookTypeArray[1] = KIccFdnPhoneBook;
       
  5858 	DoTestProcedureL(phoneBookTypeArray);
       
  5859 	return TestStepResult();
       
  5860 	}
       
  5861 
       
  5862 TPtrC CCTSYIntegrationTestPhoneBookStore0005ADN::GetTestStepName()
       
  5863 /**
       
  5864  * @return The test step name.
       
  5865  */
       
  5866 	{
       
  5867 	return _L("CCTSYIntegrationTestPhoneBookStore0005ADN");
       
  5868 	}
       
  5869 
       
  5870 
       
  5871 
       
  5872 CCTSYIntegrationTestPhoneBookStore0005FDN::CCTSYIntegrationTestPhoneBookStore0005FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5873 : CCTSYIntegrationTestPhoneBookStore0005Base(aEtelSessionMgr)
       
  5874 /**
       
  5875  * Constructor.
       
  5876  */
       
  5877 {
       
  5878 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0005FDN::GetTestStepName());
       
  5879 }
       
  5880 
       
  5881 CCTSYIntegrationTestPhoneBookStore0005FDN::~CCTSYIntegrationTestPhoneBookStore0005FDN()
       
  5882 /**
       
  5883  * Destructor.
       
  5884  */
       
  5885 {
       
  5886 }
       
  5887 
       
  5888 TVerdict CCTSYIntegrationTestPhoneBookStore0005FDN::doTestStepL()
       
  5889 /**
       
  5890  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0005
       
  5891  * @SYMFssID BA/CTSY/PBSTR-FDN-0005
       
  5892  * @SYMTestCaseDesc Read and write multiple phonebooks simultaneously. (FDN phone book)
       
  5893  * @SYMTestPriority High
       
  5894  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5895  * @SYMTestExpectedResults Pass - Numbers read successfully.
       
  5896  * @SYMTestType CIT
       
  5897  * @SYMTestCaseDependencies live/automatic
       
  5898  *
       
  5899  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
  5900  *
       
  5901  * @return - TVerdict code
       
  5902  */
       
  5903 	{
       
  5904 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  5905 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  5906 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  5907 	TFixedArray<TPhoneBookStoreId,2> phoneBookTypeArray;
       
  5908 	phoneBookTypeArray[0] = KIccFdnPhoneBook;
       
  5909 	phoneBookTypeArray[1] = KIccVoiceMailBox;
       
  5910 	DoTestProcedureL(phoneBookTypeArray);
       
  5911 	return TestStepResult();
       
  5912 	}
       
  5913 
       
  5914 TPtrC CCTSYIntegrationTestPhoneBookStore0005FDN::GetTestStepName()
       
  5915 /**
       
  5916  * @return The test step name.
       
  5917  */
       
  5918 	{
       
  5919 	return _L("CCTSYIntegrationTestPhoneBookStore0005FDN");
       
  5920 	}
       
  5921 
       
  5922 
       
  5923 
       
  5924 CCTSYIntegrationTestPhoneBookStore0005SDN::CCTSYIntegrationTestPhoneBookStore0005SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  5925 : CCTSYIntegrationTestPhoneBookStore0005Base(aEtelSessionMgr)
       
  5926 /**
       
  5927  * Constructor.
       
  5928  */
       
  5929 {
       
  5930 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0005SDN::GetTestStepName());
       
  5931 }
       
  5932 
       
  5933 CCTSYIntegrationTestPhoneBookStore0005SDN::~CCTSYIntegrationTestPhoneBookStore0005SDN()
       
  5934 /**
       
  5935  * Destructor.
       
  5936  */
       
  5937 {
       
  5938 }
       
  5939 
       
  5940 TVerdict CCTSYIntegrationTestPhoneBookStore0005SDN::doTestStepL()
       
  5941 /**
       
  5942  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0005
       
  5943  * @SYMFssID BA/CTSY/PBSTR-SDN-0005
       
  5944  * @SYMTestCaseDesc Read and write multiple phonebooks simultaneously. (SDN phone book)
       
  5945  * @SYMTestPriority High
       
  5946  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5947  * @SYMTestExpectedResults Pass - Numbers read successfully.
       
  5948  * @SYMTestType CIT
       
  5949  * @SYMTestCaseDependencies live/automatic
       
  5950  *
       
  5951  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
  5952  *
       
  5953  * @return - TVerdict code
       
  5954  */
       
  5955 	{
       
  5956 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  5957 	StartCleanup();
       
  5958 	return TestStepResult();
       
  5959 	}
       
  5960 
       
  5961 TPtrC CCTSYIntegrationTestPhoneBookStore0005SDN::GetTestStepName()
       
  5962 /**
       
  5963  * @return The test step name.
       
  5964  */
       
  5965 	{
       
  5966 	return _L("CCTSYIntegrationTestPhoneBookStore0005SDN");
       
  5967 	}
       
  5968 
       
  5969 
       
  5970 
       
  5971 CCTSYIntegrationTestPhoneBookStore0005VMBX::CCTSYIntegrationTestPhoneBookStore0005VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  5972 : CCTSYIntegrationTestPhoneBookStore0005Base(aEtelSessionMgr)
       
  5973 /**
       
  5974  * Constructor.
       
  5975  */
       
  5976 {
       
  5977 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0005VMBX::GetTestStepName());
       
  5978 }
       
  5979 
       
  5980 CCTSYIntegrationTestPhoneBookStore0005VMBX::~CCTSYIntegrationTestPhoneBookStore0005VMBX()
       
  5981 /**
       
  5982  * Destructor.
       
  5983  */
       
  5984 {
       
  5985 }
       
  5986 
       
  5987 TVerdict CCTSYIntegrationTestPhoneBookStore0005VMBX::doTestStepL()
       
  5988 /**
       
  5989  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0005
       
  5990  * @SYMFssID BA/CTSY/PBSTR-VMBX-0005
       
  5991  * @SYMTestCaseDesc Read and write multiple phonebooks simultaneously. (VMBX phone book)
       
  5992  * @SYMTestPriority High
       
  5993  * @SYMTestActions RMobilePhoneBookStore::Read
       
  5994  * @SYMTestExpectedResults Pass - Numbers read successfully.
       
  5995  * @SYMTestType CIT
       
  5996  * @SYMTestCaseDependencies live/automatic
       
  5997  *
       
  5998  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
  5999  *
       
  6000  * @return - TVerdict code
       
  6001  */
       
  6002 	{
       
  6003 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  6004 	TFixedArray<TPhoneBookStoreId,2> phoneBookTypeArray;
       
  6005 	phoneBookTypeArray[0] = KIccVoiceMailBox;
       
  6006 	phoneBookTypeArray[1] = KIccAdnPhoneBook;
       
  6007 	DoTestProcedureL(phoneBookTypeArray);
       
  6008 	return TestStepResult();
       
  6009 	}
       
  6010 
       
  6011 TPtrC CCTSYIntegrationTestPhoneBookStore0005VMBX::GetTestStepName()
       
  6012 /**
       
  6013  * @return The test step name.
       
  6014  */
       
  6015 	{
       
  6016 	return _L("CCTSYIntegrationTestPhoneBookStore0005VMBX");
       
  6017 	}
       
  6018 
       
  6019 
       
  6020 
       
  6021 CCTSYIntegrationTestPhoneBookStore0005MBDN::CCTSYIntegrationTestPhoneBookStore0005MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6022 : CCTSYIntegrationTestPhoneBookStore0005Base(aEtelSessionMgr)
       
  6023 /**
       
  6024  * Constructor.
       
  6025  */
       
  6026 {
       
  6027 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0005MBDN::GetTestStepName());
       
  6028 }
       
  6029 
       
  6030 CCTSYIntegrationTestPhoneBookStore0005MBDN::~CCTSYIntegrationTestPhoneBookStore0005MBDN()
       
  6031 /**
       
  6032  * Destructor.
       
  6033  */
       
  6034 {
       
  6035 }
       
  6036 
       
  6037 TVerdict CCTSYIntegrationTestPhoneBookStore0005MBDN::doTestStepL()
       
  6038 /**
       
  6039  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0005
       
  6040  * @SYMFssID BA/CTSY/PBSTR-MBDN-0005
       
  6041  * @SYMTestCaseDesc Read and write multiple phonebooks simultaneously. (MBDN phone book)
       
  6042  * @SYMTestPriority High
       
  6043  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6044  * @SYMTestExpectedResults Pass - Numbers read successfully.
       
  6045  * @SYMTestType CIT
       
  6046  * @SYMTestCaseDependencies live/automatic
       
  6047  *
       
  6048  * Reason for test: Verify it is possible to post read/write requests simultaneously to different phone books.
       
  6049  *
       
  6050  * @return - TVerdict code
       
  6051  */
       
  6052 	{
       
  6053 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10009);
       
  6054 	TFixedArray<TPhoneBookStoreId,2> phoneBookTypeArray;
       
  6055 	phoneBookTypeArray[0] = KIccMbdnPhoneBook;
       
  6056 	phoneBookTypeArray[1] = KIccAdnPhoneBook;
       
  6057 	DoTestProcedureL(phoneBookTypeArray);
       
  6058 	return TestStepResult();
       
  6059 	}
       
  6060 
       
  6061 TPtrC CCTSYIntegrationTestPhoneBookStore0005MBDN::GetTestStepName()
       
  6062 /**
       
  6063  * @return The test step name.
       
  6064  */
       
  6065 	{
       
  6066 	return _L("CCTSYIntegrationTestPhoneBookStore0005MBDN");
       
  6067 	}
       
  6068 
       
  6069 
       
  6070 
       
  6071 CCTSYIntegrationTestPhoneBookStore0006ADN::CCTSYIntegrationTestPhoneBookStore0006ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  6072 : CCTSYIntegrationTestPhoneBookStore0006Base(aEtelSessionMgr)
       
  6073 /**
       
  6074  * Constructor.
       
  6075  */
       
  6076 {
       
  6077 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0006ADN::GetTestStepName());
       
  6078 }
       
  6079 
       
  6080 CCTSYIntegrationTestPhoneBookStore0006ADN::~CCTSYIntegrationTestPhoneBookStore0006ADN()
       
  6081 /**
       
  6082  * Destructor.
       
  6083  */
       
  6084 {
       
  6085 }
       
  6086 
       
  6087 TVerdict CCTSYIntegrationTestPhoneBookStore0006ADN::doTestStepL()
       
  6088 /**
       
  6089  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0006
       
  6090  * @SYMFssID BA/CTSY/PBSTR-ADN-0006
       
  6091  * @SYMTestCaseDesc Read with no SIM present. (ADN phone book)
       
  6092  * @SYMTestPriority High
       
  6093  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6094  * @SYMTestExpectedResults Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  6095 
       
  6096  * @SYMTestType CIT
       
  6097  * @SYMTestCaseDependencies live/manual
       
  6098  *
       
  6099  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  6100  *
       
  6101  * @return - TVerdict code
       
  6102  */
       
  6103 	{
       
  6104 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10044</font>"));
       
  6105 	DoTestProcedureL(KIccAdnPhoneBook);
       
  6106 	return TestStepResult();
       
  6107 	}
       
  6108 
       
  6109 TPtrC CCTSYIntegrationTestPhoneBookStore0006ADN::GetTestStepName()
       
  6110 /**
       
  6111  * @return The test step name.
       
  6112  */
       
  6113 	{
       
  6114 	return _L("CCTSYIntegrationTestPhoneBookStore0006ADN");
       
  6115 	}
       
  6116 
       
  6117 
       
  6118 
       
  6119 CCTSYIntegrationTestPhoneBookStore0006FDN::CCTSYIntegrationTestPhoneBookStore0006FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6120 : CCTSYIntegrationTestPhoneBookStore0006Base(aEtelSessionMgr)
       
  6121 /**
       
  6122  * Constructor.
       
  6123  */
       
  6124 {
       
  6125 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0006FDN::GetTestStepName());
       
  6126 }
       
  6127 
       
  6128 CCTSYIntegrationTestPhoneBookStore0006FDN::~CCTSYIntegrationTestPhoneBookStore0006FDN()
       
  6129 /**
       
  6130  * Destructor.
       
  6131  */
       
  6132 {
       
  6133 }
       
  6134 
       
  6135 TVerdict CCTSYIntegrationTestPhoneBookStore0006FDN::doTestStepL()
       
  6136 /**
       
  6137  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0006
       
  6138  * @SYMFssID BA/CTSY/PBSTR-FDN-0006
       
  6139  * @SYMTestCaseDesc Read with no SIM present. (FDN phone book)
       
  6140  * @SYMTestPriority High
       
  6141  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6142  * @SYMTestExpectedResults Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  6143 
       
  6144  * @SYMTestType CIT
       
  6145  * @SYMTestCaseDependencies live/manual
       
  6146  *
       
  6147  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  6148  *
       
  6149  * @return - TVerdict code
       
  6150  */
       
  6151 	{
       
  6152 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10044</font>"));
       
  6153 	DoTestProcedureL(KIccFdnPhoneBook);
       
  6154 	return TestStepResult();
       
  6155 	}
       
  6156 
       
  6157 TPtrC CCTSYIntegrationTestPhoneBookStore0006FDN::GetTestStepName()
       
  6158 /**
       
  6159  * @return The test step name.
       
  6160  */
       
  6161 	{
       
  6162 	return _L("CCTSYIntegrationTestPhoneBookStore0006FDN");
       
  6163 	}
       
  6164 
       
  6165 
       
  6166 
       
  6167 CCTSYIntegrationTestPhoneBookStore0006SDN::CCTSYIntegrationTestPhoneBookStore0006SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6168 : CCTSYIntegrationTestPhoneBookStore0006Base(aEtelSessionMgr)
       
  6169 /**
       
  6170  * Constructor.
       
  6171  */
       
  6172 {
       
  6173 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0006SDN::GetTestStepName());
       
  6174 }
       
  6175 
       
  6176 CCTSYIntegrationTestPhoneBookStore0006SDN::~CCTSYIntegrationTestPhoneBookStore0006SDN()
       
  6177 /**
       
  6178  * Destructor.
       
  6179  */
       
  6180 {
       
  6181 }
       
  6182 
       
  6183 TVerdict CCTSYIntegrationTestPhoneBookStore0006SDN::doTestStepL()
       
  6184 /**
       
  6185  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0006
       
  6186  * @SYMFssID BA/CTSY/PBSTR-SDN-0006
       
  6187  * @SYMTestCaseDesc Read with no SIM present. (SDN phone book)
       
  6188  * @SYMTestPriority High
       
  6189  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6190  * @SYMTestExpectedResults Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  6191 
       
  6192  * @SYMTestType CIT
       
  6193  * @SYMTestCaseDependencies live/manual
       
  6194  *
       
  6195  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  6196  *
       
  6197  * @return - TVerdict code
       
  6198  */
       
  6199 	{
       
  6200 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10044</font>"));
       
  6201 	DoTestProcedureL(KIccSdnPhoneBook);
       
  6202 	return TestStepResult();
       
  6203 	}
       
  6204 
       
  6205 TPtrC CCTSYIntegrationTestPhoneBookStore0006SDN::GetTestStepName()
       
  6206 /**
       
  6207  * @return The test step name.
       
  6208  */
       
  6209 	{
       
  6210 	return _L("CCTSYIntegrationTestPhoneBookStore0006SDN");
       
  6211 	}
       
  6212 
       
  6213 
       
  6214 
       
  6215 CCTSYIntegrationTestPhoneBookStore0006VMBX::CCTSYIntegrationTestPhoneBookStore0006VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  6216 : CCTSYIntegrationTestPhoneBookStore0006Base(aEtelSessionMgr)
       
  6217 /**
       
  6218  * Constructor.
       
  6219  */
       
  6220 {
       
  6221 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0006VMBX::GetTestStepName());
       
  6222 }
       
  6223 
       
  6224 CCTSYIntegrationTestPhoneBookStore0006VMBX::~CCTSYIntegrationTestPhoneBookStore0006VMBX()
       
  6225 /**
       
  6226  * Destructor.
       
  6227  */
       
  6228 {
       
  6229 }
       
  6230 
       
  6231 TVerdict CCTSYIntegrationTestPhoneBookStore0006VMBX::doTestStepL()
       
  6232 /**
       
  6233  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0006
       
  6234  * @SYMFssID BA/CTSY/PBSTR-VMBX-0006
       
  6235  * @SYMTestCaseDesc Read with no SIM present. (VMBX phone book)
       
  6236  * @SYMTestPriority High
       
  6237  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6238  * @SYMTestExpectedResults Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  6239 
       
  6240  * @SYMTestType CIT
       
  6241  * @SYMTestCaseDependencies live/manual
       
  6242  *
       
  6243  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  6244  *
       
  6245  * @return - TVerdict code
       
  6246  */
       
  6247 	{
       
  6248 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10044</font>"));
       
  6249 	DoTestProcedureL(KIccVoiceMailBox);
       
  6250 	return TestStepResult();
       
  6251 	}
       
  6252 
       
  6253 TPtrC CCTSYIntegrationTestPhoneBookStore0006VMBX::GetTestStepName()
       
  6254 /**
       
  6255  * @return The test step name.
       
  6256  */
       
  6257 	{
       
  6258 	return _L("CCTSYIntegrationTestPhoneBookStore0006VMBX");
       
  6259 	}
       
  6260 
       
  6261 
       
  6262 
       
  6263 CCTSYIntegrationTestPhoneBookStore0006MBDN::CCTSYIntegrationTestPhoneBookStore0006MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6264 : CCTSYIntegrationTestPhoneBookStore0006Base(aEtelSessionMgr)
       
  6265 /**
       
  6266  * Constructor.
       
  6267  */
       
  6268 {
       
  6269 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0006MBDN::GetTestStepName());
       
  6270 }
       
  6271 
       
  6272 CCTSYIntegrationTestPhoneBookStore0006MBDN::~CCTSYIntegrationTestPhoneBookStore0006MBDN()
       
  6273 /**
       
  6274  * Destructor.
       
  6275  */
       
  6276 {
       
  6277 }
       
  6278 
       
  6279 TVerdict CCTSYIntegrationTestPhoneBookStore0006MBDN::doTestStepL()
       
  6280 /**
       
  6281  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0006
       
  6282  * @SYMFssID BA/CTSY/PBSTR-MBDN-0006
       
  6283  * @SYMTestCaseDesc Read with no SIM present. (MBDN phone book)
       
  6284  * @SYMTestPriority High
       
  6285  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6286  * @SYMTestExpectedResults Pass - Read request returns KErrEtelInitialisationFailure due to lack of SIM.
       
  6287 
       
  6288  * @SYMTestType CIT
       
  6289  * @SYMTestCaseDependencies live/manual
       
  6290  *
       
  6291  * Reason for test: Verfiy KErrEtelInitialisationFailure is returned.
       
  6292  *
       
  6293  * @return - TVerdict code
       
  6294  */
       
  6295 	{
       
  6296 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10044</font>"));
       
  6297 	DoTestProcedureL(KIccMbdnPhoneBook);
       
  6298 	return TestStepResult();
       
  6299 	}
       
  6300 
       
  6301 TPtrC CCTSYIntegrationTestPhoneBookStore0006MBDN::GetTestStepName()
       
  6302 /**
       
  6303  * @return The test step name.
       
  6304  */
       
  6305 	{
       
  6306 	return _L("CCTSYIntegrationTestPhoneBookStore0006MBDN");
       
  6307 	}
       
  6308 
       
  6309 
       
  6310 
       
  6311 CCTSYIntegrationTestPhoneBookStore0007ADN::CCTSYIntegrationTestPhoneBookStore0007ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  6312 : CCTSYIntegrationTestPhoneBookStore0007Base(aEtelSessionMgr)
       
  6313 /**
       
  6314  * Constructor.
       
  6315  */
       
  6316 {
       
  6317 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0007ADN::GetTestStepName());
       
  6318 }
       
  6319 
       
  6320 CCTSYIntegrationTestPhoneBookStore0007ADN::~CCTSYIntegrationTestPhoneBookStore0007ADN()
       
  6321 /**
       
  6322  * Destructor.
       
  6323  */
       
  6324 {
       
  6325 }
       
  6326 
       
  6327 TVerdict CCTSYIntegrationTestPhoneBookStore0007ADN::doTestStepL()
       
  6328 /**
       
  6329  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0007
       
  6330  * @SYMFssID BA/CTSY/PBSTR-ADN-0007
       
  6331  * @SYMTestCaseDesc Cancel reading multiple entries. (ADN phone book)
       
  6332  * @SYMTestPriority High
       
  6333  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6334  * @SYMTestExpectedResults Pass - Some entries read by the time the request is cancelled.
       
  6335  * @SYMTestType CIT
       
  6336  * @SYMTestCaseDependencies live/manual
       
  6337  *
       
  6338  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  6339  *
       
  6340  * @return - TVerdict code
       
  6341  */
       
  6342 	{
       
  6343 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10043</font>"));
       
  6344 	DoTestProcedureL(KIccAdnPhoneBook);
       
  6345 	return TestStepResult();
       
  6346 	}
       
  6347 
       
  6348 TPtrC CCTSYIntegrationTestPhoneBookStore0007ADN::GetTestStepName()
       
  6349 /**
       
  6350  * @return The test step name.
       
  6351  */
       
  6352 	{
       
  6353 	return _L("CCTSYIntegrationTestPhoneBookStore0007ADN");
       
  6354 	}
       
  6355 
       
  6356 
       
  6357 
       
  6358 CCTSYIntegrationTestPhoneBookStore0007FDN::CCTSYIntegrationTestPhoneBookStore0007FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6359 : CCTSYIntegrationTestPhoneBookStore0007Base(aEtelSessionMgr)
       
  6360 /**
       
  6361  * Constructor.
       
  6362  */
       
  6363 {
       
  6364 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0007FDN::GetTestStepName());
       
  6365 }
       
  6366 
       
  6367 CCTSYIntegrationTestPhoneBookStore0007FDN::~CCTSYIntegrationTestPhoneBookStore0007FDN()
       
  6368 /**
       
  6369  * Destructor.
       
  6370  */
       
  6371 {
       
  6372 }
       
  6373 
       
  6374 TVerdict CCTSYIntegrationTestPhoneBookStore0007FDN::doTestStepL()
       
  6375 /**
       
  6376  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0007
       
  6377  * @SYMFssID BA/CTSY/PBSTR-FDN-0007
       
  6378  * @SYMTestCaseDesc Cancel reading multiple entries. (FDN phone book)
       
  6379  * @SYMTestPriority High
       
  6380  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6381  * @SYMTestExpectedResults Pass - Some entries read by the time the request is cancelled.
       
  6382  * @SYMTestType CIT
       
  6383  * @SYMTestCaseDependencies live/manual
       
  6384  *
       
  6385  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  6386  *
       
  6387  * @return - TVerdict code
       
  6388  */
       
  6389 	{
       
  6390 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  6391 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  6392 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10043</font>"));
       
  6393 	DoTestProcedureL(KIccFdnPhoneBook);
       
  6394 	return TestStepResult();
       
  6395 	}
       
  6396 
       
  6397 TPtrC CCTSYIntegrationTestPhoneBookStore0007FDN::GetTestStepName()
       
  6398 /**
       
  6399  * @return The test step name.
       
  6400  */
       
  6401 	{
       
  6402 	return _L("CCTSYIntegrationTestPhoneBookStore0007FDN");
       
  6403 	}
       
  6404 
       
  6405 
       
  6406 
       
  6407 CCTSYIntegrationTestPhoneBookStore0007SDN::CCTSYIntegrationTestPhoneBookStore0007SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6408 : CCTSYIntegrationTestPhoneBookStore0007Base(aEtelSessionMgr)
       
  6409 /**
       
  6410  * Constructor.
       
  6411  */
       
  6412 {
       
  6413 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0007SDN::GetTestStepName());
       
  6414 }
       
  6415 
       
  6416 CCTSYIntegrationTestPhoneBookStore0007SDN::~CCTSYIntegrationTestPhoneBookStore0007SDN()
       
  6417 /**
       
  6418  * Destructor.
       
  6419  */
       
  6420 {
       
  6421 }
       
  6422 
       
  6423 TVerdict CCTSYIntegrationTestPhoneBookStore0007SDN::doTestStepL()
       
  6424 /**
       
  6425  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0007
       
  6426  * @SYMFssID BA/CTSY/PBSTR-SDN-0007
       
  6427  * @SYMTestCaseDesc Cancel reading multiple entries. (SDN phone book)
       
  6428  * @SYMTestPriority High
       
  6429  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6430  * @SYMTestExpectedResults Pass - Some entries read by the time the request is cancelled.
       
  6431  * @SYMTestType CIT
       
  6432  * @SYMTestCaseDependencies live/manual
       
  6433  *
       
  6434  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  6435  *
       
  6436  * @return - TVerdict code
       
  6437  */
       
  6438 	{
       
  6439 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  6440 	StartCleanup();
       
  6441 	return TestStepResult();
       
  6442 	}
       
  6443 
       
  6444 TPtrC CCTSYIntegrationTestPhoneBookStore0007SDN::GetTestStepName()
       
  6445 /**
       
  6446  * @return The test step name.
       
  6447  */
       
  6448 	{
       
  6449 	return _L("CCTSYIntegrationTestPhoneBookStore0007SDN");
       
  6450 	}
       
  6451 
       
  6452 
       
  6453 
       
  6454 CCTSYIntegrationTestPhoneBookStore0007VMBX::CCTSYIntegrationTestPhoneBookStore0007VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  6455 : CCTSYIntegrationTestPhoneBookStore0007Base(aEtelSessionMgr)
       
  6456 /**
       
  6457  * Constructor.
       
  6458  */
       
  6459 {
       
  6460 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0007VMBX::GetTestStepName());
       
  6461 }
       
  6462 
       
  6463 CCTSYIntegrationTestPhoneBookStore0007VMBX::~CCTSYIntegrationTestPhoneBookStore0007VMBX()
       
  6464 /**
       
  6465  * Destructor.
       
  6466  */
       
  6467 {
       
  6468 }
       
  6469 
       
  6470 TVerdict CCTSYIntegrationTestPhoneBookStore0007VMBX::doTestStepL()
       
  6471 /**
       
  6472  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0007
       
  6473  * @SYMFssID BA/CTSY/PBSTR-VMBX-0007
       
  6474  * @SYMTestCaseDesc Cancel reading multiple entries. (VMBX phone book)
       
  6475  * @SYMTestPriority High
       
  6476  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6477  * @SYMTestExpectedResults Pass - Some entries read by the time the request is cancelled.
       
  6478  * @SYMTestType CIT
       
  6479  * @SYMTestCaseDependencies live/manual
       
  6480  *
       
  6481  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  6482  *
       
  6483  * @return - TVerdict code
       
  6484  */
       
  6485 	{
       
  6486 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10006</font>"));
       
  6487 	DoTestProcedureL(KIccVoiceMailBox);
       
  6488 	return TestStepResult();
       
  6489 	}
       
  6490 
       
  6491 TPtrC CCTSYIntegrationTestPhoneBookStore0007VMBX::GetTestStepName()
       
  6492 /**
       
  6493  * @return The test step name.
       
  6494  */
       
  6495 	{
       
  6496 	return _L("CCTSYIntegrationTestPhoneBookStore0007VMBX");
       
  6497 	}
       
  6498 
       
  6499 
       
  6500 
       
  6501 CCTSYIntegrationTestPhoneBookStore0007MBDN::CCTSYIntegrationTestPhoneBookStore0007MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6502 : CCTSYIntegrationTestPhoneBookStore0007Base(aEtelSessionMgr)
       
  6503 /**
       
  6504  * Constructor.
       
  6505  */
       
  6506 {
       
  6507 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0007MBDN::GetTestStepName());
       
  6508 }
       
  6509 
       
  6510 CCTSYIntegrationTestPhoneBookStore0007MBDN::~CCTSYIntegrationTestPhoneBookStore0007MBDN()
       
  6511 /**
       
  6512  * Destructor.
       
  6513  */
       
  6514 {
       
  6515 }
       
  6516 
       
  6517 TVerdict CCTSYIntegrationTestPhoneBookStore0007MBDN::doTestStepL()
       
  6518 /**
       
  6519  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0007
       
  6520  * @SYMFssID BA/CTSY/PBSTR-MBDN-0007
       
  6521  * @SYMTestCaseDesc Cancel reading multiple entries. (MBDN phone book)
       
  6522  * @SYMTestPriority High
       
  6523  * @SYMTestActions RMobilePhoneBookStore::Read
       
  6524  * @SYMTestExpectedResults Pass - Some entries read by the time the request is cancelled.
       
  6525  * @SYMTestType CIT
       
  6526  * @SYMTestCaseDependencies live/manual
       
  6527  *
       
  6528  * Reason for test: Verify some entries but not all entries have been read before cancellation.
       
  6529  *
       
  6530  * @return - TVerdict code
       
  6531  */
       
  6532 	{
       
  6533 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  6534 	StartCleanup();
       
  6535 	return TestStepResult();
       
  6536 	}
       
  6537 
       
  6538 TPtrC CCTSYIntegrationTestPhoneBookStore0007MBDN::GetTestStepName()
       
  6539 /**
       
  6540  * @return The test step name.
       
  6541  */
       
  6542 	{
       
  6543 	return _L("CCTSYIntegrationTestPhoneBookStore0007MBDN");
       
  6544 	}
       
  6545 
       
  6546 
       
  6547 
       
  6548 CCTSYIntegrationTestPhoneBookStore0008ADN::CCTSYIntegrationTestPhoneBookStore0008ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  6549 : CCTSYIntegrationTestPhoneBookStore0008Base(aEtelSessionMgr)
       
  6550 /**
       
  6551  * Constructor.
       
  6552  */
       
  6553 {
       
  6554 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0008ADN::GetTestStepName());
       
  6555 }
       
  6556 
       
  6557 CCTSYIntegrationTestPhoneBookStore0008ADN::~CCTSYIntegrationTestPhoneBookStore0008ADN()
       
  6558 /**
       
  6559  * Destructor.
       
  6560  */
       
  6561 {
       
  6562 }
       
  6563 
       
  6564 TVerdict CCTSYIntegrationTestPhoneBookStore0008ADN::doTestStepL()
       
  6565 /**
       
  6566  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0008
       
  6567  * @SYMFssID BA/CTSY/PBSTR-ADN-0008
       
  6568  * @SYMTestCaseDesc Write national, international numbers to the SIM phone book. (ADN phone book)
       
  6569  * @SYMTestPriority High
       
  6570  * @SYMTestActions RMobilePhoneBookStore::Read, RMobilePhoneBookStore::Write, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  6571  * @SYMTestExpectedResults Pass - Valid numbers written correctly
       
  6572  * @SYMTestType CIT
       
  6573  * @SYMTestCaseDependencies live/automatic
       
  6574  *
       
  6575  * Reason for test: Verify entries are written correctly and can be read.
       
  6576  *
       
  6577  * @return - TVerdict code
       
  6578  */
       
  6579 	{ 
       
  6580 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  6581 	return TestStepResult();
       
  6582 	}
       
  6583 
       
  6584 TPtrC CCTSYIntegrationTestPhoneBookStore0008ADN::GetTestStepName()
       
  6585 /**
       
  6586  * @return The test step name.
       
  6587  */
       
  6588 	{
       
  6589 	return _L("CCTSYIntegrationTestPhoneBookStore0008ADN");
       
  6590 	}
       
  6591 
       
  6592 
       
  6593 
       
  6594 CCTSYIntegrationTestPhoneBookStore0008FDN::CCTSYIntegrationTestPhoneBookStore0008FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6595 : CCTSYIntegrationTestPhoneBookStore0008Base(aEtelSessionMgr)
       
  6596 /**
       
  6597  * Constructor.
       
  6598  */
       
  6599 {
       
  6600 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0008FDN::GetTestStepName());
       
  6601 }
       
  6602 
       
  6603 CCTSYIntegrationTestPhoneBookStore0008FDN::~CCTSYIntegrationTestPhoneBookStore0008FDN()
       
  6604 /**
       
  6605  * Destructor.
       
  6606  */
       
  6607 {
       
  6608 }
       
  6609 
       
  6610 TVerdict CCTSYIntegrationTestPhoneBookStore0008FDN::doTestStepL()
       
  6611 /**
       
  6612  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0008
       
  6613  * @SYMFssID BA/CTSY/PBSTR-FDN-0008
       
  6614  * @SYMTestCaseDesc Write national, international numbers to the SIM phone book. (FDN phone book)
       
  6615  * @SYMTestPriority High
       
  6616  * @SYMTestActions RMobilePhoneBookStore::Read, RMobilePhoneBookStore::Write, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  6617  * @SYMTestExpectedResults Pass - Valid numbers written correctly
       
  6618  * @SYMTestType CIT
       
  6619  * @SYMTestCaseDependencies live/automatic
       
  6620  *
       
  6621  * Reason for test: Verify entries are written correctly and can be read.
       
  6622  *
       
  6623  * @return - TVerdict code
       
  6624  */
       
  6625 	{
       
  6626 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  6627 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  6628 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  6629 	return TestStepResult();
       
  6630 	}
       
  6631 
       
  6632 TPtrC CCTSYIntegrationTestPhoneBookStore0008FDN::GetTestStepName()
       
  6633 /**
       
  6634  * @return The test step name.
       
  6635  */
       
  6636 	{
       
  6637 	return _L("CCTSYIntegrationTestPhoneBookStore0008FDN");
       
  6638 	}
       
  6639 
       
  6640 
       
  6641 
       
  6642 CCTSYIntegrationTestPhoneBookStore0008SDN::CCTSYIntegrationTestPhoneBookStore0008SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6643 : CCTSYIntegrationTestPhoneBookStore0008Base(aEtelSessionMgr)
       
  6644 /**
       
  6645  * Constructor.
       
  6646  */
       
  6647 {
       
  6648 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0008SDN::GetTestStepName());
       
  6649 }
       
  6650 
       
  6651 CCTSYIntegrationTestPhoneBookStore0008SDN::~CCTSYIntegrationTestPhoneBookStore0008SDN()
       
  6652 /**
       
  6653  * Destructor.
       
  6654  */
       
  6655 {
       
  6656 }
       
  6657 
       
  6658 TVerdict CCTSYIntegrationTestPhoneBookStore0008SDN::doTestStepL()
       
  6659 /**
       
  6660  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0008
       
  6661  * @SYMFssID BA/CTSY/PBSTR-SDN-0008
       
  6662  * @SYMTestCaseDesc Write national, international numbers to the SIM phone book. (SDN phone book)
       
  6663  * @SYMTestPriority High
       
  6664  * @SYMTestActions RMobilePhoneBookStore::Read, RMobilePhoneBookStore::Write, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  6665  * @SYMTestExpectedResults Pass - Valid numbers written correctly
       
  6666  * @SYMTestType CIT
       
  6667  * @SYMTestCaseDependencies live/automatic
       
  6668  *
       
  6669  * Reason for test: Verify entries are written correctly and can be read.
       
  6670  *
       
  6671  * @return - TVerdict code
       
  6672  */
       
  6673 	{
       
  6674 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  6675 	StartCleanup();
       
  6676 	return TestStepResult();
       
  6677 	}
       
  6678 
       
  6679 TPtrC CCTSYIntegrationTestPhoneBookStore0008SDN::GetTestStepName()
       
  6680 /**
       
  6681  * @return The test step name.
       
  6682  */
       
  6683 	{
       
  6684 	return _L("CCTSYIntegrationTestPhoneBookStore0008SDN");
       
  6685 	}
       
  6686 
       
  6687 
       
  6688 
       
  6689 CCTSYIntegrationTestPhoneBookStore0008VMBX::CCTSYIntegrationTestPhoneBookStore0008VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  6690 : CCTSYIntegrationTestPhoneBookStore0008Base(aEtelSessionMgr)
       
  6691 /**
       
  6692  * Constructor.
       
  6693  */
       
  6694 {
       
  6695 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0008VMBX::GetTestStepName());
       
  6696 }
       
  6697 
       
  6698 CCTSYIntegrationTestPhoneBookStore0008VMBX::~CCTSYIntegrationTestPhoneBookStore0008VMBX()
       
  6699 /**
       
  6700  * Destructor.
       
  6701  */
       
  6702 {
       
  6703 }
       
  6704 
       
  6705 TVerdict CCTSYIntegrationTestPhoneBookStore0008VMBX::doTestStepL()
       
  6706 /**
       
  6707  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0008
       
  6708  * @SYMFssID BA/CTSY/PBSTR-VMBX-0008
       
  6709  * @SYMTestCaseDesc Write national, international numbers to the SIM phone book. (VMBX phone book)
       
  6710  * @SYMTestPriority High
       
  6711  * @SYMTestActions RMobilePhoneBookStore::Read, RMobilePhoneBookStore::Write, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  6712  * @SYMTestExpectedResults Pass - Valid numbers written correctly
       
  6713  * @SYMTestType CIT
       
  6714  * @SYMTestCaseDependencies live/automatic
       
  6715  *
       
  6716  * Reason for test: Verify entries are written correctly and can be read.
       
  6717  *
       
  6718  * @return - TVerdict code
       
  6719  */
       
  6720 	{
       
  6721 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10006</font>"));
       
  6722 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  6723 	return TestStepResult();
       
  6724 	}
       
  6725 
       
  6726 TPtrC CCTSYIntegrationTestPhoneBookStore0008VMBX::GetTestStepName()
       
  6727 /**
       
  6728  * @return The test step name.
       
  6729  */
       
  6730 	{
       
  6731 	return _L("CCTSYIntegrationTestPhoneBookStore0008VMBX");
       
  6732 	}
       
  6733 
       
  6734 
       
  6735 
       
  6736 CCTSYIntegrationTestPhoneBookStore0008MBDN::CCTSYIntegrationTestPhoneBookStore0008MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6737 : CCTSYIntegrationTestPhoneBookStore0008Base(aEtelSessionMgr)
       
  6738 /**
       
  6739  * Constructor.
       
  6740  */
       
  6741 {
       
  6742 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0008MBDN::GetTestStepName());
       
  6743 }
       
  6744 
       
  6745 CCTSYIntegrationTestPhoneBookStore0008MBDN::~CCTSYIntegrationTestPhoneBookStore0008MBDN()
       
  6746 /**
       
  6747  * Destructor.
       
  6748  */
       
  6749 {
       
  6750 }
       
  6751 
       
  6752 TVerdict CCTSYIntegrationTestPhoneBookStore0008MBDN::doTestStepL()
       
  6753 /**
       
  6754  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0008
       
  6755  * @SYMFssID BA/CTSY/PBSTR-MBDN-0008
       
  6756  * @SYMTestCaseDesc Write national, international numbers to the SIM phone book. (MBDN phone book)
       
  6757  * @SYMTestPriority High
       
  6758  * @SYMTestActions RMobilePhoneBookStore::Read, RMobilePhoneBookStore::Write, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  6759  * @SYMTestExpectedResults Pass - Valid numbers written correctly
       
  6760  * @SYMTestType CIT
       
  6761  * @SYMTestCaseDependencies live/automatic
       
  6762  *
       
  6763  * Reason for test: Verify entries are written correctly and can be read.
       
  6764  *
       
  6765  * @return - TVerdict code
       
  6766  */
       
  6767 	{
       
  6768 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  6769 	StartCleanup();
       
  6770 	return TestStepResult();
       
  6771 	}
       
  6772 
       
  6773 TPtrC CCTSYIntegrationTestPhoneBookStore0008MBDN::GetTestStepName()
       
  6774 /**
       
  6775  * @return The test step name.
       
  6776  */
       
  6777 	{
       
  6778 	return _L("CCTSYIntegrationTestPhoneBookStore0008MBDN");
       
  6779 	}
       
  6780 
       
  6781 
       
  6782 
       
  6783 CCTSYIntegrationTestPhoneBookStore0009ADN::CCTSYIntegrationTestPhoneBookStore0009ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  6784 : CCTSYIntegrationTestPhoneBookStore0009Base(aEtelSessionMgr)
       
  6785 /**
       
  6786  * Constructor.
       
  6787  */
       
  6788 {
       
  6789 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0009ADN::GetTestStepName());
       
  6790 }
       
  6791 
       
  6792 CCTSYIntegrationTestPhoneBookStore0009ADN::~CCTSYIntegrationTestPhoneBookStore0009ADN()
       
  6793 /**
       
  6794  * Destructor.
       
  6795  */
       
  6796 {
       
  6797 }
       
  6798 
       
  6799 TVerdict CCTSYIntegrationTestPhoneBookStore0009ADN::doTestStepL()
       
  6800 /**
       
  6801  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0009
       
  6802  * @SYMFssID BA/CTSY/PBSTR-ADN-0009
       
  6803  * @SYMTestCaseDesc Write invalid entries to SIM phone book (e.g. name too long) (ADN phone book)
       
  6804  * @SYMTestPriority High
       
  6805  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo
       
  6806  * @SYMTestExpectedResults Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  6807  * @SYMTestType CIT
       
  6808  * @SYMTestCaseDependencies live/automatic
       
  6809  *
       
  6810  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  6811  *
       
  6812  * @return - TVerdict code
       
  6813  */
       
  6814 	{
       
  6815 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10008);
       
  6816 	DoTestProcedureL(KIccAdnPhoneBook);
       
  6817 	return TestStepResult();
       
  6818 	}
       
  6819 
       
  6820 TPtrC CCTSYIntegrationTestPhoneBookStore0009ADN::GetTestStepName()
       
  6821 /**
       
  6822  * @return The test step name.
       
  6823  */
       
  6824 	{
       
  6825 	return _L("CCTSYIntegrationTestPhoneBookStore0009ADN");
       
  6826 	}
       
  6827 
       
  6828 
       
  6829 
       
  6830 CCTSYIntegrationTestPhoneBookStore0009FDN::CCTSYIntegrationTestPhoneBookStore0009FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6831 : CCTSYIntegrationTestPhoneBookStore0009Base(aEtelSessionMgr)
       
  6832 /**
       
  6833  * Constructor.
       
  6834  */
       
  6835 {
       
  6836 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0009FDN::GetTestStepName());
       
  6837 }
       
  6838 
       
  6839 CCTSYIntegrationTestPhoneBookStore0009FDN::~CCTSYIntegrationTestPhoneBookStore0009FDN()
       
  6840 /**
       
  6841  * Destructor.
       
  6842  */
       
  6843 {
       
  6844 }
       
  6845 
       
  6846 TVerdict CCTSYIntegrationTestPhoneBookStore0009FDN::doTestStepL()
       
  6847 /**
       
  6848  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0009
       
  6849  * @SYMFssID BA/CTSY/PBSTR-FDN-0009
       
  6850  * @SYMTestCaseDesc Write invalid entries to SIM phone book (e.g. name too long) (FDN phone book)
       
  6851  * @SYMTestPriority High
       
  6852  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo
       
  6853  * @SYMTestExpectedResults Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  6854  * @SYMTestType CIT
       
  6855  * @SYMTestCaseDependencies live/automatic
       
  6856  *
       
  6857  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  6858  *
       
  6859  * @return - TVerdict code
       
  6860  */
       
  6861 	{
       
  6862 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10008);
       
  6863 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  6864 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  6865 	DoTestProcedureL(KIccFdnPhoneBook);
       
  6866 	return TestStepResult();
       
  6867 	}
       
  6868 
       
  6869 TPtrC CCTSYIntegrationTestPhoneBookStore0009FDN::GetTestStepName()
       
  6870 /**
       
  6871  * @return The test step name.
       
  6872  */
       
  6873 	{
       
  6874 	return _L("CCTSYIntegrationTestPhoneBookStore0009FDN");
       
  6875 	}
       
  6876 
       
  6877 
       
  6878 
       
  6879 CCTSYIntegrationTestPhoneBookStore0009SDN::CCTSYIntegrationTestPhoneBookStore0009SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6880 : CCTSYIntegrationTestPhoneBookStore0009Base(aEtelSessionMgr)
       
  6881 /**
       
  6882  * Constructor.
       
  6883  */
       
  6884 {
       
  6885 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0009SDN::GetTestStepName());
       
  6886 }
       
  6887 
       
  6888 CCTSYIntegrationTestPhoneBookStore0009SDN::~CCTSYIntegrationTestPhoneBookStore0009SDN()
       
  6889 /**
       
  6890  * Destructor.
       
  6891  */
       
  6892 {
       
  6893 }
       
  6894 
       
  6895 TVerdict CCTSYIntegrationTestPhoneBookStore0009SDN::doTestStepL()
       
  6896 /**
       
  6897  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0009
       
  6898  * @SYMFssID BA/CTSY/PBSTR-SDN-0009
       
  6899  * @SYMTestCaseDesc Write invalid entries to SIM phone book (e.g. name too long) (SDN phone book)
       
  6900  * @SYMTestPriority High
       
  6901  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo
       
  6902  * @SYMTestExpectedResults Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  6903  * @SYMTestType CIT
       
  6904  * @SYMTestCaseDependencies live/automatic
       
  6905  *
       
  6906  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  6907  *
       
  6908  * @return - TVerdict code
       
  6909  */
       
  6910 	{
       
  6911 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  6912 	StartCleanup();
       
  6913 	return TestStepResult();
       
  6914 	}
       
  6915 
       
  6916 TPtrC CCTSYIntegrationTestPhoneBookStore0009SDN::GetTestStepName()
       
  6917 /**
       
  6918  * @return The test step name.
       
  6919  */
       
  6920 	{
       
  6921 	return _L("CCTSYIntegrationTestPhoneBookStore0009SDN");
       
  6922 	}
       
  6923 
       
  6924 
       
  6925 
       
  6926 CCTSYIntegrationTestPhoneBookStore0009VMBX::CCTSYIntegrationTestPhoneBookStore0009VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  6927 : CCTSYIntegrationTestPhoneBookStore0009Base(aEtelSessionMgr)
       
  6928 /**
       
  6929  * Constructor.
       
  6930  */
       
  6931 {
       
  6932 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0009VMBX::GetTestStepName());
       
  6933 }
       
  6934 
       
  6935 CCTSYIntegrationTestPhoneBookStore0009VMBX::~CCTSYIntegrationTestPhoneBookStore0009VMBX()
       
  6936 /**
       
  6937  * Destructor.
       
  6938  */
       
  6939 {
       
  6940 }
       
  6941 
       
  6942 TVerdict CCTSYIntegrationTestPhoneBookStore0009VMBX::doTestStepL()
       
  6943 /**
       
  6944  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0009
       
  6945  * @SYMFssID BA/CTSY/PBSTR-VMBX-0009
       
  6946  * @SYMTestCaseDesc Write invalid entries to SIM phone book (e.g. name too long) (VMBX phone book)
       
  6947  * @SYMTestPriority High
       
  6948  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo
       
  6949  * @SYMTestExpectedResults Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  6950  * @SYMTestType CIT
       
  6951  * @SYMTestCaseDependencies live/automatic
       
  6952  *
       
  6953  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  6954  *
       
  6955  * @return - TVerdict code
       
  6956  */
       
  6957 	{
       
  6958 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  6959 	DoTestProcedureL(KIccVoiceMailBox);
       
  6960 	return TestStepResult();
       
  6961 	}
       
  6962 
       
  6963 TPtrC CCTSYIntegrationTestPhoneBookStore0009VMBX::GetTestStepName()
       
  6964 /**
       
  6965  * @return The test step name.
       
  6966  */
       
  6967 	{
       
  6968 	return _L("CCTSYIntegrationTestPhoneBookStore0009VMBX");
       
  6969 	}
       
  6970 
       
  6971 
       
  6972 
       
  6973 CCTSYIntegrationTestPhoneBookStore0009MBDN::CCTSYIntegrationTestPhoneBookStore0009MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  6974 : CCTSYIntegrationTestPhoneBookStore0009Base(aEtelSessionMgr)
       
  6975 /**
       
  6976  * Constructor.
       
  6977  */
       
  6978 {
       
  6979 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0009MBDN::GetTestStepName());
       
  6980 }
       
  6981 
       
  6982 CCTSYIntegrationTestPhoneBookStore0009MBDN::~CCTSYIntegrationTestPhoneBookStore0009MBDN()
       
  6983 /**
       
  6984  * Destructor.
       
  6985  */
       
  6986 {
       
  6987 }
       
  6988 
       
  6989 TVerdict CCTSYIntegrationTestPhoneBookStore0009MBDN::doTestStepL()
       
  6990 /**
       
  6991  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0009
       
  6992  * @SYMFssID BA/CTSY/PBSTR-MBDN-0009
       
  6993  * @SYMTestCaseDesc Write invalid entries to SIM phone book (e.g. name too long) (MBDN phone book)
       
  6994  * @SYMTestPriority High
       
  6995  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo
       
  6996  * @SYMTestExpectedResults Pass - KErrGsm0707TextStringTooLong returned if the name or number is too long. KErrArgument if a bad descriptor is supplied.
       
  6997  * @SYMTestType CIT
       
  6998  * @SYMTestCaseDependencies live/automatic
       
  6999  *
       
  7000  * Reason for test: Verify error is returned on attempt to write an invalid entry and number of used entries in phone book is unchanged.
       
  7001  *
       
  7002  * @return - TVerdict code
       
  7003  */
       
  7004 	{
       
  7005 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10009);
       
  7006 	DoTestProcedureL(KIccMbdnPhoneBook);
       
  7007 	return TestStepResult();
       
  7008 	}
       
  7009 
       
  7010 TPtrC CCTSYIntegrationTestPhoneBookStore0009MBDN::GetTestStepName()
       
  7011 /**
       
  7012  * @return The test step name.
       
  7013  */
       
  7014 	{
       
  7015 	return _L("CCTSYIntegrationTestPhoneBookStore0009MBDN");
       
  7016 	}
       
  7017 
       
  7018 
       
  7019 
       
  7020 CCTSYIntegrationTestPhoneBookStore0010ADN::CCTSYIntegrationTestPhoneBookStore0010ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  7021 : CCTSYIntegrationTestPhoneBookStore0010Base(aEtelSessionMgr)
       
  7022 /**
       
  7023  * Constructor.
       
  7024  */
       
  7025 {
       
  7026 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0010ADN::GetTestStepName());
       
  7027 }
       
  7028 
       
  7029 CCTSYIntegrationTestPhoneBookStore0010ADN::~CCTSYIntegrationTestPhoneBookStore0010ADN()
       
  7030 /**
       
  7031  * Destructor.
       
  7032  */
       
  7033 {
       
  7034 }
       
  7035 
       
  7036 TVerdict CCTSYIntegrationTestPhoneBookStore0010ADN::doTestStepL()
       
  7037 /**
       
  7038  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0010
       
  7039  * @SYMFssID BA/CTSY/PBSTR-ADN-0010
       
  7040  * @SYMTestCaseDesc Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields.  (ADN phone book)
       
  7041  * @SYMTestPriority High
       
  7042  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo
       
  7043  * @SYMTestExpectedResults Pass - A 40 digit number can be stored and retrieved.
       
  7044  * @SYMTestType CIT
       
  7045  * @SYMTestCaseDependencies live/manual
       
  7046  *
       
  7047  * Reason for test: Verify entry is written to the phone book.
       
  7048  *
       
  7049  * @return - TVerdict code
       
  7050  */
       
  7051 	{
       
  7052 	DoTestProcedureL(KIccAdnPhoneBook);
       
  7053 	return TestStepResult();
       
  7054 	}
       
  7055 
       
  7056 TPtrC CCTSYIntegrationTestPhoneBookStore0010ADN::GetTestStepName()
       
  7057 /**
       
  7058  * @return The test step name.
       
  7059  */
       
  7060 	{
       
  7061 	return _L("CCTSYIntegrationTestPhoneBookStore0010ADN");
       
  7062 	}
       
  7063 
       
  7064 
       
  7065 
       
  7066 CCTSYIntegrationTestPhoneBookStore0010FDN::CCTSYIntegrationTestPhoneBookStore0010FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7067 : CCTSYIntegrationTestPhoneBookStore0010Base(aEtelSessionMgr)
       
  7068 /**
       
  7069  * Constructor.
       
  7070  */
       
  7071 {
       
  7072 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0010FDN::GetTestStepName());
       
  7073 }
       
  7074 
       
  7075 CCTSYIntegrationTestPhoneBookStore0010FDN::~CCTSYIntegrationTestPhoneBookStore0010FDN()
       
  7076 /**
       
  7077  * Destructor.
       
  7078  */
       
  7079 {
       
  7080 }
       
  7081 
       
  7082 TVerdict CCTSYIntegrationTestPhoneBookStore0010FDN::doTestStepL()
       
  7083 /**
       
  7084  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0010
       
  7085  * @SYMFssID BA/CTSY/PBSTR-FDN-0010
       
  7086  * @SYMTestCaseDesc Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields.  (FDN phone book)
       
  7087  * @SYMTestPriority High
       
  7088  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo
       
  7089  * @SYMTestExpectedResults Pass - A 40 digit number can be stored and retrieved.
       
  7090  * @SYMTestType CIT
       
  7091  * @SYMTestCaseDependencies live/manual
       
  7092  *
       
  7093  * Reason for test: Verify entry is written to the phone book.
       
  7094  *
       
  7095  * @return - TVerdict code
       
  7096  */
       
  7097 	{
       
  7098 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  7099 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  7100 	DoTestProcedureL(KIccFdnPhoneBook);
       
  7101 	return TestStepResult();
       
  7102 	}
       
  7103 
       
  7104 TPtrC CCTSYIntegrationTestPhoneBookStore0010FDN::GetTestStepName()
       
  7105 /**
       
  7106  * @return The test step name.
       
  7107  */
       
  7108 	{
       
  7109 	return _L("CCTSYIntegrationTestPhoneBookStore0010FDN");
       
  7110 	}
       
  7111 
       
  7112 
       
  7113 
       
  7114 CCTSYIntegrationTestPhoneBookStore0010SDN::CCTSYIntegrationTestPhoneBookStore0010SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7115 : CCTSYIntegrationTestPhoneBookStore0010Base(aEtelSessionMgr)
       
  7116 /**
       
  7117  * Constructor.
       
  7118  */
       
  7119 {
       
  7120 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0010SDN::GetTestStepName());
       
  7121 }
       
  7122 
       
  7123 CCTSYIntegrationTestPhoneBookStore0010SDN::~CCTSYIntegrationTestPhoneBookStore0010SDN()
       
  7124 /**
       
  7125  * Destructor.
       
  7126  */
       
  7127 {
       
  7128 }
       
  7129 
       
  7130 TVerdict CCTSYIntegrationTestPhoneBookStore0010SDN::doTestStepL()
       
  7131 /**
       
  7132  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0010
       
  7133  * @SYMFssID BA/CTSY/PBSTR-SDN-0010
       
  7134  * @SYMTestCaseDesc Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields.  (SDN phone book)
       
  7135  * @SYMTestPriority High
       
  7136  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo
       
  7137  * @SYMTestExpectedResults Pass - A 40 digit number can be stored and retrieved.
       
  7138  * @SYMTestType CIT
       
  7139  * @SYMTestCaseDependencies live/manual
       
  7140  *
       
  7141  * Reason for test: Verify entry is written to the phone book.
       
  7142  *
       
  7143  * @return - TVerdict code
       
  7144  */
       
  7145 	{
       
  7146 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  7147 	StartCleanup();
       
  7148 	return TestStepResult();
       
  7149 	}
       
  7150 
       
  7151 TPtrC CCTSYIntegrationTestPhoneBookStore0010SDN::GetTestStepName()
       
  7152 /**
       
  7153  * @return The test step name.
       
  7154  */
       
  7155 	{
       
  7156 	return _L("CCTSYIntegrationTestPhoneBookStore0010SDN");
       
  7157 	}
       
  7158 
       
  7159 
       
  7160 
       
  7161 CCTSYIntegrationTestPhoneBookStore0010VMBX::CCTSYIntegrationTestPhoneBookStore0010VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  7162 : CCTSYIntegrationTestPhoneBookStore0010Base(aEtelSessionMgr)
       
  7163 /**
       
  7164  * Constructor.
       
  7165  */
       
  7166 {
       
  7167 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0010VMBX::GetTestStepName());
       
  7168 }
       
  7169 
       
  7170 CCTSYIntegrationTestPhoneBookStore0010VMBX::~CCTSYIntegrationTestPhoneBookStore0010VMBX()
       
  7171 /**
       
  7172  * Destructor.
       
  7173  */
       
  7174 {
       
  7175 }
       
  7176 
       
  7177 TVerdict CCTSYIntegrationTestPhoneBookStore0010VMBX::doTestStepL()
       
  7178 /**
       
  7179  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0010
       
  7180  * @SYMFssID BA/CTSY/PBSTR-VMBX-0010
       
  7181  * @SYMTestCaseDesc Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields.  (VMBX phone book)
       
  7182  * @SYMTestPriority High
       
  7183  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo
       
  7184  * @SYMTestExpectedResults Pass - A 40 digit number can be stored and retrieved.
       
  7185  * @SYMTestType CIT
       
  7186  * @SYMTestCaseDependencies live/manual
       
  7187  *
       
  7188  * Reason for test: Verify entry is written to the phone book.
       
  7189  *
       
  7190  * @return - TVerdict code
       
  7191  */
       
  7192 	{
       
  7193 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  7194 	DoTestProcedureL(KIccVoiceMailBox);
       
  7195 	return TestStepResult();
       
  7196 	}
       
  7197 
       
  7198 TPtrC CCTSYIntegrationTestPhoneBookStore0010VMBX::GetTestStepName()
       
  7199 /**
       
  7200  * @return The test step name.
       
  7201  */
       
  7202 	{
       
  7203 	return _L("CCTSYIntegrationTestPhoneBookStore0010VMBX");
       
  7204 	}
       
  7205 
       
  7206 
       
  7207 
       
  7208 CCTSYIntegrationTestPhoneBookStore0010MBDN::CCTSYIntegrationTestPhoneBookStore0010MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7209 : CCTSYIntegrationTestPhoneBookStore0010Base(aEtelSessionMgr)
       
  7210 /**
       
  7211  * Constructor.
       
  7212  */
       
  7213 {
       
  7214 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0010MBDN::GetTestStepName());
       
  7215 }
       
  7216 
       
  7217 CCTSYIntegrationTestPhoneBookStore0010MBDN::~CCTSYIntegrationTestPhoneBookStore0010MBDN()
       
  7218 /**
       
  7219  * Destructor.
       
  7220  */
       
  7221 {
       
  7222 }
       
  7223 
       
  7224 TVerdict CCTSYIntegrationTestPhoneBookStore0010MBDN::doTestStepL()
       
  7225 /**
       
  7226  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0010
       
  7227  * @SYMFssID BA/CTSY/PBSTR-MBDN-0010
       
  7228  * @SYMTestCaseDesc Write a long (40 digit) number to the SIM phone book to USIM which supports extension fields.  (MBDN phone book)
       
  7229  * @SYMTestPriority High
       
  7230  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo
       
  7231  * @SYMTestExpectedResults Pass - A 40 digit number can be stored and retrieved.
       
  7232  * @SYMTestType CIT
       
  7233  * @SYMTestCaseDependencies live/manual
       
  7234  *
       
  7235  * Reason for test: Verify entry is written to the phone book.
       
  7236  *
       
  7237  * @return - TVerdict code
       
  7238  */
       
  7239 	{
       
  7240 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  7241 	StartCleanup();
       
  7242 	return TestStepResult();
       
  7243 	}
       
  7244 
       
  7245 TPtrC CCTSYIntegrationTestPhoneBookStore0010MBDN::GetTestStepName()
       
  7246 /**
       
  7247  * @return The test step name.
       
  7248  */
       
  7249 	{
       
  7250 	return _L("CCTSYIntegrationTestPhoneBookStore0010MBDN");
       
  7251 	}
       
  7252 
       
  7253 
       
  7254 
       
  7255 CCTSYIntegrationTestPhoneBookStore0011ADN::CCTSYIntegrationTestPhoneBookStore0011ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  7256 : CCTSYIntegrationTestPhoneBookStore0011Base(aEtelSessionMgr)
       
  7257 /**
       
  7258  * Constructor.
       
  7259  */
       
  7260 {
       
  7261 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0011ADN::GetTestStepName());
       
  7262 }
       
  7263 
       
  7264 CCTSYIntegrationTestPhoneBookStore0011ADN::~CCTSYIntegrationTestPhoneBookStore0011ADN()
       
  7265 /**
       
  7266  * Destructor.
       
  7267  */
       
  7268 {
       
  7269 }
       
  7270 
       
  7271 TVerdict CCTSYIntegrationTestPhoneBookStore0011ADN::doTestStepL()
       
  7272 /**
       
  7273  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0011
       
  7274  * @SYMFssID BA/CTSY/PBSTR-ADN-0011
       
  7275  * @SYMTestCaseDesc Write an entry to phonebook at index of -1 (first free slot). (ADN phone book)
       
  7276  * @SYMTestPriority High
       
  7277  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  7278  * @SYMTestExpectedResults Pass - Entry written.
       
  7279  * @SYMTestType CIT
       
  7280  * @SYMTestCaseDependencies live/automatic
       
  7281  *
       
  7282  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  7283  *
       
  7284  * @return - TVerdict code
       
  7285  */
       
  7286 	{
       
  7287 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  7288 	return TestStepResult();
       
  7289 	}
       
  7290 
       
  7291 TPtrC CCTSYIntegrationTestPhoneBookStore0011ADN::GetTestStepName()
       
  7292 /**
       
  7293  * @return The test step name.
       
  7294  */
       
  7295 	{
       
  7296 	return _L("CCTSYIntegrationTestPhoneBookStore0011ADN");
       
  7297 	}
       
  7298 
       
  7299 
       
  7300 
       
  7301 CCTSYIntegrationTestPhoneBookStore0011FDN::CCTSYIntegrationTestPhoneBookStore0011FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7302 : CCTSYIntegrationTestPhoneBookStore0011Base(aEtelSessionMgr)
       
  7303 /**
       
  7304  * Constructor.
       
  7305  */
       
  7306 {
       
  7307 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0011FDN::GetTestStepName());
       
  7308 }
       
  7309 
       
  7310 CCTSYIntegrationTestPhoneBookStore0011FDN::~CCTSYIntegrationTestPhoneBookStore0011FDN()
       
  7311 /**
       
  7312  * Destructor.
       
  7313  */
       
  7314 {
       
  7315 }
       
  7316 
       
  7317 TVerdict CCTSYIntegrationTestPhoneBookStore0011FDN::doTestStepL()
       
  7318 /**
       
  7319  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0011
       
  7320  * @SYMFssID BA/CTSY/PBSTR-FDN-0011
       
  7321  * @SYMTestCaseDesc Write an entry to phonebook at index of -1 (first free slot). (FDN phone book)
       
  7322  * @SYMTestPriority High
       
  7323  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  7324  * @SYMTestExpectedResults Pass - Entry written.
       
  7325  * @SYMTestType CIT
       
  7326  * @SYMTestCaseDependencies live/automatic
       
  7327  *
       
  7328  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  7329  *
       
  7330  * @return - TVerdict code
       
  7331  */
       
  7332 	{
       
  7333 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  7334 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  7335 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  7336 	return TestStepResult();
       
  7337 	}
       
  7338 
       
  7339 TPtrC CCTSYIntegrationTestPhoneBookStore0011FDN::GetTestStepName()
       
  7340 /**
       
  7341  * @return The test step name.
       
  7342  */
       
  7343 	{
       
  7344 	return _L("CCTSYIntegrationTestPhoneBookStore0011FDN");
       
  7345 	}
       
  7346 
       
  7347 
       
  7348 
       
  7349 CCTSYIntegrationTestPhoneBookStore0011SDN::CCTSYIntegrationTestPhoneBookStore0011SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7350 : CCTSYIntegrationTestPhoneBookStore0011Base(aEtelSessionMgr)
       
  7351 /**
       
  7352  * Constructor.
       
  7353  */
       
  7354 {
       
  7355 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0011SDN::GetTestStepName());
       
  7356 }
       
  7357 
       
  7358 CCTSYIntegrationTestPhoneBookStore0011SDN::~CCTSYIntegrationTestPhoneBookStore0011SDN()
       
  7359 /**
       
  7360  * Destructor.
       
  7361  */
       
  7362 {
       
  7363 }
       
  7364 
       
  7365 TVerdict CCTSYIntegrationTestPhoneBookStore0011SDN::doTestStepL()
       
  7366 /**
       
  7367  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0011
       
  7368  * @SYMFssID BA/CTSY/PBSTR-SDN-0011
       
  7369  * @SYMTestCaseDesc Write an entry to phonebook at index of -1 (first free slot). (SDN phone book)
       
  7370  * @SYMTestPriority High
       
  7371  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  7372  * @SYMTestExpectedResults Pass - Entry written.
       
  7373  * @SYMTestType CIT
       
  7374  * @SYMTestCaseDependencies live/automatic
       
  7375  *
       
  7376  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  7377  *
       
  7378  * @return - TVerdict code
       
  7379  */
       
  7380 	{
       
  7381 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  7382 	StartCleanup();
       
  7383 	return TestStepResult();
       
  7384 	}
       
  7385 
       
  7386 TPtrC CCTSYIntegrationTestPhoneBookStore0011SDN::GetTestStepName()
       
  7387 /**
       
  7388  * @return The test step name.
       
  7389  */
       
  7390 	{
       
  7391 	return _L("CCTSYIntegrationTestPhoneBookStore0011SDN");
       
  7392 	}
       
  7393 
       
  7394 
       
  7395 
       
  7396 CCTSYIntegrationTestPhoneBookStore0011VMBX::CCTSYIntegrationTestPhoneBookStore0011VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  7397 : CCTSYIntegrationTestPhoneBookStore0011Base(aEtelSessionMgr)
       
  7398 /**
       
  7399  * Constructor.
       
  7400  */
       
  7401 {
       
  7402 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0011VMBX::GetTestStepName());
       
  7403 }
       
  7404 
       
  7405 CCTSYIntegrationTestPhoneBookStore0011VMBX::~CCTSYIntegrationTestPhoneBookStore0011VMBX()
       
  7406 /**
       
  7407  * Destructor.
       
  7408  */
       
  7409 {
       
  7410 }
       
  7411 
       
  7412 TVerdict CCTSYIntegrationTestPhoneBookStore0011VMBX::doTestStepL()
       
  7413 /**
       
  7414  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0011
       
  7415  * @SYMFssID BA/CTSY/PBSTR-VMBX-0011
       
  7416  * @SYMTestCaseDesc Write an entry to phonebook at index of -1 (first free slot). (VMBX phone book)
       
  7417  * @SYMTestPriority High
       
  7418  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  7419  * @SYMTestExpectedResults Pass - Entry written.
       
  7420  * @SYMTestType CIT
       
  7421  * @SYMTestCaseDependencies live/automatic
       
  7422  *
       
  7423  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  7424  *
       
  7425  * @return - TVerdict code
       
  7426  */
       
  7427 	{
       
  7428 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  7429 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  7430 	return TestStepResult();
       
  7431 	}
       
  7432 
       
  7433 TPtrC CCTSYIntegrationTestPhoneBookStore0011VMBX::GetTestStepName()
       
  7434 /**
       
  7435  * @return The test step name.
       
  7436  */
       
  7437 	{
       
  7438 	return _L("CCTSYIntegrationTestPhoneBookStore0011VMBX");
       
  7439 	}
       
  7440 
       
  7441 
       
  7442 
       
  7443 CCTSYIntegrationTestPhoneBookStore0011MBDN::CCTSYIntegrationTestPhoneBookStore0011MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7444 : CCTSYIntegrationTestPhoneBookStore0011Base(aEtelSessionMgr)
       
  7445 /**
       
  7446  * Constructor.
       
  7447  */
       
  7448 {
       
  7449 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0011MBDN::GetTestStepName());
       
  7450 }
       
  7451 
       
  7452 CCTSYIntegrationTestPhoneBookStore0011MBDN::~CCTSYIntegrationTestPhoneBookStore0011MBDN()
       
  7453 /**
       
  7454  * Destructor.
       
  7455  */
       
  7456 {
       
  7457 }
       
  7458 
       
  7459 TVerdict CCTSYIntegrationTestPhoneBookStore0011MBDN::doTestStepL()
       
  7460 /**
       
  7461  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0011
       
  7462  * @SYMFssID BA/CTSY/PBSTR-MBDN-0011
       
  7463  * @SYMTestCaseDesc Write an entry to phonebook at index of -1 (first free slot). (MBDN phone book)
       
  7464  * @SYMTestPriority High
       
  7465  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  7466  * @SYMTestExpectedResults Pass - Entry written.
       
  7467  * @SYMTestType CIT
       
  7468  * @SYMTestCaseDependencies live/automatic
       
  7469  *
       
  7470  * Reason for test: Verify entry is written correctly and correct slot number is returned.
       
  7471  *
       
  7472  * @return - TVerdict code
       
  7473  */
       
  7474 	{
       
  7475 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  7476 	StartCleanup();
       
  7477 	return TestStepResult();
       
  7478 	}
       
  7479 
       
  7480 TPtrC CCTSYIntegrationTestPhoneBookStore0011MBDN::GetTestStepName()
       
  7481 /**
       
  7482  * @return The test step name.
       
  7483  */
       
  7484 	{
       
  7485 	return _L("CCTSYIntegrationTestPhoneBookStore0011MBDN");
       
  7486 	}
       
  7487 
       
  7488 
       
  7489 
       
  7490 CCTSYIntegrationTestPhoneBookStore0012ADN::CCTSYIntegrationTestPhoneBookStore0012ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  7491 : CCTSYIntegrationTestPhoneBookStore0012Base(aEtelSessionMgr)
       
  7492 /**
       
  7493  * Constructor.
       
  7494  */
       
  7495 {
       
  7496 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0012ADN::GetTestStepName());
       
  7497 }
       
  7498 
       
  7499 CCTSYIntegrationTestPhoneBookStore0012ADN::~CCTSYIntegrationTestPhoneBookStore0012ADN()
       
  7500 /**
       
  7501  * Destructor.
       
  7502  */
       
  7503 {
       
  7504 }
       
  7505 
       
  7506 TVerdict CCTSYIntegrationTestPhoneBookStore0012ADN::doTestStepL()
       
  7507 /**
       
  7508  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0012
       
  7509  * @SYMFssID BA/CTSY/PBSTR-ADN-0012
       
  7510  * @SYMTestCaseDesc Write an entry to phonebook supplying an invalid index. (ADN phone book)
       
  7511  * @SYMTestPriority High
       
  7512  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7513  * @SYMTestExpectedResults Pass - KErrArgument returned when writing to an invalid index.
       
  7514  * @SYMTestType CIT
       
  7515  * @SYMTestCaseDependencies live/automatic
       
  7516  *
       
  7517  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  7518  *
       
  7519  * @return - TVerdict code
       
  7520  */
       
  7521 	{
       
  7522 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  7523 	return TestStepResult();
       
  7524 	}
       
  7525 
       
  7526 TPtrC CCTSYIntegrationTestPhoneBookStore0012ADN::GetTestStepName()
       
  7527 /**
       
  7528  * @return The test step name.
       
  7529  */
       
  7530 	{
       
  7531 	return _L("CCTSYIntegrationTestPhoneBookStore0012ADN");
       
  7532 	}
       
  7533 
       
  7534 
       
  7535 
       
  7536 CCTSYIntegrationTestPhoneBookStore0012FDN::CCTSYIntegrationTestPhoneBookStore0012FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7537 : CCTSYIntegrationTestPhoneBookStore0012Base(aEtelSessionMgr)
       
  7538 /**
       
  7539  * Constructor.
       
  7540  */
       
  7541 {
       
  7542 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0012FDN::GetTestStepName());
       
  7543 }
       
  7544 
       
  7545 CCTSYIntegrationTestPhoneBookStore0012FDN::~CCTSYIntegrationTestPhoneBookStore0012FDN()
       
  7546 /**
       
  7547  * Destructor.
       
  7548  */
       
  7549 {
       
  7550 }
       
  7551 
       
  7552 TVerdict CCTSYIntegrationTestPhoneBookStore0012FDN::doTestStepL()
       
  7553 /**
       
  7554  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0012
       
  7555  * @SYMFssID BA/CTSY/PBSTR-FDN-0012
       
  7556  * @SYMTestCaseDesc Write an entry to phonebook supplying an invalid index. (FDN phone book)
       
  7557  * @SYMTestPriority High
       
  7558  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7559  * @SYMTestExpectedResults Pass - KErrArgument returned when writing to an invalid index.
       
  7560  * @SYMTestType CIT
       
  7561  * @SYMTestCaseDependencies live/automatic
       
  7562  *
       
  7563  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  7564  *
       
  7565  * @return - TVerdict code
       
  7566  */
       
  7567 	{
       
  7568 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  7569 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  7570 	DoTestProcedureL(KIccFdnPhoneBook, KETelIccFdnPhoneBook);
       
  7571 	return TestStepResult();
       
  7572 	}
       
  7573 
       
  7574 TPtrC CCTSYIntegrationTestPhoneBookStore0012FDN::GetTestStepName()
       
  7575 /**
       
  7576  * @return The test step name.
       
  7577  */
       
  7578 	{
       
  7579 	return _L("CCTSYIntegrationTestPhoneBookStore0012FDN");
       
  7580 	}
       
  7581 
       
  7582 
       
  7583 
       
  7584 CCTSYIntegrationTestPhoneBookStore0012SDN::CCTSYIntegrationTestPhoneBookStore0012SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7585 : CCTSYIntegrationTestPhoneBookStore0012Base(aEtelSessionMgr)
       
  7586 /**
       
  7587  * Constructor.
       
  7588  */
       
  7589 {
       
  7590 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0012SDN::GetTestStepName());
       
  7591 }
       
  7592 
       
  7593 CCTSYIntegrationTestPhoneBookStore0012SDN::~CCTSYIntegrationTestPhoneBookStore0012SDN()
       
  7594 /**
       
  7595  * Destructor.
       
  7596  */
       
  7597 {
       
  7598 }
       
  7599 
       
  7600 TVerdict CCTSYIntegrationTestPhoneBookStore0012SDN::doTestStepL()
       
  7601 /**
       
  7602  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0012
       
  7603  * @SYMFssID BA/CTSY/PBSTR-SDN-0012
       
  7604  * @SYMTestCaseDesc Write an entry to phonebook supplying an invalid index. (SDN phone book)
       
  7605  * @SYMTestPriority High
       
  7606  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7607  * @SYMTestExpectedResults Pass - KErrArgument returned when writing to an invalid index.
       
  7608  * @SYMTestType CIT
       
  7609  * @SYMTestCaseDependencies live/automatic
       
  7610  *
       
  7611  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  7612  *
       
  7613  * @return - TVerdict code
       
  7614  */
       
  7615 	{
       
  7616 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  7617 	StartCleanup();
       
  7618 	return TestStepResult();
       
  7619 	}
       
  7620 
       
  7621 TPtrC CCTSYIntegrationTestPhoneBookStore0012SDN::GetTestStepName()
       
  7622 /**
       
  7623  * @return The test step name.
       
  7624  */
       
  7625 	{
       
  7626 	return _L("CCTSYIntegrationTestPhoneBookStore0012SDN");
       
  7627 	}
       
  7628 
       
  7629 
       
  7630 
       
  7631 CCTSYIntegrationTestPhoneBookStore0012VMBX::CCTSYIntegrationTestPhoneBookStore0012VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  7632 : CCTSYIntegrationTestPhoneBookStore0012Base(aEtelSessionMgr)
       
  7633 /**
       
  7634  * Constructor.
       
  7635  */
       
  7636 {
       
  7637 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0012VMBX::GetTestStepName());
       
  7638 }
       
  7639 
       
  7640 CCTSYIntegrationTestPhoneBookStore0012VMBX::~CCTSYIntegrationTestPhoneBookStore0012VMBX()
       
  7641 /**
       
  7642  * Destructor.
       
  7643  */
       
  7644 {
       
  7645 }
       
  7646 
       
  7647 TVerdict CCTSYIntegrationTestPhoneBookStore0012VMBX::doTestStepL()
       
  7648 /**
       
  7649  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0012
       
  7650  * @SYMFssID BA/CTSY/PBSTR-VMBX-0012
       
  7651  * @SYMTestCaseDesc Write an entry to phonebook supplying an invalid index. (VMBX phone book)
       
  7652  * @SYMTestPriority High
       
  7653  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7654  * @SYMTestExpectedResults Pass - KErrArgument returned when writing to an invalid index.
       
  7655  * @SYMTestType CIT
       
  7656  * @SYMTestCaseDependencies live/automatic
       
  7657  *
       
  7658  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  7659  *
       
  7660  * @return - TVerdict code
       
  7661  */
       
  7662 	{
       
  7663 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  7664 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  7665 	return TestStepResult();
       
  7666 	}
       
  7667 
       
  7668 TPtrC CCTSYIntegrationTestPhoneBookStore0012VMBX::GetTestStepName()
       
  7669 /**
       
  7670  * @return The test step name.
       
  7671  */
       
  7672 	{
       
  7673 	return _L("CCTSYIntegrationTestPhoneBookStore0012VMBX");
       
  7674 	}
       
  7675 
       
  7676 
       
  7677 
       
  7678 CCTSYIntegrationTestPhoneBookStore0012MBDN::CCTSYIntegrationTestPhoneBookStore0012MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7679 : CCTSYIntegrationTestPhoneBookStore0012Base(aEtelSessionMgr)
       
  7680 /**
       
  7681  * Constructor.
       
  7682  */
       
  7683 {
       
  7684 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0012MBDN::GetTestStepName());
       
  7685 }
       
  7686 
       
  7687 CCTSYIntegrationTestPhoneBookStore0012MBDN::~CCTSYIntegrationTestPhoneBookStore0012MBDN()
       
  7688 /**
       
  7689  * Destructor.
       
  7690  */
       
  7691 {
       
  7692 }
       
  7693 
       
  7694 TVerdict CCTSYIntegrationTestPhoneBookStore0012MBDN::doTestStepL()
       
  7695 /**
       
  7696  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0012
       
  7697  * @SYMFssID BA/CTSY/PBSTR-MBDN-0012
       
  7698  * @SYMTestCaseDesc Write an entry to phonebook supplying an invalid index. (MBDN phone book)
       
  7699  * @SYMTestPriority High
       
  7700  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7701  * @SYMTestExpectedResults Pass - KErrArgument returned when writing to an invalid index.
       
  7702  * @SYMTestType CIT
       
  7703  * @SYMTestCaseDependencies live/automatic
       
  7704  *
       
  7705  * Reason for test: Verify error is returned on attempt to write to an invalid index and number of used entries in the phone book is unchanged.
       
  7706  *
       
  7707  * @return - TVerdict code
       
  7708  */
       
  7709 	{
       
  7710 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10009);
       
  7711 	DoTestProcedureL(KIccMbdnPhoneBook,KETelIccMbdnPhoneBook);
       
  7712 	return TestStepResult();
       
  7713 	}
       
  7714 
       
  7715 TPtrC CCTSYIntegrationTestPhoneBookStore0012MBDN::GetTestStepName()
       
  7716 /**
       
  7717  * @return The test step name.
       
  7718  */
       
  7719 	{
       
  7720 	return _L("CCTSYIntegrationTestPhoneBookStore0012MBDN");
       
  7721 	}
       
  7722 
       
  7723 
       
  7724 
       
  7725 CCTSYIntegrationTestPhoneBookStore0013ADN::CCTSYIntegrationTestPhoneBookStore0013ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  7726 : CCTSYIntegrationTestPhoneBookStore0013Base(aEtelSessionMgr)
       
  7727 /**
       
  7728  * Constructor.
       
  7729  */
       
  7730 {
       
  7731 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0013ADN::GetTestStepName());
       
  7732 }
       
  7733 
       
  7734 CCTSYIntegrationTestPhoneBookStore0013ADN::~CCTSYIntegrationTestPhoneBookStore0013ADN()
       
  7735 /**
       
  7736  * Destructor.
       
  7737  */
       
  7738 {
       
  7739 }
       
  7740 
       
  7741 TVerdict CCTSYIntegrationTestPhoneBookStore0013ADN::doTestStepL()
       
  7742 /**
       
  7743  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0013
       
  7744  * @SYMFssID BA/CTSY/PBSTR-ADN-0013
       
  7745  * @SYMTestCaseDesc Write an entry which makes the phonebook full. (ADN phone book)
       
  7746  * @SYMTestPriority High
       
  7747  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneBookStore::Read
       
  7748  * @SYMTestExpectedResults Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  7749  * @SYMTestType CIT
       
  7750  * @SYMTestCaseDependencies live/manual
       
  7751  *
       
  7752  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  7753  *
       
  7754  * @return - TVerdict code
       
  7755  */
       
  7756 	{
       
  7757 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10032);
       
  7758 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  7759 	return TestStepResult();
       
  7760 	}
       
  7761 
       
  7762 TPtrC CCTSYIntegrationTestPhoneBookStore0013ADN::GetTestStepName()
       
  7763 /**
       
  7764  * @return The test step name.
       
  7765  */
       
  7766 	{
       
  7767 	return _L("CCTSYIntegrationTestPhoneBookStore0013ADN");
       
  7768 	}
       
  7769 
       
  7770 
       
  7771 
       
  7772 CCTSYIntegrationTestPhoneBookStore0013FDN::CCTSYIntegrationTestPhoneBookStore0013FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7773 : CCTSYIntegrationTestPhoneBookStore0013Base(aEtelSessionMgr)
       
  7774 /**
       
  7775  * Constructor.
       
  7776  */
       
  7777 {
       
  7778 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0013FDN::GetTestStepName());
       
  7779 }
       
  7780 
       
  7781 CCTSYIntegrationTestPhoneBookStore0013FDN::~CCTSYIntegrationTestPhoneBookStore0013FDN()
       
  7782 /**
       
  7783  * Destructor.
       
  7784  */
       
  7785 {
       
  7786 }
       
  7787 
       
  7788 TVerdict CCTSYIntegrationTestPhoneBookStore0013FDN::doTestStepL()
       
  7789 /**
       
  7790  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0013
       
  7791  * @SYMFssID BA/CTSY/PBSTR-FDN-0013
       
  7792  * @SYMTestCaseDesc Write an entry which makes the phonebook full. (FDN phone book)
       
  7793  * @SYMTestPriority High
       
  7794  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneBookStore::Read
       
  7795  * @SYMTestExpectedResults Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  7796  * @SYMTestType CIT
       
  7797  * @SYMTestCaseDependencies live/manual
       
  7798  *
       
  7799  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  7800  *
       
  7801  * @return - TVerdict code
       
  7802  */
       
  7803 	{
       
  7804 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  7805 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  7806 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10032);
       
  7807 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  7808 	return TestStepResult();
       
  7809 	}
       
  7810 
       
  7811 TPtrC CCTSYIntegrationTestPhoneBookStore0013FDN::GetTestStepName()
       
  7812 /**
       
  7813  * @return The test step name.
       
  7814  */
       
  7815 	{
       
  7816 	return _L("CCTSYIntegrationTestPhoneBookStore0013FDN");
       
  7817 	}
       
  7818 
       
  7819 
       
  7820 
       
  7821 CCTSYIntegrationTestPhoneBookStore0013SDN::CCTSYIntegrationTestPhoneBookStore0013SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7822 : CCTSYIntegrationTestPhoneBookStore0013Base(aEtelSessionMgr)
       
  7823 /**
       
  7824  * Constructor.
       
  7825  */
       
  7826 {
       
  7827 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0013SDN::GetTestStepName());
       
  7828 }
       
  7829 
       
  7830 CCTSYIntegrationTestPhoneBookStore0013SDN::~CCTSYIntegrationTestPhoneBookStore0013SDN()
       
  7831 /**
       
  7832  * Destructor.
       
  7833  */
       
  7834 {
       
  7835 }
       
  7836 
       
  7837 TVerdict CCTSYIntegrationTestPhoneBookStore0013SDN::doTestStepL()
       
  7838 /**
       
  7839  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0013
       
  7840  * @SYMFssID BA/CTSY/PBSTR-SDN-0013
       
  7841  * @SYMTestCaseDesc Write an entry which makes the phonebook full. (SDN phone book)
       
  7842  * @SYMTestPriority High
       
  7843  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneBookStore::Read
       
  7844  * @SYMTestExpectedResults Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  7845  * @SYMTestType CIT
       
  7846  * @SYMTestCaseDependencies live/manual
       
  7847  *
       
  7848  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  7849  *
       
  7850  * @return - TVerdict code
       
  7851  */
       
  7852 	{
       
  7853 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  7854 	StartCleanup();
       
  7855 	return TestStepResult();
       
  7856 	}
       
  7857 
       
  7858 TPtrC CCTSYIntegrationTestPhoneBookStore0013SDN::GetTestStepName()
       
  7859 /**
       
  7860  * @return The test step name.
       
  7861  */
       
  7862 	{
       
  7863 	return _L("CCTSYIntegrationTestPhoneBookStore0013SDN");
       
  7864 	}
       
  7865 
       
  7866 
       
  7867 
       
  7868 CCTSYIntegrationTestPhoneBookStore0013VMBX::CCTSYIntegrationTestPhoneBookStore0013VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  7869 : CCTSYIntegrationTestPhoneBookStore0013Base(aEtelSessionMgr)
       
  7870 /**
       
  7871  * Constructor.
       
  7872  */
       
  7873 {
       
  7874 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0013VMBX::GetTestStepName());
       
  7875 }
       
  7876 
       
  7877 CCTSYIntegrationTestPhoneBookStore0013VMBX::~CCTSYIntegrationTestPhoneBookStore0013VMBX()
       
  7878 /**
       
  7879  * Destructor.
       
  7880  */
       
  7881 {
       
  7882 }
       
  7883 
       
  7884 TVerdict CCTSYIntegrationTestPhoneBookStore0013VMBX::doTestStepL()
       
  7885 /**
       
  7886  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0013
       
  7887  * @SYMFssID BA/CTSY/PBSTR-VMBX-0013
       
  7888  * @SYMTestCaseDesc Write an entry which makes the phonebook full. (VMBX phone book)
       
  7889  * @SYMTestPriority High
       
  7890  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneBookStore::Read
       
  7891  * @SYMTestExpectedResults Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  7892  * @SYMTestType CIT
       
  7893  * @SYMTestCaseDependencies live/manual
       
  7894  *
       
  7895  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  7896  *
       
  7897  * @return - TVerdict code
       
  7898  */
       
  7899 	{
       
  7900 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  7901 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  7902 	return TestStepResult();
       
  7903 	}
       
  7904 
       
  7905 TPtrC CCTSYIntegrationTestPhoneBookStore0013VMBX::GetTestStepName()
       
  7906 /**
       
  7907  * @return The test step name.
       
  7908  */
       
  7909 	{
       
  7910 	return _L("CCTSYIntegrationTestPhoneBookStore0013VMBX");
       
  7911 	}
       
  7912 
       
  7913 
       
  7914 
       
  7915 CCTSYIntegrationTestPhoneBookStore0013MBDN::CCTSYIntegrationTestPhoneBookStore0013MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  7916 : CCTSYIntegrationTestPhoneBookStore0013Base(aEtelSessionMgr)
       
  7917 /**
       
  7918  * Constructor.
       
  7919  */
       
  7920 {
       
  7921 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0013MBDN::GetTestStepName());
       
  7922 }
       
  7923 
       
  7924 CCTSYIntegrationTestPhoneBookStore0013MBDN::~CCTSYIntegrationTestPhoneBookStore0013MBDN()
       
  7925 /**
       
  7926  * Destructor.
       
  7927  */
       
  7928 {
       
  7929 }
       
  7930 
       
  7931 TVerdict CCTSYIntegrationTestPhoneBookStore0013MBDN::doTestStepL()
       
  7932 /**
       
  7933  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0013
       
  7934  * @SYMFssID BA/CTSY/PBSTR-MBDN-0013
       
  7935  * @SYMTestCaseDesc Write an entry which makes the phonebook full. (MBDN phone book)
       
  7936  * @SYMTestPriority High
       
  7937  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneBookStore::Read
       
  7938  * @SYMTestExpectedResults Pass - Entry written. RMobilePhoneStore::KStoreFull event occurs.
       
  7939  * @SYMTestType CIT
       
  7940  * @SYMTestCaseDependencies live/manual
       
  7941  *
       
  7942  * Reason for test: Verify entry written and store event completes indicating store is now full.
       
  7943  *
       
  7944  * @return - TVerdict code
       
  7945  */
       
  7946 	{
       
  7947 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  7948 	StartCleanup();
       
  7949 	return TestStepResult();
       
  7950 	}
       
  7951 
       
  7952 TPtrC CCTSYIntegrationTestPhoneBookStore0013MBDN::GetTestStepName()
       
  7953 /**
       
  7954  * @return The test step name.
       
  7955  */
       
  7956 	{
       
  7957 	return _L("CCTSYIntegrationTestPhoneBookStore0013MBDN");
       
  7958 	}
       
  7959 
       
  7960 
       
  7961 
       
  7962 CCTSYIntegrationTestPhoneBookStore0014ADN::CCTSYIntegrationTestPhoneBookStore0014ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  7963 : CCTSYIntegrationTestPhoneBookStore0014Base(aEtelSessionMgr)
       
  7964 /**
       
  7965  * Constructor.
       
  7966  */
       
  7967 {
       
  7968 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0014ADN::GetTestStepName());
       
  7969 }
       
  7970 
       
  7971 CCTSYIntegrationTestPhoneBookStore0014ADN::~CCTSYIntegrationTestPhoneBookStore0014ADN()
       
  7972 /**
       
  7973  * Destructor.
       
  7974  */
       
  7975 {
       
  7976 }
       
  7977 
       
  7978 TVerdict CCTSYIntegrationTestPhoneBookStore0014ADN::doTestStepL()
       
  7979 /**
       
  7980  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0014
       
  7981  * @SYMFssID BA/CTSY/PBSTR-ADN-0014
       
  7982  * @SYMTestCaseDesc Write an entry to phonebook when SIM is full. (ADN phone book)
       
  7983  * @SYMTestPriority High
       
  7984  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  7985  * @SYMTestExpectedResults Pass - Error is returned on attempt to write.
       
  7986  * @SYMTestType CIT
       
  7987  * @SYMTestCaseDependencies live/manual
       
  7988  *
       
  7989  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  7990  *
       
  7991  * @return - TVerdict code
       
  7992  */
       
  7993 	{
       
  7994 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  7995 	return TestStepResult();
       
  7996 	}
       
  7997 
       
  7998 TPtrC CCTSYIntegrationTestPhoneBookStore0014ADN::GetTestStepName()
       
  7999 /**
       
  8000  * @return The test step name.
       
  8001  */
       
  8002 	{
       
  8003 	return _L("CCTSYIntegrationTestPhoneBookStore0014ADN");
       
  8004 	}
       
  8005 
       
  8006 
       
  8007 
       
  8008 CCTSYIntegrationTestPhoneBookStore0014FDN::CCTSYIntegrationTestPhoneBookStore0014FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8009 : CCTSYIntegrationTestPhoneBookStore0014Base(aEtelSessionMgr)
       
  8010 /**
       
  8011  * Constructor.
       
  8012  */
       
  8013 {
       
  8014 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0014FDN::GetTestStepName());
       
  8015 }
       
  8016 
       
  8017 CCTSYIntegrationTestPhoneBookStore0014FDN::~CCTSYIntegrationTestPhoneBookStore0014FDN()
       
  8018 /**
       
  8019  * Destructor.
       
  8020  */
       
  8021 {
       
  8022 }
       
  8023 
       
  8024 TVerdict CCTSYIntegrationTestPhoneBookStore0014FDN::doTestStepL()
       
  8025 /**
       
  8026  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0014
       
  8027  * @SYMFssID BA/CTSY/PBSTR-FDN-0014
       
  8028  * @SYMTestCaseDesc Write an entry to phonebook when SIM is full. (FDN phone book)
       
  8029  * @SYMTestPriority High
       
  8030  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8031  * @SYMTestExpectedResults Pass - Error is returned on attempt to write.
       
  8032  * @SYMTestType CIT
       
  8033  * @SYMTestCaseDependencies live/manual
       
  8034  *
       
  8035  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  8036  *
       
  8037  * @return - TVerdict code
       
  8038  */
       
  8039 	{	
       
  8040 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  8041 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  8042 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  8043 	return TestStepResult();
       
  8044 	}
       
  8045 
       
  8046 TPtrC CCTSYIntegrationTestPhoneBookStore0014FDN::GetTestStepName()
       
  8047 /**
       
  8048  * @return The test step name.
       
  8049  */
       
  8050 	{
       
  8051 	return _L("CCTSYIntegrationTestPhoneBookStore0014FDN");
       
  8052 	}
       
  8053 
       
  8054 
       
  8055 
       
  8056 CCTSYIntegrationTestPhoneBookStore0014SDN::CCTSYIntegrationTestPhoneBookStore0014SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8057 : CCTSYIntegrationTestPhoneBookStore0014Base(aEtelSessionMgr)
       
  8058 /**
       
  8059  * Constructor.
       
  8060  */
       
  8061 {
       
  8062 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0014SDN::GetTestStepName());
       
  8063 }
       
  8064 
       
  8065 CCTSYIntegrationTestPhoneBookStore0014SDN::~CCTSYIntegrationTestPhoneBookStore0014SDN()
       
  8066 /**
       
  8067  * Destructor.
       
  8068  */
       
  8069 {
       
  8070 }
       
  8071 
       
  8072 TVerdict CCTSYIntegrationTestPhoneBookStore0014SDN::doTestStepL()
       
  8073 /**
       
  8074  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0014
       
  8075  * @SYMFssID BA/CTSY/PBSTR-SDN-0014
       
  8076  * @SYMTestCaseDesc Write an entry to phonebook when SIM is full. (SDN phone book)
       
  8077  * @SYMTestPriority High
       
  8078  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8079  * @SYMTestExpectedResults Pass - Error is returned on attempt to write.
       
  8080  * @SYMTestType CIT
       
  8081  * @SYMTestCaseDependencies live/manual
       
  8082  *
       
  8083  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  8084  *
       
  8085  * @return - TVerdict code
       
  8086  */
       
  8087 	{
       
  8088 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  8089 	StartCleanup();
       
  8090 	return TestStepResult();
       
  8091 	}
       
  8092 
       
  8093 TPtrC CCTSYIntegrationTestPhoneBookStore0014SDN::GetTestStepName()
       
  8094 /**
       
  8095  * @return The test step name.
       
  8096  */
       
  8097 	{
       
  8098 	return _L("CCTSYIntegrationTestPhoneBookStore0014SDN");
       
  8099 	}
       
  8100 
       
  8101 
       
  8102 
       
  8103 CCTSYIntegrationTestPhoneBookStore0014VMBX::CCTSYIntegrationTestPhoneBookStore0014VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  8104 : CCTSYIntegrationTestPhoneBookStore0014Base(aEtelSessionMgr)
       
  8105 /**
       
  8106  * Constructor.
       
  8107  */
       
  8108 {
       
  8109 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0014VMBX::GetTestStepName());
       
  8110 }
       
  8111 
       
  8112 CCTSYIntegrationTestPhoneBookStore0014VMBX::~CCTSYIntegrationTestPhoneBookStore0014VMBX()
       
  8113 /**
       
  8114  * Destructor.
       
  8115  */
       
  8116 {
       
  8117 }
       
  8118 
       
  8119 TVerdict CCTSYIntegrationTestPhoneBookStore0014VMBX::doTestStepL()
       
  8120 /**
       
  8121  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0014
       
  8122  * @SYMFssID BA/CTSY/PBSTR-VMBX-0014
       
  8123  * @SYMTestCaseDesc Write an entry to phonebook when SIM is full. (VMBX phone book)
       
  8124  * @SYMTestPriority High
       
  8125  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8126  * @SYMTestExpectedResults Pass - Error is returned on attempt to write.
       
  8127  * @SYMTestType CIT
       
  8128  * @SYMTestCaseDependencies live/manual
       
  8129  *
       
  8130  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  8131  *
       
  8132  * @return - TVerdict code
       
  8133  */
       
  8134 	{
       
  8135 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  8136 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  8137 	return TestStepResult();
       
  8138 	}
       
  8139 
       
  8140 TPtrC CCTSYIntegrationTestPhoneBookStore0014VMBX::GetTestStepName()
       
  8141 /**
       
  8142  * @return The test step name.
       
  8143  */
       
  8144 	{
       
  8145 	return _L("CCTSYIntegrationTestPhoneBookStore0014VMBX");
       
  8146 	}
       
  8147 
       
  8148 
       
  8149 
       
  8150 CCTSYIntegrationTestPhoneBookStore0014MBDN::CCTSYIntegrationTestPhoneBookStore0014MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8151 : CCTSYIntegrationTestPhoneBookStore0014Base(aEtelSessionMgr)
       
  8152 /**
       
  8153  * Constructor.
       
  8154  */
       
  8155 {
       
  8156 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0014MBDN::GetTestStepName());
       
  8157 }
       
  8158 
       
  8159 CCTSYIntegrationTestPhoneBookStore0014MBDN::~CCTSYIntegrationTestPhoneBookStore0014MBDN()
       
  8160 /**
       
  8161  * Destructor.
       
  8162  */
       
  8163 {
       
  8164 }
       
  8165 
       
  8166 TVerdict CCTSYIntegrationTestPhoneBookStore0014MBDN::doTestStepL()
       
  8167 /**
       
  8168  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0014
       
  8169  * @SYMFssID BA/CTSY/PBSTR-MBDN-0014
       
  8170  * @SYMTestCaseDesc Write an entry to phonebook when SIM is full. (MBDN phone book)
       
  8171  * @SYMTestPriority High
       
  8172  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8173  * @SYMTestExpectedResults Pass - Error is returned on attempt to write.
       
  8174  * @SYMTestType CIT
       
  8175  * @SYMTestCaseDependencies live/manual
       
  8176  *
       
  8177  * Reason for test: Verify error is returned and number of used entries is unchanged.
       
  8178  *
       
  8179  * @return - TVerdict code
       
  8180  */
       
  8181 	{
       
  8182 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  8183 	StartCleanup();
       
  8184 	return TestStepResult();
       
  8185 	}
       
  8186 
       
  8187 TPtrC CCTSYIntegrationTestPhoneBookStore0014MBDN::GetTestStepName()
       
  8188 /**
       
  8189  * @return The test step name.
       
  8190  */
       
  8191 	{
       
  8192 	return _L("CCTSYIntegrationTestPhoneBookStore0014MBDN");
       
  8193 	}
       
  8194 
       
  8195 
       
  8196 
       
  8197 CCTSYIntegrationTestPhoneBookStore0015ADN::CCTSYIntegrationTestPhoneBookStore0015ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  8198 : CCTSYIntegrationTestPhoneBookStore0015Base(aEtelSessionMgr)
       
  8199 /**
       
  8200  * Constructor.
       
  8201  */
       
  8202 {
       
  8203 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0015ADN::GetTestStepName());
       
  8204 }
       
  8205 
       
  8206 CCTSYIntegrationTestPhoneBookStore0015ADN::~CCTSYIntegrationTestPhoneBookStore0015ADN()
       
  8207 /**
       
  8208  * Destructor.
       
  8209  */
       
  8210 {
       
  8211 }
       
  8212 
       
  8213 TVerdict CCTSYIntegrationTestPhoneBookStore0015ADN::doTestStepL()
       
  8214 /**
       
  8215  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0015
       
  8216  * @SYMFssID BA/CTSY/PBSTR-ADN-0015
       
  8217  * @SYMTestCaseDesc Edit an entry in the SIM phone book. (ADN phone book)
       
  8218  * @SYMTestPriority High
       
  8219  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8220  * @SYMTestExpectedResults Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  8221  * @SYMTestType CIT
       
  8222  * @SYMTestCaseDependencies live/automatic
       
  8223  *
       
  8224  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  8225  *
       
  8226  * @return - TVerdict code
       
  8227  */
       
  8228 	{
       
  8229 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  8230 	return TestStepResult();
       
  8231 	}
       
  8232 
       
  8233 TPtrC CCTSYIntegrationTestPhoneBookStore0015ADN::GetTestStepName()
       
  8234 /**
       
  8235  * @return The test step name.
       
  8236  */
       
  8237 	{
       
  8238 	return _L("CCTSYIntegrationTestPhoneBookStore0015ADN");
       
  8239 	}
       
  8240 
       
  8241 
       
  8242 
       
  8243 CCTSYIntegrationTestPhoneBookStore0015FDN::CCTSYIntegrationTestPhoneBookStore0015FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8244 : CCTSYIntegrationTestPhoneBookStore0015Base(aEtelSessionMgr)
       
  8245 /**
       
  8246  * Constructor.
       
  8247  */
       
  8248 {
       
  8249 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0015FDN::GetTestStepName());
       
  8250 }
       
  8251 
       
  8252 CCTSYIntegrationTestPhoneBookStore0015FDN::~CCTSYIntegrationTestPhoneBookStore0015FDN()
       
  8253 /**
       
  8254  * Destructor.
       
  8255  */
       
  8256 {
       
  8257 }
       
  8258 
       
  8259 TVerdict CCTSYIntegrationTestPhoneBookStore0015FDN::doTestStepL()
       
  8260 /**
       
  8261  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0015
       
  8262  * @SYMFssID BA/CTSY/PBSTR-FDN-0015
       
  8263  * @SYMTestCaseDesc Edit an entry in the SIM phone book. (FDN phone book)
       
  8264  * @SYMTestPriority High
       
  8265  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8266  * @SYMTestExpectedResults Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  8267  * @SYMTestType CIT
       
  8268  * @SYMTestCaseDependencies live/automatic
       
  8269  *
       
  8270  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  8271  *
       
  8272  * @return - TVerdict code
       
  8273  */
       
  8274 	{
       
  8275 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  8276 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  8277 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  8278 	return TestStepResult();
       
  8279 	}
       
  8280 
       
  8281 TPtrC CCTSYIntegrationTestPhoneBookStore0015FDN::GetTestStepName()
       
  8282 /**
       
  8283  * @return The test step name.
       
  8284  */
       
  8285 	{
       
  8286 	return _L("CCTSYIntegrationTestPhoneBookStore0015FDN");
       
  8287 	}
       
  8288 
       
  8289 
       
  8290 
       
  8291 CCTSYIntegrationTestPhoneBookStore0015SDN::CCTSYIntegrationTestPhoneBookStore0015SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8292 : CCTSYIntegrationTestPhoneBookStore0015Base(aEtelSessionMgr)
       
  8293 /**
       
  8294  * Constructor.
       
  8295  */
       
  8296 {
       
  8297 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0015SDN::GetTestStepName());
       
  8298 }
       
  8299 
       
  8300 CCTSYIntegrationTestPhoneBookStore0015SDN::~CCTSYIntegrationTestPhoneBookStore0015SDN()
       
  8301 /**
       
  8302  * Destructor.
       
  8303  */
       
  8304 {
       
  8305 }
       
  8306 
       
  8307 TVerdict CCTSYIntegrationTestPhoneBookStore0015SDN::doTestStepL()
       
  8308 /**
       
  8309  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0015
       
  8310  * @SYMFssID BA/CTSY/PBSTR-SDN-0015
       
  8311  * @SYMTestCaseDesc Edit an entry in the SIM phone book. (SDN phone book)
       
  8312  * @SYMTestPriority High
       
  8313  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8314  * @SYMTestExpectedResults Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  8315  * @SYMTestType CIT
       
  8316  * @SYMTestCaseDependencies live/automatic
       
  8317  *
       
  8318  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  8319  *
       
  8320  * @return - TVerdict code
       
  8321  */
       
  8322 	{
       
  8323 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  8324 	StartCleanup();
       
  8325 	return TestStepResult();
       
  8326 	}
       
  8327 
       
  8328 TPtrC CCTSYIntegrationTestPhoneBookStore0015SDN::GetTestStepName()
       
  8329 /**
       
  8330  * @return The test step name.
       
  8331  */
       
  8332 	{
       
  8333 	return _L("CCTSYIntegrationTestPhoneBookStore0015SDN");
       
  8334 	}
       
  8335 
       
  8336 
       
  8337 
       
  8338 CCTSYIntegrationTestPhoneBookStore0015VMBX::CCTSYIntegrationTestPhoneBookStore0015VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  8339 : CCTSYIntegrationTestPhoneBookStore0015Base(aEtelSessionMgr)
       
  8340 /**
       
  8341  * Constructor.
       
  8342  */
       
  8343 {
       
  8344 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0015VMBX::GetTestStepName());
       
  8345 }
       
  8346 
       
  8347 CCTSYIntegrationTestPhoneBookStore0015VMBX::~CCTSYIntegrationTestPhoneBookStore0015VMBX()
       
  8348 /**
       
  8349  * Destructor.
       
  8350  */
       
  8351 {
       
  8352 }
       
  8353 
       
  8354 TVerdict CCTSYIntegrationTestPhoneBookStore0015VMBX::doTestStepL()
       
  8355 /**
       
  8356  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0015
       
  8357  * @SYMFssID BA/CTSY/PBSTR-VMBX-0015
       
  8358  * @SYMTestCaseDesc Edit an entry in the SIM phone book. (VMBX phone book)
       
  8359  * @SYMTestPriority High
       
  8360  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8361  * @SYMTestExpectedResults Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  8362  * @SYMTestType CIT
       
  8363  * @SYMTestCaseDependencies live/automatic
       
  8364  *
       
  8365  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  8366  *
       
  8367  * @return - TVerdict code
       
  8368  */
       
  8369 	{
       
  8370 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  8371 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  8372 	return TestStepResult();
       
  8373 	}
       
  8374 
       
  8375 TPtrC CCTSYIntegrationTestPhoneBookStore0015VMBX::GetTestStepName()
       
  8376 /**
       
  8377  * @return The test step name.
       
  8378  */
       
  8379 	{
       
  8380 	return _L("CCTSYIntegrationTestPhoneBookStore0015VMBX");
       
  8381 	}
       
  8382 
       
  8383 
       
  8384 
       
  8385 CCTSYIntegrationTestPhoneBookStore0015MBDN::CCTSYIntegrationTestPhoneBookStore0015MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8386 : CCTSYIntegrationTestPhoneBookStore0015Base(aEtelSessionMgr)
       
  8387 /**
       
  8388  * Constructor.
       
  8389  */
       
  8390 {
       
  8391 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0015MBDN::GetTestStepName());
       
  8392 }
       
  8393 
       
  8394 CCTSYIntegrationTestPhoneBookStore0015MBDN::~CCTSYIntegrationTestPhoneBookStore0015MBDN()
       
  8395 /**
       
  8396  * Destructor.
       
  8397  */
       
  8398 {
       
  8399 }
       
  8400 
       
  8401 TVerdict CCTSYIntegrationTestPhoneBookStore0015MBDN::doTestStepL()
       
  8402 /**
       
  8403  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0015
       
  8404  * @SYMFssID BA/CTSY/PBSTR-MBDN-0015
       
  8405  * @SYMTestCaseDesc Edit an entry in the SIM phone book. (MBDN phone book)
       
  8406  * @SYMTestPriority High
       
  8407  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneBookStore::Read, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8408  * @SYMTestExpectedResults Pass - Phone book entry modified and KStoreEntryChanged event completed.
       
  8409  * @SYMTestType CIT
       
  8410  * @SYMTestCaseDependencies live/automatic
       
  8411  *
       
  8412  * Reason for test: Verify new entry information is written to the phone book and correct store event completes.
       
  8413  *
       
  8414  * @return - TVerdict code
       
  8415  */
       
  8416 	{
       
  8417 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  8418 	StartCleanup();
       
  8419 	return TestStepResult();
       
  8420 	}
       
  8421 
       
  8422 TPtrC CCTSYIntegrationTestPhoneBookStore0015MBDN::GetTestStepName()
       
  8423 /**
       
  8424  * @return The test step name.
       
  8425  */
       
  8426 	{
       
  8427 	return _L("CCTSYIntegrationTestPhoneBookStore0015MBDN");
       
  8428 	}
       
  8429 
       
  8430 
       
  8431 
       
  8432 CCTSYIntegrationTestPhoneBookStore0016ADN::CCTSYIntegrationTestPhoneBookStore0016ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  8433 : CCTSYIntegrationTestPhoneBookStore0016Base(aEtelSessionMgr)
       
  8434 /**
       
  8435  * Constructor.
       
  8436  */
       
  8437 {
       
  8438 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0016ADN::GetTestStepName());
       
  8439 }
       
  8440 
       
  8441 CCTSYIntegrationTestPhoneBookStore0016ADN::~CCTSYIntegrationTestPhoneBookStore0016ADN()
       
  8442 /**
       
  8443  * Destructor.
       
  8444  */
       
  8445 {
       
  8446 }
       
  8447 
       
  8448 TVerdict CCTSYIntegrationTestPhoneBookStore0016ADN::doTestStepL()
       
  8449 /**
       
  8450  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0016
       
  8451  * @SYMFssID BA/CTSY/PBSTR-ADN-0016
       
  8452  * @SYMTestCaseDesc Delete an entry from the SIM phone book. (ADN phone book)
       
  8453  * @SYMTestPriority High
       
  8454  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  8455  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8456  * @SYMTestType CIT
       
  8457  * @SYMTestCaseDependencies live/automatic
       
  8458  *
       
  8459  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  8460  *
       
  8461  * @return - TVerdict code
       
  8462  */
       
  8463 	{
       
  8464 	// test causing the board to reboot
       
  8465 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10015);
       
  8466 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10016);
       
  8467 	User::Leave(KErrGeneral); // Test leaving to prevent crashing the hardware. Remove this line when defect is fixed.	
       
  8468 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  8469 	return TestStepResult();
       
  8470 	}
       
  8471 
       
  8472 TPtrC CCTSYIntegrationTestPhoneBookStore0016ADN::GetTestStepName()
       
  8473 /**
       
  8474  * @return The test step name.
       
  8475  */
       
  8476 	{
       
  8477 	return _L("CCTSYIntegrationTestPhoneBookStore0016ADN");
       
  8478 	}
       
  8479 
       
  8480 
       
  8481 
       
  8482 CCTSYIntegrationTestPhoneBookStore0016FDN::CCTSYIntegrationTestPhoneBookStore0016FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8483 : CCTSYIntegrationTestPhoneBookStore0016Base(aEtelSessionMgr)
       
  8484 /**
       
  8485  * Constructor.
       
  8486  */
       
  8487 {
       
  8488 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0016FDN::GetTestStepName());
       
  8489 }
       
  8490 
       
  8491 CCTSYIntegrationTestPhoneBookStore0016FDN::~CCTSYIntegrationTestPhoneBookStore0016FDN()
       
  8492 /**
       
  8493  * Destructor.
       
  8494  */
       
  8495 {
       
  8496 }
       
  8497 
       
  8498 TVerdict CCTSYIntegrationTestPhoneBookStore0016FDN::doTestStepL()
       
  8499 /**
       
  8500  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0016
       
  8501  * @SYMFssID BA/CTSY/PBSTR-FDN-0016
       
  8502  * @SYMTestCaseDesc Delete an entry from the SIM phone book. (FDN phone book)
       
  8503  * @SYMTestPriority High
       
  8504  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  8505  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8506  * @SYMTestType CIT
       
  8507  * @SYMTestCaseDependencies live/automatic
       
  8508  *
       
  8509  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  8510  *
       
  8511  * @return - TVerdict code
       
  8512  */
       
  8513 	{
       
  8514 	// test causing the board to reboot
       
  8515 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10015);
       
  8516 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10016);
       
  8517 	User::Leave(KErrGeneral); // Test leaving to prevent crashing the hardware. Remove this line when defect is fixed.	
       
  8518 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  8519 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  8520 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  8521 	return TestStepResult();
       
  8522 	}
       
  8523 
       
  8524 TPtrC CCTSYIntegrationTestPhoneBookStore0016FDN::GetTestStepName()
       
  8525 /**
       
  8526  * @return The test step name.
       
  8527  */
       
  8528 	{
       
  8529 	return _L("CCTSYIntegrationTestPhoneBookStore0016FDN");
       
  8530 	}
       
  8531 
       
  8532 
       
  8533 
       
  8534 CCTSYIntegrationTestPhoneBookStore0016SDN::CCTSYIntegrationTestPhoneBookStore0016SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8535 : CCTSYIntegrationTestPhoneBookStore0016Base(aEtelSessionMgr)
       
  8536 /**
       
  8537  * Constructor.
       
  8538  */
       
  8539 {
       
  8540 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0016SDN::GetTestStepName());
       
  8541 }
       
  8542 
       
  8543 CCTSYIntegrationTestPhoneBookStore0016SDN::~CCTSYIntegrationTestPhoneBookStore0016SDN()
       
  8544 /**
       
  8545  * Destructor.
       
  8546  */
       
  8547 {
       
  8548 }
       
  8549 
       
  8550 TVerdict CCTSYIntegrationTestPhoneBookStore0016SDN::doTestStepL()
       
  8551 /**
       
  8552  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0016
       
  8553  * @SYMFssID BA/CTSY/PBSTR-SDN-0016
       
  8554  * @SYMTestCaseDesc Delete an entry from the SIM phone book. (SDN phone book)
       
  8555  * @SYMTestPriority High
       
  8556  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  8557  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8558  * @SYMTestType CIT
       
  8559  * @SYMTestCaseDependencies live/automatic
       
  8560  *
       
  8561  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  8562  *
       
  8563  * @return - TVerdict code
       
  8564  */
       
  8565 	{
       
  8566 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  8567 	StartCleanup();
       
  8568 	return TestStepResult();
       
  8569 	}
       
  8570 
       
  8571 TPtrC CCTSYIntegrationTestPhoneBookStore0016SDN::GetTestStepName()
       
  8572 /**
       
  8573  * @return The test step name.
       
  8574  */
       
  8575 	{
       
  8576 	return _L("CCTSYIntegrationTestPhoneBookStore0016SDN");
       
  8577 	}
       
  8578 
       
  8579 
       
  8580 
       
  8581 CCTSYIntegrationTestPhoneBookStore0016VMBX::CCTSYIntegrationTestPhoneBookStore0016VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  8582 : CCTSYIntegrationTestPhoneBookStore0016Base(aEtelSessionMgr)
       
  8583 /**
       
  8584  * Constructor.
       
  8585  */
       
  8586 {
       
  8587 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0016VMBX::GetTestStepName());
       
  8588 }
       
  8589 
       
  8590 CCTSYIntegrationTestPhoneBookStore0016VMBX::~CCTSYIntegrationTestPhoneBookStore0016VMBX()
       
  8591 /**
       
  8592  * Destructor.
       
  8593  */
       
  8594 {
       
  8595 }
       
  8596 
       
  8597 TVerdict CCTSYIntegrationTestPhoneBookStore0016VMBX::doTestStepL()
       
  8598 /**
       
  8599  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0016
       
  8600  * @SYMFssID BA/CTSY/PBSTR-VMBX-0016
       
  8601  * @SYMTestCaseDesc Delete an entry from the SIM phone book. (VMBX phone book)
       
  8602  * @SYMTestPriority High
       
  8603  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  8604  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8605  * @SYMTestType CIT
       
  8606  * @SYMTestCaseDependencies live/automatic
       
  8607  *
       
  8608  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  8609  *
       
  8610  * @return - TVerdict code
       
  8611  */
       
  8612 	{
       
  8613 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  8614 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  8615 	return TestStepResult();
       
  8616 	}
       
  8617 
       
  8618 TPtrC CCTSYIntegrationTestPhoneBookStore0016VMBX::GetTestStepName()
       
  8619 /**
       
  8620  * @return The test step name.
       
  8621  */
       
  8622 	{
       
  8623 	return _L("CCTSYIntegrationTestPhoneBookStore0016VMBX");
       
  8624 	}
       
  8625 
       
  8626 
       
  8627 
       
  8628 CCTSYIntegrationTestPhoneBookStore0016MBDN::CCTSYIntegrationTestPhoneBookStore0016MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8629 : CCTSYIntegrationTestPhoneBookStore0016Base(aEtelSessionMgr)
       
  8630 /**
       
  8631  * Constructor.
       
  8632  */
       
  8633 {
       
  8634 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0016MBDN::GetTestStepName());
       
  8635 }
       
  8636 
       
  8637 CCTSYIntegrationTestPhoneBookStore0016MBDN::~CCTSYIntegrationTestPhoneBookStore0016MBDN()
       
  8638 /**
       
  8639  * Destructor.
       
  8640  */
       
  8641 {
       
  8642 }
       
  8643 
       
  8644 TVerdict CCTSYIntegrationTestPhoneBookStore0016MBDN::doTestStepL()
       
  8645 /**
       
  8646  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0016
       
  8647  * @SYMFssID BA/CTSY/PBSTR-MBDN-0016
       
  8648  * @SYMTestCaseDesc Delete an entry from the SIM phone book. (MBDN phone book)
       
  8649  * @SYMTestPriority High
       
  8650  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  8651  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8652  * @SYMTestType CIT
       
  8653  * @SYMTestCaseDependencies live/automatic
       
  8654  *
       
  8655  * Reason for test: Verify deletion is successful and deleted entry cannot be read.
       
  8656  *
       
  8657  * @return - TVerdict code
       
  8658  */
       
  8659 	{
       
  8660 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  8661 	StartCleanup();
       
  8662 	return TestStepResult();
       
  8663 	}
       
  8664 
       
  8665 TPtrC CCTSYIntegrationTestPhoneBookStore0016MBDN::GetTestStepName()
       
  8666 /**
       
  8667  * @return The test step name.
       
  8668  */
       
  8669 	{
       
  8670 	return _L("CCTSYIntegrationTestPhoneBookStore0016MBDN");
       
  8671 	}
       
  8672 
       
  8673 
       
  8674 
       
  8675 CCTSYIntegrationTestPhoneBookStore0017ADN::CCTSYIntegrationTestPhoneBookStore0017ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  8676 : CCTSYIntegrationTestPhoneBookStore0017Base(aEtelSessionMgr)
       
  8677 /**
       
  8678  * Constructor.
       
  8679  */
       
  8680 {
       
  8681 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0017ADN::GetTestStepName());
       
  8682 }
       
  8683 
       
  8684 CCTSYIntegrationTestPhoneBookStore0017ADN::~CCTSYIntegrationTestPhoneBookStore0017ADN()
       
  8685 /**
       
  8686  * Destructor.
       
  8687  */
       
  8688 {
       
  8689 }
       
  8690 
       
  8691 TVerdict CCTSYIntegrationTestPhoneBookStore0017ADN::doTestStepL()
       
  8692 /**
       
  8693  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0017
       
  8694  * @SYMFssID BA/CTSY/PBSTR-ADN-0017
       
  8695  * @SYMTestCaseDesc Delete an entry from the SIM phone book supplying an invalid index. (ADN phone book)
       
  8696  * @SYMTestPriority High
       
  8697  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8698  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  8699  * @SYMTestType CIT
       
  8700  * @SYMTestCaseDependencies live/automatic
       
  8701  *
       
  8702  * Reason for test: Verify KErrArgument returned.
       
  8703  *
       
  8704  * @return - TVerdict code
       
  8705  */
       
  8706 	{
       
  8707 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  8708 	return TestStepResult();
       
  8709 	}
       
  8710 
       
  8711 TPtrC CCTSYIntegrationTestPhoneBookStore0017ADN::GetTestStepName()
       
  8712 /**
       
  8713  * @return The test step name.
       
  8714  */
       
  8715 	{
       
  8716 	return _L("CCTSYIntegrationTestPhoneBookStore0017ADN");
       
  8717 	}
       
  8718 
       
  8719 
       
  8720 
       
  8721 CCTSYIntegrationTestPhoneBookStore0017FDN::CCTSYIntegrationTestPhoneBookStore0017FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8722 : CCTSYIntegrationTestPhoneBookStore0017Base(aEtelSessionMgr)
       
  8723 /**
       
  8724  * Constructor.
       
  8725  */
       
  8726 {
       
  8727 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0017FDN::GetTestStepName());
       
  8728 }
       
  8729 
       
  8730 CCTSYIntegrationTestPhoneBookStore0017FDN::~CCTSYIntegrationTestPhoneBookStore0017FDN()
       
  8731 /**
       
  8732  * Destructor.
       
  8733  */
       
  8734 {
       
  8735 }
       
  8736 
       
  8737 TVerdict CCTSYIntegrationTestPhoneBookStore0017FDN::doTestStepL()
       
  8738 /**
       
  8739  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0017
       
  8740  * @SYMFssID BA/CTSY/PBSTR-FDN-0017
       
  8741  * @SYMTestCaseDesc Delete an entry from the SIM phone book supplying an invalid index. (FDN phone book)
       
  8742  * @SYMTestPriority High
       
  8743  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8744  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  8745  * @SYMTestType CIT
       
  8746  * @SYMTestCaseDependencies live/automatic
       
  8747  *
       
  8748  * Reason for test: Verify KErrArgument returned.
       
  8749  *
       
  8750  * @return - TVerdict code
       
  8751  */
       
  8752 	{
       
  8753 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  8754 	return TestStepResult();
       
  8755 	}
       
  8756 
       
  8757 TPtrC CCTSYIntegrationTestPhoneBookStore0017FDN::GetTestStepName()
       
  8758 /**
       
  8759  * @return The test step name.
       
  8760  */
       
  8761 	{
       
  8762 	return _L("CCTSYIntegrationTestPhoneBookStore0017FDN");
       
  8763 	}
       
  8764 
       
  8765 
       
  8766 
       
  8767 CCTSYIntegrationTestPhoneBookStore0017SDN::CCTSYIntegrationTestPhoneBookStore0017SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8768 : CCTSYIntegrationTestPhoneBookStore0017Base(aEtelSessionMgr)
       
  8769 /**
       
  8770  * Constructor.
       
  8771  */
       
  8772 {
       
  8773 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0017SDN::GetTestStepName());
       
  8774 }
       
  8775 
       
  8776 CCTSYIntegrationTestPhoneBookStore0017SDN::~CCTSYIntegrationTestPhoneBookStore0017SDN()
       
  8777 /**
       
  8778  * Destructor.
       
  8779  */
       
  8780 {
       
  8781 }
       
  8782 
       
  8783 TVerdict CCTSYIntegrationTestPhoneBookStore0017SDN::doTestStepL()
       
  8784 /**
       
  8785  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0017
       
  8786  * @SYMFssID BA/CTSY/PBSTR-SDN-0017
       
  8787  * @SYMTestCaseDesc Delete an entry from the SIM phone book supplying an invalid index. (SDN phone book)
       
  8788  * @SYMTestPriority High
       
  8789  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8790  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  8791  * @SYMTestType CIT
       
  8792  * @SYMTestCaseDependencies live/automatic
       
  8793  *
       
  8794  * Reason for test: Verify KErrArgument returned.
       
  8795  *
       
  8796  * @return - TVerdict code
       
  8797  */
       
  8798 	{
       
  8799 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  8800 	StartCleanup();
       
  8801 	return TestStepResult();
       
  8802 	}
       
  8803 
       
  8804 TPtrC CCTSYIntegrationTestPhoneBookStore0017SDN::GetTestStepName()
       
  8805 /**
       
  8806  * @return The test step name.
       
  8807  */
       
  8808 	{
       
  8809 	return _L("CCTSYIntegrationTestPhoneBookStore0017SDN");
       
  8810 	}
       
  8811 
       
  8812 
       
  8813 
       
  8814 CCTSYIntegrationTestPhoneBookStore0017VMBX::CCTSYIntegrationTestPhoneBookStore0017VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  8815 : CCTSYIntegrationTestPhoneBookStore0017Base(aEtelSessionMgr)
       
  8816 /**
       
  8817  * Constructor.
       
  8818  */
       
  8819 {
       
  8820 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0017VMBX::GetTestStepName());
       
  8821 }
       
  8822 
       
  8823 CCTSYIntegrationTestPhoneBookStore0017VMBX::~CCTSYIntegrationTestPhoneBookStore0017VMBX()
       
  8824 /**
       
  8825  * Destructor.
       
  8826  */
       
  8827 {
       
  8828 }
       
  8829 
       
  8830 TVerdict CCTSYIntegrationTestPhoneBookStore0017VMBX::doTestStepL()
       
  8831 /**
       
  8832  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0017
       
  8833  * @SYMFssID BA/CTSY/PBSTR-VMBX-0017
       
  8834  * @SYMTestCaseDesc Delete an entry from the SIM phone book supplying an invalid index. (VMBX phone book)
       
  8835  * @SYMTestPriority High
       
  8836  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8837  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  8838  * @SYMTestType CIT
       
  8839  * @SYMTestCaseDependencies live/automatic
       
  8840  *
       
  8841  * Reason for test: Verify KErrArgument returned.
       
  8842  *
       
  8843  * @return - TVerdict code
       
  8844  */
       
  8845 	{
       
  8846 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  8847 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  8848 	return TestStepResult();
       
  8849 	}
       
  8850 
       
  8851 TPtrC CCTSYIntegrationTestPhoneBookStore0017VMBX::GetTestStepName()
       
  8852 /**
       
  8853  * @return The test step name.
       
  8854  */
       
  8855 	{
       
  8856 	return _L("CCTSYIntegrationTestPhoneBookStore0017VMBX");
       
  8857 	}
       
  8858 
       
  8859 
       
  8860 
       
  8861 CCTSYIntegrationTestPhoneBookStore0017MBDN::CCTSYIntegrationTestPhoneBookStore0017MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8862 : CCTSYIntegrationTestPhoneBookStore0017Base(aEtelSessionMgr)
       
  8863 /**
       
  8864  * Constructor.
       
  8865  */
       
  8866 {
       
  8867 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0017MBDN::GetTestStepName());
       
  8868 }
       
  8869 
       
  8870 CCTSYIntegrationTestPhoneBookStore0017MBDN::~CCTSYIntegrationTestPhoneBookStore0017MBDN()
       
  8871 /**
       
  8872  * Destructor.
       
  8873  */
       
  8874 {
       
  8875 }
       
  8876 
       
  8877 TVerdict CCTSYIntegrationTestPhoneBookStore0017MBDN::doTestStepL()
       
  8878 /**
       
  8879  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0017
       
  8880  * @SYMFssID BA/CTSY/PBSTR-MBDN-0017
       
  8881  * @SYMTestCaseDesc Delete an entry from the SIM phone book supplying an invalid index. (MBDN phone book)
       
  8882  * @SYMTestPriority High
       
  8883  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo
       
  8884  * @SYMTestExpectedResults Pass - KErrArgument returned.
       
  8885  * @SYMTestType CIT
       
  8886  * @SYMTestCaseDependencies live/automatic
       
  8887  *
       
  8888  * Reason for test: Verify KErrArgument returned.
       
  8889  *
       
  8890  * @return - TVerdict code
       
  8891  */
       
  8892 	{
       
  8893 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  8894 	StartCleanup();
       
  8895 	return TestStepResult();
       
  8896 	}
       
  8897 
       
  8898 TPtrC CCTSYIntegrationTestPhoneBookStore0017MBDN::GetTestStepName()
       
  8899 /**
       
  8900  * @return The test step name.
       
  8901  */
       
  8902 	{
       
  8903 	return _L("CCTSYIntegrationTestPhoneBookStore0017MBDN");
       
  8904 	}
       
  8905 
       
  8906 
       
  8907 
       
  8908 CCTSYIntegrationTestPhoneBookStore0018ADN::CCTSYIntegrationTestPhoneBookStore0018ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  8909 : CCTSYIntegrationTestPhoneBookStore0018Base(aEtelSessionMgr)
       
  8910 /**
       
  8911  * Constructor.
       
  8912  */
       
  8913 {
       
  8914 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0018ADN::GetTestStepName());
       
  8915 }
       
  8916 
       
  8917 CCTSYIntegrationTestPhoneBookStore0018ADN::~CCTSYIntegrationTestPhoneBookStore0018ADN()
       
  8918 /**
       
  8919  * Destructor.
       
  8920  */
       
  8921 {
       
  8922 }
       
  8923 
       
  8924 TVerdict CCTSYIntegrationTestPhoneBookStore0018ADN::doTestStepL()
       
  8925 /**
       
  8926  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0018
       
  8927  * @SYMFssID BA/CTSY/PBSTR-ADN-0018
       
  8928  * @SYMTestCaseDesc Delete all entries from the SIM phone book. (ADN phone book)
       
  8929  * @SYMTestPriority High
       
  8930  * @SYMTestActions RMobilePhoneStore::DeleteAll, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::GetInfo
       
  8931  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8932  * @SYMTestType CIT
       
  8933  * @SYMTestCaseDependencies live/automatic
       
  8934  *
       
  8935  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  8936  *
       
  8937  * @return - TVerdict code
       
  8938  */
       
  8939 	{
       
  8940 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  8941 	return TestStepResult();
       
  8942 	}
       
  8943 
       
  8944 TPtrC CCTSYIntegrationTestPhoneBookStore0018ADN::GetTestStepName()
       
  8945 /**
       
  8946  * @return The test step name.
       
  8947  */
       
  8948 	{
       
  8949 	return _L("CCTSYIntegrationTestPhoneBookStore0018ADN");
       
  8950 	}
       
  8951 
       
  8952 
       
  8953 
       
  8954 CCTSYIntegrationTestPhoneBookStore0018FDN::CCTSYIntegrationTestPhoneBookStore0018FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  8955 : CCTSYIntegrationTestPhoneBookStore0018Base(aEtelSessionMgr)
       
  8956 /**
       
  8957  * Constructor.
       
  8958  */
       
  8959 {
       
  8960 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0018FDN::GetTestStepName());
       
  8961 }
       
  8962 
       
  8963 CCTSYIntegrationTestPhoneBookStore0018FDN::~CCTSYIntegrationTestPhoneBookStore0018FDN()
       
  8964 /**
       
  8965  * Destructor.
       
  8966  */
       
  8967 {
       
  8968 }
       
  8969 
       
  8970 TVerdict CCTSYIntegrationTestPhoneBookStore0018FDN::doTestStepL()
       
  8971 /**
       
  8972  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0018
       
  8973  * @SYMFssID BA/CTSY/PBSTR-FDN-0018
       
  8974  * @SYMTestCaseDesc Delete all entries from the SIM phone book. (FDN phone book)
       
  8975  * @SYMTestPriority High
       
  8976  * @SYMTestActions RMobilePhoneStore::DeleteAll, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::GetInfo
       
  8977  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  8978  * @SYMTestType CIT
       
  8979  * @SYMTestCaseDependencies live/automatic
       
  8980  *
       
  8981  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  8982  *
       
  8983  * @return - TVerdict code
       
  8984  */
       
  8985 	{
       
  8986 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  8987 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  8988 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  8989 	return TestStepResult();
       
  8990 	}
       
  8991 
       
  8992 TPtrC CCTSYIntegrationTestPhoneBookStore0018FDN::GetTestStepName()
       
  8993 /**
       
  8994  * @return The test step name.
       
  8995  */
       
  8996 	{
       
  8997 	return _L("CCTSYIntegrationTestPhoneBookStore0018FDN");
       
  8998 	}
       
  8999 
       
  9000 
       
  9001 
       
  9002 CCTSYIntegrationTestPhoneBookStore0018SDN::CCTSYIntegrationTestPhoneBookStore0018SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9003 : CCTSYIntegrationTestPhoneBookStore0018Base(aEtelSessionMgr)
       
  9004 /**
       
  9005  * Constructor.
       
  9006  */
       
  9007 {
       
  9008 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0018SDN::GetTestStepName());
       
  9009 }
       
  9010 
       
  9011 CCTSYIntegrationTestPhoneBookStore0018SDN::~CCTSYIntegrationTestPhoneBookStore0018SDN()
       
  9012 /**
       
  9013  * Destructor.
       
  9014  */
       
  9015 {
       
  9016 }
       
  9017 
       
  9018 TVerdict CCTSYIntegrationTestPhoneBookStore0018SDN::doTestStepL()
       
  9019 /**
       
  9020  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0018
       
  9021  * @SYMFssID BA/CTSY/PBSTR-SDN-0018
       
  9022  * @SYMTestCaseDesc Delete all entries from the SIM phone book. (SDN phone book)
       
  9023  * @SYMTestPriority High
       
  9024  * @SYMTestActions RMobilePhoneStore::DeleteAll, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::GetInfo
       
  9025  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  9026  * @SYMTestType CIT
       
  9027  * @SYMTestCaseDependencies live/automatic
       
  9028  *
       
  9029  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  9030  *
       
  9031  * @return - TVerdict code
       
  9032  */
       
  9033 	{
       
  9034 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  9035 	StartCleanup();
       
  9036 	return TestStepResult();
       
  9037 	}
       
  9038 
       
  9039 TPtrC CCTSYIntegrationTestPhoneBookStore0018SDN::GetTestStepName()
       
  9040 /**
       
  9041  * @return The test step name.
       
  9042  */
       
  9043 	{
       
  9044 	return _L("CCTSYIntegrationTestPhoneBookStore0018SDN");
       
  9045 	}
       
  9046 
       
  9047 
       
  9048 
       
  9049 CCTSYIntegrationTestPhoneBookStore0018VMBX::CCTSYIntegrationTestPhoneBookStore0018VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  9050 : CCTSYIntegrationTestPhoneBookStore0018Base(aEtelSessionMgr)
       
  9051 /**
       
  9052  * Constructor.
       
  9053  */
       
  9054 {
       
  9055 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0018VMBX::GetTestStepName());
       
  9056 }
       
  9057 
       
  9058 CCTSYIntegrationTestPhoneBookStore0018VMBX::~CCTSYIntegrationTestPhoneBookStore0018VMBX()
       
  9059 /**
       
  9060  * Destructor.
       
  9061  */
       
  9062 {
       
  9063 }
       
  9064 
       
  9065 TVerdict CCTSYIntegrationTestPhoneBookStore0018VMBX::doTestStepL()
       
  9066 /**
       
  9067  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0018
       
  9068  * @SYMFssID BA/CTSY/PBSTR-VMBX-0018
       
  9069  * @SYMTestCaseDesc Delete all entries from the SIM phone book. (VMBX phone book)
       
  9070  * @SYMTestPriority High
       
  9071  * @SYMTestActions RMobilePhoneStore::DeleteAll, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::GetInfo
       
  9072  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  9073  * @SYMTestType CIT
       
  9074  * @SYMTestCaseDependencies live/automatic
       
  9075  *
       
  9076  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  9077  *
       
  9078  * @return - TVerdict code
       
  9079  */
       
  9080 	{
       
  9081 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  9082 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  9083 	return TestStepResult();
       
  9084 	}
       
  9085 
       
  9086 TPtrC CCTSYIntegrationTestPhoneBookStore0018VMBX::GetTestStepName()
       
  9087 /**
       
  9088  * @return The test step name.
       
  9089  */
       
  9090 	{
       
  9091 	return _L("CCTSYIntegrationTestPhoneBookStore0018VMBX");
       
  9092 	}
       
  9093 
       
  9094 
       
  9095 
       
  9096 CCTSYIntegrationTestPhoneBookStore0018MBDN::CCTSYIntegrationTestPhoneBookStore0018MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9097 : CCTSYIntegrationTestPhoneBookStore0018Base(aEtelSessionMgr)
       
  9098 /**
       
  9099  * Constructor.
       
  9100  */
       
  9101 {
       
  9102 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0018MBDN::GetTestStepName());
       
  9103 }
       
  9104 
       
  9105 CCTSYIntegrationTestPhoneBookStore0018MBDN::~CCTSYIntegrationTestPhoneBookStore0018MBDN()
       
  9106 /**
       
  9107  * Destructor.
       
  9108  */
       
  9109 {
       
  9110 }
       
  9111 
       
  9112 TVerdict CCTSYIntegrationTestPhoneBookStore0018MBDN::doTestStepL()
       
  9113 /**
       
  9114  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0018
       
  9115  * @SYMFssID BA/CTSY/PBSTR-MBDN-0018
       
  9116  * @SYMTestCaseDesc Delete all entries from the SIM phone book. (MBDN phone book)
       
  9117  * @SYMTestPriority High
       
  9118  * @SYMTestActions RMobilePhoneStore::DeleteAll, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::GetInfo
       
  9119  * @SYMTestExpectedResults Pass - Deletion is successful.
       
  9120  * @SYMTestType CIT
       
  9121  * @SYMTestCaseDependencies live/automatic
       
  9122  *
       
  9123  * Reason for test: Verify deletion is successful and there are no entries in the phone book after deletion.
       
  9124  *
       
  9125  * @return - TVerdict code
       
  9126  */
       
  9127 	{
       
  9128 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  9129 	StartCleanup();
       
  9130 	return TestStepResult();
       
  9131 	}
       
  9132 
       
  9133 TPtrC CCTSYIntegrationTestPhoneBookStore0018MBDN::GetTestStepName()
       
  9134 /**
       
  9135  * @return The test step name.
       
  9136  */
       
  9137 	{
       
  9138 	return _L("CCTSYIntegrationTestPhoneBookStore0018MBDN");
       
  9139 	}
       
  9140 
       
  9141 
       
  9142 
       
  9143 CCTSYIntegrationTestPhoneBookStore0019ADN::CCTSYIntegrationTestPhoneBookStore0019ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  9144 : CCTSYIntegrationTestPhoneBookStore0019Base(aEtelSessionMgr)
       
  9145 /**
       
  9146  * Constructor.
       
  9147  */
       
  9148 {
       
  9149 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0019ADN::GetTestStepName());
       
  9150 }
       
  9151 
       
  9152 CCTSYIntegrationTestPhoneBookStore0019ADN::~CCTSYIntegrationTestPhoneBookStore0019ADN()
       
  9153 /**
       
  9154  * Destructor.
       
  9155  */
       
  9156 {
       
  9157 }
       
  9158 
       
  9159 TVerdict CCTSYIntegrationTestPhoneBookStore0019ADN::doTestStepL()
       
  9160 /**
       
  9161  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0019
       
  9162  * @SYMFssID BA/CTSY/PBSTR-ADN-0019
       
  9163  * @SYMTestCaseDesc Fill and delete all entries in the phone book. (ADN phone book)
       
  9164  * @SYMTestPriority High
       
  9165  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo
       
  9166  * @SYMTestExpectedResults Pass - All entries deleted successfully.
       
  9167  * @SYMTestType CIT
       
  9168  * @SYMTestCaseDependencies live/automatic
       
  9169  *
       
  9170  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  9171  *
       
  9172  * @return - TVerdict code
       
  9173  */
       
  9174 	{
       
  9175 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  9176 	return TestStepResult();
       
  9177 	}
       
  9178 
       
  9179 TPtrC CCTSYIntegrationTestPhoneBookStore0019ADN::GetTestStepName()
       
  9180 /**
       
  9181  * @return The test step name.
       
  9182  */
       
  9183 	{
       
  9184 	return _L("CCTSYIntegrationTestPhoneBookStore0019ADN");
       
  9185 	}
       
  9186 
       
  9187 
       
  9188 
       
  9189 CCTSYIntegrationTestPhoneBookStore0019FDN::CCTSYIntegrationTestPhoneBookStore0019FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9190 : CCTSYIntegrationTestPhoneBookStore0019Base(aEtelSessionMgr)
       
  9191 /**
       
  9192  * Constructor.
       
  9193  */
       
  9194 {
       
  9195 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0019FDN::GetTestStepName());
       
  9196 }
       
  9197 
       
  9198 CCTSYIntegrationTestPhoneBookStore0019FDN::~CCTSYIntegrationTestPhoneBookStore0019FDN()
       
  9199 /**
       
  9200  * Destructor.
       
  9201  */
       
  9202 {
       
  9203 }
       
  9204 
       
  9205 TVerdict CCTSYIntegrationTestPhoneBookStore0019FDN::doTestStepL()
       
  9206 /**
       
  9207  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0019
       
  9208  * @SYMFssID BA/CTSY/PBSTR-FDN-0019
       
  9209  * @SYMTestCaseDesc Fill and delete all entries in the phone book. (FDN phone book)
       
  9210  * @SYMTestPriority High
       
  9211  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo
       
  9212  * @SYMTestExpectedResults Pass - All entries deleted successfully.
       
  9213  * @SYMTestType CIT
       
  9214  * @SYMTestCaseDependencies live/automatic
       
  9215  *
       
  9216  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  9217  *
       
  9218  * @return - TVerdict code
       
  9219  */
       
  9220 	{
       
  9221 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  9222 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  9223 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  9224 	return TestStepResult();
       
  9225 	}
       
  9226 
       
  9227 TPtrC CCTSYIntegrationTestPhoneBookStore0019FDN::GetTestStepName()
       
  9228 /**
       
  9229  * @return The test step name.
       
  9230  */
       
  9231 	{
       
  9232 	return _L("CCTSYIntegrationTestPhoneBookStore0019FDN");
       
  9233 	}
       
  9234 
       
  9235 
       
  9236 
       
  9237 CCTSYIntegrationTestPhoneBookStore0019SDN::CCTSYIntegrationTestPhoneBookStore0019SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9238 : CCTSYIntegrationTestPhoneBookStore0019Base(aEtelSessionMgr)
       
  9239 /**
       
  9240  * Constructor.
       
  9241  */
       
  9242 {
       
  9243 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0019SDN::GetTestStepName());
       
  9244 }
       
  9245 
       
  9246 CCTSYIntegrationTestPhoneBookStore0019SDN::~CCTSYIntegrationTestPhoneBookStore0019SDN()
       
  9247 /**
       
  9248  * Destructor.
       
  9249  */
       
  9250 {
       
  9251 }
       
  9252 
       
  9253 TVerdict CCTSYIntegrationTestPhoneBookStore0019SDN::doTestStepL()
       
  9254 /**
       
  9255  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0019
       
  9256  * @SYMFssID BA/CTSY/PBSTR-SDN-0019
       
  9257  * @SYMTestCaseDesc Fill and delete all entries in the phone book. (SDN phone book)
       
  9258  * @SYMTestPriority High
       
  9259  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo
       
  9260  * @SYMTestExpectedResults Pass - All entries deleted successfully.
       
  9261  * @SYMTestType CIT
       
  9262  * @SYMTestCaseDependencies live/automatic
       
  9263  *
       
  9264  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  9265  *
       
  9266  * @return - TVerdict code
       
  9267  */
       
  9268 	{
       
  9269 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));
       
  9270 	StartCleanup();
       
  9271 	return TestStepResult();
       
  9272 	}
       
  9273 
       
  9274 TPtrC CCTSYIntegrationTestPhoneBookStore0019SDN::GetTestStepName()
       
  9275 /**
       
  9276  * @return The test step name.
       
  9277  */
       
  9278 	{
       
  9279 	return _L("CCTSYIntegrationTestPhoneBookStore0019SDN");
       
  9280 	}
       
  9281 
       
  9282 
       
  9283 
       
  9284 CCTSYIntegrationTestPhoneBookStore0019VMBX::CCTSYIntegrationTestPhoneBookStore0019VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  9285 : CCTSYIntegrationTestPhoneBookStore0019Base(aEtelSessionMgr)
       
  9286 /**
       
  9287  * Constructor.
       
  9288  */
       
  9289 {
       
  9290 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0019VMBX::GetTestStepName());
       
  9291 }
       
  9292 
       
  9293 CCTSYIntegrationTestPhoneBookStore0019VMBX::~CCTSYIntegrationTestPhoneBookStore0019VMBX()
       
  9294 /**
       
  9295  * Destructor.
       
  9296  */
       
  9297 {
       
  9298 }
       
  9299 
       
  9300 TVerdict CCTSYIntegrationTestPhoneBookStore0019VMBX::doTestStepL()
       
  9301 /**
       
  9302  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0019
       
  9303  * @SYMFssID BA/CTSY/PBSTR-VMBX-0019
       
  9304  * @SYMTestCaseDesc Fill and delete all entries in the phone book. (VMBX phone book)
       
  9305  * @SYMTestPriority High
       
  9306  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo
       
  9307  * @SYMTestExpectedResults Pass - All entries deleted successfully.
       
  9308  * @SYMTestType CIT
       
  9309  * @SYMTestCaseDependencies live/automatic
       
  9310  *
       
  9311  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  9312  *
       
  9313  * @return - TVerdict code
       
  9314  */
       
  9315 	{
       
  9316 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  9317 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  9318 	return TestStepResult();
       
  9319 	}
       
  9320 
       
  9321 TPtrC CCTSYIntegrationTestPhoneBookStore0019VMBX::GetTestStepName()
       
  9322 /**
       
  9323  * @return The test step name.
       
  9324  */
       
  9325 	{
       
  9326 	return _L("CCTSYIntegrationTestPhoneBookStore0019VMBX");
       
  9327 	}
       
  9328 
       
  9329 
       
  9330 
       
  9331 CCTSYIntegrationTestPhoneBookStore0019MBDN::CCTSYIntegrationTestPhoneBookStore0019MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9332 : CCTSYIntegrationTestPhoneBookStore0019Base(aEtelSessionMgr)
       
  9333 /**
       
  9334  * Constructor.
       
  9335  */
       
  9336 {
       
  9337 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0019MBDN::GetTestStepName());
       
  9338 }
       
  9339 
       
  9340 CCTSYIntegrationTestPhoneBookStore0019MBDN::~CCTSYIntegrationTestPhoneBookStore0019MBDN()
       
  9341 /**
       
  9342  * Destructor.
       
  9343  */
       
  9344 {
       
  9345 }
       
  9346 
       
  9347 TVerdict CCTSYIntegrationTestPhoneBookStore0019MBDN::doTestStepL()
       
  9348 /**
       
  9349  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0019
       
  9350  * @SYMFssID BA/CTSY/PBSTR-MBDN-0019
       
  9351  * @SYMTestCaseDesc Fill and delete all entries in the phone book. (MBDN phone book)
       
  9352  * @SYMTestPriority High
       
  9353  * @SYMTestActions RMobilePhoneBookStore::Write, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhoneStore::GetInfo
       
  9354  * @SYMTestExpectedResults Pass - All entries deleted successfully.
       
  9355  * @SYMTestType CIT
       
  9356  * @SYMTestCaseDependencies live/automatic
       
  9357  *
       
  9358  * Reason for test: Verify entries can be written to the phone book until it is full and then all entries can be deleted from a full phone book.
       
  9359  *
       
  9360  * @return - TVerdict code
       
  9361  */
       
  9362 	{
       
  9363 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));
       
  9364 	StartCleanup();
       
  9365 	return TestStepResult();
       
  9366 	}
       
  9367 
       
  9368 TPtrC CCTSYIntegrationTestPhoneBookStore0019MBDN::GetTestStepName()
       
  9369 /**
       
  9370  * @return The test step name.
       
  9371  */
       
  9372 	{
       
  9373 	return _L("CCTSYIntegrationTestPhoneBookStore0019MBDN");
       
  9374 	}
       
  9375 
       
  9376 
       
  9377 
       
  9378 CCTSYIntegrationTestPhoneBookStore0020ADN::CCTSYIntegrationTestPhoneBookStore0020ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  9379 : CCTSYIntegrationTestPhoneBookStore0020Base(aEtelSessionMgr)
       
  9380 /**
       
  9381  * Constructor.
       
  9382  */
       
  9383 {
       
  9384 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0020ADN::GetTestStepName());
       
  9385 }
       
  9386 
       
  9387 CCTSYIntegrationTestPhoneBookStore0020ADN::~CCTSYIntegrationTestPhoneBookStore0020ADN()
       
  9388 /**
       
  9389  * Destructor.
       
  9390  */
       
  9391 {
       
  9392 }
       
  9393 
       
  9394 TVerdict CCTSYIntegrationTestPhoneBookStore0020ADN::doTestStepL()
       
  9395 /**
       
  9396  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0020
       
  9397  * @SYMFssID BA/CTSY/PBSTR-ADN-0020
       
  9398  * @SYMTestCaseDesc Cancel deletion of all entries from the SIM phone book. (ADN phone book)
       
  9399  * @SYMTestPriority High
       
  9400  * @SYMTestActions RMobilePhoneStore::GetInfo, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo
       
  9401  * @SYMTestExpectedResults Pass - Deletion is cancelled.
       
  9402  * @SYMTestType CIT
       
  9403  * @SYMTestCaseDependencies live/automatic
       
  9404  *
       
  9405  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  9406  *
       
  9407  * @return - TVerdict code
       
  9408  */
       
  9409 	{
       
  9410 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  9411 	return TestStepResult();
       
  9412 	}
       
  9413 
       
  9414 TPtrC CCTSYIntegrationTestPhoneBookStore0020ADN::GetTestStepName()
       
  9415 /**
       
  9416  * @return The test step name.
       
  9417  */
       
  9418 	{
       
  9419 	return _L("CCTSYIntegrationTestPhoneBookStore0020ADN");
       
  9420 	}
       
  9421 
       
  9422 
       
  9423 
       
  9424 CCTSYIntegrationTestPhoneBookStore0020FDN::CCTSYIntegrationTestPhoneBookStore0020FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9425 : CCTSYIntegrationTestPhoneBookStore0020Base(aEtelSessionMgr)
       
  9426 /**
       
  9427  * Constructor.
       
  9428  */
       
  9429 {
       
  9430 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0020FDN::GetTestStepName());
       
  9431 }
       
  9432 
       
  9433 CCTSYIntegrationTestPhoneBookStore0020FDN::~CCTSYIntegrationTestPhoneBookStore0020FDN()
       
  9434 /**
       
  9435  * Destructor.
       
  9436  */
       
  9437 {
       
  9438 }
       
  9439 
       
  9440 TVerdict CCTSYIntegrationTestPhoneBookStore0020FDN::doTestStepL()
       
  9441 /**
       
  9442  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0020
       
  9443  * @SYMFssID BA/CTSY/PBSTR-FDN-0020
       
  9444  * @SYMTestCaseDesc Cancel deletion of all entries from the SIM phone book. (FDN phone book)
       
  9445  * @SYMTestPriority High
       
  9446  * @SYMTestActions RMobilePhoneStore::GetInfo, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo
       
  9447  * @SYMTestExpectedResults Pass - Deletion is cancelled.
       
  9448  * @SYMTestType CIT
       
  9449  * @SYMTestCaseDependencies live/automatic
       
  9450  *
       
  9451  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  9452  *
       
  9453  * @return - TVerdict code
       
  9454  */
       
  9455 	{
       
  9456 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  9457 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  9458 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  9459 	return TestStepResult();
       
  9460 	}
       
  9461 
       
  9462 TPtrC CCTSYIntegrationTestPhoneBookStore0020FDN::GetTestStepName()
       
  9463 /**
       
  9464  * @return The test step name.
       
  9465  */
       
  9466 	{
       
  9467 	return _L("CCTSYIntegrationTestPhoneBookStore0020FDN");
       
  9468 	}
       
  9469 
       
  9470 
       
  9471 
       
  9472 CCTSYIntegrationTestPhoneBookStore0020SDN::CCTSYIntegrationTestPhoneBookStore0020SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9473 : CCTSYIntegrationTestPhoneBookStore0020Base(aEtelSessionMgr)
       
  9474 /**
       
  9475  * Constructor.
       
  9476  */
       
  9477 {
       
  9478 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0020SDN::GetTestStepName());
       
  9479 }
       
  9480 
       
  9481 CCTSYIntegrationTestPhoneBookStore0020SDN::~CCTSYIntegrationTestPhoneBookStore0020SDN()
       
  9482 /**
       
  9483  * Destructor.
       
  9484  */
       
  9485 {
       
  9486 }
       
  9487 
       
  9488 TVerdict CCTSYIntegrationTestPhoneBookStore0020SDN::doTestStepL()
       
  9489 /**
       
  9490  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0020
       
  9491  * @SYMFssID BA/CTSY/PBSTR-SDN-0020
       
  9492  * @SYMTestCaseDesc Cancel deletion of all entries from the SIM phone book. (SDN phone book)
       
  9493  * @SYMTestPriority High
       
  9494  * @SYMTestActions RMobilePhoneStore::GetInfo, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo
       
  9495  * @SYMTestExpectedResults Pass - Deletion is cancelled.
       
  9496  * @SYMTestType CIT
       
  9497  * @SYMTestCaseDependencies live/automatic
       
  9498  *
       
  9499  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  9500  *
       
  9501  * @return - TVerdict code
       
  9502  */
       
  9503 	{
       
  9504 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  9505 	StartCleanup();
       
  9506 	return TestStepResult();
       
  9507 	}
       
  9508 
       
  9509 TPtrC CCTSYIntegrationTestPhoneBookStore0020SDN::GetTestStepName()
       
  9510 /**
       
  9511  * @return The test step name.
       
  9512  */
       
  9513 	{
       
  9514 	return _L("CCTSYIntegrationTestPhoneBookStore0020SDN");
       
  9515 	}
       
  9516 
       
  9517 
       
  9518 
       
  9519 CCTSYIntegrationTestPhoneBookStore0020VMBX::CCTSYIntegrationTestPhoneBookStore0020VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  9520 : CCTSYIntegrationTestPhoneBookStore0020Base(aEtelSessionMgr)
       
  9521 /**
       
  9522  * Constructor.
       
  9523  */
       
  9524 {
       
  9525 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0020VMBX::GetTestStepName());
       
  9526 }
       
  9527 
       
  9528 CCTSYIntegrationTestPhoneBookStore0020VMBX::~CCTSYIntegrationTestPhoneBookStore0020VMBX()
       
  9529 /**
       
  9530  * Destructor.
       
  9531  */
       
  9532 {
       
  9533 }
       
  9534 
       
  9535 TVerdict CCTSYIntegrationTestPhoneBookStore0020VMBX::doTestStepL()
       
  9536 /**
       
  9537  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0020
       
  9538  * @SYMFssID BA/CTSY/PBSTR-VMBX-0020
       
  9539  * @SYMTestCaseDesc Cancel deletion of all entries from the SIM phone book. (VMBX phone book)
       
  9540  * @SYMTestPriority High
       
  9541  * @SYMTestActions RMobilePhoneStore::GetInfo, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo
       
  9542  * @SYMTestExpectedResults Pass - Deletion is cancelled.
       
  9543  * @SYMTestType CIT
       
  9544  * @SYMTestCaseDependencies live/automatic
       
  9545  *
       
  9546  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  9547  *
       
  9548  * @return - TVerdict code
       
  9549  */
       
  9550 	{
       
  9551 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  9552 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  9553 	return TestStepResult();
       
  9554 	}
       
  9555 
       
  9556 TPtrC CCTSYIntegrationTestPhoneBookStore0020VMBX::GetTestStepName()
       
  9557 /**
       
  9558  * @return The test step name.
       
  9559  */
       
  9560 	{
       
  9561 	return _L("CCTSYIntegrationTestPhoneBookStore0020VMBX");
       
  9562 	}
       
  9563 
       
  9564 
       
  9565 
       
  9566 CCTSYIntegrationTestPhoneBookStore0020MBDN::CCTSYIntegrationTestPhoneBookStore0020MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9567 : CCTSYIntegrationTestPhoneBookStore0020Base(aEtelSessionMgr)
       
  9568 /**
       
  9569  * Constructor.
       
  9570  */
       
  9571 {
       
  9572 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0020MBDN::GetTestStepName());
       
  9573 }
       
  9574 
       
  9575 CCTSYIntegrationTestPhoneBookStore0020MBDN::~CCTSYIntegrationTestPhoneBookStore0020MBDN()
       
  9576 /**
       
  9577  * Destructor.
       
  9578  */
       
  9579 {
       
  9580 }
       
  9581 
       
  9582 TVerdict CCTSYIntegrationTestPhoneBookStore0020MBDN::doTestStepL()
       
  9583 /**
       
  9584  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0020
       
  9585  * @SYMFssID BA/CTSY/PBSTR-MBDN-0020
       
  9586  * @SYMTestCaseDesc Cancel deletion of all entries from the SIM phone book. (MBDN phone book)
       
  9587  * @SYMTestPriority High
       
  9588  * @SYMTestActions RMobilePhoneStore::GetInfo, RMobilePhoneStore::DeleteAll, RMobilePhone::GetPhoneStoreInfo
       
  9589  * @SYMTestExpectedResults Pass - Deletion is cancelled.
       
  9590  * @SYMTestType CIT
       
  9591  * @SYMTestCaseDependencies live/automatic
       
  9592  *
       
  9593  * Reason for test: Verify some entries have been deleted before request is cancelled.
       
  9594  *
       
  9595  * @return - TVerdict code
       
  9596  */
       
  9597 	{
       
  9598 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  9599 	StartCleanup();
       
  9600 	return TestStepResult();
       
  9601 	}
       
  9602 
       
  9603 TPtrC CCTSYIntegrationTestPhoneBookStore0020MBDN::GetTestStepName()
       
  9604 /**
       
  9605  * @return The test step name.
       
  9606  */
       
  9607 	{
       
  9608 	return _L("CCTSYIntegrationTestPhoneBookStore0020MBDN");
       
  9609 	}
       
  9610 
       
  9611 
       
  9612 
       
  9613 CCTSYIntegrationTestPhoneBookStore0021ADN::CCTSYIntegrationTestPhoneBookStore0021ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  9614 : CCTSYIntegrationTestPhoneBookStore0021Base(aEtelSessionMgr)
       
  9615 /**
       
  9616  * Constructor.
       
  9617  */
       
  9618 {
       
  9619 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0021ADN::GetTestStepName());
       
  9620 }
       
  9621 
       
  9622 CCTSYIntegrationTestPhoneBookStore0021ADN::~CCTSYIntegrationTestPhoneBookStore0021ADN()
       
  9623 /**
       
  9624  * Destructor.
       
  9625  */
       
  9626 {
       
  9627 }
       
  9628 
       
  9629 TVerdict CCTSYIntegrationTestPhoneBookStore0021ADN::doTestStepL()
       
  9630 /**
       
  9631  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0021
       
  9632  * @SYMFssID BA/CTSY/PBSTR-ADN-0021
       
  9633  * @SYMTestCaseDesc Delete an entry from a full phone book. (ADN phone book)
       
  9634  * @SYMTestPriority High
       
  9635  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  9636  * @SYMTestExpectedResults Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  9637  * @SYMTestType CIT
       
  9638  * @SYMTestCaseDependencies live/automatic
       
  9639  *
       
  9640  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  9641  *
       
  9642  * @return - TVerdict code
       
  9643  */
       
  9644 	{
       
  9645 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10032);
       
  9646 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  9647 	return TestStepResult();
       
  9648 	}
       
  9649 
       
  9650 TPtrC CCTSYIntegrationTestPhoneBookStore0021ADN::GetTestStepName()
       
  9651 /**
       
  9652  * @return The test step name.
       
  9653  */
       
  9654 	{
       
  9655 	return _L("CCTSYIntegrationTestPhoneBookStore0021ADN");
       
  9656 	}
       
  9657 
       
  9658 
       
  9659 
       
  9660 CCTSYIntegrationTestPhoneBookStore0021FDN::CCTSYIntegrationTestPhoneBookStore0021FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9661 : CCTSYIntegrationTestPhoneBookStore0021Base(aEtelSessionMgr)
       
  9662 /**
       
  9663  * Constructor.
       
  9664  */
       
  9665 {
       
  9666 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0021FDN::GetTestStepName());
       
  9667 }
       
  9668 
       
  9669 CCTSYIntegrationTestPhoneBookStore0021FDN::~CCTSYIntegrationTestPhoneBookStore0021FDN()
       
  9670 /**
       
  9671  * Destructor.
       
  9672  */
       
  9673 {
       
  9674 }
       
  9675 
       
  9676 TVerdict CCTSYIntegrationTestPhoneBookStore0021FDN::doTestStepL()
       
  9677 /**
       
  9678  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0021
       
  9679  * @SYMFssID BA/CTSY/PBSTR-FDN-0021
       
  9680  * @SYMTestCaseDesc Delete an entry from a full phone book. (FDN phone book)
       
  9681  * @SYMTestPriority High
       
  9682  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  9683  * @SYMTestExpectedResults Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  9684  * @SYMTestType CIT
       
  9685  * @SYMTestCaseDependencies live/automatic
       
  9686  *
       
  9687  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  9688  *
       
  9689  * @return - TVerdict code
       
  9690  */
       
  9691 	{
       
  9692 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10032);
       
  9693 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  9694 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  9695 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  9696 	return TestStepResult();
       
  9697 	}
       
  9698 
       
  9699 TPtrC CCTSYIntegrationTestPhoneBookStore0021FDN::GetTestStepName()
       
  9700 /**
       
  9701  * @return The test step name.
       
  9702  */
       
  9703 	{
       
  9704 	return _L("CCTSYIntegrationTestPhoneBookStore0021FDN");
       
  9705 	}
       
  9706 
       
  9707 
       
  9708 
       
  9709 CCTSYIntegrationTestPhoneBookStore0021SDN::CCTSYIntegrationTestPhoneBookStore0021SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9710 : CCTSYIntegrationTestPhoneBookStore0021Base(aEtelSessionMgr)
       
  9711 /**
       
  9712  * Constructor.
       
  9713  */
       
  9714 {
       
  9715 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0021SDN::GetTestStepName());
       
  9716 }
       
  9717 
       
  9718 CCTSYIntegrationTestPhoneBookStore0021SDN::~CCTSYIntegrationTestPhoneBookStore0021SDN()
       
  9719 /**
       
  9720  * Destructor.
       
  9721  */
       
  9722 {
       
  9723 }
       
  9724 
       
  9725 TVerdict CCTSYIntegrationTestPhoneBookStore0021SDN::doTestStepL()
       
  9726 /**
       
  9727  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0021
       
  9728  * @SYMFssID BA/CTSY/PBSTR-SDN-0021
       
  9729  * @SYMTestCaseDesc Delete an entry from a full phone book. (SDN phone book)
       
  9730  * @SYMTestPriority High
       
  9731  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  9732  * @SYMTestExpectedResults Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  9733  * @SYMTestType CIT
       
  9734  * @SYMTestCaseDependencies live/automatic
       
  9735  *
       
  9736  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  9737  *
       
  9738  * @return - TVerdict code
       
  9739  */
       
  9740 	{
       
  9741 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  9742 	StartCleanup();
       
  9743 	return TestStepResult();
       
  9744 	}
       
  9745 
       
  9746 TPtrC CCTSYIntegrationTestPhoneBookStore0021SDN::GetTestStepName()
       
  9747 /**
       
  9748  * @return The test step name.
       
  9749  */
       
  9750 	{
       
  9751 	return _L("CCTSYIntegrationTestPhoneBookStore0021SDN");
       
  9752 	}
       
  9753 
       
  9754 
       
  9755 
       
  9756 CCTSYIntegrationTestPhoneBookStore0021VMBX::CCTSYIntegrationTestPhoneBookStore0021VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  9757 : CCTSYIntegrationTestPhoneBookStore0021Base(aEtelSessionMgr)
       
  9758 /**
       
  9759  * Constructor.
       
  9760  */
       
  9761 {
       
  9762 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0021VMBX::GetTestStepName());
       
  9763 }
       
  9764 
       
  9765 CCTSYIntegrationTestPhoneBookStore0021VMBX::~CCTSYIntegrationTestPhoneBookStore0021VMBX()
       
  9766 /**
       
  9767  * Destructor.
       
  9768  */
       
  9769 {
       
  9770 }
       
  9771 
       
  9772 TVerdict CCTSYIntegrationTestPhoneBookStore0021VMBX::doTestStepL()
       
  9773 /**
       
  9774  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0021
       
  9775  * @SYMFssID BA/CTSY/PBSTR-VMBX-0021
       
  9776  * @SYMTestCaseDesc Delete an entry from a full phone book. (VMBX phone book)
       
  9777  * @SYMTestPriority High
       
  9778  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  9779  * @SYMTestExpectedResults Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  9780  * @SYMTestType CIT
       
  9781  * @SYMTestCaseDependencies live/automatic
       
  9782  *
       
  9783  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  9784  *
       
  9785  * @return - TVerdict code
       
  9786  */
       
  9787 	{
       
  9788 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
  9789 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
  9790 	return TestStepResult();
       
  9791 	}
       
  9792 
       
  9793 TPtrC CCTSYIntegrationTestPhoneBookStore0021VMBX::GetTestStepName()
       
  9794 /**
       
  9795  * @return The test step name.
       
  9796  */
       
  9797 	{
       
  9798 	return _L("CCTSYIntegrationTestPhoneBookStore0021VMBX");
       
  9799 	}
       
  9800 
       
  9801 
       
  9802 
       
  9803 CCTSYIntegrationTestPhoneBookStore0021MBDN::CCTSYIntegrationTestPhoneBookStore0021MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9804 : CCTSYIntegrationTestPhoneBookStore0021Base(aEtelSessionMgr)
       
  9805 /**
       
  9806  * Constructor.
       
  9807  */
       
  9808 {
       
  9809 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0021MBDN::GetTestStepName());
       
  9810 }
       
  9811 
       
  9812 CCTSYIntegrationTestPhoneBookStore0021MBDN::~CCTSYIntegrationTestPhoneBookStore0021MBDN()
       
  9813 /**
       
  9814  * Destructor.
       
  9815  */
       
  9816 {
       
  9817 }
       
  9818 
       
  9819 TVerdict CCTSYIntegrationTestPhoneBookStore0021MBDN::doTestStepL()
       
  9820 /**
       
  9821  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0021
       
  9822  * @SYMFssID BA/CTSY/PBSTR-MBDN-0021
       
  9823  * @SYMTestCaseDesc Delete an entry from a full phone book. (MBDN phone book)
       
  9824  * @SYMTestPriority High
       
  9825  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneStore::GetInfo, RMobilePhoneStore::NotifyStoreEvent, RMobilePhone::GetPhoneStoreInfo
       
  9826  * @SYMTestExpectedResults Pass - RMobilePhoneStore::KStoreHasSpace completed.
       
  9827  * @SYMTestType CIT
       
  9828  * @SYMTestCaseDependencies live/automatic
       
  9829  *
       
  9830  * Reason for test: Verify entry deleted successfully and phone book event completes.
       
  9831  *
       
  9832  * @return - TVerdict code
       
  9833  */
       
  9834 	{
       
  9835 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
  9836 	StartCleanup();
       
  9837 	return TestStepResult();
       
  9838 	}
       
  9839 
       
  9840 TPtrC CCTSYIntegrationTestPhoneBookStore0021MBDN::GetTestStepName()
       
  9841 /**
       
  9842  * @return The test step name.
       
  9843  */
       
  9844 	{
       
  9845 	return _L("CCTSYIntegrationTestPhoneBookStore0021MBDN");
       
  9846 	}
       
  9847 
       
  9848 
       
  9849 
       
  9850 CCTSYIntegrationTestPhoneBookStore0022ADN::CCTSYIntegrationTestPhoneBookStore0022ADN(CEtelSessionMgr& aEtelSessionMgr)
       
  9851 : CCTSYIntegrationTestPhoneBookStore0022Base(aEtelSessionMgr)
       
  9852 /**
       
  9853  * Constructor.
       
  9854  */
       
  9855 {
       
  9856 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0022ADN::GetTestStepName());
       
  9857 }
       
  9858 
       
  9859 CCTSYIntegrationTestPhoneBookStore0022ADN::~CCTSYIntegrationTestPhoneBookStore0022ADN()
       
  9860 /**
       
  9861  * Destructor.
       
  9862  */
       
  9863 {
       
  9864 }
       
  9865 
       
  9866 TVerdict CCTSYIntegrationTestPhoneBookStore0022ADN::doTestStepL()
       
  9867 /**
       
  9868  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0022
       
  9869  * @SYMFssID BA/CTSY/PBSTR-ADN-0022
       
  9870  * @SYMTestCaseDesc Delete a long (>20 digit) number from the SIM phone book. (ADN phone book)
       
  9871  * @SYMTestPriority High
       
  9872  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent
       
  9873  * @SYMTestExpectedResults Pass - Number is deleted.
       
  9874  * @SYMTestType CIT
       
  9875  * @SYMTestCaseDependencies live/manual
       
  9876  *
       
  9877  * Reason for test: Verify entry deleted successfully.
       
  9878  *
       
  9879  * @return - TVerdict code
       
  9880  */
       
  9881 	{
       
  9882 	DoTestProcedureL(KIccAdnPhoneBook,KETelIccAdnPhoneBook);
       
  9883 	return TestStepResult();
       
  9884 	}
       
  9885 
       
  9886 TPtrC CCTSYIntegrationTestPhoneBookStore0022ADN::GetTestStepName()
       
  9887 /**
       
  9888  * @return The test step name.
       
  9889  */
       
  9890 	{
       
  9891 	return _L("CCTSYIntegrationTestPhoneBookStore0022ADN");
       
  9892 	}
       
  9893 
       
  9894 
       
  9895 
       
  9896 CCTSYIntegrationTestPhoneBookStore0022FDN::CCTSYIntegrationTestPhoneBookStore0022FDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9897 : CCTSYIntegrationTestPhoneBookStore0022Base(aEtelSessionMgr)
       
  9898 /**
       
  9899  * Constructor.
       
  9900  */
       
  9901 {
       
  9902 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0022FDN::GetTestStepName());
       
  9903 }
       
  9904 
       
  9905 CCTSYIntegrationTestPhoneBookStore0022FDN::~CCTSYIntegrationTestPhoneBookStore0022FDN()
       
  9906 /**
       
  9907  * Destructor.
       
  9908  */
       
  9909 {
       
  9910 }
       
  9911 
       
  9912 TVerdict CCTSYIntegrationTestPhoneBookStore0022FDN::doTestStepL()
       
  9913 /**
       
  9914  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0022
       
  9915  * @SYMFssID BA/CTSY/PBSTR-FDN-0022
       
  9916  * @SYMTestCaseDesc Delete a long (>20 digit) number from the SIM phone book. (FDN phone book)
       
  9917  * @SYMTestPriority High
       
  9918  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent
       
  9919  * @SYMTestExpectedResults Pass - Number is deleted.
       
  9920  * @SYMTestType CIT
       
  9921  * @SYMTestCaseDependencies live/manual
       
  9922  *
       
  9923  * Reason for test: Verify entry deleted successfully.
       
  9924  *
       
  9925  * @return - TVerdict code
       
  9926  */
       
  9927 	{
       
  9928 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
  9929 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
  9930 	DoTestProcedureL(KIccFdnPhoneBook,KETelIccFdnPhoneBook);
       
  9931 	return TestStepResult();
       
  9932 	}
       
  9933 
       
  9934 TPtrC CCTSYIntegrationTestPhoneBookStore0022FDN::GetTestStepName()
       
  9935 /**
       
  9936  * @return The test step name.
       
  9937  */
       
  9938 	{
       
  9939 	return _L("CCTSYIntegrationTestPhoneBookStore0022FDN");
       
  9940 	}
       
  9941 
       
  9942 
       
  9943 
       
  9944 CCTSYIntegrationTestPhoneBookStore0022SDN::CCTSYIntegrationTestPhoneBookStore0022SDN(CEtelSessionMgr& aEtelSessionMgr)
       
  9945 : CCTSYIntegrationTestPhoneBookStore0022Base(aEtelSessionMgr)
       
  9946 /**
       
  9947  * Constructor.
       
  9948  */
       
  9949 {
       
  9950 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0022SDN::GetTestStepName());
       
  9951 }
       
  9952 
       
  9953 CCTSYIntegrationTestPhoneBookStore0022SDN::~CCTSYIntegrationTestPhoneBookStore0022SDN()
       
  9954 /**
       
  9955  * Destructor.
       
  9956  */
       
  9957 {
       
  9958 }
       
  9959 
       
  9960 TVerdict CCTSYIntegrationTestPhoneBookStore0022SDN::doTestStepL()
       
  9961 /**
       
  9962  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0022
       
  9963  * @SYMFssID BA/CTSY/PBSTR-SDN-0022
       
  9964  * @SYMTestCaseDesc Delete a long (>20 digit) number from the SIM phone book. (SDN phone book)
       
  9965  * @SYMTestPriority High
       
  9966  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent
       
  9967  * @SYMTestExpectedResults Pass - Number is deleted.
       
  9968  * @SYMTestType CIT
       
  9969  * @SYMTestCaseDependencies live/manual
       
  9970  *
       
  9971  * Reason for test: Verify entry deleted successfully.
       
  9972  *
       
  9973  * @return - TVerdict code
       
  9974  */
       
  9975 	{
       
  9976 
       
  9977 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
  9978 	StartCleanup();
       
  9979 	return TestStepResult();
       
  9980 	}
       
  9981 
       
  9982 TPtrC CCTSYIntegrationTestPhoneBookStore0022SDN::GetTestStepName()
       
  9983 /**
       
  9984  * @return The test step name.
       
  9985  */
       
  9986 	{
       
  9987 	return _L("CCTSYIntegrationTestPhoneBookStore0022SDN");
       
  9988 	}
       
  9989 
       
  9990 
       
  9991 
       
  9992 CCTSYIntegrationTestPhoneBookStore0022VMBX::CCTSYIntegrationTestPhoneBookStore0022VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
  9993 : CCTSYIntegrationTestPhoneBookStore0022Base(aEtelSessionMgr)
       
  9994 /**
       
  9995  * Constructor.
       
  9996  */
       
  9997 {
       
  9998 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0022VMBX::GetTestStepName());
       
  9999 }
       
 10000 
       
 10001 CCTSYIntegrationTestPhoneBookStore0022VMBX::~CCTSYIntegrationTestPhoneBookStore0022VMBX()
       
 10002 /**
       
 10003  * Destructor.
       
 10004  */
       
 10005 {
       
 10006 }
       
 10007 
       
 10008 TVerdict CCTSYIntegrationTestPhoneBookStore0022VMBX::doTestStepL()
       
 10009 /**
       
 10010  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0022
       
 10011  * @SYMFssID BA/CTSY/PBSTR-VMBX-0022
       
 10012  * @SYMTestCaseDesc Delete a long (>20 digit) number from the SIM phone book. (VMBX phone book)
       
 10013  * @SYMTestPriority High
       
 10014  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent
       
 10015  * @SYMTestExpectedResults Pass - Number is deleted.
       
 10016  * @SYMTestType CIT
       
 10017  * @SYMTestCaseDependencies live/manual
       
 10018  *
       
 10019  * Reason for test: Verify entry deleted successfully.
       
 10020  *
       
 10021  * @return - TVerdict code
       
 10022  */
       
 10023 	{
       
 10024 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
 10025 	DoTestProcedureL(KIccVoiceMailBox,KETelIccVoiceMailBox);
       
 10026 	return TestStepResult();
       
 10027 	}
       
 10028 
       
 10029 TPtrC CCTSYIntegrationTestPhoneBookStore0022VMBX::GetTestStepName()
       
 10030 /**
       
 10031  * @return The test step name.
       
 10032  */
       
 10033 	{
       
 10034 	return _L("CCTSYIntegrationTestPhoneBookStore0022VMBX");
       
 10035 	}
       
 10036 
       
 10037 
       
 10038 
       
 10039 CCTSYIntegrationTestPhoneBookStore0022MBDN::CCTSYIntegrationTestPhoneBookStore0022MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10040 : CCTSYIntegrationTestPhoneBookStore0022Base(aEtelSessionMgr)
       
 10041 /**
       
 10042  * Constructor.
       
 10043  */
       
 10044 {
       
 10045 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0022MBDN::GetTestStepName());
       
 10046 }
       
 10047 
       
 10048 CCTSYIntegrationTestPhoneBookStore0022MBDN::~CCTSYIntegrationTestPhoneBookStore0022MBDN()
       
 10049 /**
       
 10050  * Destructor.
       
 10051  */
       
 10052 {
       
 10053 }
       
 10054 
       
 10055 TVerdict CCTSYIntegrationTestPhoneBookStore0022MBDN::doTestStepL()
       
 10056 /**
       
 10057  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0022
       
 10058  * @SYMFssID BA/CTSY/PBSTR-MBDN-0022
       
 10059  * @SYMTestCaseDesc Delete a long (>20 digit) number from the SIM phone book. (MBDN phone book)
       
 10060  * @SYMTestPriority High
       
 10061  * @SYMTestActions RMobilePhoneBookStore::Delete, RMobilePhoneBookStore::Read, RMobilePhoneStore::GetInfo, RMobilePhone::GetPhoneStoreInfo, RMobilePhoneStore::NotifyStoreEvent
       
 10062  * @SYMTestExpectedResults Pass - Number is deleted.
       
 10063  * @SYMTestType CIT
       
 10064  * @SYMTestCaseDependencies live/manual
       
 10065  *
       
 10066  * Reason for test: Verify entry deleted successfully.
       
 10067  *
       
 10068  * @return - TVerdict code
       
 10069  */
       
 10070 	{
       
 10071 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
 10072 	StartCleanup();
       
 10073 	return TestStepResult();
       
 10074 	}
       
 10075 
       
 10076 TPtrC CCTSYIntegrationTestPhoneBookStore0022MBDN::GetTestStepName()
       
 10077 /**
       
 10078  * @return The test step name.
       
 10079  */
       
 10080 	{
       
 10081 	return _L("CCTSYIntegrationTestPhoneBookStore0022MBDN");
       
 10082 	}
       
 10083 
       
 10084 
       
 10085 
       
 10086 CCTSYIntegrationTestPhoneBookStore0023ADN::CCTSYIntegrationTestPhoneBookStore0023ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 10087 : CCTSYIntegrationTestPhoneBookStore0023Base(aEtelSessionMgr)
       
 10088 /**
       
 10089  * Constructor.
       
 10090  */
       
 10091 {
       
 10092 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0023ADN::GetTestStepName());
       
 10093 }
       
 10094 
       
 10095 CCTSYIntegrationTestPhoneBookStore0023ADN::~CCTSYIntegrationTestPhoneBookStore0023ADN()
       
 10096 /**
       
 10097  * Destructor.
       
 10098  */
       
 10099 {
       
 10100 }
       
 10101 
       
 10102 TVerdict CCTSYIntegrationTestPhoneBookStore0023ADN::doTestStepL()
       
 10103 /**
       
 10104  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0023
       
 10105  * @SYMFssID BA/CTSY/PBSTR-ADN-0023
       
 10106  * @SYMTestCaseDesc Read a single phone book entry into a buffer that is too small. (ADN phone book)
       
 10107  * @SYMTestPriority High
       
 10108  * @SYMTestActions RMobilePhoneStore::Read
       
 10109  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10110  * @SYMTestType CIT
       
 10111  * @SYMTestCaseDependencies live/automatic
       
 10112  *
       
 10113  * Reason for test: Verify KErrGeneral returned
       
 10114  *
       
 10115  * @return - TVerdict code
       
 10116  */
       
 10117 	{
       
 10118 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10010);
       
 10119 	DoTestProcedureL(KIccAdnPhoneBook);
       
 10120 	return TestStepResult();
       
 10121 	}
       
 10122 
       
 10123 TPtrC CCTSYIntegrationTestPhoneBookStore0023ADN::GetTestStepName()
       
 10124 /**
       
 10125  * @return The test step name.
       
 10126  */
       
 10127 	{
       
 10128 	return _L("CCTSYIntegrationTestPhoneBookStore0023ADN");
       
 10129 	}
       
 10130 
       
 10131 
       
 10132 
       
 10133 CCTSYIntegrationTestPhoneBookStore0023FDN::CCTSYIntegrationTestPhoneBookStore0023FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10134 : CCTSYIntegrationTestPhoneBookStore0023Base(aEtelSessionMgr)
       
 10135 /**
       
 10136  * Constructor.
       
 10137  */
       
 10138 {
       
 10139 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0023FDN::GetTestStepName());
       
 10140 }
       
 10141 
       
 10142 CCTSYIntegrationTestPhoneBookStore0023FDN::~CCTSYIntegrationTestPhoneBookStore0023FDN()
       
 10143 /**
       
 10144  * Destructor.
       
 10145  */
       
 10146 {
       
 10147 }
       
 10148 
       
 10149 TVerdict CCTSYIntegrationTestPhoneBookStore0023FDN::doTestStepL()
       
 10150 /**
       
 10151  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0023
       
 10152  * @SYMFssID BA/CTSY/PBSTR-FDN-0023
       
 10153  * @SYMTestCaseDesc Read a single phone book entry into a buffer that is too small. (FDN phone book)
       
 10154  * @SYMTestPriority High
       
 10155  * @SYMTestActions RMobilePhoneStore::Read
       
 10156  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10157  * @SYMTestType CIT
       
 10158  * @SYMTestCaseDependencies live/automatic
       
 10159  *
       
 10160  * Reason for test: Verify KErrGeneral returned
       
 10161  *
       
 10162  * @return - TVerdict code
       
 10163  */
       
 10164 	{
       
 10165 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10010);
       
 10166 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 10167 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 10168 	DoTestProcedureL(KIccFdnPhoneBook);
       
 10169 	return TestStepResult();
       
 10170 	}
       
 10171 
       
 10172 TPtrC CCTSYIntegrationTestPhoneBookStore0023FDN::GetTestStepName()
       
 10173 /**
       
 10174  * @return The test step name.
       
 10175  */
       
 10176 	{
       
 10177 	return _L("CCTSYIntegrationTestPhoneBookStore0023FDN");
       
 10178 	}
       
 10179 
       
 10180 
       
 10181 
       
 10182 CCTSYIntegrationTestPhoneBookStore0023SDN::CCTSYIntegrationTestPhoneBookStore0023SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10183 : CCTSYIntegrationTestPhoneBookStore0023Base(aEtelSessionMgr)
       
 10184 /**
       
 10185  * Constructor.
       
 10186  */
       
 10187 {
       
 10188 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0023SDN::GetTestStepName());
       
 10189 }
       
 10190 
       
 10191 CCTSYIntegrationTestPhoneBookStore0023SDN::~CCTSYIntegrationTestPhoneBookStore0023SDN()
       
 10192 /**
       
 10193  * Destructor.
       
 10194  */
       
 10195 {
       
 10196 }
       
 10197 
       
 10198 TVerdict CCTSYIntegrationTestPhoneBookStore0023SDN::doTestStepL()
       
 10199 /**
       
 10200  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0023
       
 10201  * @SYMFssID BA/CTSY/PBSTR-SDN-0023
       
 10202  * @SYMTestCaseDesc Read a single phone book entry into a buffer that is too small. (SDN phone book)
       
 10203  * @SYMTestPriority High
       
 10204  * @SYMTestActions RMobilePhoneStore::Read
       
 10205  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10206  * @SYMTestType CIT
       
 10207  * @SYMTestCaseDependencies live/automatic
       
 10208  *
       
 10209  * Reason for test: Verify KErrGeneral returned
       
 10210  *
       
 10211  * @return - TVerdict code
       
 10212  */
       
 10213 	{
       
 10214 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
 10215 	StartCleanup();
       
 10216 	return TestStepResult();
       
 10217 	}
       
 10218 
       
 10219 TPtrC CCTSYIntegrationTestPhoneBookStore0023SDN::GetTestStepName()
       
 10220 /**
       
 10221  * @return The test step name.
       
 10222  */
       
 10223 	{
       
 10224 	return _L("CCTSYIntegrationTestPhoneBookStore0023SDN");
       
 10225 	}
       
 10226 
       
 10227 
       
 10228 
       
 10229 CCTSYIntegrationTestPhoneBookStore0023VMBX::CCTSYIntegrationTestPhoneBookStore0023VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 10230 : CCTSYIntegrationTestPhoneBookStore0023Base(aEtelSessionMgr)
       
 10231 /**
       
 10232  * Constructor.
       
 10233  */
       
 10234 {
       
 10235 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0023VMBX::GetTestStepName());
       
 10236 }
       
 10237 
       
 10238 CCTSYIntegrationTestPhoneBookStore0023VMBX::~CCTSYIntegrationTestPhoneBookStore0023VMBX()
       
 10239 /**
       
 10240  * Destructor.
       
 10241  */
       
 10242 {
       
 10243 }
       
 10244 
       
 10245 TVerdict CCTSYIntegrationTestPhoneBookStore0023VMBX::doTestStepL()
       
 10246 /**
       
 10247  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0023
       
 10248  * @SYMFssID BA/CTSY/PBSTR-VMBX-0023
       
 10249  * @SYMTestCaseDesc Read a single phone book entry into a buffer that is too small. (VMBX phone book)
       
 10250  * @SYMTestPriority High
       
 10251  * @SYMTestActions RMobilePhoneStore::Read
       
 10252  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10253  * @SYMTestType CIT
       
 10254  * @SYMTestCaseDependencies live/automatic
       
 10255  *
       
 10256  * Reason for test: Verify KErrGeneral returned
       
 10257  *
       
 10258  * @return - TVerdict code
       
 10259  */
       
 10260 	{
       
 10261 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
 10262 	DoTestProcedureL(KIccVoiceMailBox);
       
 10263 	return TestStepResult();
       
 10264 	}
       
 10265 
       
 10266 TPtrC CCTSYIntegrationTestPhoneBookStore0023VMBX::GetTestStepName()
       
 10267 /**
       
 10268  * @return The test step name.
       
 10269  */
       
 10270 	{
       
 10271 	return _L("CCTSYIntegrationTestPhoneBookStore0023VMBX");
       
 10272 	}
       
 10273 
       
 10274 
       
 10275 
       
 10276 CCTSYIntegrationTestPhoneBookStore0023MBDN::CCTSYIntegrationTestPhoneBookStore0023MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10277 : CCTSYIntegrationTestPhoneBookStore0023Base(aEtelSessionMgr)
       
 10278 /**
       
 10279  * Constructor.
       
 10280  */
       
 10281 {
       
 10282 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0023MBDN::GetTestStepName());
       
 10283 }
       
 10284 
       
 10285 CCTSYIntegrationTestPhoneBookStore0023MBDN::~CCTSYIntegrationTestPhoneBookStore0023MBDN()
       
 10286 /**
       
 10287  * Destructor.
       
 10288  */
       
 10289 {
       
 10290 }
       
 10291 
       
 10292 TVerdict CCTSYIntegrationTestPhoneBookStore0023MBDN::doTestStepL()
       
 10293 /**
       
 10294  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0023
       
 10295  * @SYMFssID BA/CTSY/PBSTR-MBDN-0023
       
 10296  * @SYMTestCaseDesc Read a single phone book entry into a buffer that is too small. (MBDN phone book)
       
 10297  * @SYMTestPriority High
       
 10298  * @SYMTestActions RMobilePhoneStore::Read
       
 10299  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10300  * @SYMTestType CIT
       
 10301  * @SYMTestCaseDependencies live/automatic
       
 10302  *
       
 10303  * Reason for test: Verify KErrGeneral returned
       
 10304  *
       
 10305  * @return - TVerdict code
       
 10306  */
       
 10307 	{
       
 10308 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10010);
       
 10309 	DoTestProcedureL(KIccMbdnPhoneBook);
       
 10310 	return TestStepResult();
       
 10311 	}
       
 10312 
       
 10313 TPtrC CCTSYIntegrationTestPhoneBookStore0023MBDN::GetTestStepName()
       
 10314 /**
       
 10315  * @return The test step name.
       
 10316  */
       
 10317 	{
       
 10318 	return _L("CCTSYIntegrationTestPhoneBookStore0023MBDN");
       
 10319 	}
       
 10320 
       
 10321 
       
 10322 
       
 10323 CCTSYIntegrationTestPhoneBookStore0024ADN::CCTSYIntegrationTestPhoneBookStore0024ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 10324 : CCTSYIntegrationTestPhoneBookStore0024Base(aEtelSessionMgr)
       
 10325 /**
       
 10326  * Constructor.
       
 10327  */
       
 10328 {
       
 10329 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0024ADN::GetTestStepName());
       
 10330 }
       
 10331 
       
 10332 CCTSYIntegrationTestPhoneBookStore0024ADN::~CCTSYIntegrationTestPhoneBookStore0024ADN()
       
 10333 /**
       
 10334  * Destructor.
       
 10335  */
       
 10336 {
       
 10337 }
       
 10338 
       
 10339 TVerdict CCTSYIntegrationTestPhoneBookStore0024ADN::doTestStepL()
       
 10340 /**
       
 10341  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0024
       
 10342  * @SYMFssID BA/CTSY/PBSTR-ADN-0024
       
 10343  * @SYMTestCaseDesc Read multiple phone book entries when phone book is empty. (ADN phone book)
       
 10344  * @SYMTestPriority High
       
 10345  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10346  * @SYMTestExpectedResults Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
 10347  * @SYMTestType CIT
       
 10348  * @SYMTestCaseDependencies live/automatic
       
 10349  *
       
 10350  * Reason for test: Verify KErrNotFound is returned.
       
 10351  *
       
 10352  * @return - TVerdict code
       
 10353  */
       
 10354 	{
       
 10355 	DoTestProcedureL(KIccAdnPhoneBook);
       
 10356 	return TestStepResult();
       
 10357 	}
       
 10358 
       
 10359 TPtrC CCTSYIntegrationTestPhoneBookStore0024ADN::GetTestStepName()
       
 10360 /**
       
 10361  * @return The test step name.
       
 10362  */
       
 10363 	{
       
 10364 	return _L("CCTSYIntegrationTestPhoneBookStore0024ADN");
       
 10365 	}
       
 10366 
       
 10367 
       
 10368 
       
 10369 CCTSYIntegrationTestPhoneBookStore0024FDN::CCTSYIntegrationTestPhoneBookStore0024FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10370 : CCTSYIntegrationTestPhoneBookStore0024Base(aEtelSessionMgr)
       
 10371 /**
       
 10372  * Constructor.
       
 10373  */
       
 10374 {
       
 10375 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0024FDN::GetTestStepName());
       
 10376 }
       
 10377 
       
 10378 CCTSYIntegrationTestPhoneBookStore0024FDN::~CCTSYIntegrationTestPhoneBookStore0024FDN()
       
 10379 /**
       
 10380  * Destructor.
       
 10381  */
       
 10382 {
       
 10383 }
       
 10384 
       
 10385 TVerdict CCTSYIntegrationTestPhoneBookStore0024FDN::doTestStepL()
       
 10386 /**
       
 10387  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0024
       
 10388  * @SYMFssID BA/CTSY/PBSTR-FDN-0024
       
 10389  * @SYMTestCaseDesc Read multiple phone book entries when phone book is empty. (FDN phone book)
       
 10390  * @SYMTestPriority High
       
 10391  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10392  * @SYMTestExpectedResults Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
 10393  * @SYMTestType CIT
       
 10394  * @SYMTestCaseDependencies live/automatic
       
 10395  *
       
 10396  * Reason for test: Verify KErrNotFound is returned.
       
 10397  *
       
 10398  * @return - TVerdict code
       
 10399  */
       
 10400 	{
       
 10401 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 10402 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 10403 	DoTestProcedureL(KIccFdnPhoneBook);
       
 10404 	return TestStepResult();
       
 10405 	}
       
 10406 
       
 10407 TPtrC CCTSYIntegrationTestPhoneBookStore0024FDN::GetTestStepName()
       
 10408 /**
       
 10409  * @return The test step name.
       
 10410  */
       
 10411 	{
       
 10412 	return _L("CCTSYIntegrationTestPhoneBookStore0024FDN");
       
 10413 	}
       
 10414 
       
 10415 
       
 10416 
       
 10417 CCTSYIntegrationTestPhoneBookStore0024SDN::CCTSYIntegrationTestPhoneBookStore0024SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10418 : CCTSYIntegrationTestPhoneBookStore0024Base(aEtelSessionMgr)
       
 10419 /**
       
 10420  * Constructor.
       
 10421  */
       
 10422 {
       
 10423 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0024SDN::GetTestStepName());
       
 10424 }
       
 10425 
       
 10426 CCTSYIntegrationTestPhoneBookStore0024SDN::~CCTSYIntegrationTestPhoneBookStore0024SDN()
       
 10427 /**
       
 10428  * Destructor.
       
 10429  */
       
 10430 {
       
 10431 }
       
 10432 
       
 10433 TVerdict CCTSYIntegrationTestPhoneBookStore0024SDN::doTestStepL()
       
 10434 /**
       
 10435  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0024
       
 10436  * @SYMFssID BA/CTSY/PBSTR-SDN-0024
       
 10437  * @SYMTestCaseDesc Read multiple phone book entries when phone book is empty. (SDN phone book)
       
 10438  * @SYMTestPriority High
       
 10439  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10440  * @SYMTestExpectedResults Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
 10441  * @SYMTestType CIT
       
 10442  * @SYMTestCaseDependencies live/automatic
       
 10443  *
       
 10444  * Reason for test: Verify KErrNotFound is returned.
       
 10445  *
       
 10446  * @return - TVerdict code
       
 10447  */
       
 10448 	{
       
 10449 
       
 10450 	DoTestProcedureL(KIccSdnPhoneBook);
       
 10451 	return TestStepResult();
       
 10452 	}
       
 10453 
       
 10454 TPtrC CCTSYIntegrationTestPhoneBookStore0024SDN::GetTestStepName()
       
 10455 /**
       
 10456  * @return The test step name.
       
 10457  */
       
 10458 	{
       
 10459 	return _L("CCTSYIntegrationTestPhoneBookStore0024SDN");
       
 10460 	}
       
 10461 
       
 10462 
       
 10463 
       
 10464 CCTSYIntegrationTestPhoneBookStore0024VMBX::CCTSYIntegrationTestPhoneBookStore0024VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 10465 : CCTSYIntegrationTestPhoneBookStore0024Base(aEtelSessionMgr)
       
 10466 /**
       
 10467  * Constructor.
       
 10468  */
       
 10469 {
       
 10470 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0024VMBX::GetTestStepName());
       
 10471 }
       
 10472 
       
 10473 CCTSYIntegrationTestPhoneBookStore0024VMBX::~CCTSYIntegrationTestPhoneBookStore0024VMBX()
       
 10474 /**
       
 10475  * Destructor.
       
 10476  */
       
 10477 {
       
 10478 }
       
 10479 
       
 10480 TVerdict CCTSYIntegrationTestPhoneBookStore0024VMBX::doTestStepL()
       
 10481 /**
       
 10482  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0024
       
 10483  * @SYMFssID BA/CTSY/PBSTR-VMBX-0024
       
 10484  * @SYMTestCaseDesc Read multiple phone book entries when phone book is empty. (VMBX phone book)
       
 10485  * @SYMTestPriority High
       
 10486  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10487  * @SYMTestExpectedResults Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
 10488  * @SYMTestType CIT
       
 10489  * @SYMTestCaseDependencies live/automatic
       
 10490  *
       
 10491  * Reason for test: Verify KErrNotFound is returned.
       
 10492  *
       
 10493  * @return - TVerdict code
       
 10494  */
       
 10495 	{
       
 10496 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
 10497 	DoTestProcedureL(KIccVoiceMailBox);
       
 10498 	return TestStepResult();
       
 10499 	}
       
 10500 
       
 10501 TPtrC CCTSYIntegrationTestPhoneBookStore0024VMBX::GetTestStepName()
       
 10502 /**
       
 10503  * @return The test step name.
       
 10504  */
       
 10505 	{
       
 10506 	return _L("CCTSYIntegrationTestPhoneBookStore0024VMBX");
       
 10507 	}
       
 10508 
       
 10509 
       
 10510 
       
 10511 CCTSYIntegrationTestPhoneBookStore0024MBDN::CCTSYIntegrationTestPhoneBookStore0024MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10512 : CCTSYIntegrationTestPhoneBookStore0024Base(aEtelSessionMgr)
       
 10513 /**
       
 10514  * Constructor.
       
 10515  */
       
 10516 {
       
 10517 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0024MBDN::GetTestStepName());
       
 10518 }
       
 10519 
       
 10520 CCTSYIntegrationTestPhoneBookStore0024MBDN::~CCTSYIntegrationTestPhoneBookStore0024MBDN()
       
 10521 /**
       
 10522  * Destructor.
       
 10523  */
       
 10524 {
       
 10525 }
       
 10526 
       
 10527 TVerdict CCTSYIntegrationTestPhoneBookStore0024MBDN::doTestStepL()
       
 10528 /**
       
 10529  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0024
       
 10530  * @SYMFssID BA/CTSY/PBSTR-MBDN-0024
       
 10531  * @SYMTestCaseDesc Read multiple phone book entries when phone book is empty. (MBDN phone book)
       
 10532  * @SYMTestPriority High
       
 10533  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10534  * @SYMTestExpectedResults Pass - Number of entries TSY tried to read and number of entries actually read correct.
       
 10535  * @SYMTestType CIT
       
 10536  * @SYMTestCaseDependencies live/automatic
       
 10537  *
       
 10538  * Reason for test: Verify KErrNotFound is returned.
       
 10539  *
       
 10540  * @return - TVerdict code
       
 10541  */
       
 10542 	{
       
 10543 	DoTestProcedureL(KIccMbdnPhoneBook);
       
 10544 	return TestStepResult();
       
 10545 	}
       
 10546 
       
 10547 TPtrC CCTSYIntegrationTestPhoneBookStore0024MBDN::GetTestStepName()
       
 10548 /**
       
 10549  * @return The test step name.
       
 10550  */
       
 10551 	{
       
 10552 	return _L("CCTSYIntegrationTestPhoneBookStore0024MBDN");
       
 10553 	}
       
 10554 
       
 10555 
       
 10556 
       
 10557 CCTSYIntegrationTestPhoneBookStore0025ADN::CCTSYIntegrationTestPhoneBookStore0025ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 10558 : CCTSYIntegrationTestPhoneBookStore0025Base(aEtelSessionMgr)
       
 10559 /**
       
 10560  * Constructor.
       
 10561  */
       
 10562 {
       
 10563 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0025ADN::GetTestStepName());
       
 10564 }
       
 10565 
       
 10566 CCTSYIntegrationTestPhoneBookStore0025ADN::~CCTSYIntegrationTestPhoneBookStore0025ADN()
       
 10567 /**
       
 10568  * Destructor.
       
 10569  */
       
 10570 {
       
 10571 }
       
 10572 
       
 10573 TVerdict CCTSYIntegrationTestPhoneBookStore0025ADN::doTestStepL()
       
 10574 /**
       
 10575  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0025
       
 10576  * @SYMFssID BA/CTSY/PBSTR-ADN-0025
       
 10577  * @SYMTestCaseDesc Read multiple phone book entries into a buffer that is too small. (ADN phone book)
       
 10578  * @SYMTestPriority High
       
 10579  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10580  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10581  * @SYMTestType CIT
       
 10582  * @SYMTestCaseDependencies live/automatic
       
 10583  *
       
 10584  * Reason for test: Verify KErrGeneral returned
       
 10585  *
       
 10586  * @return - TVerdict code
       
 10587  */
       
 10588 	{
       
 10589 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10010);
       
 10590 	DoTestProcedureL(KIccAdnPhoneBook);
       
 10591 	return TestStepResult();
       
 10592 	}
       
 10593 
       
 10594 TPtrC CCTSYIntegrationTestPhoneBookStore0025ADN::GetTestStepName()
       
 10595 /**
       
 10596  * @return The test step name.
       
 10597  */
       
 10598 	{
       
 10599 	return _L("CCTSYIntegrationTestPhoneBookStore0025ADN");
       
 10600 	}
       
 10601 
       
 10602 
       
 10603 
       
 10604 CCTSYIntegrationTestPhoneBookStore0025FDN::CCTSYIntegrationTestPhoneBookStore0025FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10605 : CCTSYIntegrationTestPhoneBookStore0025Base(aEtelSessionMgr)
       
 10606 /**
       
 10607  * Constructor.
       
 10608  */
       
 10609 {
       
 10610 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0025FDN::GetTestStepName());
       
 10611 }
       
 10612 
       
 10613 CCTSYIntegrationTestPhoneBookStore0025FDN::~CCTSYIntegrationTestPhoneBookStore0025FDN()
       
 10614 /**
       
 10615  * Destructor.
       
 10616  */
       
 10617 {
       
 10618 }
       
 10619 
       
 10620 TVerdict CCTSYIntegrationTestPhoneBookStore0025FDN::doTestStepL()
       
 10621 /**
       
 10622  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0025
       
 10623  * @SYMFssID BA/CTSY/PBSTR-FDN-0025
       
 10624  * @SYMTestCaseDesc Read multiple phone book entries into a buffer that is too small. (FDN phone book)
       
 10625  * @SYMTestPriority High
       
 10626  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10627  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10628  * @SYMTestType CIT
       
 10629  * @SYMTestCaseDependencies live/automatic
       
 10630  *
       
 10631  * Reason for test: Verify KErrGeneral returned
       
 10632  *
       
 10633  * @return - TVerdict code
       
 10634  */
       
 10635 	{
       
 10636 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10010);
       
 10637 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 10638 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 10639 	DoTestProcedureL(KIccFdnPhoneBook);
       
 10640 	return TestStepResult();
       
 10641 	}
       
 10642 
       
 10643 TPtrC CCTSYIntegrationTestPhoneBookStore0025FDN::GetTestStepName()
       
 10644 /**
       
 10645  * @return The test step name.
       
 10646  */
       
 10647 	{
       
 10648 	return _L("CCTSYIntegrationTestPhoneBookStore0025FDN");
       
 10649 	}
       
 10650 
       
 10651 
       
 10652 
       
 10653 CCTSYIntegrationTestPhoneBookStore0025SDN::CCTSYIntegrationTestPhoneBookStore0025SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10654 : CCTSYIntegrationTestPhoneBookStore0025Base(aEtelSessionMgr)
       
 10655 /**
       
 10656  * Constructor.
       
 10657  */
       
 10658 {
       
 10659 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0025SDN::GetTestStepName());
       
 10660 }
       
 10661 
       
 10662 CCTSYIntegrationTestPhoneBookStore0025SDN::~CCTSYIntegrationTestPhoneBookStore0025SDN()
       
 10663 /**
       
 10664  * Destructor.
       
 10665  */
       
 10666 {
       
 10667 }
       
 10668 
       
 10669 TVerdict CCTSYIntegrationTestPhoneBookStore0025SDN::doTestStepL()
       
 10670 /**
       
 10671  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0025
       
 10672  * @SYMFssID BA/CTSY/PBSTR-SDN-0025
       
 10673  * @SYMTestCaseDesc Read multiple phone book entries into a buffer that is too small. (SDN phone book)
       
 10674  * @SYMTestPriority High
       
 10675  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10676  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10677  * @SYMTestType CIT
       
 10678  * @SYMTestCaseDependencies live/automatic
       
 10679  *
       
 10680  * Reason for test: Verify KErrGeneral returned
       
 10681  *
       
 10682  * @return - TVerdict code
       
 10683  */
       
 10684 	{
       
 10685 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
 10686 	StartCleanup();
       
 10687 	return TestStepResult();
       
 10688 	}
       
 10689 
       
 10690 TPtrC CCTSYIntegrationTestPhoneBookStore0025SDN::GetTestStepName()
       
 10691 /**
       
 10692  * @return The test step name.
       
 10693  */
       
 10694 	{
       
 10695 	return _L("CCTSYIntegrationTestPhoneBookStore0025SDN");
       
 10696 	}
       
 10697 
       
 10698 
       
 10699 
       
 10700 CCTSYIntegrationTestPhoneBookStore0025VMBX::CCTSYIntegrationTestPhoneBookStore0025VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 10701 : CCTSYIntegrationTestPhoneBookStore0025Base(aEtelSessionMgr)
       
 10702 /**
       
 10703  * Constructor.
       
 10704  */
       
 10705 {
       
 10706 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0025VMBX::GetTestStepName());
       
 10707 }
       
 10708 
       
 10709 CCTSYIntegrationTestPhoneBookStore0025VMBX::~CCTSYIntegrationTestPhoneBookStore0025VMBX()
       
 10710 /**
       
 10711  * Destructor.
       
 10712  */
       
 10713 {
       
 10714 }
       
 10715 
       
 10716 TVerdict CCTSYIntegrationTestPhoneBookStore0025VMBX::doTestStepL()
       
 10717 /**
       
 10718  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0025
       
 10719  * @SYMFssID BA/CTSY/PBSTR-VMBX-0025
       
 10720  * @SYMTestCaseDesc Read multiple phone book entries into a buffer that is too small. (VMBX phone book)
       
 10721  * @SYMTestPriority High
       
 10722  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10723  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10724  * @SYMTestType CIT
       
 10725  * @SYMTestCaseDependencies live/automatic
       
 10726  *
       
 10727  * Reason for test: Verify KErrGeneral returned
       
 10728  *
       
 10729  * @return - TVerdict code
       
 10730  */
       
 10731 	{
       
 10732 	ERR_PRINTF2(_L("<font color=Orange>$CTSYKnownFailure: defect id = %d</font>"), 10006);
       
 10733 	DoTestProcedureL(KIccVoiceMailBox);
       
 10734 	return TestStepResult();
       
 10735 	}
       
 10736 
       
 10737 TPtrC CCTSYIntegrationTestPhoneBookStore0025VMBX::GetTestStepName()
       
 10738 /**
       
 10739  * @return The test step name.
       
 10740  */
       
 10741 	{
       
 10742 	return _L("CCTSYIntegrationTestPhoneBookStore0025VMBX");
       
 10743 	}
       
 10744 
       
 10745 
       
 10746 
       
 10747 CCTSYIntegrationTestPhoneBookStore0025MBDN::CCTSYIntegrationTestPhoneBookStore0025MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10748 : CCTSYIntegrationTestPhoneBookStore0025Base(aEtelSessionMgr)
       
 10749 /**
       
 10750  * Constructor.
       
 10751  */
       
 10752 {
       
 10753 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0025MBDN::GetTestStepName());
       
 10754 }
       
 10755 
       
 10756 CCTSYIntegrationTestPhoneBookStore0025MBDN::~CCTSYIntegrationTestPhoneBookStore0025MBDN()
       
 10757 /**
       
 10758  * Destructor.
       
 10759  */
       
 10760 {
       
 10761 }
       
 10762 
       
 10763 TVerdict CCTSYIntegrationTestPhoneBookStore0025MBDN::doTestStepL()
       
 10764 /**
       
 10765  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0025
       
 10766  * @SYMFssID BA/CTSY/PBSTR-MBDN-0025
       
 10767  * @SYMTestCaseDesc Read multiple phone book entries into a buffer that is too small. (MBDN phone book)
       
 10768  * @SYMTestPriority High
       
 10769  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10770  * @SYMTestExpectedResults Pass - KErrGeneral returned when the descriptor is too small.
       
 10771  * @SYMTestType CIT
       
 10772  * @SYMTestCaseDependencies live/automatic
       
 10773  *
       
 10774  * Reason for test: Verify KErrGeneral returned
       
 10775  *
       
 10776  * @return - TVerdict code
       
 10777  */
       
 10778 	{
       
 10779 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
 10780 	StartCleanup();
       
 10781 
       
 10782 	return TestStepResult();
       
 10783 	}
       
 10784 
       
 10785 TPtrC CCTSYIntegrationTestPhoneBookStore0025MBDN::GetTestStepName()
       
 10786 /**
       
 10787  * @return The test step name.
       
 10788  */
       
 10789 	{
       
 10790 	return _L("CCTSYIntegrationTestPhoneBookStore0025MBDN");
       
 10791 	}
       
 10792 
       
 10793 
       
 10794 
       
 10795 CCTSYIntegrationTestPhoneBookStore0026ADN::CCTSYIntegrationTestPhoneBookStore0026ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 10796 : CCTSYIntegrationTestPhoneBookStore0026Base(aEtelSessionMgr)
       
 10797 /**
       
 10798  * Constructor.
       
 10799  */
       
 10800 {
       
 10801 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0026ADN::GetTestStepName());
       
 10802 }
       
 10803 
       
 10804 CCTSYIntegrationTestPhoneBookStore0026ADN::~CCTSYIntegrationTestPhoneBookStore0026ADN()
       
 10805 /**
       
 10806  * Destructor.
       
 10807  */
       
 10808 {
       
 10809 }
       
 10810 
       
 10811 TVerdict CCTSYIntegrationTestPhoneBookStore0026ADN::doTestStepL()
       
 10812 /**
       
 10813  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0026
       
 10814  * @SYMFssID BA/CTSY/PBSTR-ADN-0026
       
 10815  * @SYMTestCaseDesc Cancel reading a single entry from the phone book. (ADN phone book)
       
 10816  * @SYMTestPriority High
       
 10817  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10818  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 10819  * @SYMTestType CIT
       
 10820  * @SYMTestCaseDependencies live/automatic
       
 10821  *
       
 10822  * Reason for test: Verify KErrCancel returned.
       
 10823  *
       
 10824  * @return - TVerdict code
       
 10825  */
       
 10826 	{
       
 10827 	DoTestProcedureL(KIccAdnPhoneBook);
       
 10828 	return TestStepResult();
       
 10829 	}
       
 10830 
       
 10831 TPtrC CCTSYIntegrationTestPhoneBookStore0026ADN::GetTestStepName()
       
 10832 /**
       
 10833  * @return The test step name.
       
 10834  */
       
 10835 	{
       
 10836 	return _L("CCTSYIntegrationTestPhoneBookStore0026ADN");
       
 10837 	}
       
 10838 
       
 10839 
       
 10840 
       
 10841 CCTSYIntegrationTestPhoneBookStore0026FDN::CCTSYIntegrationTestPhoneBookStore0026FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10842 : CCTSYIntegrationTestPhoneBookStore0026Base(aEtelSessionMgr)
       
 10843 /**
       
 10844  * Constructor.
       
 10845  */
       
 10846 {
       
 10847 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0026FDN::GetTestStepName());
       
 10848 }
       
 10849 
       
 10850 CCTSYIntegrationTestPhoneBookStore0026FDN::~CCTSYIntegrationTestPhoneBookStore0026FDN()
       
 10851 /**
       
 10852  * Destructor.
       
 10853  */
       
 10854 {
       
 10855 }
       
 10856 
       
 10857 TVerdict CCTSYIntegrationTestPhoneBookStore0026FDN::doTestStepL()
       
 10858 /**
       
 10859  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0026
       
 10860  * @SYMFssID BA/CTSY/PBSTR-FDN-0026
       
 10861  * @SYMTestCaseDesc Cancel reading a single entry from the phone book. (FDN phone book)
       
 10862  * @SYMTestPriority High
       
 10863  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10864  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 10865  * @SYMTestType CIT
       
 10866  * @SYMTestCaseDependencies live/automatic
       
 10867  *
       
 10868  * Reason for test: Verify KErrCancel returned.
       
 10869  *
       
 10870  * @return - TVerdict code
       
 10871  */
       
 10872 	{
       
 10873 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 10874 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 10875 	DoTestProcedureL(KIccFdnPhoneBook);
       
 10876 	return TestStepResult();
       
 10877 	}
       
 10878 
       
 10879 TPtrC CCTSYIntegrationTestPhoneBookStore0026FDN::GetTestStepName()
       
 10880 /**
       
 10881  * @return The test step name.
       
 10882  */
       
 10883 	{
       
 10884 	return _L("CCTSYIntegrationTestPhoneBookStore0026FDN");
       
 10885 	}
       
 10886 
       
 10887 
       
 10888 
       
 10889 CCTSYIntegrationTestPhoneBookStore0026SDN::CCTSYIntegrationTestPhoneBookStore0026SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10890 : CCTSYIntegrationTestPhoneBookStore0026Base(aEtelSessionMgr)
       
 10891 /**
       
 10892  * Constructor.
       
 10893  */
       
 10894 {
       
 10895 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0026SDN::GetTestStepName());
       
 10896 }
       
 10897 
       
 10898 CCTSYIntegrationTestPhoneBookStore0026SDN::~CCTSYIntegrationTestPhoneBookStore0026SDN()
       
 10899 /**
       
 10900  * Destructor.
       
 10901  */
       
 10902 {
       
 10903 }
       
 10904 
       
 10905 TVerdict CCTSYIntegrationTestPhoneBookStore0026SDN::doTestStepL()
       
 10906 /**
       
 10907  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0026
       
 10908  * @SYMFssID BA/CTSY/PBSTR-SDN-0026
       
 10909  * @SYMTestCaseDesc Cancel reading a single entry from the phone book. (SDN phone book)
       
 10910  * @SYMTestPriority High
       
 10911  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10912  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 10913  * @SYMTestType CIT
       
 10914  * @SYMTestCaseDependencies live/automatic
       
 10915  *
       
 10916  * Reason for test: Verify KErrCancel returned.
       
 10917  *
       
 10918  * @return - TVerdict code
       
 10919  */
       
 10920 	{
       
 10921 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
 10922 	StartCleanup();
       
 10923 	return TestStepResult();
       
 10924 	}
       
 10925 
       
 10926 TPtrC CCTSYIntegrationTestPhoneBookStore0026SDN::GetTestStepName()
       
 10927 /**
       
 10928  * @return The test step name.
       
 10929  */
       
 10930 	{
       
 10931 	return _L("CCTSYIntegrationTestPhoneBookStore0026SDN");
       
 10932 	}
       
 10933 
       
 10934 
       
 10935 
       
 10936 CCTSYIntegrationTestPhoneBookStore0026VMBX::CCTSYIntegrationTestPhoneBookStore0026VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 10937 : CCTSYIntegrationTestPhoneBookStore0026Base(aEtelSessionMgr)
       
 10938 /**
       
 10939  * Constructor.
       
 10940  */
       
 10941 {
       
 10942 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0026VMBX::GetTestStepName());
       
 10943 }
       
 10944 
       
 10945 CCTSYIntegrationTestPhoneBookStore0026VMBX::~CCTSYIntegrationTestPhoneBookStore0026VMBX()
       
 10946 /**
       
 10947  * Destructor.
       
 10948  */
       
 10949 {
       
 10950 }
       
 10951 
       
 10952 TVerdict CCTSYIntegrationTestPhoneBookStore0026VMBX::doTestStepL()
       
 10953 /**
       
 10954  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0026
       
 10955  * @SYMFssID BA/CTSY/PBSTR-VMBX-0026
       
 10956  * @SYMTestCaseDesc Cancel reading a single entry from the phone book. (VMBX phone book)
       
 10957  * @SYMTestPriority High
       
 10958  * @SYMTestActions RMobilePhoneBookStore::Read
       
 10959  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 10960  * @SYMTestType CIT
       
 10961  * @SYMTestCaseDependencies live/automatic
       
 10962  *
       
 10963  * Reason for test: Verify KErrCancel returned.
       
 10964  *
       
 10965  * @return - TVerdict code
       
 10966  */
       
 10967 	{
       
 10968 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10006</font>"));
       
 10969 	DoTestProcedureL(KIccVoiceMailBox);
       
 10970 	return TestStepResult();
       
 10971 	}
       
 10972 
       
 10973 TPtrC CCTSYIntegrationTestPhoneBookStore0026VMBX::GetTestStepName()
       
 10974 /**
       
 10975  * @return The test step name.
       
 10976  */
       
 10977 	{
       
 10978 	return _L("CCTSYIntegrationTestPhoneBookStore0026VMBX");
       
 10979 	}
       
 10980 
       
 10981 
       
 10982 
       
 10983 CCTSYIntegrationTestPhoneBookStore0026MBDN::CCTSYIntegrationTestPhoneBookStore0026MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 10984 : CCTSYIntegrationTestPhoneBookStore0026Base(aEtelSessionMgr)
       
 10985 /**
       
 10986  * Constructor.
       
 10987  */
       
 10988 {
       
 10989 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0026MBDN::GetTestStepName());
       
 10990 }
       
 10991 
       
 10992 CCTSYIntegrationTestPhoneBookStore0026MBDN::~CCTSYIntegrationTestPhoneBookStore0026MBDN()
       
 10993 /**
       
 10994  * Destructor.
       
 10995  */
       
 10996 {
       
 10997 }
       
 10998 
       
 10999 TVerdict CCTSYIntegrationTestPhoneBookStore0026MBDN::doTestStepL()
       
 11000 /**
       
 11001  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0026
       
 11002  * @SYMFssID BA/CTSY/PBSTR-MBDN-0026
       
 11003  * @SYMTestCaseDesc Cancel reading a single entry from the phone book. (MBDN phone book)
       
 11004  * @SYMTestPriority High
       
 11005  * @SYMTestActions RMobilePhoneBookStore::Read
       
 11006  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11007  * @SYMTestType CIT
       
 11008  * @SYMTestCaseDependencies live/automatic
       
 11009  *
       
 11010  * Reason for test: Verify KErrCancel returned.
       
 11011  *
       
 11012  * @return - TVerdict code
       
 11013  */
       
 11014 	{
       
 11015 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
 11016 	StartCleanup();
       
 11017 	return TestStepResult();
       
 11018 	}
       
 11019 
       
 11020 TPtrC CCTSYIntegrationTestPhoneBookStore0026MBDN::GetTestStepName()
       
 11021 /**
       
 11022  * @return The test step name.
       
 11023  */
       
 11024 	{
       
 11025 	return _L("CCTSYIntegrationTestPhoneBookStore0026MBDN");
       
 11026 	}
       
 11027 
       
 11028 
       
 11029 
       
 11030 CCTSYIntegrationTestPhoneBookStore0027ADN::CCTSYIntegrationTestPhoneBookStore0027ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 11031 : CCTSYIntegrationTestPhoneBookStore0027Base(aEtelSessionMgr)
       
 11032 /**
       
 11033  * Constructor.
       
 11034  */
       
 11035 {
       
 11036 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0027ADN::GetTestStepName());
       
 11037 }
       
 11038 
       
 11039 CCTSYIntegrationTestPhoneBookStore0027ADN::~CCTSYIntegrationTestPhoneBookStore0027ADN()
       
 11040 /**
       
 11041  * Destructor.
       
 11042  */
       
 11043 {
       
 11044 }
       
 11045 
       
 11046 TVerdict CCTSYIntegrationTestPhoneBookStore0027ADN::doTestStepL()
       
 11047 /**
       
 11048  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0027
       
 11049  * @SYMFssID BA/CTSY/PBSTR-ADN-0027
       
 11050  * @SYMTestCaseDesc Cancel writing an entry to the phone book. (ADN phone book)
       
 11051  * @SYMTestPriority High
       
 11052  * @SYMTestActions RMobilePhoneBookStore::Write
       
 11053  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11054  * @SYMTestType CIT
       
 11055  * @SYMTestCaseDependencies live/automatic
       
 11056  *
       
 11057  * Reason for test: Verify KErrCancel returned.
       
 11058  *
       
 11059  * @return - TVerdict code
       
 11060  */
       
 11061 	{
       
 11062 	DoTestProcedureL(KIccAdnPhoneBook);
       
 11063 	return TestStepResult();
       
 11064 	}
       
 11065 
       
 11066 TPtrC CCTSYIntegrationTestPhoneBookStore0027ADN::GetTestStepName()
       
 11067 /**
       
 11068  * @return The test step name.
       
 11069  */
       
 11070 	{
       
 11071 	return _L("CCTSYIntegrationTestPhoneBookStore0027ADN");
       
 11072 	}
       
 11073 
       
 11074 
       
 11075 
       
 11076 CCTSYIntegrationTestPhoneBookStore0027FDN::CCTSYIntegrationTestPhoneBookStore0027FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11077 : CCTSYIntegrationTestPhoneBookStore0027Base(aEtelSessionMgr)
       
 11078 /**
       
 11079  * Constructor.
       
 11080  */
       
 11081 {
       
 11082 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0027FDN::GetTestStepName());
       
 11083 }
       
 11084 
       
 11085 CCTSYIntegrationTestPhoneBookStore0027FDN::~CCTSYIntegrationTestPhoneBookStore0027FDN()
       
 11086 /**
       
 11087  * Destructor.
       
 11088  */
       
 11089 {
       
 11090 }
       
 11091 
       
 11092 TVerdict CCTSYIntegrationTestPhoneBookStore0027FDN::doTestStepL()
       
 11093 /**
       
 11094  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0027
       
 11095  * @SYMFssID BA/CTSY/PBSTR-FDN-0027
       
 11096  * @SYMTestCaseDesc Cancel writing an entry to the phone book. (FDN phone book)
       
 11097  * @SYMTestPriority High
       
 11098  * @SYMTestActions RMobilePhoneBookStore::Write
       
 11099  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11100  * @SYMTestType CIT
       
 11101  * @SYMTestCaseDependencies live/automatic
       
 11102  *
       
 11103  * Reason for test: Verify KErrCancel returned.
       
 11104  *
       
 11105  * @return - TVerdict code
       
 11106  */
       
 11107 	{
       
 11108 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 11109 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 11110 	DoTestProcedureL(KIccFdnPhoneBook);
       
 11111 	return TestStepResult();
       
 11112 	}
       
 11113 
       
 11114 TPtrC CCTSYIntegrationTestPhoneBookStore0027FDN::GetTestStepName()
       
 11115 /**
       
 11116  * @return The test step name.
       
 11117  */
       
 11118 	{
       
 11119 	return _L("CCTSYIntegrationTestPhoneBookStore0027FDN");
       
 11120 	}
       
 11121 
       
 11122 
       
 11123 
       
 11124 CCTSYIntegrationTestPhoneBookStore0027SDN::CCTSYIntegrationTestPhoneBookStore0027SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11125 : CCTSYIntegrationTestPhoneBookStore0027Base(aEtelSessionMgr)
       
 11126 /**
       
 11127  * Constructor.
       
 11128  */
       
 11129 {
       
 11130 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0027SDN::GetTestStepName());
       
 11131 }
       
 11132 
       
 11133 CCTSYIntegrationTestPhoneBookStore0027SDN::~CCTSYIntegrationTestPhoneBookStore0027SDN()
       
 11134 /**
       
 11135  * Destructor.
       
 11136  */
       
 11137 {
       
 11138 }
       
 11139 
       
 11140 TVerdict CCTSYIntegrationTestPhoneBookStore0027SDN::doTestStepL()
       
 11141 /**
       
 11142  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0027
       
 11143  * @SYMFssID BA/CTSY/PBSTR-SDN-0027
       
 11144  * @SYMTestCaseDesc Cancel writing an entry to the phone book. (SDN phone book)
       
 11145  * @SYMTestPriority High
       
 11146  * @SYMTestActions RMobilePhoneBookStore::Write
       
 11147  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11148  * @SYMTestType CIT
       
 11149  * @SYMTestCaseDependencies live/automatic
       
 11150  *
       
 11151  * Reason for test: Verify KErrCancel returned.
       
 11152  *
       
 11153  * @return - TVerdict code
       
 11154  */
       
 11155 	{
       
 11156 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
 11157 	StartCleanup();
       
 11158 	return TestStepResult();
       
 11159 	}
       
 11160 
       
 11161 TPtrC CCTSYIntegrationTestPhoneBookStore0027SDN::GetTestStepName()
       
 11162 /**
       
 11163  * @return The test step name.
       
 11164  */
       
 11165 	{
       
 11166 	return _L("CCTSYIntegrationTestPhoneBookStore0027SDN");
       
 11167 	}
       
 11168 
       
 11169 
       
 11170 
       
 11171 CCTSYIntegrationTestPhoneBookStore0027VMBX::CCTSYIntegrationTestPhoneBookStore0027VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 11172 : CCTSYIntegrationTestPhoneBookStore0027Base(aEtelSessionMgr)
       
 11173 /**
       
 11174  * Constructor.
       
 11175  */
       
 11176 {
       
 11177 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0027VMBX::GetTestStepName());
       
 11178 }
       
 11179 
       
 11180 CCTSYIntegrationTestPhoneBookStore0027VMBX::~CCTSYIntegrationTestPhoneBookStore0027VMBX()
       
 11181 /**
       
 11182  * Destructor.
       
 11183  */
       
 11184 {
       
 11185 }
       
 11186 
       
 11187 TVerdict CCTSYIntegrationTestPhoneBookStore0027VMBX::doTestStepL()
       
 11188 /**
       
 11189  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0027
       
 11190  * @SYMFssID BA/CTSY/PBSTR-VMBX-0027
       
 11191  * @SYMTestCaseDesc Cancel writing an entry to the phone book. (VMBX phone book)
       
 11192  * @SYMTestPriority High
       
 11193  * @SYMTestActions RMobilePhoneBookStore::Write
       
 11194  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11195  * @SYMTestType CIT
       
 11196  * @SYMTestCaseDependencies live/automatic
       
 11197  *
       
 11198  * Reason for test: Verify KErrCancel returned.
       
 11199  *
       
 11200  * @return - TVerdict code
       
 11201  */
       
 11202 	{
       
 11203 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10006</font>"));
       
 11204 	DoTestProcedureL(KIccVoiceMailBox);
       
 11205 	return TestStepResult();
       
 11206 	}
       
 11207 
       
 11208 TPtrC CCTSYIntegrationTestPhoneBookStore0027VMBX::GetTestStepName()
       
 11209 /**
       
 11210  * @return The test step name.
       
 11211  */
       
 11212 	{
       
 11213 	return _L("CCTSYIntegrationTestPhoneBookStore0027VMBX");
       
 11214 	}
       
 11215 
       
 11216 
       
 11217 
       
 11218 CCTSYIntegrationTestPhoneBookStore0027MBDN::CCTSYIntegrationTestPhoneBookStore0027MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11219 : CCTSYIntegrationTestPhoneBookStore0027Base(aEtelSessionMgr)
       
 11220 /**
       
 11221  * Constructor.
       
 11222  */
       
 11223 {
       
 11224 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0027MBDN::GetTestStepName());
       
 11225 }
       
 11226 
       
 11227 CCTSYIntegrationTestPhoneBookStore0027MBDN::~CCTSYIntegrationTestPhoneBookStore0027MBDN()
       
 11228 /**
       
 11229  * Destructor.
       
 11230  */
       
 11231 {
       
 11232 }
       
 11233 
       
 11234 TVerdict CCTSYIntegrationTestPhoneBookStore0027MBDN::doTestStepL()
       
 11235 /**
       
 11236  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0027
       
 11237  * @SYMFssID BA/CTSY/PBSTR-MBDN-0027
       
 11238  * @SYMTestCaseDesc Cancel writing an entry to the phone book. (MBDN phone book)
       
 11239  * @SYMTestPriority High
       
 11240  * @SYMTestActions RMobilePhoneBookStore::Write
       
 11241  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11242  * @SYMTestType CIT
       
 11243  * @SYMTestCaseDependencies live/automatic
       
 11244  *
       
 11245  * Reason for test: Verify KErrCancel returned.
       
 11246  *
       
 11247  * @return - TVerdict code
       
 11248  */
       
 11249 	{
       
 11250 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
 11251 	StartCleanup();
       
 11252 	return TestStepResult();
       
 11253 	}
       
 11254 
       
 11255 TPtrC CCTSYIntegrationTestPhoneBookStore0027MBDN::GetTestStepName()
       
 11256 /**
       
 11257  * @return The test step name.
       
 11258  */
       
 11259 	{
       
 11260 	return _L("CCTSYIntegrationTestPhoneBookStore0027MBDN");
       
 11261 	}
       
 11262 
       
 11263 
       
 11264 
       
 11265 CCTSYIntegrationTestPhoneBookStore0028ADN::CCTSYIntegrationTestPhoneBookStore0028ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 11266 : CCTSYIntegrationTestPhoneBookStore0028Base(aEtelSessionMgr)
       
 11267 /**
       
 11268  * Constructor.
       
 11269  */
       
 11270 {
       
 11271 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0028ADN::GetTestStepName());
       
 11272 }
       
 11273 
       
 11274 CCTSYIntegrationTestPhoneBookStore0028ADN::~CCTSYIntegrationTestPhoneBookStore0028ADN()
       
 11275 /**
       
 11276  * Destructor.
       
 11277  */
       
 11278 {
       
 11279 }
       
 11280 
       
 11281 TVerdict CCTSYIntegrationTestPhoneBookStore0028ADN::doTestStepL()
       
 11282 /**
       
 11283  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0028
       
 11284  * @SYMFssID BA/CTSY/PBSTR-ADN-0028
       
 11285  * @SYMTestCaseDesc Cancel deleting an entry from the phone book. (ADN phone book)
       
 11286  * @SYMTestPriority High
       
 11287  * @SYMTestActions RMobilePhoneBookStore::Delete
       
 11288  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11289  * @SYMTestType CIT
       
 11290  * @SYMTestCaseDependencies live/automatic
       
 11291  *
       
 11292  * Reason for test: Verify KErrCancel returned.
       
 11293  *
       
 11294  * @return - TVerdict code
       
 11295  */
       
 11296 	{
       
 11297 	DoTestProcedureL(KIccAdnPhoneBook);
       
 11298 	return TestStepResult();
       
 11299 	}
       
 11300 
       
 11301 TPtrC CCTSYIntegrationTestPhoneBookStore0028ADN::GetTestStepName()
       
 11302 /**
       
 11303  * @return The test step name.
       
 11304  */
       
 11305 	{
       
 11306 	return _L("CCTSYIntegrationTestPhoneBookStore0028ADN");
       
 11307 	}
       
 11308 
       
 11309 
       
 11310 
       
 11311 CCTSYIntegrationTestPhoneBookStore0028FDN::CCTSYIntegrationTestPhoneBookStore0028FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11312 : CCTSYIntegrationTestPhoneBookStore0028Base(aEtelSessionMgr)
       
 11313 /**
       
 11314  * Constructor.
       
 11315  */
       
 11316 {
       
 11317 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0028FDN::GetTestStepName());
       
 11318 }
       
 11319 
       
 11320 CCTSYIntegrationTestPhoneBookStore0028FDN::~CCTSYIntegrationTestPhoneBookStore0028FDN()
       
 11321 /**
       
 11322  * Destructor.
       
 11323  */
       
 11324 {
       
 11325 }
       
 11326 
       
 11327 TVerdict CCTSYIntegrationTestPhoneBookStore0028FDN::doTestStepL()
       
 11328 /**
       
 11329  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0028
       
 11330  * @SYMFssID BA/CTSY/PBSTR-FDN-0028
       
 11331  * @SYMTestCaseDesc Cancel deleting an entry from the phone book. (FDN phone book)
       
 11332  * @SYMTestPriority High
       
 11333  * @SYMTestActions RMobilePhoneBookStore::Delete
       
 11334  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11335  * @SYMTestType CIT
       
 11336  * @SYMTestCaseDependencies live/automatic
       
 11337  *
       
 11338  * Reason for test: Verify KErrCancel returned.
       
 11339  *
       
 11340  * @return - TVerdict code
       
 11341  */
       
 11342 	{
       
 11343 	RMobilePhone& mobilePhone = iEtelSessionMgr.GetPhoneL(KMainServer, KMainPhone);
       
 11344 	iSimTsyTestHelper.VerifyPin2L(mobilePhone,iNetworkTsyTestHelper);
       
 11345 	DoTestProcedureL(KIccFdnPhoneBook);
       
 11346 	return TestStepResult();
       
 11347 	}
       
 11348 
       
 11349 TPtrC CCTSYIntegrationTestPhoneBookStore0028FDN::GetTestStepName()
       
 11350 /**
       
 11351  * @return The test step name.
       
 11352  */
       
 11353 	{
       
 11354 	return _L("CCTSYIntegrationTestPhoneBookStore0028FDN");
       
 11355 	}
       
 11356 
       
 11357 
       
 11358 
       
 11359 CCTSYIntegrationTestPhoneBookStore0028SDN::CCTSYIntegrationTestPhoneBookStore0028SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11360 : CCTSYIntegrationTestPhoneBookStore0028Base(aEtelSessionMgr)
       
 11361 /**
       
 11362  * Constructor.
       
 11363  */
       
 11364 {
       
 11365 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0028SDN::GetTestStepName());
       
 11366 }
       
 11367 
       
 11368 CCTSYIntegrationTestPhoneBookStore0028SDN::~CCTSYIntegrationTestPhoneBookStore0028SDN()
       
 11369 /**
       
 11370  * Destructor.
       
 11371  */
       
 11372 {
       
 11373 }
       
 11374 
       
 11375 TVerdict CCTSYIntegrationTestPhoneBookStore0028SDN::doTestStepL()
       
 11376 /**
       
 11377  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0028
       
 11378  * @SYMFssID BA/CTSY/PBSTR-SDN-0028
       
 11379  * @SYMTestCaseDesc Cancel deleting an entry from the phone book. (SDN phone book)
       
 11380  * @SYMTestPriority High
       
 11381  * @SYMTestActions RMobilePhoneBookStore::Delete
       
 11382  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11383  * @SYMTestType CIT
       
 11384  * @SYMTestCaseDependencies live/automatic
       
 11385  *
       
 11386  * Reason for test: Verify KErrCancel returned.
       
 11387  *
       
 11388  * @return - TVerdict code
       
 11389  */
       
 11390 	{
       
 11391 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for SDN</font>"));	
       
 11392 	StartCleanup();
       
 11393 	return TestStepResult();
       
 11394 	}
       
 11395 
       
 11396 TPtrC CCTSYIntegrationTestPhoneBookStore0028SDN::GetTestStepName()
       
 11397 /**
       
 11398  * @return The test step name.
       
 11399  */
       
 11400 	{
       
 11401 	return _L("CCTSYIntegrationTestPhoneBookStore0028SDN");
       
 11402 	}
       
 11403 
       
 11404 
       
 11405 
       
 11406 CCTSYIntegrationTestPhoneBookStore0028VMBX::CCTSYIntegrationTestPhoneBookStore0028VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 11407 : CCTSYIntegrationTestPhoneBookStore0028Base(aEtelSessionMgr)
       
 11408 /**
       
 11409  * Constructor.
       
 11410  */
       
 11411 {
       
 11412 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0028VMBX::GetTestStepName());
       
 11413 }
       
 11414 
       
 11415 CCTSYIntegrationTestPhoneBookStore0028VMBX::~CCTSYIntegrationTestPhoneBookStore0028VMBX()
       
 11416 /**
       
 11417  * Destructor.
       
 11418  */
       
 11419 {
       
 11420 }
       
 11421 
       
 11422 TVerdict CCTSYIntegrationTestPhoneBookStore0028VMBX::doTestStepL()
       
 11423 /**
       
 11424  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0028
       
 11425  * @SYMFssID BA/CTSY/PBSTR-VMBX-0028
       
 11426  * @SYMTestCaseDesc Cancel deleting an entry from the phone book. (VMBX phone book)
       
 11427  * @SYMTestPriority High
       
 11428  * @SYMTestActions RMobilePhoneBookStore::Delete
       
 11429  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11430  * @SYMTestType CIT
       
 11431  * @SYMTestCaseDependencies live/automatic
       
 11432  *
       
 11433  * Reason for test: Verify KErrCancel returned.
       
 11434  *
       
 11435  * @return - TVerdict code
       
 11436  */
       
 11437 	{
       
 11438 	ERR_PRINTF1(_L("<font color=Orange>$CTSYKnownFailure: defect id = 10006</font>"));
       
 11439 	DoTestProcedureL(KIccVoiceMailBox);
       
 11440 	return TestStepResult();
       
 11441 	}
       
 11442 
       
 11443 TPtrC CCTSYIntegrationTestPhoneBookStore0028VMBX::GetTestStepName()
       
 11444 /**
       
 11445  * @return The test step name.
       
 11446  */
       
 11447 	{
       
 11448 	return _L("CCTSYIntegrationTestPhoneBookStore0028VMBX");
       
 11449 	}
       
 11450 
       
 11451 
       
 11452 
       
 11453 CCTSYIntegrationTestPhoneBookStore0028MBDN::CCTSYIntegrationTestPhoneBookStore0028MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11454 : CCTSYIntegrationTestPhoneBookStore0028Base(aEtelSessionMgr)
       
 11455 /**
       
 11456  * Constructor.
       
 11457  */
       
 11458 {
       
 11459 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0028MBDN::GetTestStepName());
       
 11460 }
       
 11461 
       
 11462 CCTSYIntegrationTestPhoneBookStore0028MBDN::~CCTSYIntegrationTestPhoneBookStore0028MBDN()
       
 11463 /**
       
 11464  * Destructor.
       
 11465  */
       
 11466 {
       
 11467 }
       
 11468 
       
 11469 TVerdict CCTSYIntegrationTestPhoneBookStore0028MBDN::doTestStepL()
       
 11470 /**
       
 11471  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0028
       
 11472  * @SYMFssID BA/CTSY/PBSTR-MBDN-0028
       
 11473  * @SYMTestCaseDesc Cancel deleting an entry from the phone book. (MBDN phone book)
       
 11474  * @SYMTestPriority High
       
 11475  * @SYMTestActions RMobilePhoneBookStore::Delete
       
 11476  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11477  * @SYMTestType CIT
       
 11478  * @SYMTestCaseDependencies live/automatic
       
 11479  *
       
 11480  * Reason for test: Verify KErrCancel returned.
       
 11481  *
       
 11482  * @return - TVerdict code
       
 11483  */
       
 11484 	{
       
 11485 
       
 11486 	INFO_PRINTF1(_L("<font color=Cyan> Not applicable for MBDN</font>"));	
       
 11487 	StartCleanup();
       
 11488 	return TestStepResult();
       
 11489 	}
       
 11490 
       
 11491 TPtrC CCTSYIntegrationTestPhoneBookStore0028MBDN::GetTestStepName()
       
 11492 /**
       
 11493  * @return The test step name.
       
 11494  */
       
 11495 	{
       
 11496 	return _L("CCTSYIntegrationTestPhoneBookStore0028MBDN");
       
 11497 	}
       
 11498 
       
 11499 
       
 11500 
       
 11501 CCTSYIntegrationTestPhoneBookStore0029ADN::CCTSYIntegrationTestPhoneBookStore0029ADN(CEtelSessionMgr& aEtelSessionMgr)
       
 11502 : CCTSYIntegrationTestPhoneBookStore0029Base(aEtelSessionMgr)
       
 11503 /**
       
 11504  * Constructor.
       
 11505  */
       
 11506 {
       
 11507 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0029ADN::GetTestStepName());
       
 11508 }
       
 11509 
       
 11510 CCTSYIntegrationTestPhoneBookStore0029ADN::~CCTSYIntegrationTestPhoneBookStore0029ADN()
       
 11511 /**
       
 11512  * Destructor.
       
 11513  */
       
 11514 {
       
 11515 }
       
 11516 
       
 11517 TVerdict CCTSYIntegrationTestPhoneBookStore0029ADN::doTestStepL()
       
 11518 /**
       
 11519  * @SYMTestCaseID BA-CTSY-INT-PBSTR-ADN-0029
       
 11520  * @SYMFssID BA/CTSY/PBSTR-ADN-0029
       
 11521  * @SYMTestCaseDesc Cancel getting phone store information. (ADN phone book)
       
 11522  * @SYMTestPriority High
       
 11523  * @SYMTestActions RMobilePhoneStore::GetInfo
       
 11524  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11525  * @SYMTestType CIT
       
 11526  * @SYMTestCaseDependencies live/automatic
       
 11527  *
       
 11528  * Reason for test: Verify KErrCancel returned.
       
 11529  *
       
 11530  * @return - TVerdict code
       
 11531  */
       
 11532 	{
       
 11533 	DoTestProcedureL(KIccAdnPhoneBook);
       
 11534 	return TestStepResult();
       
 11535 	}
       
 11536 
       
 11537 TPtrC CCTSYIntegrationTestPhoneBookStore0029ADN::GetTestStepName()
       
 11538 /**
       
 11539  * @return The test step name.
       
 11540  */
       
 11541 	{
       
 11542 	return _L("CCTSYIntegrationTestPhoneBookStore0029ADN");
       
 11543 	}
       
 11544 
       
 11545 
       
 11546 
       
 11547 CCTSYIntegrationTestPhoneBookStore0029FDN::CCTSYIntegrationTestPhoneBookStore0029FDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11548 : CCTSYIntegrationTestPhoneBookStore0029Base(aEtelSessionMgr)
       
 11549 /**
       
 11550  * Constructor.
       
 11551  */
       
 11552 {
       
 11553 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0029FDN::GetTestStepName());
       
 11554 }
       
 11555 
       
 11556 CCTSYIntegrationTestPhoneBookStore0029FDN::~CCTSYIntegrationTestPhoneBookStore0029FDN()
       
 11557 /**
       
 11558  * Destructor.
       
 11559  */
       
 11560 {
       
 11561 }
       
 11562 
       
 11563 TVerdict CCTSYIntegrationTestPhoneBookStore0029FDN::doTestStepL()
       
 11564 /**
       
 11565  * @SYMTestCaseID BA-CTSY-INT-PBSTR-FDN-0029
       
 11566  * @SYMFssID BA/CTSY/PBSTR-FDN-0029
       
 11567  * @SYMTestCaseDesc Cancel getting phone store information. (FDN phone book)
       
 11568  * @SYMTestPriority High
       
 11569  * @SYMTestActions RMobilePhoneStore::GetInfo
       
 11570  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11571  * @SYMTestType CIT
       
 11572  * @SYMTestCaseDependencies live/automatic
       
 11573  *
       
 11574  * Reason for test: Verify KErrCancel returned.
       
 11575  *
       
 11576  * @return - TVerdict code
       
 11577  */
       
 11578 	{
       
 11579 	DoTestProcedureL(KIccFdnPhoneBook);
       
 11580 	return TestStepResult();
       
 11581 	}
       
 11582 
       
 11583 TPtrC CCTSYIntegrationTestPhoneBookStore0029FDN::GetTestStepName()
       
 11584 /**
       
 11585  * @return The test step name.
       
 11586  */
       
 11587 	{
       
 11588 	return _L("CCTSYIntegrationTestPhoneBookStore0029FDN");
       
 11589 	}
       
 11590 
       
 11591 
       
 11592 
       
 11593 CCTSYIntegrationTestPhoneBookStore0029SDN::CCTSYIntegrationTestPhoneBookStore0029SDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11594 : CCTSYIntegrationTestPhoneBookStore0029Base(aEtelSessionMgr)
       
 11595 /**
       
 11596  * Constructor.
       
 11597  */
       
 11598 {
       
 11599 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0029SDN::GetTestStepName());
       
 11600 }
       
 11601 
       
 11602 CCTSYIntegrationTestPhoneBookStore0029SDN::~CCTSYIntegrationTestPhoneBookStore0029SDN()
       
 11603 /**
       
 11604  * Destructor.
       
 11605  */
       
 11606 {
       
 11607 }
       
 11608 
       
 11609 TVerdict CCTSYIntegrationTestPhoneBookStore0029SDN::doTestStepL()
       
 11610 /**
       
 11611  * @SYMTestCaseID BA-CTSY-INT-PBSTR-SDN-0029
       
 11612  * @SYMFssID BA/CTSY/PBSTR-SDN-0029
       
 11613  * @SYMTestCaseDesc Cancel getting phone store information. (SDN phone book)
       
 11614  * @SYMTestPriority High
       
 11615  * @SYMTestActions RMobilePhoneStore::GetInfo
       
 11616  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11617  * @SYMTestType CIT
       
 11618  * @SYMTestCaseDependencies live/automatic
       
 11619  *
       
 11620  * Reason for test: Verify KErrCancel returned.
       
 11621  *
       
 11622  * @return - TVerdict code
       
 11623  */
       
 11624 	{
       
 11625 
       
 11626 	DoTestProcedureL(KIccSdnPhoneBook);
       
 11627 	return TestStepResult();
       
 11628 	}
       
 11629 
       
 11630 TPtrC CCTSYIntegrationTestPhoneBookStore0029SDN::GetTestStepName()
       
 11631 /**
       
 11632  * @return The test step name.
       
 11633  */
       
 11634 	{
       
 11635 	return _L("CCTSYIntegrationTestPhoneBookStore0029SDN");
       
 11636 	}
       
 11637 
       
 11638 
       
 11639 
       
 11640 CCTSYIntegrationTestPhoneBookStore0029VMBX::CCTSYIntegrationTestPhoneBookStore0029VMBX(CEtelSessionMgr& aEtelSessionMgr)
       
 11641 : CCTSYIntegrationTestPhoneBookStore0029Base(aEtelSessionMgr)
       
 11642 /**
       
 11643  * Constructor.
       
 11644  */
       
 11645 {
       
 11646 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0029VMBX::GetTestStepName());
       
 11647 }
       
 11648 
       
 11649 CCTSYIntegrationTestPhoneBookStore0029VMBX::~CCTSYIntegrationTestPhoneBookStore0029VMBX()
       
 11650 /**
       
 11651  * Destructor.
       
 11652  */
       
 11653 {
       
 11654 }
       
 11655 
       
 11656 TVerdict CCTSYIntegrationTestPhoneBookStore0029VMBX::doTestStepL()
       
 11657 /**
       
 11658  * @SYMTestCaseID BA-CTSY-INT-PBSTR-VMBX-0029
       
 11659  * @SYMFssID BA/CTSY/PBSTR-VMBX-0029
       
 11660  * @SYMTestCaseDesc Cancel getting phone store information. (VMBX phone book)
       
 11661  * @SYMTestPriority High
       
 11662  * @SYMTestActions RMobilePhoneStore::GetInfo
       
 11663  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11664  * @SYMTestType CIT
       
 11665  * @SYMTestCaseDependencies live/automatic
       
 11666  *
       
 11667  * Reason for test: Verify KErrCancel returned.
       
 11668  *
       
 11669  * @return - TVerdict code
       
 11670  */
       
 11671 	{
       
 11672 	DoTestProcedureL(KIccVoiceMailBox);
       
 11673 	return TestStepResult();
       
 11674 	}
       
 11675 
       
 11676 TPtrC CCTSYIntegrationTestPhoneBookStore0029VMBX::GetTestStepName()
       
 11677 /**
       
 11678  * @return The test step name.
       
 11679  */
       
 11680 	{
       
 11681 	return _L("CCTSYIntegrationTestPhoneBookStore0029VMBX");
       
 11682 	}
       
 11683 
       
 11684 
       
 11685 
       
 11686 CCTSYIntegrationTestPhoneBookStore0029MBDN::CCTSYIntegrationTestPhoneBookStore0029MBDN(CEtelSessionMgr& aEtelSessionMgr)
       
 11687 : CCTSYIntegrationTestPhoneBookStore0029Base(aEtelSessionMgr)
       
 11688 /**
       
 11689  * Constructor.
       
 11690  */
       
 11691 {
       
 11692 SetTestStepName(CCTSYIntegrationTestPhoneBookStore0029MBDN::GetTestStepName());
       
 11693 }
       
 11694 
       
 11695 CCTSYIntegrationTestPhoneBookStore0029MBDN::~CCTSYIntegrationTestPhoneBookStore0029MBDN()
       
 11696 /**
       
 11697  * Destructor.
       
 11698  */
       
 11699 {
       
 11700 }
       
 11701 
       
 11702 TVerdict CCTSYIntegrationTestPhoneBookStore0029MBDN::doTestStepL()
       
 11703 /**
       
 11704  * @SYMTestCaseID BA-CTSY-INT-PBSTR-MBDN-0029
       
 11705  * @SYMFssID BA/CTSY/PBSTR-MBDN-0029
       
 11706  * @SYMTestCaseDesc Cancel getting phone store information. (MBDN phone book)
       
 11707  * @SYMTestPriority High
       
 11708  * @SYMTestActions RMobilePhoneStore::GetInfo
       
 11709  * @SYMTestExpectedResults Pass - KErrCancel returned.
       
 11710  * @SYMTestType CIT
       
 11711  * @SYMTestCaseDependencies live/automatic
       
 11712  *
       
 11713  * Reason for test: Verify KErrCancel returned.
       
 11714  *
       
 11715  * @return - TVerdict code
       
 11716  */
       
 11717 	{
       
 11718 	DoTestProcedureL(KIccMbdnPhoneBook);
       
 11719 	return TestStepResult();
       
 11720 	}
       
 11721 
       
 11722 TPtrC CCTSYIntegrationTestPhoneBookStore0029MBDN::GetTestStepName()
       
 11723 /**
       
 11724  * @return The test step name.
       
 11725  */
       
 11726 	{
       
 11727 	return _L("CCTSYIntegrationTestPhoneBookStore0029MBDN");
       
 11728 	}
       
 11729 
       
 11730 
       
 11731