websrv_pub/web_service_connection_api/tsrc/connection/inc/SenServiceConnectionBCTest.h
changeset 0 62f9d29f7211
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/websrv_pub/web_service_connection_api/tsrc/connection/inc/SenServiceConnectionBCTest.h	Thu Jan 07 16:19:19 2010 +0200
@@ -0,0 +1,627 @@
+/*
+* Copyright (c) 2002-2009 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:        SenFragment test module.
+*
+*/
+
+
+#ifndef __SENSERVICECONNECTION_H__
+#define __SENSERVICECONNECTION_H__
+
+//#define __ENABLE_ALR__
+
+//  EXTERNAL INCLUDES
+#include <StifTestModule.h>
+#include <StifLogger.h>
+
+#include <MSenServiceConsumer.h>
+#include <SenBaseFragment.h>
+#include <SenBaseElement.h>
+#include <SenXmlReader.h>
+#include <SenServiceConnection.h>
+
+#include <f32file.h>
+#include <e32base.h> // for CActive
+#include <e32std.h>
+#include <unistd.h>
+#include <aknnotewrappers.h> 
+#include <SenIdentityProvider.h>
+
+// MACROS
+//#define ?macro ?macro_def
+#define TEST_MODULE_VERSION_MAJOR 50
+#define TEST_MODULE_VERSION_MINOR 9
+#define TEST_MODULE_VERSION_BUILD 6
+
+#ifdef __ENABLE_ALR__
+	#include <comms-infras/cs_mobility_apiext.h>
+	#include <senserviceconnectioninterfaces.h>
+#endif //__ENABLE_ALR__
+
+#include <msencobrandinginterface.h>
+
+// Logging path
+_LIT( KSenServiceConnectionLogPath, "\\logs\\testframework\\SenServiceConnectionBCTest\\" ); 
+// Log file
+_LIT( KSenServiceConnectionLogFile, "SenServiceConnectionBCTest.txt" ); 
+
+//  INTERNAL INCLUDES
+namespace
+    {
+    _LIT16(KSessionsFile,"c:\\private\\101f96f4\\SenSessions.xml");
+    _LIT16(KIdentitiesFile,"c:\\private\\101f96f4\\senidentities.xml");
+    }
+
+enum TUT_CSenServiceConnection
+    {
+    ENotInitialized = 1,
+    EConnectionNotReady,
+    };
+    
+enum TMSCommands
+    {
+    EMSNMessengerRegister,
+    EMSNMessengerInvite,
+    EMSNMessengerSend,
+    EMSNMessengerUnRegister,
+    };
+
+//  FORWARD DECLARATIONS
+class CSenBaseFragment;
+class CSenBaseElement;
+class CSenSoapEnvelope;
+class SenXmlUtils;
+class CSenServiceConnection;
+class CSenXmlReader;
+class CSenDomFragment;
+class CSenXmlServiceDescription;
+class CSenServicePattern;
+class CSenServiceManager;
+class CSenSoapMessage;
+class CSenSoapMessage2;
+class CSenVtcpTransportProperties;
+
+/*
+#include <e32def.h>
+#ifndef NONSHARABLE_CLASS
+    #define NONSHARABLE_CLASS(x) class x
+#endif
+*/
+// Function pointer related internal definitions
+// Visual studio 6.0 (__VC32__) needs different type of handling 
+#ifdef __VC32__
+#define GETPTR
+#else
+#define GETPTR &
+#endif  
+#define ENTRY(str,func) {_S(str), GETPTR func,0,0,0}
+#define FUNCENTRY(func) {_S(#func), GETPTR func,0,0,0}
+#define OOM_ENTRY(str,func,a,b,c) {_S(str), GETPTR func,a,b,c}
+#define OOM_FUNCENTRY(func,a,b,c) {_S(#func), GETPTR func,a,b,c}
+
+// FUNCTION PROTOTYPES
+//?type ?function_name(?arg_list);
+
+// FORWARD DECLARATIONS
+//class ?FORWARD_CLASSNAME;
+class CSenServiceConnectionBCTest;
+
+// DATA TYPES
+//enum ?declaration
+//typedef ?declaration
+//extern ?data_type;
+// A typedef for function that does the actual testing,
+// function is a type 
+// TInt CSenFragmentBCTest::<NameOfFunction> ( TTestResult& aResult )
+typedef TInt (CSenServiceConnectionBCTest::* TestFunction)(TTestResult&);
+
+// CLASS DECLARATION
+
+/**
+*  An internal structure containing a test case name and
+*  the pointer to function doing the test
+*
+*  @lib ?library
+*  @since ?Series60_version
+*/
+class TCaseInfoInternal
+    {
+    public:
+        const TText*    iCaseName;
+        TestFunction    iMethod;
+        TBool           iIsOOMTest;
+        TInt            iFirstMemoryAllocation;
+        TInt            iLastMemoryAllocation;
+    };
+
+// CLASS DECLARATION
+
+/**
+*  A structure containing a test case name and
+*  the pointer to function doing the test
+*
+*  @lib ?library
+*  @since ?Series60_version
+*/
+class TCaseInfo
+    {
+    public:
+        TPtrC iCaseName;
+        TestFunction iMethod;
+        TBool           iIsOOMTest;
+        TInt            iFirstMemoryAllocation;
+        TInt            iLastMemoryAllocation;
+
+    TCaseInfo( const TText* a ) : iCaseName( (TText*) a )
+        {
+        };
+
+    };
+
+
+
+//  CLASS DEFINITION
+/**
+ *
+ * EUnitWizard generated test class. 
+ *
+ */
+NONSHARABLE_CLASS( CSenServiceConnectionBCTest )
+#ifdef __ENABLE_ALR__
+     : public CTestModuleBase, public MSenServiceConsumer, public MSenAuthenticationProvider, public MSenExtendedConsumerInterface, public MSenCoBrandingObserver, MSenHostletConsumer, public MMobilityProtocolResp
+#else
+     : public CTestModuleBase, public MSenServiceConsumer, public MSenAuthenticationProvider, public MSenExtendedConsumerInterface, public MSenCoBrandingObserver, MSenHostletConsumer
+#endif //__ENABLE_ALR__     
+    {
+    public:
+        enum TCallback
+            {
+            ECallbackNone = 0,
+            ECallbackHandleMessage,
+            ECallbackHandleError
+            };
+    
+        public:  // Constructors and destructor
+
+
+        /**
+        * Two-phased constructor.
+        */
+        static CSenServiceConnectionBCTest* NewL();
+
+        /**
+        * Destructor.
+        */
+        virtual ~CSenServiceConnectionBCTest();
+
+    public: // New functions
+
+        /**
+        * ?member_description.
+        * @since ?Series60_version
+        * @param ?arg1 ?description
+        * @return ?description
+        */
+        //?type ?member_function( ?type ?arg1 );
+
+    public: // Functions from base classes
+
+        /**
+        * From CTestModuleBase InitL is used to initialize the 
+        *       SenFragment. It is called once for every instance of 
+        *       TestModuleSenFragment after its creation.
+        * @since ?Series60_version
+        * @param aIniFile Initialization file for the test module (optional)
+        * @param aFirstTime Flag is true when InitL is executed for first 
+        *               created instance of SenFragment.
+        * @return Symbian OS error code
+        */
+        TInt InitL( TFileName& aIniFile, TBool aFirstTime );
+
+        /**
+        * From CTestModuleBase GetTestCasesL is used to inquiry test cases 
+        *   from SenFragment. 
+        * @since ?Series60_version
+        * @param aTestCaseFile Test case file (optional)
+        * @param aTestCases  Array of TestCases returned to test framework
+        * @return Symbian OS error code
+        */
+        TInt GetTestCasesL( const TFileName& aTestCaseFile, 
+                            RPointerArray<TTestCaseInfo>& aTestCases );
+
+        /**
+        * From CTestModuleBase RunTestCaseL is used to run an individual 
+        *   test case. 
+        * @since ?Series60_version
+        * @param aCaseNumber Test case number
+        * @param aTestCaseFile Test case file (optional)
+        * @param aResult Test case result returned to test framework (PASS/FAIL)
+        * @return Symbian OS error code (test case execution error, which is 
+        *           not reported in aResult parameter as test case failure).
+        */   
+        TInt RunTestCaseL( const TInt aCaseNumber, 
+                           const TFileName& aTestCaseFile,
+                           TTestResult& aResult );
+
+        /**
+        * From CTestModuleBase; OOMTestQueryL is used to specify is particular
+        * test case going to be executed using OOM conditions
+        * @param aTestCaseFile Test case file (optional)
+        * @param aCaseNumber Test case number (optional)
+        * @param aFailureType OOM failure type (optional)
+        * @param aFirstMemFailure The first heap memory allocation failure value (optional)
+        * @param aLastMemFailure The last heap memory allocation failure value (optional)
+        * @return TBool
+        */
+        virtual TBool OOMTestQueryL( const TFileName& /* aTestCaseFile */, 
+                                     const TInt /* aCaseNumber */, 
+                                     TOOMFailureType& aFailureType, 
+                                     TInt& /* aFirstMemFailure */, 
+                                     TInt& /* aLastMemFailure */ );
+
+        /**
+        * From CTestModuleBase; OOMTestInitializeL may be used to initialize OOM
+        * test environment
+        * @param aTestCaseFile Test case file (optional)
+        * @param aCaseNumber Test case number (optional)
+        * @return None
+        */
+        virtual void OOMTestInitializeL( const TFileName& /* aTestCaseFile */, 
+                                    const TInt /* aCaseNumber */ ); 
+
+        /**
+        * From CTestModuleBase; OOMHandleWarningL
+        * @param aTestCaseFile Test case file (optional)
+        * @param aCaseNumber Test case number (optional)
+        * @param aFailNextValue FailNextValue for OOM test execution (optional)
+        * @return None
+        *
+        * User may add implementation for OOM test warning handling. Usually no
+        * implementation is required.           
+        */
+        virtual void OOMHandleWarningL( const TFileName& /* aTestCaseFile */,
+                                        const TInt /* aCaseNumber */, 
+                                        TInt& /* aFailNextValue */); 
+
+        /**
+        * From CTestModuleBase; OOMTestFinalizeL may be used to finalize OOM
+        * test environment
+        * @param aTestCaseFile Test case file (optional)
+        * @param aCaseNumber Test case number (optional)
+        * @return None
+        *
+        */
+        virtual void OOMTestFinalizeL( const TFileName& /* aTestCaseFile */, 
+                                       const TInt /* aCaseNumber */ );
+
+    private:
+
+        /**
+        * C++ default constructor.
+        */
+        CSenServiceConnectionBCTest();
+
+        /**
+        * By default Symbian 2nd phase constructor is private.
+        */
+        void ConstructL();
+
+        // Prohibit copy constructor if not deriving from CBase.
+        // ?classname( const ?classname& );
+        // Prohibit assigment operator if not deriving from CBase.
+        // ?classname& operator=( const ?classname& );
+
+        /**
+        * Function returning test case name and pointer to test case function.
+        * @since ?Series60_version
+        * @param aCaseNumber test case number
+        * @return TCaseInfo 
+        */
+        const TCaseInfo Case ( const TInt aCaseNumber ) const;
+        
+           // MService Consumer implementation
+        void HandleMessageL(const TDesC8& aMessage);        
+        void HandleErrorL(const int aErrorCode, const TDesC8& aError);
+        void SetStatus(const TInt aStatus);
+
+        void SetupL();
+        void Teardown();
+        void ErrorL(TInt aCode);
+
+        TInt UT_CSenServiceConnection_RegisterIdentityProviderLL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_NewL_ContractL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_ContractL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_WS_I_DescriptionL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_WS_I_DescriptionL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_ID_WSF_DescriptionL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_ID_WSF_DescriptionL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_WS_I_PatternL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_WS_I_PatternL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_ID_WSF_PatternL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_ID_WSF_PatternL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_NewL_ContractL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_ContractL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_WS_I_DescriptionL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_WS_I_DescriptionL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewL_WS_I_PatternL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_NewLC_WS_I_PatternL1( TTestResult& aResult );
+        TInt UT_CSenServiceConnectionSnapIdL( TTestResult& aResult );
+        TInt UT_CSenServiceConnectionSetSnapIdL( TTestResult& aResult );
+
+    	TInt UT_CSenServiceConnection_SendL_RFileL( TTestResult& aResult );
+    	TInt UT_CSenServiceConnection_SubmitL_RFileL( TTestResult& aResult );
+    	TInt UT_CSenServiceConnection_SendL_RFileL_IPCBigrequest( TTestResult& aResult );
+    	TInt UT_CSenServiceConnection_SubmitL_RFileL_IPCBigrequest( TTestResult& aResult );
+    	TInt UT_CSenServiceConnection_SubmitL_RFileL_MTOM( TTestResult& aResult );
+    
+        TInt UT_CSenServiceConnection_SendL_NoErrorL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_CancelL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_ConNotInitialL( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_SendMultipleMessagesL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Get_Post1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Get_Post2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Proxy1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Proxy2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Pattern_IAP1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Pattern_IAP2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_Pattern_IAP3L( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ContentType1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_ContentType2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_UserAgent1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_UserAgent2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_MessageSoapActionL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_SoapAction1L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_SoapAction2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SendL_CustomHttpHeaderL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ConBusyL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ConInitializingL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ConExpiredL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ErrSubmitL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_ErrNoMemoryL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SubmitLL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_IsReadyL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_HasFacetLL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_CompleteServerMessagesOnOffL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SendL_1L( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_SubmitL_1L( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_StartTransactionL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_TransactionCompletedL( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries1( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries2( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries3( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries4( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries5( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries6( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries7( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries8( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Boundaries9( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_TP_SecDialog( TTestResult& aResult );     
+        
+        TInt UT_CSenServiceConnection_TP_Omitted_True( TTestResult& aResult );     
+
+        TInt UT_CSenServiceConnection_TP_Omitted_False( TTestResult& aResult );           
+        
+        TInt UT_CSenServiceConnection_TP_Removed( TTestResult& aResult );     
+        
+        TInt UT_CSenServiceConnection_TP_Omit_Rem( TTestResult& aResult );
+        
+        
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_L( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_with_Properties_L( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_MTOM_20KBL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_MTOM_200KBL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_MTOM_Less1MBL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_SubmitL_LibXml2_MTOM_More1MBL( TTestResult& aResult );
+
+        TInt UT_CSenServiceConnection_TestMessengerL( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger2L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger3L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger4L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger5L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger6L( TTestResult& aResult );
+        TInt UT_CSenServiceConnection_TestMessenger7L( TTestResult& aResult );
+        
+        TInt UT_CSenServiceConnection_TP_Custom_Header(const TDesC8& KCustomHttpHeader,
+                                                       const TDesC8& KCustomHttpHeaderValue);
+                                    
+        TInt UT_CSenServiceConnection_TP_Send(const TDesC8& aLogFileName,
+                                              const TDesC8& aCustomHttpHeader,
+                                              const TDesC8& aCustomHttpHeaderValue,
+                                              CSenServiceConnection* iServiceConnection);
+                                              
+        TInt UT_CSenServiceConnection_TP_CheckLogs(const TDesC& aLogFilePath,
+                                                   const TDesC8& aCustomHttpHeader,
+                                                   const TDesC8& aCustomHttpHeaderValue);                                    
+                                                   
+        TUint32 SearchIAPIdByNameL( const TDesC& aIAPName );
+        
+        CSenSoapMessage* CreateAuthRequestLC();
+        
+        CSenSoapMessage2* CreateNewAuthRequestLC();
+        
+        HBufC8* ReadFileL(const TDesC& aFilename);
+        
+        TInt Find(const TDesC8& aDestination, const TDesC8& aDescToFind, TInt aStartingPos);
+        TBool ReplaceAll(TPtr8 aDestination, const TDesC8& aFrom, const TDesC8& aTo);
+        TBool DecodeHttpCharactersL(const TDesC8& aOriginal, HBufC8*& aDecoded);
+        
+        HBufC8* HttpMethodValueFromXmlLC(const TDesC8& aXml);
+        
+        HBufC8* HttpPropertyValueFromXmlLC(const TDesC8& aXml,
+                                           const TDesC8& aPropertyName);
+                                           
+        TInt StartActiveScheduler(TInt aNumberOfSentMessages);
+        TInt StopActiveScheduler();
+        
+        CSenVtcpTransportProperties* CreateMSTransportPropertiesL(TMSCommands aCommand);
+        CSenSoapMessage2* CreateMSSoapMessage(TMSCommands aCommand);
+        TInt RegisterSTSL();
+        TInt RegisterSTSInvalidPasswordL();
+        TInt UnregisterSTSL( );
+        TInt SetPolicyL(CSenXmlServiceDescription* pServDesc, const TDesC8& pName,
+                                                              const TDesC8& pValue);
+		const CSenIdentityProvider* IdentityProviderL() const ;
+        TInt CreateConnectionToMessengerServiceL();
+        TInt CreateConnectionToMessengerServiceWithoutCallbackL();
+        
+        TInt AddDeviceOptionsHeader2L(CSenSoapMessage2& aMessage);
+        TInt AddApplicationHeader2L(CSenSoapMessage2& aMessage);
+        
+        TInt SendL( TTestResult& aResult );                                                                   
+        TInt SubmitL( TTestResult& aResult );                                                                         
+        TInt IsReady( TTestResult& aResult ) ;                                                                        
+        TInt HasFacetL( TTestResult& aResult );                                                                       
+                                                             
+        TInt CompleteServerMessagesOnOff( TTestResult& aResult ) ;                                                    
+        TInt Send2L( TTestResult& aResult ) ;                                                                         
+        TInt Submit2L( TTestResult& aResult ) ;                                                                       
+        TInt ServiceDescriptionL( TTestResult& aResult ) ;                                                            
+        TInt StartTransaction( TTestResult& aResult ) ;                                                               
+        TInt TransactionCompleted( TTestResult& aResult ) ;                                                           
+        TInt TxnId( TTestResult& aResult ) ;                                                                          
+        TInt SetTransportPropertiesL( TTestResult& aResult ) ;                                                        
+        TInt TransportPropertiesL( TTestResult& aResult ) ;                                                           
+        TInt Send3L( TTestResult& aResult ) ;                                                                         
+        TInt Submit3L( TTestResult& aResult ) ;                                                                       
+        TInt Send4L( TTestResult& aResult ) ;                                                                         
+        TInt Submit4L( TTestResult& aResult ) ;                                                                       
+        TInt Send5L( TTestResult& aResult ) ;                                                                         
+        TInt Submit5L( TTestResult& aResult ) ;                                                                       
+        TInt Response( TTestResult& aResult ) ;                                                                       
+        TInt CancelTransaction( TTestResult& aResult ) ;                                                              
+        TInt IdentityProvider1L( TTestResult& aResult ) ;                                                              
+        TInt Identifier( TTestResult& aResult ) ;                                                                     
+        TInt Name( TTestResult& aResult );
+        TInt Value( TTestResult& aResult );
+        TInt IntValue( TTestResult& aResult );
+        TInt BoolValue( TTestResult& aResult );
+        TInt Type( TTestResult& aResult );
+        TInt ValueTokensL( TTestResult& aResult );
+        TInt IdentityProvider2L( TTestResult& aResult ) ;
+        TInt Username1L( TTestResult& aResult ) ;
+        TInt Password1L( TTestResult& aResult ) ;
+        TInt ExtendedInterface1L( TTestResult& aResult ) ;                                  
+        TInt TransferProgress(TTestResult& aResult );
+        TInt HandleMeassage(TTestResult& aResult);
+        TInt HandleErrorL(TTestResult& aResult);
+        TInt SetStatus(TTestResult& aResult);
+        TAny* GetInterfaceByUid( TUid aUID );
+        		
+        #ifdef __ENABLE_ALR__
+            TInt ALRL(TTestResult& aResult);
+           
+            //mobility methods
+            virtual void PreferredCarrierAvailable( TAccessPointInfo aOldAPInfo,
+                                                         TAccessPointInfo aNewAPInfo,
+                                                         TBool aIsUpgrade,
+                                                         TBool aIsSeamless ) ;
+            virtual void NewCarrierActive( TAccessPointInfo aNewAPInfo, TBool aIsSeamless ) ;
+            
+            virtual void Error(TInt aError) ;
+        #endif //__ENABLE_ALR__
+            TInt CoBrandL(TTestResult& aResult);
+            virtual TBool OnGetBrandIdL(  const TDesC8& aBrandIdListAsXmlSnippet, RBuf8& aSelectedBrandId);
+            TInt HostletConsumerL(TTestResult& aResult);
+            virtual void SetConnectionId( TInt aConnectionId );
+            TInt DataTrafficDetailsL(TTestResult& aResult);
+    private:    // Data
+        
+        CSenXmlServiceDescription*  iSenXmlServiceDescription;
+        CSenXmlServiceDescription*  iSession;
+        CSenServiceConnection*      iServiceConnection;
+        CSenSoapMessage* iSOAPMessage;
+        #ifdef __ENABLE_ALR__       
+            MSenAlrServiceConnection* iALRSC;
+        #endif //__ENABLE_ALR__
+        TBool iUseALR;
+        TInt iAlrCallBackRetryCount;
+        TBool iCoBrandingCallbackOption;
+        TBool iHostletConsumerOption;
+        TBool iGetDataTrafficDetails;
+        TBool isNewCarrierAccepted;
+        TBool isMigratedToPrefferedCarrier;
+        CSenServiceManager*         iManager;
+        CSenXmlReader*              iXmlReader;
+        
+        TInt                        iTransactionId;
+        TInt                        iConnectionState;
+        TBool                       iInitialized;
+        TBool                       iReady;
+        
+        TCallback                   iCallback;
+        HBufC8*                     ipMessage;
+        
+        TInt                        iNumberOfPendingOps;
+        HBufC8*                     ipFrameworkID;
+        
+        TInt                        iErrorCode;
+  
+        CSenIdentityProvider*       ipProviderForAuthProvider;
+        TInt                        iAuthInfoAskCounter;
+        RFs							iFsSessionHandle;
+        RFile 						iRFileHandle;
+        
+    private:    // Data
+        // Pointer to test (function) to be executed
+        TestFunction iMethod;
+
+        // Pointer to logger
+        CStifLogger * iLog; 
+		CActiveScheduler* iActiveScheduler;
+
+        // Reserved pointer for future extension
+        //TAny* iReserved;
+
+    public:     // Friend classes
+        //?friend_class_declaration;
+    protected:  // Friend classes
+        //?friend_class_declaration;
+    private:    // Friend classes
+        //?friend_class_declaration;
+        
+        
+    };
+
+#endif      //  __SENSERVICECONNECTION_H__
+
+// End of file