mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaSipConnectionObserver.cpp
changeset 22 496ad160a278
parent 0 f0cf47e981f9
equal deleted inserted replaced
15:ccd8e69b5392 22:496ad160a278
       
     1 /*
       
     2 * Copyright (c) 2004 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:
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 //  CLASS HEADER
       
    20 #include "UT_CMusAvaSipConnectionObserver.h"
       
    21 #include "muslogger.h"
       
    22 #include "mussettings.inl"
       
    23 #include "CSipSseTestTls.h"
       
    24 #include "mussettingskeys.h"
       
    25 #include "musavasipdefaulthandler.h"
       
    26 #include "sipconnectionobserver.h"
       
    27 #include "musavasipdefaulthandler.h"
       
    28 #include "musavasipconnectionadapter.h"
       
    29 #include "musavasettingsimp.h"
       
    30 #include "musavaregisteravailability.h"
       
    31 #include "musavasipprofileregistryobserver.h"
       
    32 #include "musavasipadapterimp.h"
       
    33 #include "musavasipconnectionobserver.h"
       
    34 #include "musavacapabilitytesthelper.h" //remove compilation warning
       
    35 
       
    36 //  EXTERNAL INCLUDES
       
    37 #include <digia/eunit/eunitmacros.h>
       
    38 #include <e32base.h>
       
    39 //#include <telephonyinternalpskeys.h>
       
    40 #include <sipprofileregistry.h>
       
    41 #include <sip.h>
       
    42 #include <siprefresh.h>
       
    43 
       
    44 //  INTERNAL INCLUDES
       
    45 #include "musavasipobserver.h"
       
    46 
       
    47 
       
    48 
       
    49 // CONSTRUCTION
       
    50 UT_CMusAvaSipConnectionObserver* UT_CMusAvaSipConnectionObserver::NewL()
       
    51     {
       
    52     UT_CMusAvaSipConnectionObserver* self = UT_CMusAvaSipConnectionObserver::NewLC(); 
       
    53     CleanupStack::Pop();
       
    54 
       
    55     return self;
       
    56     }
       
    57 
       
    58 UT_CMusAvaSipConnectionObserver* UT_CMusAvaSipConnectionObserver::NewLC()
       
    59     {
       
    60     UT_CMusAvaSipConnectionObserver* self = new( ELeave ) UT_CMusAvaSipConnectionObserver();
       
    61     CleanupStack::PushL( self );
       
    62 
       
    63 	self->ConstructL(); 
       
    64 
       
    65     return self;
       
    66     }
       
    67 
       
    68 // Destructor (virtual by CBase)
       
    69 UT_CMusAvaSipConnectionObserver::~UT_CMusAvaSipConnectionObserver()
       
    70     {
       
    71     }
       
    72 
       
    73 // Default constructor
       
    74 UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver()
       
    75     {
       
    76     }
       
    77 
       
    78 // Second phase construct
       
    79 void UT_CMusAvaSipConnectionObserver::ConstructL()
       
    80     {
       
    81     // The ConstructL from the base class CEUnitTestSuiteClass must be called.
       
    82     // It generates the test case table.
       
    83     CEUnitTestSuiteClass::ConstructL();
       
    84     }
       
    85 
       
    86 //  METHODS
       
    87 
       
    88 
       
    89 
       
    90 void UT_CMusAvaSipConnectionObserver::SetupL(  )
       
    91     { 
       
    92     SIPStrings::OpenL();
       
    93     iAdapterImp = CMusAvaSipAdapterImp::NewL();
       
    94     iAdapterImp2 = CMusAvaSipAdapterImp::NewL();
       
    95     iAdapterImp3 = CMusAvaSipAdapterImp::NewL();
       
    96     iMusAvaSipConnectionObserver = CMusAvaSipConnectionObserver::NewL();	
       
    97     } 
       
    98         
       
    99 void UT_CMusAvaSipConnectionObserver::Teardown(  )
       
   100     {
       
   101     delete iMusAvaSipConnectionObserver;
       
   102     iMusAvaSipConnectionObserver = NULL; 
       
   103     delete iAdapterImp;
       
   104     iAdapterImp = NULL;
       
   105     delete iAdapterImp2;
       
   106     iAdapterImp2 = NULL;
       
   107     delete iAdapterImp3;
       
   108     iAdapterImp3 = NULL;
       
   109     SIPStrings::Close();
       
   110     }
       
   111 
       
   112 void UT_CMusAvaSipConnectionObserver::RemoveDefaultHandler()
       
   113     {
       
   114     TInt defaultHandlerIndex( iMusAvaSipConnectionObserver->iObservers.Count() - 1 );
       
   115     MMusAvaSipConnectionAdapter* defaultHandler = 
       
   116         iMusAvaSipConnectionObserver->iObservers[ defaultHandlerIndex ];
       
   117     iMusAvaSipConnectionObserver->iObservers.Remove( defaultHandlerIndex );
       
   118     delete iMusAvaSipConnectionObserver->iDefaultHandler;
       
   119     iMusAvaSipConnectionObserver->iDefaultHandler = NULL;
       
   120     }
       
   121     
       
   122 void UT_CMusAvaSipConnectionObserver::AddObserversL()
       
   123     {
       
   124     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 1 ); // default observer
       
   125     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp, KErrNotFound );
       
   126     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 2 );
       
   127     
       
   128     }
       
   129 
       
   130 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_AddObserverL()
       
   131     {
       
   132     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 1 ); // default observer
       
   133     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp, KErrNotFound );
       
   134     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 2 );
       
   135     
       
   136     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp, KErrNotFound );
       
   137     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 2 );
       
   138 
       
   139     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp2, 0 );
       
   140     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 3 );
       
   141     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[0] == iAdapterImp2 );
       
   142     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[1] == iAdapterImp );
       
   143     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[2] != NULL );
       
   144 
       
   145     iMusAvaSipConnectionObserver->iObservers.Remove(1);
       
   146     iMusAvaSipConnectionObserver->iObservers.Remove(0);
       
   147     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[0] != iAdapterImp );
       
   148     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[0] != iAdapterImp2 );
       
   149     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[0] != NULL );
       
   150     
       
   151     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp, KErrNotFound );     // invite handler
       
   152     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp2, KErrNotFound );    // default option handler
       
   153     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp3, 1 ); // option handler
       
   154     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[0] == iAdapterImp );
       
   155     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[1] == iAdapterImp3 );
       
   156     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[2] == iAdapterImp2 );
       
   157     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers[3] != NULL );
       
   158     
       
   159     iMusAvaSipConnectionObserver->iObservers.Remove(2);
       
   160     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 3 );
       
   161 
       
   162     iMusAvaSipConnectionObserver->AddObserverL( *iAdapterImp2, 10 );
       
   163     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 4 );
       
   164 
       
   165     } 
       
   166 
       
   167 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_RemoveObserverL()
       
   168     {
       
   169     AddObserversL();
       
   170     iMusAvaSipConnectionObserver->RemoveObserver( *iAdapterImp );
       
   171     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 1 );
       
   172     iMusAvaSipConnectionObserver->RemoveObserver( *iAdapterImp );
       
   173     EUNIT_ASSERT( iMusAvaSipConnectionObserver->iObservers.Count() == 1 );
       
   174     } 
       
   175 
       
   176 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_ConnectionStateChangedL()
       
   177     {
       
   178     AddObserversL();
       
   179     
       
   180     RemoveDefaultHandler();
       
   181     
       
   182     iMusAvaSipConnectionObserver->ConnectionStateChanged( CSIPConnection::EActive );
       
   183     EUNIT_ASSERT( iAdapterImp->iState == CSIPConnection::EActive );
       
   184     
       
   185     iAdapterImp->Reset();
       
   186     iAdapterImp->iReturnCode = KErrGeneral;
       
   187     iMusAvaSipConnectionObserver->ConnectionStateChanged( CSIPConnection::EActive );
       
   188     EUNIT_ASSERT( iAdapterImp->iState != CSIPConnection::EActive );
       
   189     }
       
   190 
       
   191 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_ErrorOccuredL()
       
   192     {
       
   193     AddObserversL();
       
   194     
       
   195     RemoveDefaultHandler();
       
   196     
       
   197     // ErrorOccured variant 1
       
   198     //
       
   199     CSIPClientTransaction* clientTransaction = 
       
   200         CSIPClientTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   201     CleanupStack::PushL( clientTransaction );
       
   202     TInt regBindingFake( 3 );
       
   203     CSIPRegistrationBinding* regBinding = reinterpret_cast<CSIPRegistrationBinding*>( &regBindingFake );
       
   204     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction, *regBinding );
       
   205     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   206     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   207     EUNIT_ASSERT( iAdapterImp->iRegBinding == regBinding );
       
   208     
       
   209     iAdapterImp->Reset();
       
   210     iAdapterImp->iReturnCode = KErrGeneral;
       
   211     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction, *regBinding );
       
   212     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   213     
       
   214     // ErrorOccured variant 2
       
   215     //
       
   216     iAdapterImp->Reset();
       
   217     CSIPServerTransaction* serverTransaction = 
       
   218         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   219     CleanupStack::PushL( serverTransaction );
       
   220     TInt dialogAssocFake( 4 );
       
   221     CSIPInviteDialogAssoc* dialogAssoc = reinterpret_cast<CSIPInviteDialogAssoc*>( &dialogAssocFake );
       
   222     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *dialogAssoc );
       
   223     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   224     EUNIT_ASSERT( iAdapterImp->iDialogAssoc == dialogAssoc );
       
   225     
       
   226     iAdapterImp->Reset();
       
   227     iAdapterImp->iReturnCode = KErrGeneral;
       
   228     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *dialogAssoc );
       
   229     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   230     
       
   231     // ErrorOccured variant 3
       
   232     //
       
   233     iAdapterImp->Reset();
       
   234     TInt refreshFake( 5 );
       
   235     CSIPRefresh* refresh = reinterpret_cast<CSIPRefresh*>( &refreshFake );
       
   236     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *refresh );
       
   237     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   238     EUNIT_ASSERT( iAdapterImp->iRefresh == refresh );
       
   239     
       
   240     iAdapterImp->Reset();
       
   241     iAdapterImp->iReturnCode = KErrGeneral;
       
   242     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *refresh );
       
   243     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   244     
       
   245     // ErrorOccured variant 4
       
   246     //
       
   247     iAdapterImp->Reset();
       
   248     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *regBinding );
       
   249     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   250     EUNIT_ASSERT( iAdapterImp->iRegBinding == regBinding );
       
   251     
       
   252     iAdapterImp->Reset();
       
   253     iAdapterImp->iReturnCode = KErrGeneral;
       
   254     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *regBinding );
       
   255     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   256     
       
   257     // ErrorOccured variant 5
       
   258     //
       
   259     iAdapterImp->Reset();
       
   260     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction );
       
   261     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   262     EUNIT_ASSERT( iAdapterImp->iTransaction == clientTransaction );
       
   263     
       
   264     iAdapterImp->Reset();
       
   265     iAdapterImp->iReturnCode = KErrGeneral;
       
   266     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction );
       
   267     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   268     
       
   269     // ErrorOccured variant 6
       
   270     //
       
   271     iAdapterImp->Reset();
       
   272     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction, *dialogAssoc );
       
   273     EUNIT_ASSERT( iAdapterImp->iError == KErrNotFound );
       
   274     EUNIT_ASSERT( iAdapterImp->iTransaction == clientTransaction );
       
   275     EUNIT_ASSERT( iAdapterImp->iDialogAssoc == dialogAssoc );
       
   276     
       
   277     iAdapterImp->Reset();
       
   278     iAdapterImp->iReturnCode = KErrGeneral;
       
   279     iMusAvaSipConnectionObserver->ErrorOccured( KErrNotFound, *clientTransaction, *dialogAssoc );
       
   280     EUNIT_ASSERT( iAdapterImp->iError == KErrNone );
       
   281     
       
   282     CleanupStack::PopAndDestroy( serverTransaction );
       
   283     CleanupStack::PopAndDestroy( clientTransaction );
       
   284     }
       
   285 
       
   286 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_IncomingRequestL()
       
   287     {
       
   288     AddObserversL();
       
   289     
       
   290     RemoveDefaultHandler();
       
   291     
       
   292     // Variant 1
       
   293     //
       
   294     CSIPServerTransaction* serverTransaction = 
       
   295         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   296 
       
   297     iMusAvaSipConnectionObserver->IncomingRequest( serverTransaction );
       
   298     EUNIT_ASSERT( iAdapterImp->iServerTransaction == serverTransaction );
       
   299     
       
   300     serverTransaction = NULL;
       
   301     serverTransaction = 
       
   302         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   303     iAdapterImp->Reset();
       
   304     iAdapterImp->iReturnCode = KErrGeneral;
       
   305     iMusAvaSipConnectionObserver->IncomingRequest( serverTransaction );
       
   306     EUNIT_ASSERT( iAdapterImp->iServerTransaction == NULL );
       
   307     delete serverTransaction;
       
   308     
       
   309     // Variant 2
       
   310     //
       
   311     serverTransaction = NULL;
       
   312     serverTransaction = 
       
   313         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   314     iAdapterImp->Reset();
       
   315     TInt dialogFake( 4 );
       
   316     CSIPDialog* dialog = reinterpret_cast<CSIPDialog*>( &dialogFake );
       
   317     iMusAvaSipConnectionObserver->IncomingRequest( serverTransaction, *dialog );
       
   318     EUNIT_ASSERT( iAdapterImp->iServerTransaction == serverTransaction );
       
   319     EUNIT_ASSERT( iAdapterImp->iDialog == dialog );
       
   320     
       
   321     serverTransaction = NULL;
       
   322     serverTransaction = 
       
   323         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   324     iAdapterImp->Reset();
       
   325     iAdapterImp->iReturnCode = KErrGeneral;
       
   326     iMusAvaSipConnectionObserver->IncomingRequest( serverTransaction, *dialog );
       
   327     EUNIT_ASSERT( iAdapterImp->iServerTransaction == NULL );
       
   328     delete serverTransaction;
       
   329     }
       
   330 
       
   331 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_IncomingResponseL()
       
   332     {
       
   333     AddObserversL();
       
   334     
       
   335     RemoveDefaultHandler();
       
   336     
       
   337     // Variant 1
       
   338     //
       
   339     CSIPClientTransaction* clientTransaction = 
       
   340         CSIPClientTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   341     CleanupStack::PushL( clientTransaction );
       
   342     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction );
       
   343     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   344     
       
   345     iAdapterImp->Reset();
       
   346     iAdapterImp->iReturnCode = KErrGeneral;
       
   347     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction );
       
   348     EUNIT_ASSERT( iAdapterImp->iClientTransaction == NULL );
       
   349      
       
   350     // Variant 2
       
   351     //
       
   352     iAdapterImp->Reset();
       
   353     TInt dialogAssocFake( 4 );
       
   354     CSIPInviteDialogAssoc* dialogAssoc = reinterpret_cast<CSIPInviteDialogAssoc*>( &dialogAssocFake );
       
   355     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, *dialogAssoc );
       
   356     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   357     EUNIT_ASSERT( iAdapterImp->iDialogAssoc == dialogAssoc );
       
   358     
       
   359     iAdapterImp->Reset();
       
   360     iAdapterImp->iReturnCode = KErrGeneral;
       
   361     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, *dialogAssoc );
       
   362     EUNIT_ASSERT( iAdapterImp->iClientTransaction == NULL );
       
   363     
       
   364     // Variant 3
       
   365     //
       
   366     iAdapterImp->Reset();
       
   367     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, NULL );
       
   368     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   369     EUNIT_ASSERT( iAdapterImp->iInviteAssoc == NULL );
       
   370     
       
   371     iAdapterImp->Reset();
       
   372     iAdapterImp->iReturnCode = KErrGeneral;
       
   373     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, NULL );
       
   374     EUNIT_ASSERT( iAdapterImp->iClientTransaction == NULL );
       
   375     
       
   376     // Variant 4
       
   377     //
       
   378     iAdapterImp->Reset();
       
   379     TInt regBindingFake( 3 );
       
   380     CSIPRegistrationBinding* regBinding = reinterpret_cast<CSIPRegistrationBinding*>( &regBindingFake );
       
   381     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, *regBinding );
       
   382     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   383     EUNIT_ASSERT( iAdapterImp->iRegBinding == regBinding );
       
   384     
       
   385     iAdapterImp->Reset();
       
   386     iAdapterImp->iReturnCode = KErrGeneral;
       
   387     iMusAvaSipConnectionObserver->IncomingResponse( *clientTransaction, *regBinding );
       
   388     EUNIT_ASSERT( iAdapterImp->iClientTransaction == NULL );
       
   389     
       
   390     CleanupStack::PopAndDestroy( clientTransaction );
       
   391     }
       
   392 
       
   393 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_InviteCanceledL()
       
   394     {
       
   395     AddObserversL();
       
   396     
       
   397     RemoveDefaultHandler();
       
   398     
       
   399     CSIPServerTransaction* serverTransaction = 
       
   400         CSIPServerTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   401     CleanupStack::PushL( serverTransaction );
       
   402         
       
   403     iMusAvaSipConnectionObserver->InviteCanceled( *serverTransaction );
       
   404     EUNIT_ASSERT( iAdapterImp->iServerTransaction == serverTransaction );
       
   405     
       
   406     iAdapterImp->Reset();
       
   407     iAdapterImp->iReturnCode = KErrGeneral;
       
   408     iMusAvaSipConnectionObserver->InviteCanceled( *serverTransaction );
       
   409     EUNIT_ASSERT( iAdapterImp->iServerTransaction == NULL );
       
   410     
       
   411     CleanupStack::PopAndDestroy( serverTransaction );
       
   412     }
       
   413 
       
   414 void UT_CMusAvaSipConnectionObserver::UT_CMusAvaSipConnectionObserver_InviteCompletedL()
       
   415     {
       
   416     AddObserversL();
       
   417     
       
   418     RemoveDefaultHandler();
       
   419     
       
   420     CSIPClientTransaction* clientTransaction = 
       
   421         CSIPClientTransaction::NewL( SIPStrings::StringF( SipStrConsts::EOptions ) );
       
   422     CleanupStack::PushL( clientTransaction );
       
   423         
       
   424     iMusAvaSipConnectionObserver->InviteCompleted( *clientTransaction );
       
   425     EUNIT_ASSERT( iAdapterImp->iClientTransaction == clientTransaction );
       
   426     
       
   427     iAdapterImp->Reset();
       
   428     iAdapterImp->iReturnCode = KErrGeneral;
       
   429     iMusAvaSipConnectionObserver->InviteCompleted( *clientTransaction );
       
   430     EUNIT_ASSERT( iAdapterImp->iClientTransaction == NULL );
       
   431     
       
   432     CleanupStack::PopAndDestroy( clientTransaction );
       
   433     }
       
   434     
       
   435 //  TEST TABLE
       
   436 
       
   437 EUNIT_BEGIN_TEST_TABLE( 
       
   438     UT_CMusAvaSipConnectionObserver,
       
   439     "CMusAvaSipConnectionObserver",
       
   440     "UNIT" )
       
   441        
       
   442 EUNIT_TEST(
       
   443     "AddObserverL - test ",
       
   444     "CMusAvaSipConnectionObserver",
       
   445     "AddObserverL",
       
   446     "FUNCTIONALITY",
       
   447     SetupL, UT_CMusAvaSipConnectionObserver_AddObserverL, Teardown)
       
   448 
       
   449 EUNIT_TEST(
       
   450     "RemoveObserverL - test ",
       
   451     "CMusAvaSipConnectionObserver",
       
   452     "RemoveObserverL",
       
   453     "FUNCTIONALITY",
       
   454     SetupL, UT_CMusAvaSipConnectionObserver_RemoveObserverL, Teardown)
       
   455 
       
   456 EUNIT_TEST(
       
   457     "ConnectionStateChangedL - test ",
       
   458     "CMusAvaSipConnectionObserver",
       
   459     "ConnectionStateChangedL",
       
   460     "FUNCTIONALITY",
       
   461     SetupL, UT_CMusAvaSipConnectionObserver_ConnectionStateChangedL, Teardown)
       
   462     
       
   463 EUNIT_TEST(
       
   464     "ErrorOccuredL - test ",
       
   465     "CMusAvaSipConnectionObserver",
       
   466     "ErrorOccuredL",
       
   467     "FUNCTIONALITY",
       
   468     SetupL, UT_CMusAvaSipConnectionObserver_ErrorOccuredL, Teardown)
       
   469     
       
   470 EUNIT_TEST(
       
   471     "IncomingRequestL - test ",
       
   472     "CMusAvaSipConnectionObserver",
       
   473     "IncomingRequestL",
       
   474     "FUNCTIONALITY",
       
   475     SetupL, UT_CMusAvaSipConnectionObserver_IncomingRequestL, Teardown)
       
   476 
       
   477 EUNIT_TEST(
       
   478     "IncomingResponseL - test ",
       
   479     "CMusAvaSipConnectionObserver",
       
   480     "IncomingResponseL",
       
   481     "FUNCTIONALITY",
       
   482     SetupL, UT_CMusAvaSipConnectionObserver_IncomingResponseL, Teardown)
       
   483 
       
   484 EUNIT_TEST(
       
   485     "InviteCanceledL - test ",
       
   486     "CMusAvaSipConnectionObserver",
       
   487     "InviteCanceledL",
       
   488     "FUNCTIONALITY",
       
   489     SetupL, UT_CMusAvaSipConnectionObserver_InviteCanceledL, Teardown)
       
   490 
       
   491 EUNIT_TEST(
       
   492     "InviteCompletedL - test ",
       
   493     "CMusAvaSipConnectionObserver",
       
   494     "InviteCompletedL",
       
   495     "FUNCTIONALITY",
       
   496     SetupL, UT_CMusAvaSipConnectionObserver_InviteCompletedL, Teardown)
       
   497                                 
       
   498 EUNIT_END_TEST_TABLE
       
   499 
       
   500 //  END OF FILE