mmsharing/mmshmanagersrv/tsrc/ut_managersrv/inc/ut_cmusavailabilitypluginmanager.h
changeset 22 496ad160a278
equal deleted inserted replaced
15:ccd8e69b5392 22:496ad160a278
       
     1 /*
       
     2 * Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  Unit tests for CMusAvailabilityManager class.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef UT_CMUSAVAILABILITYPLUGINMANAGER_H
       
    20 #define UT_CMUSAVAILABILITYPLUGINMANAGER_H
       
    21 
       
    22 #include "musavailabilitypluginmanagerobserver.h"
       
    23 #include <digia/eunit/ceunittestsuiteclass.h>
       
    24 #include <e32def.h>
       
    25 
       
    26 #pragma warn_illtokenpasting off
       
    27 
       
    28 class CMusAvailabilityPluginManager;
       
    29 class CMusApplicationManager;
       
    30 
       
    31 #ifndef NONSHARABLE_CLASS
       
    32     #define NONSHARABLE_CLASS(x) class x
       
    33 #endif
       
    34 
       
    35 /**
       
    36  *  Unit test class for CMusAvailabilityPluginManager.
       
    37  *  Implements unit tests for CMusAvailabilityPluginManager.
       
    38  *
       
    39  *  @since S60 v3.2
       
    40  */
       
    41 NONSHARABLE_CLASS( UT_CMusAvailabilityPluginManager )
       
    42     : public CEUnitTestSuiteClass, MMusAvailabilityPluginManagerObserver
       
    43     {
       
    44 public:
       
    45 
       
    46     static UT_CMusAvailabilityPluginManager* NewL();
       
    47 
       
    48     static UT_CMusAvailabilityPluginManager* NewLC();
       
    49 
       
    50     /**
       
    51      * Destructor.
       
    52      */
       
    53     ~UT_CMusAvailabilityPluginManager();
       
    54 
       
    55 // from baseclass MMusAvailabilityPluginManagerObserver.
       
    56 
       
    57     /**
       
    58      * From MMusAvailabilityPluginManagerObserver.
       
    59      * Informs that observed plugin is stopped.
       
    60      *
       
    61      * @since S60 v3.2
       
    62      */
       
    63     virtual void PluginStopped();
       
    64 
       
    65     /**
       
    66      * From MMusAvailabilityPluginManagerObserver.
       
    67      * Informs a change in multimedia sharing availability.
       
    68      *
       
    69      * @param aAvailability Represents new state of availability.
       
    70      * @since S60 v3.2
       
    71      */
       
    72     virtual void AvailabilityChangedL( MultimediaSharing::TMusAvailabilityStatus aAvailability );
       
    73  
       
    74 
       
    75     /**
       
    76      * From MMusAvailabilityPluginManagerObserver.     
       
    77      *     
       
    78      * @since S60 v3.2
       
    79      */
       
    80     virtual void StartSharingWithUseCaseL( MultimediaSharing::TMusUseCase aUseCase );
       
    81 
       
    82 private:
       
    83 
       
    84     UT_CMusAvailabilityPluginManager();
       
    85 
       
    86     void ConstructL();
       
    87 
       
    88     /**
       
    89     * Sets up a test case.
       
    90     */
       
    91     void SetupL();
       
    92 
       
    93     /**
       
    94     * Tears down a test case.
       
    95     */
       
    96     void Teardown();
       
    97 
       
    98     /**
       
    99     * Invidual unit test methods.
       
   100     */
       
   101     void UT_CMusAvailabilityPluginManager_NewLL();
       
   102     void UT_CMusAvailabilityPluginManager_NewLCL();
       
   103     void UT_CMusAvailabilityPluginManager_InvestigateAvailabilityLL();
       
   104     void UT_CMusAvailabilityPluginManager_InvitationReceivedLL();
       
   105     void UT_CMusAvailabilityPluginManager_OptionsReceivedLL();
       
   106     void UT_CMusAvailabilityPluginManager_StopPluginLL();
       
   107     void UT_CMusAvailabilityPluginManager_SessionParametersL();
       
   108     void UT_CMusAvailabilityPluginManager_OptionAllowedL();
       
   109     void UT_CMusAvailabilityPluginManager_ApplicationStateL();
       
   110     void UT_CMusAvailabilityPluginManager_AvailabilityL();
       
   111     void UT_CMusAvailabilityPluginManager_StartLiveSharingLL();
       
   112     void UT_CMusAvailabilityPluginManager_MapAvailabilitiesL();
       
   113     void UT_CMusAvailabilityPluginManager_UpdateSessionParametersLL();
       
   114     void UT_CMusAvailabilityPluginManager_SipAddressesLCL();
       
   115     void UT_CMusAvailabilityPluginManager_TelNumberLCL();
       
   116     void UT_CMusAvailabilityPluginManager_ContactNameLCL();
       
   117     void UT_CMusAvailabilityPluginManager_IndicateAvailabilityLL();
       
   118     void UT_CMusAvailabilityPluginManager_PrepareForReceivedInviteLL();
       
   119 
       
   120 private: // data
       
   121 
       
   122     /**
       
   123      * Instance of tested class.
       
   124      * Own.
       
   125      */
       
   126     CMusAvailabilityPluginManager* iManager;
       
   127 
       
   128     /**
       
   129      * Tells if observer method
       
   130      * MMusAvailabilityPluginManagerObserver::AvailabilityChangedL has been
       
   131      * called.
       
   132      */
       
   133     TBool iCalledAvailabilityChangedL;
       
   134 
       
   135     /**
       
   136      * Tells if observer method
       
   137      * MMusAvailabilityPluginManagerObserver::PluginStoppedL has been called.
       
   138      */
       
   139     TBool iCalledPluginStoppedL;
       
   140 
       
   141     /**
       
   142      * Tells if observer method
       
   143      * MMusAvailabilityPluginManagerObserver::StartLiveSharingL has been called.
       
   144      */
       
   145     TBool iCalledAStartLiveSharing;
       
   146     
       
   147     /**
       
   148      * Application manager instance. Owned.
       
   149      */
       
   150     CMusApplicationManager* iAppManager;
       
   151 
       
   152     EUNIT_DECLARE_TEST_TABLE;
       
   153 
       
   154     };
       
   155 
       
   156 #endif // UT_CMUSAVAILABILITYPLUGINMANAGER_H