mmsharing/mmshavailability/tsrc/ut_availability/src/UT_CMusAvaSipheaderUtil.cpp
changeset 15 ccd8e69b5392
parent 2 b31261fd4e04
child 20 e8be2c2e049d
child 22 496ad160a278
equal deleted inserted replaced
2:b31261fd4e04 15:ccd8e69b5392
     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_CMusAvaSipheaderUtil.h"
       
    21 #include "musavasipheaderutil.h"
       
    22 #include "muslogger.h"
       
    23 #include "musavasipobserver.h"
       
    24 #include "musavasipconnectionobserver.h"
       
    25 
       
    26 //  EXTERNAL INCLUDES
       
    27 #include <digia/eunit/eunitmacros.h>
       
    28 #include <e32base.h>
       
    29 #include <sipstrings.h>
       
    30 #include <SdpCodecStringPool.h>
       
    31 #include <siprequestelements.h>
       
    32 #include <SipMessageElements.h>
       
    33 #include <sip.h>
       
    34 #include <sipconnection.h>
       
    35 #include <sipheaderbase.h>
       
    36 #include <digia/eunit/eunitdecorators.h>
       
    37 
       
    38 
       
    39 
       
    40 // CONSTRUCTION
       
    41 UT_CMusAvaSipheaderUtil* UT_CMusAvaSipheaderUtil::NewL()
       
    42     {
       
    43     UT_CMusAvaSipheaderUtil* self = UT_CMusAvaSipheaderUtil::NewLC(); 
       
    44     CleanupStack::Pop();
       
    45     return self;
       
    46     }
       
    47 
       
    48 UT_CMusAvaSipheaderUtil* UT_CMusAvaSipheaderUtil::NewLC()
       
    49     {
       
    50     UT_CMusAvaSipheaderUtil* self = new( ELeave ) UT_CMusAvaSipheaderUtil();
       
    51     CleanupStack::PushL( self );
       
    52 	self->ConstructL(); 
       
    53     return self;
       
    54     }
       
    55 
       
    56 // Destructor (virtual by CBase)
       
    57 UT_CMusAvaSipheaderUtil::~UT_CMusAvaSipheaderUtil()
       
    58     {
       
    59     }
       
    60 
       
    61 // Default constructor
       
    62 UT_CMusAvaSipheaderUtil::UT_CMusAvaSipheaderUtil()
       
    63     {
       
    64     }
       
    65 
       
    66 // Second phase construct
       
    67 void UT_CMusAvaSipheaderUtil::ConstructL()
       
    68     {
       
    69     // The ConstructL from the base class CEUnitTestSuiteClass must be called.
       
    70     // It generates the test case table.
       
    71     CEUnitTestSuiteClass::ConstructL();
       
    72     }
       
    73 
       
    74 //  METHODS
       
    75 
       
    76 
       
    77 
       
    78 void UT_CMusAvaSipheaderUtil::SetupL(  )
       
    79     {   
       
    80     SIPStrings::OpenL();
       
    81     SdpCodecStringPool::OpenL();
       
    82     } 
       
    83 
       
    84 void UT_CMusAvaSipheaderUtil::Teardown(  )
       
    85     {    
       
    86     iRequestHeaders.ResetAndDestroy();
       
    87     SIPStrings::Close();
       
    88     SdpCodecStringPool::Close();
       
    89     } 
       
    90 
       
    91 void UT_CMusAvaSipheaderUtil::UT_AddAcceptContactHeaderLL()
       
    92     {    
       
    93     _LIT8( KCapabilitySwisFeature, "+g.3gpp.cs-voice");
       
    94     RStringF featureTag = SIPStrings::Pool().OpenFStringL( KCapabilitySwisFeature );
       
    95     CleanupClosePushL( featureTag );
       
    96     CMusAvaSipheaderUtil::AddAcceptContactHeaderL(iRequestHeaders,featureTag);
       
    97     CleanupStack::PopAndDestroy();
       
    98     EUNIT_ASSERT( iRequestHeaders.Count()==1 );
       
    99     }  
       
   100 
       
   101 void UT_CMusAvaSipheaderUtil::UT_AddAcceptEncodingHeaderLL()
       
   102     {          
       
   103     CMusAvaSipheaderUtil::AddAcceptEncodingHeaderL(iRequestHeaders);
       
   104     TInt count = 0;
       
   105     EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
       
   106     if ( count == 0 )
       
   107         {
       
   108         EUNIT_ASSERT( iRequestHeaders.Count()==1 );
       
   109         }
       
   110     else
       
   111         {
       
   112         EUNIT_ASSERT( iRequestHeaders.Count()==0 );
       
   113         }
       
   114     }  
       
   115 
       
   116 void UT_CMusAvaSipheaderUtil::UT_AddAcceptLanguageHeaderLL()
       
   117     {          
       
   118     CMusAvaSipheaderUtil::AddAcceptLanguageHeaderL(iRequestHeaders);
       
   119     TInt count = 0;
       
   120     EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
       
   121     if ( count == 0 )
       
   122         {
       
   123         EUNIT_ASSERT( iRequestHeaders.Count()==1 );
       
   124         }
       
   125     else
       
   126         {
       
   127         EUNIT_ASSERT( iRequestHeaders.Count()==0 );
       
   128         }
       
   129     }  
       
   130 
       
   131 void UT_CMusAvaSipheaderUtil::UT_AddPreferredIdentityHeaderLL()
       
   132     {          
       
   133     _LIT8(val,"sip:siva@sofia.net");
       
   134     CMusAvaSipheaderUtil::AddPreferredIdentityHeaderL(iRequestHeaders,val);
       
   135     EUNIT_ASSERT( iRequestHeaders.Count()==1 );
       
   136     }  
       
   137 
       
   138 void UT_CMusAvaSipheaderUtil::UT_AddAcceptSdpHeaderLL()
       
   139     {          
       
   140     CMusAvaSipheaderUtil::AddAcceptSdpHeaderL(iRequestHeaders);
       
   141     TInt count = 0;
       
   142     EUNIT_GET_ALLOC_DECORATOR_FAILCOUNT( count );
       
   143     if ( count == 0 )
       
   144         {
       
   145         EUNIT_ASSERT( iRequestHeaders.Count()==1 );
       
   146         }
       
   147     else
       
   148         {
       
   149         EUNIT_ASSERT( iRequestHeaders.Count()==0 );
       
   150         }
       
   151     }  
       
   152 
       
   153 void UT_CMusAvaSipheaderUtil::UT_AddSdpLL()
       
   154     {              
       
   155     CUri8* remoteUri = CUri8::NewL();
       
   156     CleanupStack::PushL( remoteUri );
       
   157     _LIT8(uri,"siva@sofia.net");
       
   158     remoteUri->SetComponentL(uri,EUriHost);
       
   159     CSIPRequestElements* rElements = CSIPRequestElements::NewL(remoteUri);
       
   160     CleanupStack::Pop( remoteUri );
       
   161     CleanupStack::PushL( rElements );
       
   162     _LIT8(contentDes,"v=0\n/");
       
   163     /*o=- 63359607229508250 63359607229508250 IN IP4 10.21.32.54\n/
       
   164     s=-\n/c=IN IP4 10.21.32.51\n/
       
   165     t=0 0\na=X-application:com.nokia.rtvs\nm=video 49152 RTP/AVP 96\n/
       
   166     a=sendonly\na=curr:qos local send\na=curr:qos remote none\n/
       
   167     a=des:qos mandatory local send\na=des:qos none remote send\n/
       
   168     a=rtpmap:96 H263-2000/90000\na=framerate:15\na=framesize:96 176-144\n/
       
   169     a=fmtp:96 profile=0; level=45\n");    */
       
   170     HBufC8* content = HBufC8::NewLC(contentDes().Length());
       
   171     TPtr8 contentPtr = content->Des();
       
   172     contentPtr.Copy(contentDes);
       
   173     CMusAvaSipheaderUtil::AddSdpL(rElements,content);
       
   174     CleanupStack::Pop(content);    
       
   175     EUNIT_ASSERT(rElements->MessageElements().Content().Length()>0);    
       
   176     CleanupStack::PopAndDestroy(rElements);
       
   177     }  
       
   178 
       
   179 void UT_CMusAvaSipheaderUtil::UT_LocalHostLL()
       
   180     {
       
   181     TUid uid = TUid::Uid(0);
       
   182     // just for compilation this will be ignored in stub.
       
   183     CMusAvaSipObserver* tempObs = CMusAvaSipObserver::NewL();
       
   184     CleanupStack::PushL(tempObs);
       
   185     CSIP* sip = CSIP::NewLC(uid,*tempObs);
       
   186     TUint32 aIapId(0);
       
   187     CMusAvaSipConnectionObserver* connObs = CMusAvaSipConnectionObserver::NewL();
       
   188     CleanupStack::PushL(connObs);
       
   189     CSIPConnection* connection = CSIPConnection::NewL(*sip,aIapId,*connObs);
       
   190     CleanupStack::PushL(connection);
       
   191     TPtrC8 host;
       
   192     CMusAvaSipheaderUtil::LocalHostL(*connection,host);
       
   193     CleanupStack::PopAndDestroy(4);
       
   194     EUNIT_ASSERT(host.Length() > 0);  
       
   195     }
       
   196                         
       
   197 	
       
   198 //  TEST TABLE
       
   199 
       
   200 EUNIT_BEGIN_TEST_TABLE( 
       
   201     UT_CMusAvaSipheaderUtil,
       
   202     "CMusAvaSipheaderUtil",
       
   203     "UNIT" )
       
   204 
       
   205 EUNIT_TEST(
       
   206     "AddAcceptContactHeaderL - test ",
       
   207     "CMusAvaSipheaderUtil",
       
   208     "AddAcceptContactHeaderL",
       
   209     "FUNCTIONALITY",
       
   210      SetupL, UT_AddAcceptContactHeaderLL, Teardown)
       
   211 
       
   212 EUNIT_TEST(
       
   213     "AddAcceptEncodingHeaderL - test ",
       
   214     "CMusAvaSipheaderUtil",
       
   215     "AddAcceptEncodingHeaderL",
       
   216     "FUNCTIONALITY",
       
   217      SetupL, UT_AddAcceptEncodingHeaderLL, Teardown)
       
   218 
       
   219 EUNIT_TEST(
       
   220     "AddAcceptLanguageHeaderL - test ",
       
   221     "CMusAvaSipheaderUtil",
       
   222     "AddAcceptLanguageHeaderL",
       
   223     "FUNCTIONALITY",
       
   224      SetupL, UT_AddAcceptLanguageHeaderLL, Teardown)
       
   225 
       
   226 EUNIT_TEST(
       
   227     "AddPreferredIdentityHeaderL - test ",
       
   228     "CMusAvaSipheaderUtil",
       
   229     "AddPreferredIdentityHeaderL",
       
   230     "FUNCTIONALITY",
       
   231      SetupL, UT_AddPreferredIdentityHeaderLL, Teardown)
       
   232 
       
   233 EUNIT_TEST(
       
   234     "AddAcceptSdpHeaderL - test ",
       
   235     "CMusAvaSipheaderUtil",
       
   236     "AddAcceptSdpHeaderL",
       
   237     "FUNCTIONALITY",
       
   238      SetupL, UT_AddAcceptSdpHeaderLL, Teardown)
       
   239 
       
   240 EUNIT_TEST(
       
   241     "AddSdpL - test ",
       
   242     "CMusAvaSipheaderUtil",
       
   243     "AddSdpL",
       
   244     "FUNCTIONALITY",
       
   245      SetupL, UT_AddSdpLL, Teardown)
       
   246 
       
   247 EUNIT_TEST(
       
   248     "LocalHostL - test ",
       
   249     "CMusAvaSipheaderUtil",
       
   250     "LocalHostL",
       
   251     "FUNCTIONALITY",
       
   252      SetupL, UT_LocalHostLL, Teardown)
       
   253  
       
   254 
       
   255 EUNIT_END_TEST_TABLE
       
   256 
       
   257 //  END OF FILE