imstutils/imconversationview/tsrc/imcvuiengine_test/src/imcvuiengine_testsendmessage.cpp
changeset 15 81eeb8c83ce5
parent 0 5e5d6b214f4f
--- a/imstutils/imconversationview/tsrc/imcvuiengine_test/src/imcvuiengine_testsendmessage.cpp	Tue Feb 02 10:12:18 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1423 +0,0 @@
-/*
-* Copyright (c) 2002 - 2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  imcvuiengine_testsendmessage.cpp
-*
-*/
-
-
-// [INCLUDE FILES] - do not remove
-#include 	<e32math.h>
-#include 	"imcvuiengine_testsendmessage.h"
-#include 	"cimcvengine.h"
-#include 	"mimcvenginemessagecontainerinfo.h"
-#include 	"mimcvenginemessagecreator.h"
-#include 	"cimcvenginemessagehandler.h"
-#include 	<ximpbase.h>
-#include    <e32property.h>
-#include 	"mimcvenginechatinterface.h" 
-#include 	"mimcvenginemessageswriteinterface.h"
-#include    "mimcvengineopenchats.h"
-
-#include 	"cimcvenginemessagehandler.h"
-#include 	<avabilitytext.h>
-
-#include 	<spentry.h>
-#include 	<spsettings.h> 
-#include 	<spproperty.h>
-#include    "s_cch.h"
-#include    "cimcvenginefactory.h"
-#include    "mimcvenginefactory.h"
-#include    "cimcvenginemessagecreator.h"
-#include    "mimcvenginemessagecreator.h"
-
-_LIT(KOwnUser,"testlm123@gmail.com");
-_LIT8(KBrandId,"YAHOO");
-                                  
-const TInt KProtocolUid = 0x20007B6D;
-const TUid KIMPropertyUid = { 0x0D334E82 };
-
-const TUint KIMConnectedKey    	  	 = 0x00000001;
-const TUint KIMServiceIdKey    	  	 = 0x00000002;
-const TUint KIMServiceProtocolUidKey = 0x00000003;
-const TUint KIMOwnUserIdKey    	     = 0x00000004;
-
-_LIT(KRecipientID,"testui123@gmail.com");
-_LIT(KRecipientID2,"testlm123@gmail.com");
-
-_LIT(KInvalidRecipientID,"abcsddd@gmail.com");
-
-// meco service uid
-#define KMECOIMPLEMENTATIONUID 0x20012423
-
-
-//const TInt ProcessInterval = 2000000; //2 seconds
-
-// --------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::CIMCVUiEngine_TestSendMessage
-// --------------------------------------------------------------------------
-//
-CIMCVUiEngine_TestSendMessage::CIMCVUiEngine_TestSendMessage()
-	{
-		
-	}
-    
-    
-// CIMCommands_TestLogin::~CIMCommands_TestLogin
-// --------------------------------------------------------------------------
-//
-CIMCVUiEngine_TestSendMessage::~CIMCVUiEngine_TestSendMessage()
-	{
-	delete iSettings;
-	CIMCVEngineFactory::Release();
-	}
-    
-    
-// --------------------------------------------------------------------------
-// CIMCommands_TestLogin::NewL
-// --------------------------------------------------------------------------
-//
-CIMCVUiEngine_TestSendMessage* CIMCVUiEngine_TestSendMessage::NewL()
-    {
-    CIMCVUiEngine_TestSendMessage* self = new(ELeave) CIMCVUiEngine_TestSendMessage();
-    CleanupStack::PushL(self);
-    self->ConstructL();
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::ConstructL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-void CIMCVUiEngine_TestSendMessage::ConstructL()
-	{
-		// define the property for upper layer to use serivceid , 
-	// servicesetting id and loggedin user id
-	// servicesetting id and loggedin user id
-	
-	CreateSpEntryL(KTestServiceId);
-	ReadServiceDetalsL();
-	
-			  
-	TInt err = RProperty::Define(KIMPropertyUid, KIMServiceIdKey, RProperty::EInt,
-					  ECapabilityReadUserData ,ECapabilityWriteUserData);					  
-    //User::LeaveIfError(err);  
-    
-			  
-	err = RProperty::Define(KIMPropertyUid, KIMServiceProtocolUidKey, RProperty::EInt, 
-					  ECapabilityReadUserData ,ECapabilityWriteUserData );					  
-	//User::LeaveIfError(err);
-	
-	err = RProperty::Define(KIMPropertyUid, KIMConnectedKey, RProperty::EInt, 
-					  ECapabilityReadUserData ,ECapabilityWriteUserData );					  
-	//User::LeaveIfError(err);
-
-	// write into defined property for upper layer to use serivceid , 
-
-	RProperty::Set( KIMPropertyUid, KIMServiceIdKey, KTestServiceId );
-	RProperty::Set( KIMPropertyUid, KIMServiceProtocolUidKey, KProtocolUid );
-    RProperty::Set( KIMPropertyUid, KIMConnectedKey, ETrue );
-               
-    iEngineFactory = CIMCVEngineFactory::InstanceL();
-    
-	iEngine = &iEngineFactory->GetServiceEngineL( KTestServiceId );	
-	
-	// for send operation
-	iEngine->MessageHandler().SetObserver(this);
-	
-	//iEngine->CCHHandler().EnableService();
-	}
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::ReadServiceDetalsL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-void CIMCVUiEngine_TestSendMessage::ReadServiceDetalsL()
-	{
-	iSettings = CSPSettings::NewL(); // CCH Login
-    iServiceId = KErrNotFound;
-    ///////////////////////Get Service Id////////////////    
-    RArray<TServiceId> services;
-    CleanupClosePushL( services );
-    iSettings->FindServiceIdsL( services );
-    const TInt serviceCount = services.Count();
-    for ( TInt i( 0 ); i < serviceCount; i++ )
-		{
-		TInt refContactUid = KErrNotFound;
-		CSPProperty* property = CSPProperty::NewLC();
-		iSettings->FindPropertyL( services[i],EPropertyContactViewPluginId,*property );    
-		if ( property )
-		    {
-		    property->GetValue( refContactUid );
-		    }
-		CleanupStack::PopAndDestroy( property );             
-		if ( (TUid::Uid( refContactUid ) == TUid::Uid( KMECOIMPLEMENTATIONUID ))
-		        || (TUid::Uid( refContactUid ) ==  TUid::Uid( 0x20007B6D ) ))
-		    {
-	        iServiceId = services[i];
-	        break;
-		    }
-		}
-    CleanupStack::PopAndDestroy( &services );
-   
-	}
-
-
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::CreateConnectionL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-void CIMCVUiEngine_TestSendMessage::CreateConnectionL()
-	{
-	// TODO : allready loggedin in local mode enable when login to n/w
-	//if(!iEngine->IsLoggedIn() )
-	//		{
-	//		iEngine->CreateContextL();	
-	//		}	
-	}
-
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::ReleaseConnectionL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-void CIMCVUiEngine_TestSendMessage::ReleaseConnectionL()
-	{
-	if(iEngine->IsLoggedIn() )
-		{
-		iEngine->ReleaseConnectionL();	
-		}
-//	iEngine->DeleteContextL();	
-	}
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::SendTextMessageL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::SendTextMessageL()
-	{
-	_LIT(KSomeStr,"hello");	//String to be sent
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    write.AppendL(message );
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	return iResult;
-	}
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::SendNullMessageL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::SendNullMessageL()
-	{
-	_LIT(KSomeStr,"");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID);
-		
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-			
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    write.AppendL(message );
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	return iResult;
-	}	
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::StartNewConvesationL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::StartNewConvesationL()
-	{
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	return iResult;
-	}	
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::CloseConvesationL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::CloseConvesationL()
-	{
-		
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	iEngine->MessageHandler().CloseConversationL( KRecipientID );
-	
-	return iResult;
-	}	
-	// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::SendSplCharMessageL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::SendSplCharMessageL()
-	{
-	_LIT(KSomeSplStr,"@&!`$?#");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-			
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    
-    write.AppendL(message );
-    
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	return iResult;
-	}	
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::SendCosMessageL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::SendCosMessageL()
-	{
-	_LIT(KSomeSplStr,"asdscmdsdsvndv dsvndsfnv dfkdsfkd vkdsfvkdsj dsfdsjfkdsjf dsfjkdsjfkds dskfjdskfjdsk dfjkdsjfds dsfkdsjfkds dsfkdmfkds safdsajhf asfsajfnha adsfjndajsnhfd dsafnajdsfnh adsfjdajf ajfajfnhj fajadsjfa  asasjfjafja afnajf asjfjdsaf");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-			
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    
-    write.AppendL(message );
-    
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	return iResult;
-	}	
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::DeactivateConvesationL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::DeactivateConvesationL()
-	{
-	
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	iEngine->MessageHandler().DeactivateConversationL();
-	
-	return iResult;
-	}
-		
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::SendToInvaliedRecipientL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::SendToInvaliedRecipientL()
-	{
-	_LIT(KSomeSplStr,"Invalied Recipient");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	iEngine->MessageHandler().StartNewConversationL( KInvalidRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-			
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KInvalidRecipientID,
-												KSomeSplStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    
-    write.AppendL(message );
-    
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	if(iResult == KErrArgument )
-		{
-		iResult = KErrNone;	
-		}
-	return iResult;
-	}	
-	// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::TestRecievedMessageL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestMultipleSendMessageL()
-	{
-	_LIT(KSomeSplStr1,"this is recieved message 1");	//String to be sent
-	_LIT(KSomeSplStr2,"this is recieved message 2");	//String to be sent
-	_LIT(KSomeSplStr3,"this is recieved message 3");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	MIMCVEngineMessageCreator::SMessageData data1 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr1,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message1 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data1 );
-    write.AppendL(message1);
-	iEngine->MessageHandler().SendMessageL( *message1 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data2 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr2,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message2 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data2 );
-    write.AppendL(message2);
-	iEngine->MessageHandler().SendMessageL( *message2 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data3 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KInvalidRecipientID,
-												KSomeSplStr3,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message3 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data3 );
-    write.AppendL(message3);
-	iEngine->MessageHandler().SendMessageL( *message3 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-									
-	return iResult;
-	}	
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::TestSendRecieveMsgL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestSendRecieveMsgL()
-	{
-	
-	_LIT(KSomeSplStr1,"this is send recieved message 1");	//String to be sent
-	_LIT(KSomeSplStr2,"this is send recieved message 2");	//String to be sent
-	
-
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	MIMCVEngineMessageCreator::SMessageData data1 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr1,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message1 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data1 );
-    write.AppendL(message1 );
-	iEngine->MessageHandler().SendMessageL( *message1 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data2 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr2,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message2 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data2 );
-    
-    write.AppendL(message2 );
-	iEngine->MessageHandler().SendMessageL( *message2 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	iEngine->MessageHandler().DeactivateConversationL();
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-			
-    return iResult;
-	}
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::TestSendFetchSendMsgL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestSendFetchSendMsgL()
-	{
-	_LIT(KSomeSplStr1,"this is send recieved message 1");	//String to be sent
-	_LIT(KSomeSplStr2,"this is send recieved message 2");	//String to be sent
-	_LIT(KSomeSplStr3,"this is send recieved message 3 after fetched im from cache");	//String to be sent
-	
-	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-
-
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	MIMCVEngineMessageCreator::SMessageData data1 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr1,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message1 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data1 );
-    write.AppendL(message1);
-	iEngine->MessageHandler().SendMessageL( *message1 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data2 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr2,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message2 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data2 );
-    write.AppendL(message2);
-	iEngine->MessageHandler().SendMessageL( *message2 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	iEngine->MessageHandler().DeactivateConversationL();
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	
-	MIMCVEngineMessageCreator::SMessageData data3 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-												KSomeSplStr3,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message3 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data3 );
-    write.AppendL(message3);
-	iEngine->MessageHandler().SendMessageL( *message3 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-	return iResult;		
-	}	
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::PrintTest
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::GetResult() const
-	{
-	return iResult;
-	}
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::HandleOperationCompletdL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//	
-void CIMCVUiEngine_TestSendMessage::HandleOperationCompletdL( TInt aserviceId, MIMCVEngineMessage::TMessagerType aType , TInt aResult )
-	{
-	iResult = aResult;	
-	if ( iWait.IsStarted() )
-		{
-		iWait.AsyncStop();	
-		}
-	}
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::TestConnectionTerminationL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::TestConnectionTerminationL() 
-	{
-	return KErrNone;	
-	}
-
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::HandleConnectionTerminatedL
-// Simple printing to UI test.
-// -----------------------------------------------------------------------------
-//	
-void CIMCVUiEngine_TestSendMessage::HandleConnectionEventL(TInt aServiceId, TIMCVConnectionState aState, TInt aReason )
-	{
-	iResult = aReason;	
-	if ( iWait.IsStarted() )
-		{
-		iWait.AsyncStop();	
-		}
-	}
-
-// -----------------------------------------------------------------------------
-// Cimcvuiengine_test::TestLoginStateL
-// Example test method function.TestLoginStateL
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestLoginStateL()
-    {
-   	
-    if(iEngine->IsLoggedIn() )
-	    {
-	    return KErrNone;	
-	    }
-    return KErrServerTerminated ;
-    }
- 
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestLoginUserIdL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestLoginUserIdL()
-    {
-   	
-    TPtrC userId = iEngine->GetLoggedInUserId();
-     
- 	if(! userId.Compare(KOwnUser ) )
-	    {
-	    return KErrNone;	
-	    }
-    return KErrArgument ;
-    }
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestGetBrandIdL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestGetBrandIdL()
-    {
-    TPtrC8 BrandId = iEngine->GetBrandId();
-     
-    if( BrandId.Length() )
-        {
-        return KErrNone;    
-        }
-    return KErrArgument ;
-    }
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestGetLanguageIdL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestGetLanguageIdL()
-    {
-    TInt languageId = iEngine->GetLanguageId();
-     
-    if(KErrNone != languageId )
-        {
-        return KErrNone;    
-        }
-    return KErrArgument ;
-    }
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestChatInterfaceL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestChatInterfaceL()
-    {
-    
-   	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-	MIMCVEngineMessageReadInterface& read = chat.MessageReadInterfaceL(1, KRecipientID) ;
-	read.Lock(ETrue); // to make sure ,valid ref
-
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
- 	write.Time();// to make sure ,valid ref
- 	
- 	return KErrNone;
- 	
-    } 
-
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestMessageCoundL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestMessageCoundL()
-    {
-    _LIT(KSomeStr,"hello");	//String to be sent
-    
-   		
-    MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-    iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageSent
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-    
-	write.AppendL(message );
-	
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageReadInterface& read = chat.MessageReadInterfaceL(1, KRecipientID) ;
-
-	// in case of send this must be zero , except unread
-	// this is the ReadOffset not the actaul message count
-	TInt count = read.MessageCount(); 
-	
-	if(count == 0 )
-		{
-		return KErrNone;	
-		}
- 
- 	return KErrNotFound;
-    }   
-   
-  // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestMessageUnreadCoundL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestMessageUnreadCoundL()
-    {
-    _LIT(KSomeStr,"hello");	//String to be sent
-
-    	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-    iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageReceived
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-   
-	write.AppendL(message );
-	
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageReadInterface& read = chat.MessageReadInterfaceL(1, KRecipientID) ;
-
-	TInt count = read.UnreadCount(MIMCVEngineMessageReadInterface::EUnreadAll);
-	
-	if(count == 1)
-		{
-		return KErrNone;	
-		}
- 
- 	return KErrNotFound;
- 	
-    }       
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::DeleteContextL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::DeleteContextL()
-    {
-    //by default engine's context needs to be binded
-	iEngine->CreateContextL() ;	
-    
-    TRAPD(err, iEngine->DeleteContextL() );
-    
- 	return err;
-    }    
-  
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::CreateContextL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::CreateContextL()
-    {
-    // by default presence must be EOffline
-    TRAPD(err, iEngine->CreateContextL() );   
-    
- 	return err;
-    }    
-     
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestSubscribePresenceL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestSubscribePresenceL()
-    {
-    TRAPD(err, iEngine->MessageHandler().SubscribePresenceL(KRecipientID) );
-  	return err;
-    }  
-      
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestGetPresenceStatusL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestGetPresenceStatusL()
-    {
-   
-    // by default presence must be EOffline
-    TIMCVOnlineStatus status = iEngine->MessageHandler().GetPresenceStatus();
-    if(status == EOffline )
-	    {
-	    return KErrNone;	
-	    }
-    
-  	return KErrArgument;
- 	
-    } 
-    
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestAppendInfoMessageL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestAppendInfoMessageL()
-    {
-   _LIT(KSomeStr,"hello this is information message ");	//String to be sent
-    
-    	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-    iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageOther
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-   
-	write.AppendL(message );
-	
-	TRAPD(err, iEngine->MessageHandler().AppendToCacheL(KRecipientID, message->Text() ) );
-		
-	return err;	
-    }                  
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::HandlePresenceChangedL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-void CIMCVUiEngine_TestSendMessage::HandlePresenceChangedL(TInt aServiceId, const TDesC& /*aBuddyId*/ )
-	{
-	// do nothings	
-	}
-	
-
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestCCHHandlerL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::TestCCHHandlerL()	
-	{
-	TInt error = KErrNone;
-	
-	MIMCVEngineCchHandler& cchHandler = iEngine->CCHHandler();
-	
-	if ( cchHandler.IsServiceLoggedIn() )
-		{
-		error = KErrArgument ;	
-		}
-	HBufC* user = cchHandler.GetUserIdL();
-	
-	if( user )
-		{
-		delete 	user;
-		error = KErrNone ;
-		}
-	else
-		{
-		error = KErrArgument ;		
-		}
-	return error;			
-	}
-
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::ReadyForShutdownTestL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::ReadyForShutdownTestL()	
-	{
-	if( !iEngine->ReadyForShutdown() )
-		{
-		// loggedin
-		return KErrNone;	
-		}
-	return KErrArgument;			
-	}
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::ServiceNameTestL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::ServiceNameTestL()	
-	{
-	if (iEngine->ServiceName().Length() )
-		{
-		return KErrNone ;	
-		}
-	return KErrArgument;			
-	}
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::OpenChatsTestL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::OpenChatsTestL()	
-	{
-	if ( &iEngine->OpenChats()  )
-		{
-		MIMCVEngineOpenChats& openchat = iEngine->OpenChats() ;
-		if( !openchat.Count())
-			{
-			return KErrNone ;	
-			}
-		}
-	return KErrArgument;			
-	}
- // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::GetServiceIdTestL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//	
-TInt CIMCVUiEngine_TestSendMessage::GetServiceIdTestL()	
-	{
-	if ( iEngine->GetServiceId() > 0 )
-		{
-		return KErrNone ;	
-		}
-	return KErrArgument;			
-	}
-	
-
-  
-  // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestClosAllContainerL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestClosAllContainerL()
-    {
-    _LIT(KSomeStr,"hello");	//String to be sent
-
-    	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-    iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageReceived
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-   
-	write.AppendL(message );
-	
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	if( chat.ChatCount() )
-		{
-		chat.CloseAllContainers();
-	
-		}
-	if( !chat.ChatCount() )
-		{
-		return KErrNone;
-	
-		}
-	
-	return KErrArgument;	
-	
- 	
-    }    
-    
-  
-  // -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestDeleteChatL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestDeleteChatL()
-    {
-    _LIT(KSomeStr,"hello");	//String to be sent
-
-    	
-	MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-    iEngine->MessageHandler().StartNewConversationL( KRecipientID );
-	
-	MIMCVEngineMessageWriteInterface& write = chat.MessageWriteInterfaceL(1, KRecipientID );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageReceived
-												};										
-    MIMCVEngineMessage* message = iEngine->MessageHandler().MessageCreator().CreateMessageL( data );
-   
-	write.AppendL(message );
-	
-	iEngine->MessageHandler().SendMessageL( *message );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-
-	MIMCVEngineMessageWriteInterface& write2 = chat.MessageWriteInterfaceL(1, KRecipientID2 );
-	
-	iEngine->MessageHandler().StartNewConversationL( KRecipientID2 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	MIMCVEngineMessageCreator::SMessageData data1 = 
-												{
-												KMessageDataVersion,
-												KOwnUser,
-												KRecipientID2,
-											    KSomeStr,
-												MIMCVEngineMessage::EContentText,
-												MIMCVEngineMessage::EMessageReceived
-												};										
-    MIMCVEngineMessage* message1 = iEngine->MessageHandler().MessageCreator().CreateMessageL( data1 );
-   
-	write2.AppendL(message1 );
-	
-	iEngine->MessageHandler().SendMessageL( *message1 );
-	
-	if ( !iWait.IsStarted() )
-		{
-		iWait.Start();	
-		}
-		
-	if( chat.ChatCount() == 2 )
-		{
-		chat.DeleteChatL( 1, KRecipientID2 );
-		}
-	if( chat.ChatCount() == 1)
-		{
-		return KErrNone;
-	
-		}
-	
-	return KErrArgument;	
-	
- 	
-    }  
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestEditorMessageL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestEditorMessageL()
-    {
-    
-    MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-
-    MIMCVEngineMessageReadInterface& read = chat.MessageReadInterfaceL(1, KRecipientID) ;
-    read.Lock(ETrue); // to make sure ,valid ref
-    read.StoreEditerMessageL(_L("Test Message"));
-    TBuf<15> receiveData;
-    receiveData = read.GetEditerMessage();
-    
-    if(0 == receiveData.Compare(_L("Test Message")))
-        return KErrNone;
-    
-    return KErrArgument;
-    } 
-    
-// -----------------------------------------------------------------------------
-// CIMCVUiEngine_TestSendMessage::TestEditorMessageL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CIMCVUiEngine_TestSendMessage::TestConvertPresCacheEnum()
-    {
-    TInt err;
-    MIMCVEngineMessageUtils* aMessageUtils = NULL;
-    MIMCVEngineChatInterface& chat = iEngine->ChatInterface();
-    MIMCVEngineMessageCreator* messageCreator  = CIMCVEngineMessageCreator::NewL();
-    CIMCVEngineMessageHandler* handler = CIMCVEngineMessageHandler::NewL( chat, *messageCreator, NULL, 1 ,KNullDesC);
-    MPresenceBuddyInfo2::TAvailabilityValues value = MPresenceBuddyInfo2::EUnknownAvailability;
-    TIMCVOnlineStatus status;
-    
-    // the ConvertPresenceCacheEnums does not have the support for block and pending, 
-    // hence should be added in the new test cases.
-    
-    /*TBuf<50> buf1(KBlockedState);
-    TPtrC     Ptr1 (buf1);
-    TIMCVOnlineStatus status = handler->ConvertPresenceCacheEnums(value, Ptr1);
-    if(EUnknown != status)
-	    {
-	    	return KErrNotFound;
-	    }
-	  */  
-	value = MPresenceBuddyInfo2::EUnknownAvailability;    
-	TBuf<50> buf2(KInvisibleState);
-	TPtrC     Ptr2 (buf2);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr2);
-	if(EInvisible != status)
-	    {
-	    	return KErrNotFound;
-	    }
-
-	value = MPresenceBuddyInfo2::EBusy;    
-	TBuf<50> buf3(KAwayState);
-	TPtrC     Ptr3 (buf3);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr3);
-	if(EAway != status)
-	    {
-	    	return KErrNotFound;
-	    }
-	    
-	value = MPresenceBuddyInfo2::EBusy;    
-	TBuf<50> buf4(KOnPhoneState);
-	TPtrC     Ptr4 (buf4);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr4);
-	if(EOnPhone != status)
-	    {
-	    	return KErrNotFound;
-	    }
-
-	value = MPresenceBuddyInfo2::EBusy;    
-	TBuf<50> buf5(KDndState);
-	TPtrC     Ptr5 (buf5);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr5);
-	if(EDoNotDisturb != status)
-	    {
-	    	return KErrNotFound;
-	    }
-
-	/*value = MPresenceBuddyInfo2::EUnknownAvailability;    
-	TBuf<50> buf6(KPendingRequestState);
-	TPtrC     Ptr6 (buf6);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr6);
-	if(EUnknown != status)
-	    {
-	    	return KErrNotFound;
-	    }
-	   */ 
-	value = MPresenceBuddyInfo2::EAvailable;
-	_LIT(KAnyMsg,"Any msg");
-	TBuf<50> buf7(KAnyMsg);
-	TPtrC     Ptr7 (buf7);
-	status = handler->ConvertPresenceCacheEnums(value, Ptr7);
-	if(EOnline != status)
-	    {
-	    	return KErrNotFound;
-	    }
-	    
-	value = MPresenceBuddyInfo2::ENotAvailable;   
-	status = handler->ConvertPresenceCacheEnums(value, Ptr7);
-	if(EOffline != status)
-	    {
-	    	return KErrNotFound;
-	    }
-	    
-	value = MPresenceBuddyInfo2::EUnknownAvailability;
-	status = handler->ConvertPresenceCacheEnums(value, Ptr7);
-	if(EUnknown != status)
-	    {
-	    	return KErrNotFound;
-	    }
-
-	return KErrNone;        
-    }
-    
-       
-// end of file
-