authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrStep.h
branchRCL_3
changeset 53 030c4fbc13d7
parent 50 d07aa956024a
child 57 e0a1505373c1
child 58 b54b58ee9d58
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrStep.h	Thu Apr 01 00:24:41 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,786 +0,0 @@
-/*
-* Copyright (c) 2005-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: 
-*
-*/
-
-
-
-#ifndef T_AUTHSVR_STEP_H
-#define T_AUTHSVR_STEP_H
-
-#include <test/testexecutestepbase.h>
-#include <ecom/ecom.h>
-
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-#include <pinplugindialogdefs.h>
-
-#include "authserver_impl.h"
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-#include "tAuthSvrServer.h"
-#include "tauthdbstep.h"
-
-// these tests use some information which is normally
-// only visible to the server, or to the client DLL.
-
-#include "authdb.h"
-#include "authserveripc.h"
-#include "transientkey.h"
-#include "transientkeyinfo.h"
-#include "testutilclient.h"
-using namespace AuthServer;
-
-
-_LIT(KInputFile, 	"C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, "C:\\t_pinplugindlg_out.dat");
-_LIT(KEmptyString, "");
-
-// Used when creating the initial db
-//#define KNumPlugins 8	//Defined in tauthdbstep.h
-
-class CTAuthSvrStepBase : public CTestStep
-	{
-protected:
-	CTAuthSvrStepBase();
-	~CTAuthSvrStepBase();
-	virtual TVerdict doTestStepPreambleL()	
-		{
-
-		iFs.Connect();	
-	   	return TestStepResult();
-		}
-	virtual TVerdict doTestStepPostambleL()
-	    {
-		iFs.Close();
-		return TestStepResult();
-		
-		}
-	void SetDefaultPluginIdL(TInt aDefault);
-
-	HBufC* GetNameLC(TInt i);
-
-	void PluginData(AuthServer::TIdentityId aId, AuthServer::TPluginId aPlugin,	TPtr8 aDes) 
-		{
-		aDes.Fill(aId*aPlugin);
-		}
-
-//Needed because of the use of Step_CreateDb
-	inline void CreatePlugins();
-	inline void CreateKeyInfo();
-		
-	//Utility functions allowing text INI file parsing abilities
-	TInt writeToNamedConfig(CIniData* aFile, const TDesC &aSectName,const TDesC &aKeyName, const TPtrC &aResult);
-	//Section name unspecified
-	TInt writeToNamedConfig(CIniData* aFile, const TDesC &aKeyName,const TPtrC &aResult);
-	TInt readFromNamedConfigL(const TDesC &aFileName, const TDesC &aSectName,const TDesC &aKeyName, HBufC*& aResult);
-	//Section name unspecified
-	TInt readFromNamedConfigL(const TDesC &aFileName, const TDesC &aKeyName, HBufC*& aResult);
-	//Read data from testexecute ini file that will be used to initialise the Authentication Server
-	TInt InitAuthServerFromFileL();
-	
-	//Read plugin input train or plugin input id data from testexecute ini file 
-	//that will be used to initialise the Authentication Server, based on  
-	//aInitTrainInput.If set, this method reads plugin input train, else
-	//reads plugin input id.
-	TInt InitPluginDataFromFileL(TBool aInitTrainInput);
-	
-	// Wait for the server to shut down and so release the authentication database.
-	void WaitForServerToReleaseDb();
-	// 	Remove any existing database file.
-	void RemoveExistingDbL();
-	// 	Utility function coverting HexString to Integer
-	TInt HexString2Num(const TDesC8& aStr);
-	// Utility function for removing a specified Identity from the global Identity array
-	TInt RemoveIdFromGlobalDbL(TUint32 aId);
-	// Utility clean up function used when working with locally declared arrays
-	//void CleanupEComArray(TAny* aArrayOfPlugins);	
-	
-	//Utility function to read and set the username of a given identity
-	TVerdict checkAndSetUserNameL(AuthServer::RAuthClient& ac, TInt idPosition);	
-	// Utility function for checking the status of a pluginId that is specified
-	// in the ini file.
-	void CheckSpecifiedPluginStatusL();
-	// Version of above function that avoids a call to the 'Connect()' function
-	void CheckSpecifiedPluginStatusConnectedL(AuthServer::RAuthClient& ac);
-	
-	// Checks that the status of each plugin is as expected.
-	// based on the number of identities trained for that plugin, and the number of identities 
-	// present in the Authentication server.
-	TBool CheckPluginStatusAllL (AuthServer::RAuthClient& ac);
-	
-	// Reads the number of identities that have been trained with the plugin that 
-	// has its database in the named file
-	TInt GetNumIdsFromPluginDbL(const TDesC &aFileName);
-	
-	// Utility function for retrieving the last authenticated id from a file
-	AuthServer::TIdentityId getLastAuthId();
-	
-    AuthServer::CAuthExpression* CreateAuthExprLC(const TDesC& aString);
-    
-    void CreatePinPluginInputFileL(TPinPluginDialogOperation aOperation, TPinValue aPinValue);
-    
-    TPinValue GetPinFromOutputFileL();
-    
-    void ClientMessage(TBool aIsMessage, const TDesC& aDisplayString);
-    
-protected:
-	RFs iFs;	
-	
-	// Used when creating the initial db
-	AuthServer::CPluginDesc*       iPlugins[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId1Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId2Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId3Keys[KNumPlugins];
-
-	};
-	
-// Utility clean up function used when working with locally declared arrays
-	void CleanupEComArray(TAny* aArrayOfPlugins);	
-
-inline CTAuthSvrStepBase::~CTAuthSvrStepBase() 
-    {
-    for (TInt i = 0 ; i < KNumPlugins ; ++i)
-        {
-        delete iPlugins[i];
-        delete iId1Keys[i];
-        delete iId2Keys[i];
-        delete iId3Keys[i];
-        }
-    }
-
-inline HBufC* CTAuthSvrStepBase::GetNameLC(TInt id)
-    {
-    _LIT(nameTmpl, "Plugin_%d");
-	HBufC* name = HBufC::NewLC(15);
-	name->Des().Format(nameTmpl, id);
-	return name;
-    }
-    
-inline void CTAuthSvrStepBase::CreatePlugins()
-	{
-	using namespace AuthServer;
-	
-	const TAuthPluginType   types[KNumPlugins]
-		= { EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthToken, EAuthKnowledge
-		};
-	const TAuthTrainingStatus   training[KNumPlugins]
-		= { EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthTrained, EAuthFullyTrained
-		  };
-
-
-	for (TInt i = 0 ; i < KNumPlugins ; ++i)
-		{
-			HBufC* name = GetNameLC(i);
-			
-			iPlugins[i] = CPluginDesc::NewL(i, *name, types[i],
-											training[i], i*10000, i, i*4);
-		    CleanupStack::PopAndDestroy(name);									
-		}
-	}
-
-inline void CTAuthSvrStepBase::CreateKeyInfo()
-	{
-	using namespace AuthServer;
-
-	CProtectionKey* protKey1 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey2 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey3 = CProtectionKey::NewLC(8);
-
-	HBufC8* data = HBufC8::NewLC(4);
-	
-	for (TInt plugin = 0 ; plugin < KNumPlugins ; ++plugin)
-		{
-			CTransientKey* transient = 0;
-			// id 1
-			iId1Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			PluginData(1, plugin, data->Des());
-			transient = iId1Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey1 =
-				transient->EncryptL(*protKey1);
-			delete transient;
-			iId1Keys[plugin]->SetEncryptedProtectionKeyL(epKey1);
-			// id 2
-			PluginData(2, plugin, data->Des());
-			iId2Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId2Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey2 =
-				transient->EncryptL(*protKey2);
-			delete transient;
-			iId2Keys[plugin]->SetEncryptedProtectionKeyL(epKey2);
-			// id 3
-			PluginData(3, plugin, data->Des());
-			iId3Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId3Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey3 =
-				transient->EncryptL(*protKey3);
-			delete transient;
-			iId3Keys[plugin]->SetEncryptedProtectionKeyL(epKey3);
-		}
-	CleanupStack::Pop(4, protKey1);
-	}
-
-
-/**
-	This abstract subclass of CTAuthcliservStepBase
-	overrides the doTestStep(Pre|Post)ambleL functions
-	from CTestBase to allocate and free an active
-	scheduler.
-	
-	The scheduler is stored in the protected iActSchd
-	variable.  This class does not start or stop the
-	scheduler.
- */
-
-class CTStepActSch : public CTAuthSvrStepBase
-	{
-protected:
-	// override CTestStep
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-		
-protected:
-	/** The active scheduler which subclasses can use. */
-	CActiveScheduler* iActSchd;
-	};
-    
-
-class CTFirstStart : public CTAuthSvrStepBase
-	{
-public:
-	CTFirstStart();	
-	//~CTFirstStart();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	//virtual TVerdict doTestStepPostambleL();
-	};
-	
-class CTAuthSvrCheck: public CTAuthSvrStepBase
-	{
-public:
-	CTAuthSvrCheck();
-	//~CTAuthSvrCheck();
-	//virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	//virtual TVerdict doTestStepPostambleL();
-	};
-	
-class CTRegIdentity: public CTStepActSch
-	{
-public:
-	CTRegIdentity(CTAuthSvrServer& aParent);
-	~CTRegIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	void ListPluginsL(AuthServer::RAuthMgrClient& aAuthMgrClient );
-	void SetPinPluginStateL();
-	void RemovePinPluginFileL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-	
-class CTEnumIdentities: public CTAuthSvrStepBase
-	{
-public:
-	CTEnumIdentities(CTAuthSvrServer& aParent);
-	virtual TVerdict doTestStepL();	
-private:
-	CTAuthSvrServer& iParent;
-	};
-	
-class CTIdentifyMultiple: public CTAuthSvrStepBase
-	{
-public:
-	//CTIdentifyMultiple(CTAuthSvrServer& aParent);
-	CTIdentifyMultiple();
-	~CTIdentifyMultiple();
-	virtual TVerdict doTestStepPreambleL();	
-	virtual TVerdict doTestStepL();	
-private:
-	//CTAuthSvrServer& iParent;
-	RArray<TUid> iPluginIds;
-	};
-	
-class CTRetrainPlugin: public CTStepActSch
-	{
-public:	
-	//CTRetrainPlugin();
-	CTRetrainPlugin(CTAuthSvrServer& aParent);
-	~CTRetrainPlugin();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-	// Utility function that calls 'Train' for a specified plugin	
-	void RetrainPlugin (AuthServer::RAuthMgrClient& mgc);
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTRemoveAuthMethod: public CTStepActSch
-	{
-public:	
-	//CTRetrainPlugin();
-	CTRemoveAuthMethod(CTAuthSvrServer& aParent);
-	~CTRemoveAuthMethod();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-	void RemoveAuthMethodL (AuthServer::RAuthMgrClient& mgc);
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTRemoveDbs: public CTStepActSch
-	{
-public:	
-	CTRemoveDbs();
-	~CTRemoveDbs();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-private:
-	
-	};
-	
-class CTRemoveIdentity: public CTStepActSch
-	{
-public:	
-	CTRemoveIdentity(CTAuthSvrServer& aParent);
-	~CTRemoveIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();		
-	// Utility function that calls 'authenticate, then removeIdentity', with a specified plugin	
-	void doRemoveIdentityL (AuthServer::RAuthMgrClient& mgc);	
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTAuthenticate: public CTStepActSch
-	{
-public:
-	CTAuthenticate(CTAuthSvrServer& aParent);
-	~CTAuthenticate();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-	//Utility function that stores the most recently authenticated identity in the GlobalDb file
-	//This should only be called by the Authenticate test step
-	void setLastAuthIdL(AuthServer::TIdentityId idToStore);
-	
-	/**
-  	This method calls the synchronous version of AuthenticateL method.
-  
-   	@param aAuthMgrClient		authMgrClient object.
-   	@param aInputString			descriptor containing either the alias string or auth expression
-   								string as read from the ini file.
-   	@param aFreshness			time period which serves as a check to determine if an authentication 
-   								has previously been performed within this period.This value is read from 
-   								the ini file.If not present,the default value is used.
- 
-  	@param aClientSpecificKey 	this value when true represents the key returned by 
-  								auth server will be unique to the calling client.This value is read from the 
-  								ini file.By default this is set to false.
- 
-  	@param isAlias 				this value when true specifies that the authentication is performed via alias.
-  								This value is read from the ini file.By default it is set to false.
- 
- 	
-  	*/
- 
-  	void CallSyncAuthenticateL(AuthServer::RAuthMgrClient& aAuthMgrClient, const TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool isAlias, TBool isDefault, const TDesC& aClientMessage);
-	
-	/**
-  	This method calls the asynchronous version of AuthenticateL method.
-  
-   	@param aAuthMgrClient		authMgrClient object.
-   	@param aInputString			descriptor containing either the alias string or auth expression
-   								string as read from the ini file.
-   	@param aFreshness			time period which serves as a check to determine if an authentication 
-   								has previously been performed within this period.This value is read from 
-   								the ini file.If not present,the default value is used.
- 
-  	@param aClientSpecificKey 	this value when true represents the key returned by 
-  								auth server will be unique to the calling client.This value is read from the 
-  								ini file.By default this is set to false.
- 
-  	@param isAlias 				this value when true specifies that the authentication is performed via alias.
-  								This value is read from the ini file.By default it is set to false.
- 
- 	
-  	*/
-	void CallAsyncAuthenticateL(AuthServer::RAuthMgrClient& aAuthMgrClient, TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool isAlias, TBool isDefault, const TDesC& aClientMessage);
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-		
-class CTSetAuthPrefs: public CTStepActSch
-	{
-public:
-	CTSetAuthPrefs(CTAuthSvrServer& aParent);
-	~CTSetAuthPrefs();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-	void SetAuthPrefsL(AuthServer::RAuthMgrClient& aAuthMgrClient, AuthServer::RAuthClient& aAuthClient);
-
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTResetIdentity: public CTStepActSch
-	{
-public:	
-	CTResetIdentity(CTAuthSvrServer& aParent);
-	~CTResetIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();		
-	// Utility function that calls 'resetIdentity', with a specified plugin
-	void doResetIdentityL();
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-/**
-	This class initializes the aliases in the authserver's central repository file 
-	with different values as specified in the ini file.
-  */
-
-class CTInitCenRep: public CTStepActSch
-	{
-public:
-	CTInitCenRep(CTAuthSvrServer& aParent);
-	~CTInitCenRep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CResultAvailability: public CTStepActSch
-	{
-public:
-	CResultAvailability(CTAuthSvrServer& aParent);
-	~CResultAvailability();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CAuthSvrOom: public CTStepActSch
-	{
-public:
-	CAuthSvrOom(CTAuthSvrServer& aParent);
-	~CAuthSvrOom();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	TVerdict doClientOOMTestL();
-	TVerdict doServerOOMTestL();
-	TVerdict doPerformanceTestL();
-	void ReadTestConfigurationL();
-	TVerdict doTestL(AuthServer::RAuthMgrClient& ac);
-	void doStartupTestL();
-	void doRegOOMTestL(AuthServer::RAuthMgrClient &ac);
-	void doSyncAuthOOMTestL(AuthServer::RAuthMgrClient& ac);
-	void doAsyncAuthOOMTestL(AuthServer::RAuthMgrClient& ac);
-	void doSetPreferredTypeL(AuthServer::RAuthMgrClient& ac);
-	void doRemoveIdentityL(AuthServer::RAuthMgrClient& ac);
-	void doForgetPluginL(AuthServer::RAuthMgrClient& ac);
-	void doRetrainPluginL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsL(AuthServer::RAuthMgrClient& ac);
-	void doListActivePluginsL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsOfTypeL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsWithTrainingStatusL(AuthServer::RAuthMgrClient& ac);
-	void doListAuthStrengthAliasesL(AuthServer::RAuthMgrClient& ac);
-	void doResetAll(AuthServer::RAuthMgrClient& ac);
-	void doResetType(AuthServer::RAuthMgrClient& ac);
-	void doResetList(AuthServer::RAuthMgrClient& ac);
-// performance tests.
-	void StartTimer();
-	void StopTimerAndPrintResultL();
-	void PrintPerformanceLog(TTime aTime);
-	
-
-private:
-	CTAuthSvrServer& iParent;
-	TInt iFreshnessVal;
-	TPtrC iExprString;
-	TBool iClientSpecificKeyVal;
-	TBool iDefaultpluginusage;
-	TBuf<100> iMessage;
-	TTime iStartTime;
-	TInt iIterationCount;
-
-	};
-
-class CResultPropertyWatch:CActive
-	{
-	enum {EPriority=0};
-	public:
-	static CResultPropertyWatch* NewLC();
-	~CResultPropertyWatch();
-	void DoCancel();
-	private:
-	CResultPropertyWatch();
-	void ConstructL();
-	
-	void RunL();
-	
-	private:
-	RProperty iProperty;
-	public:	
-	TBool iNotified;
-	};
-
-class CResultChangeNotify: public CTStepActSch
-	{
-public:
-	CResultChangeNotify(CTAuthSvrServer& aParent);
-	~CResultChangeNotify();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	void SetPinPluginStateL();
-	void RemovePinPluginFileL();
-private:
-	CTAuthSvrServer& iParent;
-	CResultPropertyWatch* watch;
-
-	};
-
-
-class CTPostMarketPlugin: public CTAuthSvrStepBase
-	{
-public:
-
-	CTPostMarketPlugin();
-	~CTPostMarketPlugin();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-
-	/**
-  	This method simulates plugin installation.In case of upgrades to ROM, it verifies 
-  	that the right plugin is loaded (depending on the ROM_Only field in the plugin registration file),
-  	and that the plugin count increments when the macro to enable post market plugins is set to one,
-  	and remains the same when the macro is disabled.
-  
-   	*/
-	
-	TBool TestPluginInstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession);
-
- 	/**
-  	This method simulates plugin uninstallation.In case of upgrades to ROM, it verifies 
-  	that the ROM plugin is loaded, and that the plugin count decrements when the macro to enable 
-	post market plugins is set to one, 	and remains the same when the macro is disabled.
-  
-   	*/
-	
-	TBool TestPluginUninstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession);
-	
-	/**
-  	This method lists the available plugin implementations and tests whether
-  	it matches with the expected plugin count.This method also takes plugin name 
-  	as a default argument,which assists in testing whether the right plugin has 
-  	been loaded during ROM upgrade operat
-  
-  	@param aAuthMgrClient	authMgrClient object.
-   	@param aExpectedCount	expected plugin count.
-   	@param aPluginName		expected plugin name.Default argument.
-   	@return 				true, when the actual plugin count equals the expected one.
-   							When the plugin name is specified, returns true, if
-   							the plugin name matches the expected one.
-   
-   	*/
-	TBool VerifyObtainedResultsWithExpectedL(AuthServer::RAuthMgrClient& aAuthMgrClient, TInt aExpectedCount, const TDesC& aPluginName = KEmptyString);
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};
-  	
- class CTStepClientSidSupport : public CTStepActSch
-	{
-public:
-	CTStepClientSidSupport(CTAuthSvrServer& aParent);
-	
-	~CTStepClientSidSupport();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	TBool VerifyObtainedResultsWithExpectedL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	TUid iClientSid;
-	TBool iClientSpecificKey;
-	TBool iWithString;
-	TInt iPluginId;
-	AuthServer::CIdentity* iIdentity;
-	AuthServer::CIdentity* iIdentityAfterRetrain;
-	};
-	
-class CTInstallPluginStep: public CTAuthSvrStepBase
-	{
-public:
-
-	CTInstallPluginStep();
-	~CTInstallPluginStep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};
-  	
-class CTUninstallPluginStep: public CTAuthSvrStepBase
-	{
-public:
-
-	CTUninstallPluginStep();
-	~CTUninstallPluginStep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};  	
-  	
-
-class CTSysTimeUpdate: public CTStepActSch
-	{
-public:
- 	CTSysTimeUpdate(CTAuthSvrServer& aParent);
- 	~CTSysTimeUpdate();
- 	virtual TVerdict doTestStepPreambleL();
- 	virtual TVerdict doTestStepPostambleL();	
- 	virtual TVerdict doTestStepL();
-private:
- 	CTAuthSvrServer& iParent;
- 	};
-   		
-//Parameters class.For now, used only to get the result.
-class TThreadParams
-    {
-public:
-    TInt result;
-    };
-
-
-class CTMultiThreaded: public CTStepActSch
-    {
-public:
-    CTMultiThreaded(CTAuthSvrServer& aParent);
-    ~CTMultiThreaded();
-    virtual TVerdict doTestStepPreambleL();
-    virtual TVerdict doTestStepPostambleL();    
-    virtual TVerdict doTestStepL();
-    static void runMultiThreadedTest(TThreadParams* aParams);
-    static void doRegisterL(TThreadParams& aParams);
-private:
-    CTAuthSvrServer& iParent;
-    };
-
-// Strings for the server create test step code
-_LIT(KTFirstStart,					"FIRST_START");
-_LIT(KTAuthSvrCheck,				"AUTHSVR_CHECK");
-_LIT(KTRegIdentity,					"REG_IDENTITY");
-_LIT(KTEnumIdentities, 				"ENUM_IDENTITIES");
-_LIT(KTIdentifyMultiple, 			"IDENTIFY_MULTIPLE");
-_LIT(KTRetrainPlugin,				"RETRAIN_PLUGIN");
-_LIT(KTForgetPlugin,				"FORGET_PLUGIN");
-_LIT(KTRemoveDbs,					"REMOVE_DBS");
-_LIT(KTRemoveIdentity,				"REMOVE_IDENTITY");
-_LIT(KTAuthenticate,				"AUTHENTICATE");
-_LIT(KTSetPrefs, 			    	"SET_PREFS");
-_LIT(KTInitCenRep,					"INIT_CENREP");
-_LIT(KTResultAvailability, 			"RESULT_AVAILABILITY");
-_LIT(KTResultChangeNotify, 			"RESULT_NOTIFICATION");
-_LIT(KTPostMarketPlugin,			"POST_MARKET_PLUGIN");
-_LIT(KTStepClientSidSupportCheck, 	"CLIENT_SID_CHECK");
-_LIT(KTInstallPluginStep, 			"INSTALL_PLUGIN");
-_LIT(KTUninstallPluginStep, 		"UNINSTALL_PLUGIN");
-_LIT(KTAuthServerOom,	 			"OOM_TEST");
-_LIT(KTResetIdentity,				"RESET_IDENTITY");
-_LIT(KTUpdateSysTime,				"UPDATE_SYSTIME");
-_LIT(KTMultiThreadedTest,           "MULTI_THREADED");
-
-// Performance related names
-_LIT(KMaxDurationName, 				"MaxDuration");
-_LIT(KMaxTestCaseDuration, 			"TEST_CASE_MAXIMUM_ALLOWED_DURATION");
-_LIT(KActualTestCaseDuration, 		"TEST_CASE_ACTUAL_DURATION");
-_LIT(KPerformanceTestInfo, 			"PERFORMANCE_LOG_INFORMATION");
-// String used to store the filename that contains the initialisation data used by the PinAuthPlugin, etc
-
-_LIT(KPluginIniFile, 			"\\tAuth\\tAuthSvr\\testdata\\initialisation_Info.ini");
-_LIT(KPluginIniSection,			"SectionOne");
-_LIT(KAuthSvrPolicyFile, 		"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-_LIT(KDefaultPluginTag, 		"DefaultPlugin");
-_LIT(KIdEnteredPinTag, 			"IdEnteredPinValue");
-_LIT(KTrainEnteredPinTag, 		"TrainEnteredPinValue");
-_LIT(KSupportsDefaultTag,		"iSupportsDefaultData");	//used to specify whether the individual plugins support default data 
-_LIT(KActiveStateTag,			"activeState");	//used to specify whether the individual plugins are active
-_LIT(KPinDbTag,					"Identity&PinValues");
-_LIT(KTotalDbTag,				"AllUserID&PinValues");
-_LIT(KDisplayMessage,			"DisplayMessage");
-_LIT(KLastAuthIdTag,			"LastAuthId");
-_LIT(KDefauthPrefsTag,			"DefaultPref");
-_LIT(KKnowledgePrefsTag,		"KnowledgePref");
-_LIT(KBiometricPrefsTag,		"BiometricPref");
-_LIT(KTokenPrefsTag,			"TokenPref");
-
-_LIT(KInitPinDatabaseValue,		",");
-_LIT(KDefaultInput,				"0000");
-
-// Strings used to store the filenames for the pluginDb files
-_LIT(KPlugin3100File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113100Db.ini");
-_LIT(KPlugin3101File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113101Db.ini");
-_LIT(KPlugin3102File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113102Db.ini");
-_LIT(KPlugin3103File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113103Db.ini");
-_LIT(KPlugin3104File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113104Db.ini");
-_LIT(KPlugin4100File,		"\\tAuth\\tAuthSvr\\testdata\\Pin10234100Db.ini");
-
-#endif	/* T_AUTHSVR_STEP_H */