authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugintestactive.cpp
branchRCL_3
changeset 53 030c4fbc13d7
parent 50 d07aa956024a
child 57 e0a1505373c1
child 58 b54b58ee9d58
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugintestactive.cpp	Thu Apr 01 00:24:41 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1107 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: 
-*
-*/
-
-
-#include "tpinpluginteststep.h"
-#include <authserver/authplugininterface.h>
-#include <test/testexecutelog.h>
-#include <ecom/ecom.h>
-#include <ecom/implementationinformation.h>
-#include <s32file.h>
-#include <authserver/auth_srv_errs.h>
-#include <authserver/authpatchdata.h>
-#include <u32hal.h>
-#include <e32svr.h>
- 
-using namespace AuthServer;
-
-_LIT(KTrainSuccess,   	"TrainingSuccess");
-_LIT(KReTrainSuccess, 	"ReTrainingSuccess");
-_LIT(KIdentifySuccess,	"IdentifySuccess");
-_LIT(KIdentifyFailure,  "IdentifyFailure");
-
-_LIT(KSuccess,   	"Success");
-_LIT(KFailure,   	"Failure");
-_LIT(KDialogCancel, "Cancel");
-_LIT(KDialogQuit, 	"Quit");
-_LIT(KServerCancel, "ServerCancel");
-
-_LIT(KInputFile, 	"C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, 	"C:\\t_pinplugindlg_out.dat");
-
-const TPluginId KPinPluginImplementationUid = 0x200032E5;
-const TUint32 KEntropy = 10000;
-const TUint32 KFalsePositiveRate = 0;
-const TUint32 KFalseNegativeRate = 0;
-const TBool KActive = ETrue;
-const TAuthPluginType KPluginType = EAuthKnowledge;
-
-_LIT(KPluginName, "PinPlugin");
-_LIT(KPluginDesc, "Pinplugin authenticates device holder using PIN numbers generated from 0-9 digits");
-
-TInt CPinPluginTestActive::KAuthenticationServerStackSize=0x2000;
-TInt CPinPluginTestActive::KAuthenticationServerInitHeapSize=0x1000;
-TInt CPinPluginTestActive::KAuthenticationServerMaxHeapSize=0x1000000;
-
-CPinPluginTestActive* CPinPluginTestActive::NewL(CTestExecuteLogger& aLogger, AuthServer::TIdentityId& aIdentityId, TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep)
-	{
-	CPinPluginTestActive* pinPlugin = new (ELeave) CPinPluginTestActive(aLogger, aIdentityId, aPinProcessType, aTestStep);
-	pinPlugin->ContructL();
-	return pinPlugin;
-	}
-
-void CPinPluginTestActive::ContructL()
-	{
-	User::LeaveIfError(iFs.Connect());
-	}
-
-CPinPluginTestActive::CPinPluginTestActive(CTestExecuteLogger& aLogger, TIdentityId& aIdentityId,TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep) 
-	:CActive(EPriorityStandard), 
-	iLogger(aLogger), 
-	iOperation(EPinPluginInfo),
-	iIdentityId(aIdentityId),
-	iPinProcessType(aPinProcessType),
-    iTestStep(aTestStep)
-	{
-	CActiveScheduler::Add( this );
-	}
-
-CPinPluginTestActive::~CPinPluginTestActive()
-	{
-	Cancel();
-	iFs.Close();
-	if (iPinPlugin)
-		{
-		REComSession::DestroyedImplementation(iDtor_ID_Key);
-		delete iPinPlugin;
-		}
-	REComSession::FinalClose();
-	}
-
-	
-void CPinPluginTestActive::RunL()
-	{
-        iTestStep.SetTestStepError(iStatus.Int()); 
-    	CActiveScheduler::Stop();
-	return;
-	}
-	
-TVerdict CPinPluginTestActive::DoTestPropertyL()
-	{
-	TBool res = ETrue; 
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		if(iPinPlugin->Id() != KPinPluginImplementationUid)
-			res = EFalse;
-		if(iPinPlugin->Name().CompareF(KPluginName) != 0)
-			res = EFalse;
-		if(iPinPlugin->Description().CompareF(KPluginDesc) != 0)
-			res = EFalse;
-		if(iPinPlugin->Type() != KPluginType)
-			res = EFalse;
-		if(iPinPlugin->MinEntropy() != KEntropy)
-			res = EFalse;
-		if(iPinPlugin->FalsePositiveRate() != KFalsePositiveRate)
-			res = EFalse;
-		if(iPinPlugin->FalseNegativeRate() != KFalseNegativeRate)
-			res = EFalse;
-		if(iPinPlugin->IsActive() != KActive)
-			res = EFalse;
-
-		INFO_PRINTF2(_L("ID			 : 0x%x"), iPinPlugin->Id());
-	    INFO_PRINTF2(_L("Name		 : %S"), &iPinPlugin->Name());
-	    INFO_PRINTF2(_L("Description	 : %S"), &iPinPlugin->Description());
-	    INFO_PRINTF2(_L("MinEntropy		 : %d"), iPinPlugin->MinEntropy());
-	    INFO_PRINTF2(_L("False Positive Rate : %d"), iPinPlugin->FalsePositiveRate());
-	    INFO_PRINTF2(_L("False Negative Rate : %d"), iPinPlugin->FalseNegativeRate());
-	    _LIT(KETrue, "ETrue");
-		_LIT(KEFalse, "EFalse");
-	    INFO_PRINTF2(_L("IsActive   	 : %S"), iPinPlugin->IsActive() ? &KETrue : &KEFalse);
-	    switch(iPinPlugin->Type())
-	    	{
-	    	case EAuthDefault:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthDefault"));
-	    		break;
-	    	case EAuthBiometric:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthBiometric"));
-	    		break;
-	    	case EAuthKnowledge:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthKnowledge"));
-	    		break;
-	    	case EAuthToken:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthToken"));
-	    		break;
-	    	case EAuthPerformance:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthPerformance"));
-	    		break;
-	    	default:
-	    		INFO_PRINTF1(_L("Invalid Type"));
-	    	}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-
-	if (!res)
-		{
-		INFO_PRINTF1(_L("PinPlugin returns Unexpected Values"));
-		return EFail;
-		}
-	return EPass;
-	}
-
-TVerdict CPinPluginTestActive::DoTestDefaultDataL()
-	{
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		HBufC8* result = NULL;
-		TInt err = iPinPlugin->DefaultData(iIdentityId, result);
-		if(result != NULL)
-			{
-			delete result;
-			}
-		if (err != KErrNone)
-			{
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			res = EFalse;
-			INFO_PRINTF3(_L("Err :%d while receiving the default data for the identity : %d"), err, iIdentityId);
-			}
-		else
-			{
-			_LIT(KPinValue, "11111");
-			iPinValue.Copy(KPinValue);
-			INFO_PRINTF2(_L("Requesting Identify the Identity : %d with the default pin"), iIdentityId);
-			TIdentityId identityId = iIdentityId;
-			PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-			res = DoIdentifyL(result);
-			if(result != NULL)
-				{
-				INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-				delete result;
-				}
-			else
-				{
-				INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-
-	return ReturnResultL(res);
-	}
-
-TVerdict CPinPluginTestActive::DoTestIdentifyL()
-	{ 
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginIdentify, iDialogNumber);
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		HBufC8* result = NULL;
-		INFO_PRINTF2(_L("Requesting Identify the Identity : %d"), iIdentityId);
-		res = DoIdentifyL(result);
-		if(result != NULL)
-			{
-			INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-			delete result;
-			}
-		else
-			{
-			INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestTrainL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginTraining, iDialogNumber);
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-
-TVerdict CPinPluginTestActive::DoTestForgetL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		ForgetIdentifyL();
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-
-	return ReturnResultL(res);
-	}
-
-void CPinPluginTestActive::DoCancel() 
-	{ 
-	iPinPlugin->Cancel();
-	}
-
-TVerdict CPinPluginTestActive::DoTestReTrainL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-
-	TInt dialogno = iDialogNumber;
-	TBool DialogCancel = EFalse;
-	if (iExpectedOutput.CompareF(KDialogCancel) == 0
-		|| iExpectedOutput.CompareF(KDialogQuit) == 0)
-		{
-		DialogCancel = ETrue;
-		}
-	PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		if (res)
-			{
-			iTempPinValue.Copy(iPinValue);
-			if (DialogCancel)
-				{
-				PreferDialogInputL(KDialogCancel, EPinPluginTraining, dialogno);
-				}
-			else
-				{
-				PreferDialogInputL(KReTrainSuccess, EPinPluginTraining, dialogno);		
-				}
-			INFO_PRINTF2(_L("Requesting ReTrain the Identity : %d"), iIdentityId);
-			res = TrainIdentifyL();
-			if (res)
-				{
-				iPinValue.Copy(iTempPinValue);
-				iIdentityId = identityId;
-				if (DialogCancel)
-					{
-					PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, dialogno);	
-					}
-				else
-					{
-					PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);		
-					}		
-				HBufC8* result = NULL;
-				HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-			   	pinVal->Des().Copy(iPinValue);
-				INFO_PRINTF3(_L("Requesting Identify the Identity : %d with the pin : %S"), iIdentityId, pinVal);
-				CleanupStack::PopAndDestroy(pinVal);
-				res = DoIdentifyL(result);
-				if(result != NULL)
-					{
-					INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-					delete result;
-					}
-				else
-					{
-					INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-					}
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestServerCancelL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginTraining, 1);
-	
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		if (iPinProcessType.CompareF(KReTrainServerCancel) == 0)
-			{
-			INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-			res = TrainIdentifyL();
-			}
-		HBufC8* result = NULL;
-		if (iPinProcessType.CompareF(KTrainServerCancel) == 0
-			|| iPinProcessType.CompareF(KReTrainServerCancel) == 0)
-			{
-			iTempPinValue.Copy(iPinValue);
-			INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-			iPinPlugin->Train(iIdentityId, result, iStatus);
-			SetActive();
-			}
-		else if (iPinProcessType.CompareF(KIdentifyServerCancel) == 0)
-			{
-			INFO_PRINTF2(_L("Identify the Identity : %d"), iIdentityId);
-			iPinPlugin->Identify(iIdentityId, KNullDesC(), result, iStatus);
-			SetActive();
-			}
-
-		INFO_PRINTF1(_L("Cancel the process from the Authentication Server"));
-
-		Cancel();
-		
-		if(iStatus.Int() != -3)
-			{
-			res = EFalse;
-			}
-		if (res && iPinProcessType.CompareF(KIdentifyServerCancel) != 0)
-			{
-			iIdentityId = identityId;
-			if (iPinProcessType.CompareF(KTrainServerCancel) == 0)
-				{
-				_LIT(KPinValue, "123456");
-				iPinValue.Copy(KPinValue);
-				PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);	
-				}
-			else
-				{
-				iPinValue.Copy(iTempPinValue);
-				PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);		
-				}		
-			HBufC8* result = NULL;
-			HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-		   	pinVal->Des().Copy(iPinValue);
-			INFO_PRINTF3(_L("Requesting Identify the Identity : %d with the pin : %S"), iIdentityId, pinVal);
-			CleanupStack::PopAndDestroy(pinVal);
-			res = DoIdentifyL(result);
-			if(result != NULL)
-				{
-				INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-				delete result;
-				}
-			else
-				{
-				INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestSequenceL()
-	{
-	PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-	
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		if (res)
-			{
-			PreferDialogInputL(KReTrainSuccess, EPinPluginTraining, 1);
-			INFO_PRINTF2(_L("Requesting ReTrain the Identity : %d"), iIdentityId);
-			HBufC8* result = NULL;
-			res = DoTrainL(result);
-			if (result != NULL)
-				{
-				delete result;
-				}
-			if (res)
-				{
-				TIdentityId id = iIdentityId;
-				res = ForgetIdentifyL();
-				if(res)
-					{
-					for (TInt i = 0; i <= 2; i++)
-						{
-						iIdentityId = id;
-						INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-						if (i==2)
-							{
-							PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-							}
-						else
-							{
-							iInfoMsg = EPinPluginTrainingSuccess;
-							PreferDialogInputL(KDialogCancel, EPinPluginTraining, 1);
-							}
-						res = TrainIdentifyL();
-						if (!res)
-							{
-							break;
-							}
-						}
-					}
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestOomL()
-	{
- 	if(!iTestStep.GetIntFromConfig(iTestStep.ConfigSection(), _L("oomtest"), iOomTest))
-   		{
-   		INFO_PRINTF1(_L("Test about which function is needed"));
-   		return EFail;
-   		}
-	__UHEAP_MARK;
-		TIdentityId id = 1234;
-		HBufC8* result = NULL;
-	switch(iOomTest)
-		{
-		case 1:
-			{
-			iPinPlugin = LoadPluginL();
-			UnLoadPlugin();
-			}
-			break;
-		case 2:
-			{
-			iPinPlugin = LoadPluginL();
-			TInt err = iPinPlugin->DefaultData(id, result);
-			CleanupStack::PushL(result);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			CleanupStack::PopAndDestroy(result);
-			UnLoadPlugin();
-			}
-			break;
-		case 3:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			_LIT(KPinValue, "11111");
-			iPinValue.Copy(KPinValue);
-			PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-			iPinPlugin->Identify(id, KNullDesC(), result, iStatus);
-			CleanupStack::PushL(result);
-			SetActive();
-			CActiveScheduler::Start();
-			CleanupStack::PopAndDestroy(result);
-			UnLoadPlugin();
-			}
-			break;
-		case 4:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-			iPinPlugin->Train(id, result, iStatus);
-			SetActive();
-			CActiveScheduler::Start();
-			if (result != NULL)
-				{
-				delete result;
-				}
-			TInt err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			UnLoadPlugin();
-			}
-			break;
-		case 5:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-			iPinPlugin->Train(id, result, iStatus);
-			SetActive();
-			CActiveScheduler::Start();
-			if (result != NULL)
-				{
-				delete result;
-				}
-			UnLoadPlugin();
-			}
-			break;
-		case 6:
-			{
-			iPinPlugin = LoadPluginL();
-			TInt err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			UnLoadPlugin();
-			}
-			break;
-		}
-
-	__UHEAP_MARKEND;
- 	return EPass;
-	}
-
-CPinPlugin* CPinPluginTestActive::LoadPluginL()
-	{
-	 TEComResolverParams resolverParams;
-	  TBufC8<16> pluginIdTxt;
-	  
-	  pluginIdTxt.Des().Format(_L8("%x"), KPinPluginImplementationUid);
-	  pluginIdTxt.Des().UpperCase();
-	  resolverParams.SetDataType(pluginIdTxt);
-	  
-	  //To load plugins from sources other than ROM the patch 
-	  // data KEnablePostMarketAuthenticationPlugins must be set to True.
-	  TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-	#ifdef __WINS__
-
-	  // Default SymbianOS behavior is to only load auth plugins from ROM.
-	  enablePostMarketPlugin = 0;
-
-	  // For the emulator allow the constant to be patched via epoc.ini
-	  UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-	  (TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-	#endif
-
-	  TAny* plugin = 0;
-	  TInt err = 0;
-	  
-	  if(enablePostMarketPlugin == 0) 
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											iDtor_ID_Key,
-											resolverParams,
-											KRomOnlyResolverUid));
-	  	}
-	  
-	  else
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											iDtor_ID_Key,
-											resolverParams));
-	  	}
-	  
-	 if (err == KErrNotFound)
-	    {
-	    err = KErrAuthServNoSuchPlugin;  
-	    }
-	  User::LeaveIfError(err);
-	    
-	  return reinterpret_cast<CPinPlugin*>(plugin);
-	
-	}
-
-void CPinPluginTestActive::UnLoadPlugin()
-	{
-	delete iPinPlugin;
-	iPinPlugin = NULL;
-	REComSession::DestroyedImplementation(iDtor_ID_Key);
-	REComSession::FinalClose();
-	}
-	
-TVerdict CPinPluginTestActive::ReturnResultL(TBool aRes)
-	{
-	TVerdict result = EPass;
-	DeleteFileL();
-	if (!aRes)
-		{
-		result = EFail;
-		}
-	return result;
-	}
-	
-TBool CPinPluginTestActive::TrainIdentifyL()
-	{
-	TBool res = ETrue;
-
-	HBufC8* result = NULL;
-	res = DoTrainL(result);
-	if (res)
-		{
-		HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-	   	pinVal->Des().Copy(iPinValue);
-		INFO_PRINTF3(_L("Identify the Identity : %d using pin : %S"), iIdentityId, pinVal);
-		HBufC8* result1 = NULL;
-		TIdentityId identityId = iIdentityId;
-		res = DoIdentifyL(result1);
-		if(res && result1 != NULL)
-			{
-			if (result->Des().CompareF(result1->Des()) != 0)
-				{
-				INFO_PRINTF1( _L("Trained result is different from identification result"));
-				res = EFalse;
-				}
-			else
-				{
-				INFO_PRINTF3(_L("The Identity : %d is Successfully identified with pin : %S"), iIdentityId, pinVal);
-				}
-			delete result1;
-			}
-		else
-			{
-			INFO_PRINTF2(_L("The Identity %d is not trained"), identityId);
-			}
-		CleanupStack::PopAndDestroy(pinVal);
-		}
-	if(result != NULL)
-		{
-		delete result;
-		}
-		
-	return res;
-	}
-
-TBool CPinPluginTestActive::ForgetIdentifyL()
-	{
-	INFO_PRINTF2(_L("Requesting Forget the Identity : %d"), iIdentityId);
-	TInt err = iPinPlugin->Forget(iIdentityId);
-	
-	TBool res = CheckResultL(err);
-	if (res)
-		{
-		INFO_PRINTF2(_L("IdentityId :%d is successfully removed"), iIdentityId);
-		INFO_PRINTF1(_L("Verify using Identify Process"));	
-		HBufC8* result = NULL;
-		res = DoIdentifyL(result);
-		if(res && result != NULL)
-			{
-			INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-			delete result;
-			}
-		}
-	return res;	
-	}
-	
-TBool CPinPluginTestActive::DoTrainL(HBufC8*& aResult)
-	{
-	TBool res = ETrue;
-	iStatus = KRequestPending;
-	
-	iPinPlugin->Train(iIdentityId, aResult, iStatus);
-	SetActive();
-	CActiveScheduler::Start();
-		
-	res = VerifyResultL(iStatus.Int());
-	return res;
-	}
-	
-TBool CPinPluginTestActive::DoIdentifyL(HBufC8*& aResult)
-	{
-	TBool res = ETrue;
-		
-	iPinPlugin->Identify(iIdentityId, KNullDesC(), aResult, iStatus);
-	if(!IsActive())
-		SetActive();
-	CActiveScheduler::Start();
-	
-	res = VerifyResultL(iStatus.Int());
-	return res;
-	}
-	
-TBool CPinPluginTestActive::VerifyResultL(TInt aOutputVal)
-	{
-	TBool result = ETrue;
-	
-	if ((iExpectedOutput.CompareF(KDialogCancel) == 0)
-		&& (aOutputVal != KErrAuthServPluginCancelled))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	else if ((iExpectedOutput.CompareF(KDialogQuit) == 0)
-		&& (aOutputVal != KErrAuthServPluginQuit))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	else if ((iExpectedOutput.CompareF(KTrainSuccess) == 0)
-		&& (aOutputVal == KErrAuthServRegistrationFailed))
-		{
-		INFO_PRINTF2(_L("Authserver registration failed. Returned error code = %d"), aOutputVal);
-		result = EFalse;
-		}	
-	else if ((iExpectedOutput.CompareF(KDialogCancel) != 0)
-			&& (iExpectedOutput.CompareF(KDialogQuit) != 0)
-			&& (iExpectedOutput.CompareF(KServerCancel) != 0)
-			&& (aOutputVal != KErrNone))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	if (result && aOutputVal == KErrNone)
-		{
-		TInt dialogNumber;
-		TPinValue pinValue;
-		TPinPluginInfoMessage displayedMsg;
-		ReadOutputDetailsL(dialogNumber, pinValue, displayedMsg);
-		TPtrC message;
-		switch(displayedMsg)
-	    	{
-	    	case EPinPluginTrainingSuccess:
-	    		message.Set(_L("EPinPluginTrainingSuccess"));
-	    		break;
-	    	case EPinPluginReTrainingSuccess:
-	    		message.Set(_L("EPinPluginReTrainingSuccess"));
-	    		break;
-	    	case EPinPluginIdentificationSuccess:
-	    		message.Set(_L("EPinPluginIdentificationSuccess"));	  
-	    		break;
-	    	case EPinPluginIdentificationFailure:
-	    		message.Set(_L("EPinPluginIdentificationFailure"));
-	    		break;
-	    	}
-		if(displayedMsg != iInfoMsg)
-			{
-			INFO_PRINTF2(_L("INFO :%S which is not expected"), &message);
-			result = EFalse;
-			}
-		if (iCmdResult == EOk && dialogNumber != iDialogNumber)
-			{
-			INFO_PRINTF3(_L("Number of dialog displayed : %d differ from expected dialog: %d."), dialogNumber,iDialogNumber);
-			result = EFalse;
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& dialogNumber == 0)
-			{
-			INFO_PRINTF2(_L("INFO :%S because IdentityId is not available in the DB"), &message);
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& dialogNumber == 3)
-			{
-			INFO_PRINTF2(_L("INFO :%S because wrong pin input for all retries and IdentityId exists in the DB"), &message);
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& iIdentityId != KUnknownIdentity)
-			{
-			INFO_PRINTF2(_L("IdentityId was not reset for %S"), &message);
-			}
-		if (displayedMsg != EPinPluginIdentificationSuccess
-			&& displayedMsg != EPinPluginIdentificationFailure)
-			{
-			iPinValue.Copy(pinValue);
-			if (iInfoMsg == EPinPluginTrainingSuccess 
-				|| iInfoMsg == EPinPluginReTrainingSuccess)
-				{
-				HBufC* pinVal = HBufC::NewLC(pinValue.Length());
-			   	pinVal->Des().Copy(pinValue);
-				INFO_PRINTF3(_L("The Identity %d is trained with pin number %S"), iIdentityId, pinVal);
-				CleanupStack::PopAndDestroy(pinVal);
-				PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-				}
-			else
-				{
-				PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 0);
-				}
-			}
-		}
-	if(aOutputVal != KErrNone)
-		{
-		if (aOutputVal == KErrAuthServPluginCancelled)
-			{
-			INFO_PRINTF1(_L("Cancel the process from the Dialog Notifier"));	
-			}
-		else if (aOutputVal == KErrAuthServPluginQuit)
-			{
-			INFO_PRINTF1(_L("Quit the process from the Dialog Notifier"));	
-			}
-		CheckResultL(aOutputVal);
-		}
-	return result;
-	}
-	
-TBool CPinPluginTestActive::CheckResultL(TInt aResult)
-	{
-	_LIT(KPinValue, "123456");
-	if (iExpectedOutput.CompareF(KSuccess) == 0
-		&& aResult == KErrAuthServNoSuchIdentity)
-		{
-		INFO_PRINTF2(_L("IdentityId : %d is not identified when should be"), iIdentityId);
-		return EFalse;
-		}
-	else if(iExpectedOutput.CompareF(KFailure) == 0
-		&& aResult == KErrNone)
-		{
-		INFO_PRINTF2(_L(" IdentityId : %d is identified when should not be"), iIdentityId);
-		return EFalse;
-		}
-	iPinValue.Copy(KPinValue);
-	PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);
-	return ETrue;
-	}
-	
-TBool CPinPluginTestActive::ReadDetailsFromIni(CPinPluginTestStep& aStep)
-	{
-	TPtrC pinVal;
-	if(!aStep.GetStringFromConfig(aStep.ConfigSection(), _L("expectedoutput"), iExpectedOutput))
-		{
-		INFO_PRINTF1(_L("expectedoutput value is missing"));
-		return EFalse;
-		}
-	// Optional input, if the input is not available by default the iIndex is set to 0.
-	if(!aStep.GetIntFromConfig(aStep.ConfigSection(), _L("selectindex"), iIndex))
-		{
-		iIndex = 0;
-		}
-	// optional input, if not pinplugin use the default pinlength from the config file.
-	aStep.GetIntFromConfig(aStep.ConfigSection(), _L("newpinlength"), iNewPinLength);
-
-	// optional input, 
-	aStep.GetStringFromConfig(aStep.ConfigSection(), _L("pinvalue"), pinVal);
-	iPinValue.Copy(pinVal);
-
-	// Optional input, if the input is not available by default the resultant output cmd will given
-	// in the dialog No 1.
-	if(!aStep.GetIntFromConfig(aStep.ConfigSection(), _L("outputatdialog"), iDialogNumber))
-		{
-		if (iExpectedOutput.CompareF(KIdentifyFailure) == 0)
-			{
-			iDialogNumber = 3;
-			}
-		else
-			{
-			iDialogNumber = 1;
-			}
-		}
-	return ETrue;
-	}
-	
-void CPinPluginTestActive::PreferDialogInputL(const TDesC& aExpectedOutput,
-			TPinPluginDialogOperation aOp, TInt aDialogNo)
-	{
-	// iPinValue, iIndex, iNewPinLength is not changing for every operation. if
-	// any changes occurs , we have to reset just before calling this function.
-	iOperation = aOp;
-	iDialogNumber = aDialogNo;
-	iExpectedOutput.Set(aExpectedOutput);
-		
-	if (aExpectedOutput.CompareF(KTrainSuccess) == 0)
-		{
-		iInfoMsg = EPinPluginTrainingSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KReTrainSuccess) == 0)
-		{
-		iInfoMsg = EPinPluginReTrainingSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KIdentifySuccess) == 0)
-		{
-		iInfoMsg = EPinPluginIdentificationSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KIdentifyFailure) == 0)
-		{
-		iInfoMsg = EPinPluginIdentificationFailure;
-		}
-
-	if (aExpectedOutput.CompareF(KDialogCancel) == 0)
-		{
-		iCmdResult = iCmdFinalResult = ECancel;
-		}
-	else if (aExpectedOutput.CompareF(KDialogQuit) == 0)
-		{
-		iCmdResult = iCmdFinalResult = EQuit;
-		}
-	else 
-		{
-		iCmdResult = iCmdFinalResult = EOk;
-		}
-		
-	if (iDialogNumber > 1 && 
-	   	aExpectedOutput.CompareF(KIdentifyFailure) != 0 &&
-		aExpectedOutput.CompareF(KIdentifySuccess) != 0)
-		{
-		iCmdResult = ENext;
-		}
-	DeleteFileL();
-	WriteOutputDetailsL();
-	}
-	
-void CPinPluginTestActive::WriteOutputDetailsL()
-	{
-	RFileWriteStream stream;
-	TInt err = stream.Create(iFs, KInputFile, EFileWrite | EFileShareExclusive);
-	User::LeaveIfError(err);
-	stream.PushL();
-
-	MStreamBuf* streamBuf = stream.Sink();
-	streamBuf->SeekL(MStreamBuf::EWrite, EStreamEnd);
-	stream.WriteInt32L(iOperation);
-	stream.WriteInt32L(iPinValue.Length());
-	stream.WriteL(iPinValue);
-	stream.WriteInt32L(iIndex);
-	stream.WriteInt32L(iNewPinLength);
-	stream.WriteInt32L(iCmdResult);
-	iOperation = EPinPluginInfo;
-	stream.WriteInt32L(iOperation);
-	stream.WriteInt32L(iCmdFinalResult);
-	stream.WriteInt32L(iDialogNumber);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(); // stream
-	}
-
-void CPinPluginTestActive::ReadOutputDetailsL(TInt& aDialogNumber, TPinValue& aPinValue, TPinPluginInfoMessage& aDisplayedMsg)
-	{
-	RFileReadStream stream;
-	User::LeaveIfError(stream.Open(iFs, KOutputFile, EFileRead | EFileShareExclusive));
-	stream.PushL();
-
-	MStreamBuf* streamBuf = stream.Source();
-	TPinValue pinvalue;
-	TInt pinValueSize;
-	
-	aDialogNumber = stream.ReadInt32L();
-	
-	pinValueSize = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueSize);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueSize);
-	aPinValue.Copy(pinValuePtr);
-	CleanupStack::PopAndDestroy(1, pinValueBuf);	
-
-	aDisplayedMsg = static_cast<TPinPluginInfoMessage>(stream.ReadInt32L());
-	
-	CleanupStack::PopAndDestroy(&stream); 
-	}
-	
-void CPinPluginTestActive::DeleteFileL()
-	{
-	CFileMan* fileMan = CFileMan::NewL(iFs);
-	CleanupStack::PushL(fileMan);
-	TInt err = fileMan->Delete(KInputFile);
-	if ( err != KErrNotFound && err != KErrNone )
-		{
-		User::LeaveIfError(err);
-		}
-	err = fileMan->Delete(KOutputFile);
-	if (err != KErrNotFound && err != KErrNone )
-		{
-		User::LeaveIfError(err);
-		}
-	CleanupStack::PopAndDestroy(fileMan);	
-	}
-
-
-
-
-