--- a/phonebookui/Phonebook2/ccapplication/ccapp/tsrc/ut_cmscontactfetcher/src/t_ccacmscontactfetcherwrapperblocks.cpp Mon Mar 15 12:39:26 2010 +0200
+++ b/phonebookui/Phonebook2/ccapplication/ccapp/tsrc/ut_cmscontactfetcher/src/t_ccacmscontactfetcherwrapperblocks.cpp Wed Mar 31 21:13:53 2010 +0300
@@ -39,7 +39,6 @@
//
void T_CCCACmsContactFetcherWrapper::Delete()
{
-
}
// -----------------------------------------------------------------------------
@@ -56,18 +55,30 @@
// Copy this line for every implemented function.
// First string is the function name used in TestScripter script file.
// Second is the actual implementation member function.
- ENTRY( "CreateAndDelete", T_CCCACmsContactFetcherWrapper::CreateAndDeleteL ),
- ENTRY( "CreateWithContent", T_CCCACmsContactFetcherWrapper::CreateWithContentL ),
- ENTRY( "CreateWithContactLink", T_CCCACmsContactFetcherWrapper::CreateWithContactLinkL ),
- ENTRY( "CreateWithMSISDN", T_CCCACmsContactFetcherWrapper::CreateWithMSISDNL ),
- ENTRY( "CreateWithEmail", T_CCCACmsContactFetcherWrapper::CreateWithEmailL ),
- ENTRY( "NoDataFields", T_CCCACmsContactFetcherWrapper::NoDataFieldsL ),
- ENTRY( "ErrorInContactOpen", T_CCCACmsContactFetcherWrapper::ErrorInContactOpenL ),
- ENTRY( "ErrorInContactFetch", T_CCCACmsContactFetcherWrapper::ErrorInContactFetchL ),
- ENTRY( "CreateWithManyItems", T_CCCACmsContactFetcherWrapper::CreateWithManyItemsL ),
- ENTRY( "HandlePhonebookNotification", T_CCCACmsContactFetcherWrapper::HandlePhonebookNotificationL ),
- ENTRY( "TestContactStoreApiL", T_CCCACmsContactFetcherWrapper::TestContactStoreApiL ),
- ENTRY( "FindFromOtherStoresL", T_CCCACmsContactFetcherWrapper::FindFromOtherStoresL ),
+ ENTRY( "CreateAndDelete",
+ T_CCCACmsContactFetcherWrapper::CreateAndDeleteL ),
+ ENTRY( "CreateWithContent",
+ T_CCCACmsContactFetcherWrapper::CreateWithContentL ),
+ ENTRY( "CreateWithContactLink",
+ T_CCCACmsContactFetcherWrapper::CreateWithContactLinkL ),
+ ENTRY( "CreateWithMSISDN",
+ T_CCCACmsContactFetcherWrapper::CreateWithMSISDNL ),
+ ENTRY( "CreateWithEmail",
+ T_CCCACmsContactFetcherWrapper::CreateWithEmailL ),
+ ENTRY( "NoDataFields",
+ T_CCCACmsContactFetcherWrapper::NoDataFieldsL ),
+ ENTRY( "ErrorInContactOpen",
+ T_CCCACmsContactFetcherWrapper::ErrorInContactOpenL ),
+ ENTRY( "ErrorInContactFetch",
+ T_CCCACmsContactFetcherWrapper::ErrorInContactFetchL ),
+ ENTRY( "CreateWithManyItems",
+ T_CCCACmsContactFetcherWrapper::CreateWithManyItemsL ),
+ ENTRY( "HandlePhonebookNotification",
+ T_CCCACmsContactFetcherWrapper::HandlePhonebookNotificationL ),
+ ENTRY( "TestContactStoreApiL",
+ T_CCCACmsContactFetcherWrapper::TestContactStoreApiL ),
+ ENTRY( "FindFromOtherStoresL",
+ T_CCCACmsContactFetcherWrapper::FindFromOtherStoresL ),
//ADD NEW ENTRY HERE
// [test cases entries] - Do not remove
};
@@ -104,23 +115,36 @@
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
CompleteRequestL( &wrapper->iStatus, KErrNone );
-
- CCCAppCmsContactFetcherWrapper* wrapper2 = CCCAppCmsContactFetcherWrapper::InstanceL( );
+ CompleteRequestL( &wrapper->iStatus, KErrNone );
+ CCCAppCmsContactFetcherWrapper* wrapper2 =
+ CCCAppCmsContactFetcherWrapper::InstanceL( );
wrapper2->AddObserverL( *this );
wrapper2->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper2->Release();
wrapper2 = NULL;
CCCAppCmsContactFetcherWrapper* leaveAgain = NULL;
- TRAP( leaveCode, leaveAgain = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param ) );
+ TRAP( leaveCode, leaveAgain =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param ) );
T1L( KErrAlreadyExists, leaveCode );
TL( leaveAgain == NULL );
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -149,12 +173,18 @@
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
CompleteRequestL( &wrapper->iStatus, KErrNone );
-
+ CompleteRequestL( &wrapper->iStatus, KErrNone );
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -182,11 +212,13 @@
iLog->Log( KCreateWithContent );
- User::LeaveIfError( SetupL( KTestOneContactFieldItem, MCCAParameter::EContactId ) );
+ User::LeaveIfError( SetupL(
+ KTestOneContactFieldItem, MCCAParameter::EContactId ) );
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
@@ -200,13 +232,18 @@
}
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
CleanupStack::PopAndDestroy( param );
TL( iObserverCalled );
- T1L( 2, iObserverCalledCount );
+ T1L( 1, iObserverCalledCount );
return KErrNone;
@@ -217,7 +254,8 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::CreateWithManyItemsL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::CreateWithManyItemsL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
@@ -227,11 +265,13 @@
iLog->Log( KCreateWithManyItems );
- User::LeaveIfError( SetupL( KTestManyContactFieldItems, MCCAParameter::EContactId ) );
+ User::LeaveIfError( SetupL(
+ KTestManyContactFieldItems, MCCAParameter::EContactId ) );
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
@@ -244,13 +284,18 @@
}
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
CleanupStack::PopAndDestroy( param );
TL( iObserverCalled );
- T1L( 4, iObserverCalledCount );
+ T1L( 3, iObserverCalledCount );
return KErrNone;
@@ -261,7 +306,8 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::CreateWithContactLinkL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::CreateWithContactLinkL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
@@ -274,7 +320,8 @@
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
@@ -288,13 +335,18 @@
}
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
CleanupStack::PopAndDestroy( param );
TL( iObserverCalled );
- T1L( 2, iObserverCalledCount );
+ T1L( 1, iObserverCalledCount );
return KErrNone;
@@ -319,7 +371,8 @@
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
@@ -328,7 +381,7 @@
CompleteRequestL( &wrapper->iStatus, KErrNone );
- TInt count = 1;
+ TInt count = 2;
for ( TInt i(0); i < count; i++ )
{
CompleteRequestL( &wrapper->iStatus, KErrNone );
@@ -341,6 +394,11 @@
T1L( 1, array.Count() );
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -358,7 +416,8 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::CreateWithEmailL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::CreateWithEmailL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
@@ -374,9 +433,15 @@
TInt error ( KErrNone );
CCCAppCmsContactFetcherWrapper* wrapper = NULL;
- TRAP( error, wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param ) );
+ TRAP( error, wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param ) );
wrapper->AddObserverL( *this );
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -400,28 +465,39 @@
iObserverCalledCount++;
iLog->Log( _L("..contact info notified") );
- switch ( iOngoingTestCase )
+ if ( aParameter.iType ==
+ MCCAppContactFieldDataObserver::TParameter::EContactsChanged )
{
- case KTestOneContactFieldItem:
- case KTestContactLink:
+ iObserverCalledWithContactsChanged = ETrue;
+ }
+ else
+ {
+ switch ( iOngoingTestCase )
{
- if ( 1 == iObserverCalledCount )
- {
- T1L( MCCAppContactFieldDataObserver::TParameter::EContactInfoAvailable, aParameter.iType );
- }
- if ( 2 == iObserverCalledCount )
+ case KTestOneContactFieldItem:
+ case KTestContactLink:
{
- T1L( MCCAppContactFieldDataObserver::TParameter::EContactDataFieldAvailable, aParameter.iType );
+ if ( 1 == iObserverCalledCount )
+ {
+ T1L( MCCAppContactFieldDataObserver::TParameter::EContactInfoAvailable,
+ aParameter.iType );
+ }
+ if ( 2 == iObserverCalledCount )
+ {
+ T1L( MCCAppContactFieldDataObserver::TParameter::EContactDeleted,
+ aParameter.iType );
+ }
+ break;
}
- break;
- }
- default:
- {
- break;
- }
- }
+ default:
+ {
+ break;
+ }
+ }
+ }
- if ( aParameter.iType == MCCAppContactFieldDataObserver::TParameter::EContactsChanged )
+ if ( aParameter.iType ==
+ MCCAppContactFieldDataObserver::TParameter::EContactsChanged )
{
iObserverCalledWithContactsChanged = ETrue;
}
@@ -469,25 +545,34 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::ErrorInContactOpenL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::ErrorInContactOpenL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
_LIT( KErrorInContactOpen, "ErrorInContactOpen" );
- TestModuleIf().Printf( 0, KT_CCCACmsContactFetcherWrapper, KErrorInContactOpen );
+ TestModuleIf().Printf(
+ 0, KT_CCCACmsContactFetcherWrapper, KErrorInContactOpen );
// Print to log file
iLog->Log( KErrorInContactOpen );
- User::LeaveIfError( SetupL( KTestCompleteOpenWithError, MCCAParameter::EContactId ) );
+ User::LeaveIfError( SetupL(
+ KTestCompleteOpenWithError, MCCAParameter::EContactId ) );
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
+ CompleteRequestL( &wrapper->iStatus, KErrNone );
CompleteRequestL( &wrapper->iStatus, KErrCancel );
-
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -505,7 +590,8 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::ErrorInContactFetchL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::ErrorInContactFetchL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
@@ -515,17 +601,25 @@
iLog->Log( KErrorInContactFetch );
- User::LeaveIfError( SetupL( KTestCompleteFetchWithError, MCCAParameter::EContactId ) );
+ User::LeaveIfError( SetupL(
+ KTestCompleteFetchWithError, MCCAParameter::EContactId ) );
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
TRequestStatus* status = &wrapper->iStatus;
User::RequestComplete( status, KErrNone );
iSchedulerStarted = ETrue;
+ CStopSchedulerAfterDelay* schedulerStopper =
+ new (ELeave) CStopSchedulerAfterDelay();
+ schedulerStopper->ConstructL();
+ CleanupStack::PushL( schedulerStopper );
+ schedulerStopper->After( 1000000 );// 1 sec
CActiveScheduler::Start();
+ CleanupStack::PopAndDestroy( schedulerStopper );
TInt count = 1;
for ( TInt i(0); i < count; i++ )
@@ -534,6 +628,11 @@
}
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -551,19 +650,23 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::HandlePhonebookNotificationL( CStifItemParser& aItem )
+TInt T_CCCACmsContactFetcherWrapper::HandlePhonebookNotificationL(
+ CStifItemParser& aItem )
{
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
_LIT( KHandlePhonebookNotification, "HandlePhonebookNotification" );
- TestModuleIf().Printf( 0, KT_CCCACmsContactFetcherWrapper, KHandlePhonebookNotification );
+ TestModuleIf().Printf(
+ 0, KT_CCCACmsContactFetcherWrapper, KHandlePhonebookNotification );
// Print to log file
iLog->Log( KHandlePhonebookNotification );
- User::LeaveIfError( SetupL( KTestOneContactFieldItem, MCCAParameter::EContactId ) );
+ User::LeaveIfError( SetupL(
+ KTestOneContactFieldItem, MCCAParameter::EContactId ) );
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
@@ -576,21 +679,28 @@
if (modifiedNotDeleted)
{
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
wrapper->HandlePhonebookNotificationL(ECmsContactModified);
CompleteRequestL( &wrapper->iStatus, KErrNone );
CompleteRequestL( &wrapper->iStatus, KErrNone );
- // Observer is called 2 times when fetching contacts, and contacts are fetched again after they are changed so 1 + 2*2 = 5
- T1L( iObserverCalledCount, 5);
+ // Observer is called 2 times when fetching contacts,
+ // and contacts are fetched again after they are changed so 1 + 2*2 = 5
+ T1L( iObserverCalledCount, 4);
TL( iObserverCalledWithContactsChanged);
}
else
{
wrapper->HandlePhonebookNotificationL(ECmsContactDeleted);
- T1L( iObserverCalledCount, 3);
+ T1L( iObserverCalledCount, 2);
}
wrapper->RemoveObserver( *this );
-
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -607,7 +717,8 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::TestContactStoreApiL( CStifItemParser& /*aItem */)
+TInt T_CCCACmsContactFetcherWrapper::TestContactStoreApiL(
+ CStifItemParser& /*aItem */)
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
@@ -617,14 +728,15 @@
iLog->Log( KDescription );
User::LeaveIfError( SetupL( KTestNoDataFields, MCCAParameter::EContactId ) );
-
// setup
CCCAParameter* param = CCCAParameter::NewL();
CleanupStack::PushL( param );
- CCCAppCmsContactFetcherWrapper* wrapper = CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
+ CCCAppCmsContactFetcherWrapper* wrapper =
+ CCCAppCmsContactFetcherWrapper::CreateInstanceL( param );
wrapper->AddObserverL( *this );
+
CompleteRequestL( &wrapper->iStatus, KErrNone );
-
+
// test itself
wrapper->iCmsContactDataFetcher.iContactStore_called = EFalse;
TCmsContactStore cntStore = wrapper->ContactStore();
@@ -632,6 +744,11 @@
// cleanup
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
@@ -645,12 +762,14 @@
// (other items were commented in a header).
// -----------------------------------------------------------------------------
//
-TInt T_CCCACmsContactFetcherWrapper::FindFromOtherStoresL( CStifItemParser& /*aItem*/ )
+TInt T_CCCACmsContactFetcherWrapper::FindFromOtherStoresL(
+ CStifItemParser& /*aItem*/ )
{
// Print to UI
_LIT( KT_CCCACmsContactFetcherWrapper, "T_CCCACmsContactFetcherWrapper" );
_LIT( KFindFromOtherStoresL, "FindFromOtherStoresL" );
- TestModuleIf().Printf( 0, KT_CCCACmsContactFetcherWrapper, KFindFromOtherStoresL );
+ TestModuleIf().Printf(
+ 0, KT_CCCACmsContactFetcherWrapper, KFindFromOtherStoresL );
// Print to log file
iLog->Log( KFindFromOtherStoresL );
@@ -660,7 +779,8 @@
CleanupStack::PushL( param );
CCCAppCmsContactFetcherWrapper* wrapper =
CCCAppCmsContactFetcherWrapper::CreateInstanceL(
- param, CCCAppCmsContactFetcherWrapper::EFindContactFromOtherStores );
+ param,
+ CCCAppCmsContactFetcherWrapper::EFindContactFromOtherStores );
wrapper->AddObserverL( *this );
// Since there is not needed external notifiers for the
@@ -678,18 +798,22 @@
iSchedulerStarted = EFalse;
delete schedulerStopper;
schedulerStopper = NULL;
-
CompleteRequestL( &wrapper->iStatus, KErrNone );
+ iSchedulerStarted = EFalse;
CompleteRequestL( &wrapper->iStatus, KErrNone );
-
wrapper->RemoveObserver( *this );
+ if( wrapper->IsActive() )
+ {
+ TRequestStatus* status = &wrapper->iStatus;
+ User::RequestComplete( status, KErrNone );
+ }
wrapper->Release();
wrapper = NULL;
CleanupStack::PopAndDestroy( param );
TL( iObserverCalled );
- T1L( 2, iObserverCalledCount );
+ T1L( 1, iObserverCalledCount );
return KErrNone;
}
@@ -708,7 +832,8 @@
iOngoingTestCase = aTestCase;
// Ongoing test case
- TInt err = RProperty::Define( KTestPropertyCat, ETestCaseStateProperty, RProperty::EInt );
+ TInt err = RProperty::Define(
+ KTestPropertyCat, ETestCaseStateProperty, RProperty::EInt );
if ( err != KErrAlreadyExists && err != KErrNone )
{
return ( err );
@@ -717,14 +842,24 @@
// Parameter type used in CCAParameter creation
- err = RProperty::Define( KTestPropertyCat, ETestParameterTypeProperty, RProperty::EInt );
+ err = RProperty::Define(
+ KTestPropertyCat, ETestParameterTypeProperty, RProperty::EInt );
if ( err != KErrAlreadyExists && err != KErrNone )
{
return ( err );
}
- err = RProperty::Set( KTestPropertyCat, ETestParameterTypeProperty, aParameterType );
+ err = RProperty::Set(
+ KTestPropertyCat, ETestParameterTypeProperty, aParameterType );
-
+ CActiveScheduler* scheduler = new ( ELeave ) CActiveScheduler;
+ if( !CActiveScheduler::Current() )
+ {
+ CActiveScheduler::Install( scheduler );
+ }
+ else
+ {
+ delete scheduler;
+ }
return KErrNone;
}
@@ -733,12 +868,22 @@
//
// -----------------------------------------------------------------------------
//
-void T_CCCACmsContactFetcherWrapper::CompleteRequestL( TRequestStatus* aStatus, TInt aReason )
+void T_CCCACmsContactFetcherWrapper::CompleteRequestL(
+ TRequestStatus* aStatus, TInt aReason )
{
TRequestStatus* status = aStatus;
User::RequestComplete( status, aReason );
+
iSchedulerStarted = ETrue;
+
+ CStopSchedulerAfterDelay* schedulerStopper =
+ new (ELeave) CStopSchedulerAfterDelay();
+ schedulerStopper->ConstructL();
+ CleanupStack::PushL( schedulerStopper );
+ schedulerStopper->After( 1000000 );// 1 sec
CActiveScheduler::Start();
+ CleanupStack::PopAndDestroy( schedulerStopper );
+
}
// ========================== OTHER EXPORTED FUNCTIONS =========================
// None