cellular/SSSettings/tsrc/public/basic/EunitTest/MT_SSSettings/MT_SSSettings.h
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:15:03 +0100
branchRCL_3
changeset 20 987c9837762f
parent 19 7d48bed6ce0c
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201033 Kit: 201035

/*
* Copyright (c) 2005-2006 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:  MT_SSSettings
*
*/


#ifndef __MT_SSSETTINGS_H__
#define __MT_SSSETTINGS_H__

//  EXTERNAL INCLUDES
#include <CEUnitTestSuiteClass.h>
#include <etelmm.h>
#include <MSSSettingsObserver.h>
#include <MSSSettingsRefreshObserver.h>
#include <MSSSettingsRefreshHandler.h>
#include <MSatRefreshObserver.h>
#include <etelsat.h>

//  INTERNAL INCLUDES


//  FORWARD DECLARATIONS
class RCustomerServiceProfileCache;
class RSSSettings;
class CSSSettingsRefreshContainer;

#include <e32def.h>
#ifndef NONSHARABLE_CLASS
    #define NONSHARABLE_CLASS(x) class x
#endif

//  CLASS DEFINITION
/**
 *
 * EUnitWizard generated test class. 
 *
 */
NONSHARABLE_CLASS( MT_SSSettings )
     : public CEUnitTestSuiteClass,
       public MSSSettingsObserver,
       public MSSSettingsRefreshObserver,
       public MSSSettingsRefreshHandler
    {
    public:     // Constructors and destructors

        /**
         * Two phase construction
         */
        static MT_SSSettings* NewL();
        static MT_SSSettings* NewLC();
        /**
         * Destructor
         */
        ~MT_SSSettings();

    private:    // Constructors and destructors

        MT_SSSettings();
        void ConstructL();

    public:     // From observer interface
    
          // From MSSSettingsObserver.
          void PhoneSettingChanged( TSSSettingsSetting /*aSetting*/, 
            TInt /*aNewValue*/ );
            
          // From MSSSettingsRefreshHandler.
          void NotifyFileChangeL( 
            MSSSettingsRefreshObserver& /*aObserver*/,
            TSatElementaryFiles /*aObservedFile*/,
            TSatRefreshType /*aObservedRefreshType*/);
            
          // From MSSSettingsRefreshHandler.
          void CancelNotify();
          
          // From MSSSettingsRefreshHandler.
          TInt ChangedCspTable( TDes8& /*aChangedCsps*/,
            TDes8& /*aNewValues*/ );
            
          // From   MSSSettingsRefreshObserver.
          TBool AllowRefresh(
            const TSatRefreshType /*aType*/,
            const TSatElementaryFiles /*aFiles*/ );
            
          // From   MSSSettingsRefreshObserver.
          void Refresh(
            const TSatRefreshType /*aType*/,
            const TSatElementaryFiles /*aFiles*/ );
        

    private:    // New methods
    
         void EmptySetupL();
        
         void EmptyTeardown();

         void SetupL();
        
         void Teardown();
         
         void CSPSetupL();
         
         void CSPTeardown();
        
         void MT_CSSSettingsRefreshContainer_NewLL();
        
        
         void MT_RCustomerServiceProfileCache_CspCallCompletionL();
        
        
         void MT_RCustomerServiceProfileCache_CspCallOfferingL();
        
        
         void MT_RCustomerServiceProfileCache_CspCallRestrictionL();
        
        
         void MT_RCustomerServiceProfileCache_CspCPHSTeleservicesL();
        
        
         void MT_RCustomerServiceProfileCache_HandleRefreshL();
        
        
         void MT_RCustomerServiceProfileCache_CspCPHSValueAddedServicesL();
        
        
         void MT_RCustomerServiceProfileCache_CspTeleServicesL();
        
        
         void MT_RCustomerServiceProfileCache_ChangedCspTableL();
        
        
         void MT_RSSSettings_RSSSettingsL();
        
        
         void MT_RSSSettings_OpenCloseL();
         
        
         void MT_RSSSettings_Open_1L();
        
        
         void MT_RSSSettings_RegisterAllL();
        
        
         void MT_RSSSettings_RegisterL();
        
        
         void MT_RSSSettings_CancelAllL();
        
        
         void MT_RSSSettings_CancelL();
        
        
         void MT_RSSSettings_GetL();
        
        
         void MT_RSSSettings_SetL();
        
        
         void MT_RSSSettings_HandleSIMChangedL();
        
        
         void MT_RSSSettings_PreviousCugValueL();
        
        
         void MT_RSSSettings_ResetPreviousCugValueL();
        
        
         void MT_RSSSettings_HandleRefreshL();
        
        
         void MT_RSSSettings_IsValueValidCugIndexL();
         
         static TInt DoCallBackL( TAny* aAny );
         
         void WaitTimer( TInt aWaitTime );
        
         void Stop();

    private:    // Data
            
        //MSSSettingsRefreshHandler* iRefreshHandler;
        
        CActiveSchedulerWait iWaitTimer;

        RSSSettings* iSettings;
        
        TInt iCugValue;
        TInt iClirValue;
        TInt iAlsValue;
        TInt iAlsBlockValue;
        TInt iCugDefValue;
        
        RCustomerServiceProfileCache* iCSP;
        
        
        
        EUNIT_DECLARE_TEST_TABLE; 

    };

#endif      //  __MT_SSSETTINGS_H__

// End of file