gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/inc/ProEngWrapAPI.h
changeset 0 8c5d936e5675
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gsprofilesrv_pub/profiles_engine_wrapper_api/tsrc/BC/ProfilesEngineWrapperAPI/inc/ProEngWrapAPI.h	Thu Dec 17 08:52:52 2009 +0200
@@ -0,0 +1,390 @@
+/*
+* 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:        ?Description
+*
+*/
+
+
+
+
+
+
+
+
+
+#ifndef PROENGWRAPAPI_H
+#define PROENGWRAPAPI_H
+
+//  INCLUDES
+#include <StifLogger.h>
+#include <TestScripterInternal.h>
+#include <StifTestModule.h>
+#include <TestclassAssert.h>
+
+
+#include <e32std.h>
+#include <e32debug.h>
+#include <e32base.h>
+#include <f32file.h>
+#include <e32property.h>
+#include <MProEngEngine.h>
+#include <MProEngProfile.h>
+#include <MProEngProfileName.h>
+#include <MProEngProfileNameArray.h>
+#include <MProEngTones.h>
+#include <ProEngFactory.h>
+#include <MProEngToneSettings.h>
+#include <MProEngAlertToneSeeker.h>
+#include <MProEngAlertToneSeekerObserver.h>
+#include <MProEngNotifyHandler.h>
+#include <MProEngActiveProfileObserver.h>
+#include <MProEngProfileActivationObserver.h>
+#include <MProEngProfileObserver.h>
+#include <MProEngProfileNameArrayObserver.h>
+#include "CSchedulerUtility.h"
+
+
+
+// MACROS
+#define TEST_CLASS_VERSION_MAJOR 31
+#define TEST_CLASS_VERSION_MINOR 8
+#define TEST_CLASS_VERSION_BUILD 48
+
+// Logging path
+_LIT( KProEngWrapAPILogPath, "\\logs\\testframework\\ProEngWrapAPI\\" ); 
+// Log file
+_LIT( KProEngWrapAPILogFile, "ProEngWrapAPI.txt" ); 
+_LIT( KProEngWrapAPILogFileWithTitle, "ProEngWrapAPI_[%S].txt" );
+
+// MODULE DATA STRUCTURES
+
+class CProEngVTNotifyHandlerWrapper : public CBase
+    {
+    public:
+        CProEngVTNotifyHandlerWrapper() {}
+        ~CProEngVTNotifyHandlerWrapper() { delete iNotifyHandler; }
+        void SetObject( MProEngNotifyHandler* aNotifyHandler )
+            {
+            iNotifyHandler = aNotifyHandler;
+            }
+    private:
+        MProEngNotifyHandler* iNotifyHandler;
+    };
+
+class CProEngVTAlertToneSeekerWrapper : public CBase
+    {
+    public:
+        CProEngVTAlertToneSeekerWrapper() {}
+        ~CProEngVTAlertToneSeekerWrapper() { delete iSeeker; }
+        void SetObject( MProEngAlertToneSeeker* aSeeker )
+            {
+            iSeeker = aSeeker;
+            }
+    private:
+        MProEngAlertToneSeeker* iSeeker;
+    };
+
+class CProEngVTSeekerObserver : public CBase,
+                                public MProEngAlertToneSeekerObserver
+    {
+    public:
+        CProEngVTSeekerObserver(CSchedulerUtility& aSchedulerUtility):iSchedulerUtility(aSchedulerUtility){
+        //iSchedulerUtility = aSchedulerUtility;
+        }
+        ~CProEngVTSeekerObserver() {};
+        void HandleAlertToneListCompletedL( MDesCArray* aToneList )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTSeekerObserver::HndlAlrtTnLstCmpltd" ) );
+            delete aToneList;
+            iSchedulerUtility.Stop();
+           // CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleError( TInt /* aError */ )
+            {
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+    public:
+        CSchedulerUtility& iSchedulerUtility;
+    };
+
+class CProEngVTObserver: public CBase,
+                         public MProEngActiveProfileObserver,
+                         public MProEngProfileActivationObserver,
+                         public MProEngProfileObserver,
+                         public MProEngProfileNameArrayObserver
+    {
+    public:
+        CProEngVTObserver(CSchedulerUtility& aSchedulerUtility):iSchedulerUtility(aSchedulerUtility){
+        //iSchedulerUtility = aSchedulerUtility;
+        }
+        ~CProEngVTObserver() {};
+
+        void HandleActiveProfileModifiedL()
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle act prof modified" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleActiveProfileNotificationError(
+                TInt /* aError */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle act prof error" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileActivatedL( TInt /* aProfileId */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle act prof activated" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileActivationNotificationError(
+                TInt /* aError */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle act prof activated error" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileNameArrayModificationL()
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle name array notify" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileNameArrayNotificationError(
+                TInt /* aError */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle name array notify error" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileModifiedL( TInt /* aProfileId */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle profile notify" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+
+        void HandleProfileNotificationError(
+                TInt /* aError */ )
+            {
+            RDebug::Print( _L( "ProEng Validation test VTObserver handle profile notify error" ) );
+            iSchedulerUtility.Stop();
+            //CSchedulerUtility::InstanceL()->Stop();
+            }
+    public:
+        CSchedulerUtility& iSchedulerUtility;
+
+    };
+
+
+
+// FORWARD DECLARATIONS
+class CProEngWrapAPI;
+
+
+// CLASS DECLARATION
+
+/**
+*  CProEngWrapAPI test class for STIF Test Framework TestScripter.
+*  ?other_description_lines
+*
+*  @lib ?library
+*  @since ?Series60_version
+*/
+NONSHARABLE_CLASS(CProEngWrapAPI) : public CScriptBase
+    {
+    public:  // Constructors and destructor
+
+        /**
+        * Two-phased constructor.
+        */
+        static CProEngWrapAPI* NewL( CTestModuleIf& aTestModuleIf );
+
+        /**
+        * Destructor.
+        */
+        virtual ~CProEngWrapAPI();
+ 
+
+    public: // Functions from base classes
+
+        /**
+        * From CScriptBase Runs a script line.
+        * @since ?Series60_version
+        * @param aItem Script line containing method name and parameters
+        * @return Symbian OS error code
+        */
+        virtual TInt RunMethodL( CStifItemParser& aItem );
+
+    private:
+
+        /**
+        * C++ default constructor.
+        */
+        CProEngWrapAPI( CTestModuleIf& aTestModuleIf );
+
+        /**
+        * By default Symbian 2nd phase constructor is private.
+        */
+        void ConstructL();
+
+        /**
+        * Frees all resources allocated from test methods.
+        * @since ?Series60_version
+        */
+        void Delete();
+
+        /**
+        * Test methods are listed below. 
+        */
+
+        /**
+        * Example test method.
+        * @since ?Series60_version
+        * @param aItem Script line containing parameters.
+        * @return Symbian OS error code.
+        */
+        virtual TInt NewEngineL();
+        virtual TInt NewEngineLC();
+        virtual TInt NewEngineLCWithRFsL();
+        virtual TInt NewNotifyHandlerL();
+        virtual TInt RequestProfileActivationNotificationsL();
+        virtual TInt CancelProfileActivationNotificationsL();
+        virtual TInt RequestActiveProfileNotificationsL();
+        virtual TInt CancelActiveProfileNotificationsL();
+        virtual TInt RequestProfileNotificationsL();
+        virtual TInt CancelProfileNotificationsL();
+        virtual TInt RequestProfileNameArrayNotificationsL();
+        virtual TInt CancelProfileNameArrayNotificationsL();
+        virtual TInt CancelAllL();
+        virtual TInt ActiveProfileLC();
+        virtual TInt ActiveProfileL();
+        virtual TInt ActiveProfileIdL();
+        virtual TInt ProfileNameArrayLC();
+        virtual TInt SetActiveProfileL();
+        virtual TInt ProfileLC();
+        virtual TInt ProfileL();
+        
+        virtual TInt MdcaCountL();
+        void TestProfileNameArrayMdcaCountL(MProEngProfileNameArray& aNameArray);
+        virtual TInt MdcaPointL();
+        void TestProfileNameArrayMdcaPointL(MProEngProfileNameArray& aNameArray);
+        virtual TInt ProfileIdL();
+        void TestProfileNameArrayProfileIdL(MProEngProfileNameArray& aNameArray);
+        virtual TInt FindByIdL();
+        void TestProfileNameArrayFindByIdL(MProEngProfileNameArray& aNameArray);
+        virtual TInt FindByNameL();
+        void TestProfileNameArrayFindByNameL(MProEngProfileNameArray& aNameArray);
+        
+        virtual TInt ProfileNameL();
+        void TestProfileSettingsProfileNameL(MProEngProfile& aProfile);
+        virtual TInt ProfileTonesL();
+        void TestProfileSettingsProfileTonesL(MProEngProfile& aProfile);
+        virtual TInt ToneSettingsL();
+        void TestProfileSettingsToneSettingsL(MProEngProfile& aProfile);
+        virtual TInt AlertForL();
+        void TestProfileSettingsAlertForL(MProEngProfile& aProfile);
+        virtual TInt SetAlertForL();
+        void TestProfileSettingsSetAlertForL(MProEngProfile& aProfile);
+        virtual TInt IsSilentL();
+        void TestProfileSettingsIsSilentL(MProEngProfile& aProfile);                
+        virtual TInt CommitChangeL();
+        void TestProfileSettingsCommitChangeL(MProEngProfile& aProfile);
+        
+        virtual TInt NameL();
+        void TestProfileSettingsNameL(MProEngProfile& aProfile);
+        virtual TInt IdL();
+        void TestProfileSettingsIdL(MProEngProfile& aProfile);
+        virtual TInt SetNameL();
+        void TestProfileSettingsSetNameL(MProEngProfile& aProfile);
+        
+        virtual TInt RingingTone1L();
+        void TestProfileSettingsRingingTone1L(MProEngProfile& aProfile);
+        virtual TInt RingingTone2L();
+        void TestProfileSettingsRingingTone2L(MProEngProfile& aProfile);
+        virtual TInt MessageAlertToneL();
+        void TestProfileSettingsMessageAlertToneL(MProEngProfile& aProfile);
+        virtual TInt EmailAlertToneL();
+        void TestProfileSettingsEmailAlertToneL(MProEngProfile& aProfile);
+        virtual TInt VideoCallRingingToneL();
+        void TestProfileSettingsVideoCallRingingToneL(MProEngProfile& aProfile);
+        virtual TInt SetRingingTone1L();
+        void TestProfileSettingsSetRingingTone1L(MProEngProfile& aProfile);
+        virtual TInt SetRingingTone2L();
+        void TestProfileSettingsSetRingingTone2L(MProEngProfile& aProfile);
+        virtual TInt SetMessageAlertToneL();
+        void TestProfileSettingsSetMessageAlertToneL(MProEngProfile& aProfile);
+        virtual TInt SetEmailAlertToneL();
+        void TestProfileSettingsSetEmailAlertToneL(MProEngProfile& aProfile);
+        virtual TInt SetVideoCallRingingToneL();
+        void TestProfileSettingsSetVideoCallRingingToneL(MProEngProfile& aProfile);
+        
+        virtual TInt RingingTypeL();
+        void TestProfileSettingsRingingTypeL(MProEngProfile& aProfile);
+        virtual TInt KeypadVolumeL();
+        void TestProfileSettingsKeypadVolumeL(MProEngProfile& aProfile);        
+        virtual TInt RingingVolumeL();
+        void TestProfileSettingsRingingVolumeL(MProEngProfile& aProfile);
+        virtual TInt VibratingAlertL();
+        void TestProfileSettingsVibratingAlertL(MProEngProfile& aProfile);
+        virtual TInt WarningAndGameTonesL();
+        void TestProfileSettingsWarningAndGameTonesL(MProEngProfile& aProfile);
+        virtual TInt TextToSpeechL();
+        void TestProfileSettingsTextToSpeechL(MProEngProfile& aProfile);
+        virtual TInt SetRingingTypeL();
+        void TestProfileSettingsSetRingingTypeL(MProEngProfile& aProfile);
+        virtual TInt SetKeypadVolumeL();
+        void TestProfileSettingsSetKeypadVolumeL(MProEngProfile& aProfile);        
+        virtual TInt SetRingingVolumeL();
+        void TestProfileSettingsSetRingingVolumeL(MProEngProfile& aProfile);
+        virtual TInt SetVibratingAlertL();
+        void TestProfileSettingsSetVibratingAlertL(MProEngProfile& aProfile);
+        virtual TInt SetWarningAndGameTonesL();
+        void TestProfileSettingsSetWarningAndGameTonesL(MProEngProfile& aProfile);
+        virtual TInt SetTextToSpeechL();
+        void TestProfileSettingsSetTextToSpeechL(MProEngProfile& aProfile);
+        
+        virtual TInt NewAlertToneSeekerL();
+        virtual TInt FetchAlertToneListL();
+        virtual TInt CancelFetchL();
+        
+        virtual TInt NewEngineLWithRFsL();
+
+        
+        /**
+         * Method used to log version of test class
+         */
+        void SendTestClassVersion();
+
+        //ADD NEW METHOD DEC HERE
+        //[TestMethods] - Do not remove
+
+    public:     // Data
+        CSchedulerUtility* iSchedulerUtility;
+        RFs iFs;
+
+    };
+
+#endif      // PROENGWRAPAPI_H
+
+// End of File