/**
* Notify reset for RMobilePhone::NotifyCallForwardingActive
*/	
void TSupplementalTsyTestHelper::WaitForMobilePhoneNotifyCallForwardingActive( 
				RMobilePhone& aMobilePhone,
				TEtelRequestBase& aRequestStatus,
				RMobilePhone::TMobileService& aServiceGroup, 
				RMobilePhone::TMobileService aExpectedServiceGroup,
				RMobilePhone::TMobilePhoneCFActive &aActiveType,
				TInt aWantedStatus )

	{
	// Wait for the request to complete	
	TInt err = iTestStep.WaitForRequestWithTimeOut(aRequestStatus, ETimeShort);	
	ASSERT_EQUALS(err, KErrNone, _L("RMobilePhone::NotifyCallForwardingActive did not complete"))
	
	while (	err == KErrNone && aRequestStatus.Int() == KErrNone  	
							&& aServiceGroup != aExpectedServiceGroup )
		{
		// Request has completed with incorrect result. Consume any outstanding
		// Repost notification until timeout or we get the right result.
		
		aMobilePhone.NotifyCallForwardingActive(aRequestStatus, aServiceGroup, aActiveType);
		err = iTestStep.WaitForRequestWithTimeOut(aRequestStatus, ETimeShort);
		}
		
	ASSERT_EQUALS(aRequestStatus.Int(), aWantedStatus, _L("RMobilePhone::NotifyCallForwardingActive Wrong completion status"))	
	ASSERT_EQUALS(aServiceGroup, aExpectedServiceGroup, 
				_L("RMobilePhone::NotifyCallForwardingActive Wrong result"))	
	
	// Cancel request if it is still pending	
	if (aRequestStatus.Int() == KRequestPending)	
		{
		aRequestStatus.Cancel();
		}
	}