websrv_pub/web_service_connection_api/tsrc/SenLayeredPropertiesTester/src/SenLayeredPropertiesTesterBlocks.cpp
changeset 0 62f9d29f7211
equal deleted inserted replaced
-1:000000000000 0:62f9d29f7211
       
     1 /*
       
     2 * Copyright (c) 2002 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:        ?Description
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 
       
    21 
       
    22 
       
    23 
       
    24 
       
    25 
       
    26 // [INCLUDE FILES] - do not remove
       
    27 #include <e32svr.h>
       
    28 #include <StifParser.h>
       
    29 //  INTERNAL INCLUDES
       
    30 #include <e32debug.h>
       
    31 #include <e32base.h>
       
    32 #include <StifTestInterface.h>
       
    33 #include "senlayeredhttptransportproperties.h"
       
    34 #include "senlayeredtransportproperties.h"
       
    35 #include "senlayeredxmlproperties.h"
       
    36 #include "SenLayeredPropertiesTester.h"
       
    37 
       
    38 // EXTERNAL DATA STRUCTURES
       
    39 //extern  ?external_data;
       
    40 
       
    41 // EXTERNAL FUNCTION PROTOTYPES  
       
    42 //extern ?external_function( ?arg_type,?arg_type );
       
    43 
       
    44 // CONSTANTS
       
    45 //const ?type ?constant_var = ?constant;
       
    46 
       
    47 // MACROS
       
    48 //#define ?macro ?macro_def
       
    49 #define LOCAL_ASSERT(expression)	{if(!(expression)){return KErrArgument;}}
       
    50 
       
    51 // LOCAL CONSTANTS AND MACROS
       
    52 //const ?type ?constant_var = ?constant;
       
    53 //#define ?macro_name ?macro_def
       
    54 
       
    55 // MODULE DATA STRUCTURES
       
    56 //enum ?declaration
       
    57 //typedef ?declaration
       
    58 
       
    59 // LOCAL FUNCTION PROTOTYPES
       
    60 //?type ?function_name( ?arg_type, ?arg_type );
       
    61 
       
    62 // FORWARD DECLARATIONS
       
    63 //class ?FORWARD_CLASSNAME;
       
    64 
       
    65 // ============================= LOCAL FUNCTIONS ===============================
       
    66 
       
    67 // -----------------------------------------------------------------------------
       
    68 // ?function_name ?description.
       
    69 // ?description
       
    70 // Returns: ?value_1: ?description
       
    71 //          ?value_n: ?description_line1
       
    72 //                    ?description_line2
       
    73 // -----------------------------------------------------------------------------
       
    74 //
       
    75 /*
       
    76 ?type ?function_name(
       
    77     ?arg_type arg,  // ?description
       
    78     ?arg_type arg)  // ?description
       
    79     {
       
    80 
       
    81     ?code  // ?comment
       
    82 
       
    83     // ?comment
       
    84     ?code
       
    85     }
       
    86 */
       
    87 
       
    88 // ============================ MEMBER FUNCTIONS ===============================
       
    89 
       
    90 // -----------------------------------------------------------------------------
       
    91 // CSenLayeredPropertiesTester::Delete
       
    92 // Delete here all resources allocated and opened from test methods. 
       
    93 // Called from destructor. 
       
    94 // -----------------------------------------------------------------------------
       
    95 //
       
    96 void CSenLayeredPropertiesTester::Delete() 
       
    97     {
       
    98 
       
    99     }
       
   100 
       
   101 // -----------------------------------------------------------------------------
       
   102 // CSenLayeredPropertiesTester::RunMethodL
       
   103 // Run specified method. Contains also table of test mothods and their names.
       
   104 // -----------------------------------------------------------------------------
       
   105 //
       
   106 TInt CSenLayeredPropertiesTester::RunMethodL( 
       
   107     CStifItemParser& aItem ) 
       
   108     {
       
   109 
       
   110     static TStifFunctionInfo const KFunctions[] =
       
   111         {  
       
   112         // Copy this line for every implemented function.
       
   113         // First string is the function name used in TestScripter script file.
       
   114         // Second is the actual implementation member function. 
       
   115 		ENTRY("HTTPTPP-CloneL-test_CSenLayeredXmlProperties_CloneL", CSenLayeredPropertiesTester::UT_CSenLayeredHttpTransportProperties_CloneLL),
       
   116 		ENTRY("TPP-NewL-test_CSenLayeredHttpTransportProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredHttpTransportProperties_NewLL),
       
   117 		ENTRY("TPP-NewL-test_CSenLayeredTransportProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLL),
       
   118 		ENTRY("TPP-NewLC-test_CSenLayeredTransportProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLCL),
       
   119 		ENTRY("TPP-NewL-test_CSenLayeredTransportProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewL_1L),
       
   120 		ENTRY("TPP-NewLC-test_CSenLayeredTransportProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLC_1L),
       
   121 		ENTRY("TPP-NewL-test_CSenLayeredTransportProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewL_2L),
       
   122 		ENTRY("TPP-NewLC-test_CSenLayeredTransportProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLC_2L),
       
   123 		ENTRY("TPP-SetReader-test_CSenLayeredTransportProperties_SetReader", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetReaderL),
       
   124 		ENTRY("TPP-PropertiesClassType-test_CSenLayeredTransportProperties_PropertiesClassType", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertiesClassTypeL),
       
   125 		ENTRY("TPP-WriteToL-test_CSenLayeredTransportProperties_WriteToL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_WriteToLL),
       
   126 		ENTRY("TPP-ReadFromL-test_CSenLayeredTransportProperties_ReadFromL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ReadFromLL),
       
   127 		ENTRY("TPP-AsUtf8L-test_CSenLayeredTransportProperties_AsUtf8L", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LL),
       
   128 		ENTRY("TPP-AsUtf8LC-test_CSenLayeredTransportProperties_AsUtf8LC", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LCL),
       
   129 		ENTRY("TPP-SetPropertyL-test_CSenLayeredTransportProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyLL),
       
   130 		ENTRY("TPP-PropertyL-test_CSenLayeredTransportProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyLL),
       
   131 		ENTRY("TPP-SetIntPropertyL-test_CSenLayeredTransportProperties_SetIntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetIntPropertyLL),
       
   132 		ENTRY("TPP-IntPropertyL-test_CSenLayeredTransportProperties_IntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_IntPropertyLL),
       
   133 		ENTRY("TPP-SetBoolPropertyL-test_CSenLayeredTransportProperties_SetBoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetBoolPropertyLL),
       
   134 		ENTRY("TPP-BoolPropertyL-test_CSenLayeredTransportProperties_BoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_BoolPropertyLL),
       
   135 		ENTRY("TPP-WriteToL-test_CSenLayeredTransportProperties_WriteToL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_WriteToL_1L),
       
   136 		ENTRY("TPP-ReadFromL-test_CSenLayeredTransportProperties_ReadFromL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ReadFromL_1L),
       
   137 		ENTRY("TPP-AsUtf8L-test_CSenLayeredTransportProperties_AsUtf8L", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8L_1L),
       
   138 		ENTRY("TPP-AsUtf8LC-test_CSenLayeredTransportProperties_AsUtf8LC", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LC_1L),
       
   139 		ENTRY("TPP-ShrinkTo-test_CSenLayeredTransportProperties_ShrinkTo", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ShrinkToL),
       
   140 		ENTRY("TPP-ExpandToL-test_CSenLayeredTransportProperties_ExpandToL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ExpandToLL),
       
   141 		ENTRY("TPP-TopLayer-test_CSenLayeredTransportProperties_TopLayer", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_TopLayerL),
       
   142 		ENTRY("TPP-SetPropertyL-test_CSenLayeredTransportProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyL_1L),
       
   143 		ENTRY("TPP-PropertyL-test_CSenLayeredTransportProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_1L),
       
   144 		ENTRY("TPP-PropertyL-test_CSenLayeredTransportProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_2L),
       
   145 		ENTRY("TPP-PropertyL-test_CSenLayeredTransportProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_3L),
       
   146 		ENTRY("TPP-PropertiesByTypeL-test_CSenLayeredTransportProperties_PropertiesByTypeL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertiesByTypeLL),
       
   147 		ENTRY("TPP-SetIntPropertyL-test_CSenLayeredTransportProperties_SetIntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetIntPropertyL_1L),
       
   148 		ENTRY("TPP-IntPropertyL-test_CSenLayeredTransportProperties_IntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_IntPropertyL_1L),
       
   149 		ENTRY("TPP-SetBoolPropertyL-test_CSenLayeredTransportProperties_SetBoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetBoolPropertyL_1L),
       
   150 		ENTRY("TPP-BoolPropertyL-test_CSenLayeredTransportProperties_BoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_BoolPropertyL_1L),
       
   151 		ENTRY("TPP-SetPropertyL-test_CSenLayeredTransportProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyL_2L),
       
   152 		ENTRY("TPP-PropertyL-test_CSenLayeredTransportProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_4L),
       
   153 		ENTRY("TPP-CloneL-test_CSenLayeredXmlProperties_CloneL", CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_CloneLL),
       
   154 		ENTRY("XmlP-NewL-test_CSenLayeredXmlProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLL),
       
   155 		ENTRY("XmlP-NewLC-test_CSenLayeredXmlProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLCL),
       
   156 		ENTRY("XmlP-NewL1-test_CSenLayeredXmlProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewL_1L),
       
   157 		ENTRY("XmlP-NewLC1-test_CSenLayeredXmlProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLC_1L),
       
   158 		ENTRY("XmlP-NewL2-test_CSenLayeredXmlProperties_NewL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewL_2L),
       
   159 		ENTRY("XmlP-NewLC2-test_CSenLayeredXmlProperties_NewLC", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLC_2L),
       
   160 		ENTRY("XmlP-SetReader-test_CSenLayeredXmlProperties_SetReader", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetReaderL),
       
   161 		ENTRY("XmlP-PropertiesClassType-test_CSenLayeredXmlProperties_PropertiesClassType", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertiesClassTypeL),
       
   162 		ENTRY("XmlP-WriteToL-test_CSenLayeredXmlProperties_WriteToL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_WriteToLL),
       
   163 		ENTRY("XmlP-ReadFromL-test_CSenLayeredXmlProperties_ReadFromL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ReadFromLL),
       
   164 		ENTRY("XmlP-AsUtf8L-test_CSenLayeredXmlProperties_AsUtf8L", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LL),
       
   165 		ENTRY("XmlP-AsUtf8LC-test_CSenLayeredXmlProperties_AsUtf8LC", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LCL),
       
   166 		ENTRY("XmlP-SetPropertyL-test_CSenLayeredXmlProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyLL),
       
   167 		ENTRY("XmlP-PropertyL-test_CSenLayeredXmlProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyLL),
       
   168 		ENTRY("XmlP-SetIntPropertyL-test_CSenLayeredXmlProperties_SetIntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetIntPropertyLL),
       
   169 		ENTRY("XmlP-IntPropertyL-test_CSenLayeredXmlProperties_IntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_IntPropertyLL),
       
   170 		ENTRY("XmlP-SetBoolPropertyL-test_CSenLayeredXmlProperties_SetBoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetBoolPropertyLL),
       
   171 		ENTRY("XmlP-BoolPropertyL-test_CSenLayeredXmlProperties_BoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_BoolPropertyLL),
       
   172 		ENTRY("XmlP-WriteToL-test_CSenLayeredXmlProperties_WriteToL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_WriteToL_1L),
       
   173 		ENTRY("XmlP-ReadFromL-test_CSenLayeredXmlProperties_ReadFromL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ReadFromL_1L),
       
   174 		ENTRY("XmlP-AsUtf8L-test_CSenLayeredXmlProperties_AsUtf8L", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8L_1L),
       
   175 		ENTRY("XmlP-AsUtf8LC-test_CSenLayeredXmlProperties_AsUtf8LC", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LC_1L),
       
   176 		ENTRY("XmlP-ShrinkTo-test_CSenLayeredXmlProperties_ShrinkTo", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ShrinkToL),
       
   177 		ENTRY("XmlP-ExpandToL-test_CSenLayeredXmlProperties_ExpandToL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ExpandToLL),
       
   178 		ENTRY("XmlP-TopLayer-test_CSenLayeredXmlProperties_TopLayer", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_TopLayerL),
       
   179 		ENTRY("XmlP-SetPropertyL-test_CSenLayeredXmlProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyL_1L),
       
   180 		ENTRY("XmlP-PropertyL-test_CSenLayeredXmlProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_1L),
       
   181 		ENTRY("XmlP-PropertyL-test_CSenLayeredXmlProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_2L),
       
   182 		ENTRY("XmlP-PropertyL-test_CSenLayeredXmlProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_3L),
       
   183 		ENTRY("XmlP-SetPropertyL-test_CSenLayeredXmlProperties_SetPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyL_2L),
       
   184 		ENTRY("XmlP-PropertyL-test_CSenLayeredXmlProperties_PropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_4L),
       
   185 		ENTRY("XmlP-PropertiesByTypeL-test_CSenLayeredXmlProperties_PropertiesByTypeL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertiesByTypeLL),
       
   186 		ENTRY("XmlP-SetIntPropertyL-test_CSenLayeredXmlProperties_SetIntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetIntPropertyL_1L),
       
   187 		ENTRY("XmlP-IntPropertyL-test_CSenLayeredXmlProperties_IntPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_IntPropertyL_1L),
       
   188 		ENTRY("XmlP-CloneL-test_CSenLayeredXmlProperties_CloneL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_CloneLL),
       
   189 		ENTRY("XmlP-SetBoolPropertyL-test_CSenLayeredXmlProperties_SetBoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetBoolPropertyL_1L),
       
   190 		ENTRY("XmlP-BoolPropertyL-test_CSenLayeredXmlProperties_BoolPropertyL", CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_BoolPropertyL_1L),
       
   191 
       
   192         };
       
   193 
       
   194     const TInt count = sizeof( KFunctions ) / 
       
   195                         sizeof( TStifFunctionInfo );
       
   196 
       
   197     return RunInternalL( KFunctions, count, aItem );
       
   198 
       
   199     }
       
   200 
       
   201 //  METHODS
       
   202 
       
   203     
       
   204 TInt CSenLayeredPropertiesTester::UT_CSenLayeredHttpTransportProperties_CloneLL(CStifItemParser& aItem)
       
   205     {
       
   206     _LIT8(KOutputString, "<Properties><PropertyName6>PropertyValue6</PropertyName6>\
       
   207 <PropertyName5>PropertyValue5</PropertyName5>\
       
   208 <PropertyName4>PropertyValue4</PropertyName4>\
       
   209 <PropertyName3>PropertyValue3</PropertyName3>\
       
   210 <PropertyName2>PropertyValue2</PropertyName2>\
       
   211 <PropertyName1>PropertyValue1</PropertyName1></Properties>");
       
   212     
       
   213     CSenLayeredHttpTransportProperties* pProperties = CSenLayeredHttpTransportProperties::NewLC();
       
   214     
       
   215     // Create properties for all 6 leayers
       
   216     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
   217                               MSenLayeredProperties::ESenTransportLayer);
       
   218     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
   219                               MSenLayeredProperties::ESenSereneLayer);
       
   220     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
   221                               MSenLayeredProperties::ESenFrameworkLayer);
       
   222     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
   223                               MSenLayeredProperties::ESenProviderSessionLayer);
       
   224     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
   225                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
   226     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
   227                               MSenLayeredProperties::ESenMessageLayer);
       
   228                               
       
   229     HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   230     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   231     CleanupStack::PopAndDestroy(pAsXml);
       
   232 
       
   233     CSenLayeredHttpTransportProperties* pProperties2 = (CSenLayeredHttpTransportProperties*)pProperties->CloneL();
       
   234     // Destroy cloned properties immediately after cloning
       
   235     CleanupStack::PopAndDestroy(pProperties);
       
   236     CleanupStack::PushL(pProperties2);
       
   237 
       
   238     pAsXml = pProperties2->AsUtf8LC();
       
   239     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   240     CleanupStack::PopAndDestroy(pAsXml);
       
   241     
       
   242     CleanupStack::PopAndDestroy(pProperties2);
       
   243     
       
   244     // Test Layered Properties and StringPool
       
   245     RStringPool stringPool;
       
   246     stringPool.OpenL();
       
   247     CleanupClosePushL(stringPool);
       
   248 
       
   249     pProperties = CSenLayeredHttpTransportProperties::NewLC(stringPool);
       
   250     
       
   251     // Create properties for all 6 leayers
       
   252     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
   253                               MSenLayeredProperties::ESenTransportLayer);
       
   254     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
   255                               MSenLayeredProperties::ESenSereneLayer);
       
   256     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
   257                               MSenLayeredProperties::ESenFrameworkLayer);
       
   258     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
   259                               MSenLayeredProperties::ESenProviderSessionLayer);
       
   260     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
   261                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
   262     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
   263                               MSenLayeredProperties::ESenMessageLayer);
       
   264 
       
   265     TPtrC8 propertyValue;                              
       
   266     pProperties->PropertyL(_L8("PropertyName1"), propertyValue);
       
   267                               
       
   268     pAsXml = pProperties->AsUtf8LC();
       
   269     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   270     CleanupStack::PopAndDestroy(pAsXml);
       
   271 
       
   272     TInt error;
       
   273     pProperties2 = (CSenLayeredHttpTransportProperties*)pProperties->Clone(error);
       
   274     LOCAL_ASSERT( error == KErrNone );
       
   275     // Destroy cloned properties immediately after cloning
       
   276     CleanupStack::PopAndDestroy(pProperties);
       
   277     CleanupStack::PushL(pProperties2);
       
   278 
       
   279     pAsXml = pProperties2->AsUtf8LC();
       
   280     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   281     CleanupStack::PopAndDestroy(pAsXml);
       
   282 
       
   283     CleanupStack::PopAndDestroy(pProperties2);
       
   284     
       
   285     CleanupStack::PopAndDestroy(&stringPool);
       
   286     
       
   287     return KErrNone;
       
   288     }
       
   289 
       
   290 TInt CSenLayeredPropertiesTester::UT_CSenLayeredHttpTransportProperties_NewLL(CStifItemParser& aItem)
       
   291     {
       
   292     LOCAL_ASSERT( ETrue );
       
   293     return KErrNone;
       
   294     }
       
   295 
       
   296 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLL(CStifItemParser& aItem)
       
   297     {
       
   298     LOCAL_ASSERT( ETrue );
       
   299     return KErrNone;
       
   300     }
       
   301 
       
   302 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLCL(CStifItemParser& aItem)
       
   303     {
       
   304     LOCAL_ASSERT( ETrue );
       
   305     return KErrNone;
       
   306     }
       
   307 
       
   308 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewL_1L(CStifItemParser& aItem)
       
   309     {
       
   310     LOCAL_ASSERT( ETrue );
       
   311     return KErrNone;
       
   312     }
       
   313 
       
   314 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLC_1L(CStifItemParser& aItem)
       
   315     {
       
   316     LOCAL_ASSERT( ETrue );
       
   317     return KErrNone;
       
   318     }
       
   319 
       
   320 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewL_2L(CStifItemParser& aItem)
       
   321     {
       
   322     LOCAL_ASSERT( ETrue );
       
   323     return KErrNone;
       
   324     }
       
   325 
       
   326 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_NewLC_2L(CStifItemParser& aItem)
       
   327     {
       
   328     LOCAL_ASSERT( ETrue );
       
   329     return KErrNone;
       
   330     }
       
   331 
       
   332 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetReaderL(CStifItemParser& aItem)
       
   333     {
       
   334     LOCAL_ASSERT( ETrue );
       
   335     return KErrNone;
       
   336     }
       
   337 
       
   338 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertiesClassTypeL(CStifItemParser& aItem)
       
   339     {
       
   340     LOCAL_ASSERT( ETrue );
       
   341     return KErrNone;
       
   342     }
       
   343 
       
   344 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_WriteToLL(CStifItemParser& aItem)
       
   345     {
       
   346     LOCAL_ASSERT( ETrue );
       
   347     return KErrNone;
       
   348     }
       
   349 
       
   350 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ReadFromLL(CStifItemParser& aItem)
       
   351     {
       
   352     LOCAL_ASSERT( ETrue );
       
   353     return KErrNone;
       
   354     }
       
   355 
       
   356 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LL(CStifItemParser& aItem)
       
   357     {
       
   358     LOCAL_ASSERT( ETrue );
       
   359     return KErrNone;
       
   360     }
       
   361 
       
   362 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LCL(CStifItemParser& aItem)
       
   363     {
       
   364     LOCAL_ASSERT( ETrue );
       
   365     return KErrNone;
       
   366     }
       
   367 
       
   368 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyLL(CStifItemParser& aItem)
       
   369     {
       
   370     LOCAL_ASSERT( ETrue );
       
   371     return KErrNone;
       
   372     }
       
   373 
       
   374 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyLL(CStifItemParser& aItem)
       
   375     {
       
   376     LOCAL_ASSERT( ETrue );
       
   377     return KErrNone;
       
   378     }
       
   379 
       
   380 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetIntPropertyLL(CStifItemParser& aItem)
       
   381     {
       
   382     LOCAL_ASSERT( ETrue );
       
   383     return KErrNone;
       
   384     }
       
   385 
       
   386 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_IntPropertyLL(CStifItemParser& aItem)
       
   387     {
       
   388     LOCAL_ASSERT( ETrue );
       
   389     return KErrNone;
       
   390     }
       
   391 
       
   392 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetBoolPropertyLL(CStifItemParser& aItem)
       
   393     {
       
   394     LOCAL_ASSERT( ETrue );
       
   395     return KErrNone;
       
   396     }
       
   397 
       
   398 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_BoolPropertyLL(CStifItemParser& aItem)
       
   399     {
       
   400     LOCAL_ASSERT( ETrue );
       
   401     return KErrNone;
       
   402     }
       
   403 
       
   404 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_WriteToL_1L(CStifItemParser& aItem)
       
   405     {
       
   406     LOCAL_ASSERT( ETrue );
       
   407     return KErrNone;
       
   408     }
       
   409 
       
   410 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ReadFromL_1L(CStifItemParser& aItem)
       
   411     {
       
   412     LOCAL_ASSERT( ETrue );
       
   413     return KErrNone;
       
   414     }
       
   415 
       
   416 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8L_1L(CStifItemParser& aItem)
       
   417     {
       
   418     LOCAL_ASSERT( ETrue );
       
   419     return KErrNone;
       
   420     }
       
   421 
       
   422 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_AsUtf8LC_1L(CStifItemParser& aItem)
       
   423     {
       
   424     LOCAL_ASSERT( ETrue );
       
   425     return KErrNone;
       
   426     }
       
   427 
       
   428 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ShrinkToL(CStifItemParser& aItem)
       
   429     {
       
   430     LOCAL_ASSERT( ETrue );
       
   431     return KErrNone;
       
   432     }
       
   433 
       
   434 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_ExpandToLL(CStifItemParser& aItem)
       
   435     {
       
   436     LOCAL_ASSERT( ETrue );
       
   437     return KErrNone;
       
   438     }
       
   439 
       
   440 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_TopLayerL(CStifItemParser& aItem)
       
   441     {
       
   442     LOCAL_ASSERT( ETrue );
       
   443     return KErrNone;
       
   444     }
       
   445 
       
   446 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyL_1L(CStifItemParser& aItem)
       
   447     {
       
   448     LOCAL_ASSERT( ETrue );
       
   449     return KErrNone;
       
   450     }
       
   451 
       
   452 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_1L(CStifItemParser& aItem)
       
   453     {
       
   454     LOCAL_ASSERT( ETrue );
       
   455     return KErrNone;
       
   456     }
       
   457 
       
   458 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_2L(CStifItemParser& aItem)
       
   459     {
       
   460     LOCAL_ASSERT( ETrue );
       
   461     return KErrNone;
       
   462     }
       
   463 
       
   464 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_3L(CStifItemParser& aItem)
       
   465     {
       
   466     LOCAL_ASSERT( ETrue );
       
   467     return KErrNone;
       
   468     }
       
   469 
       
   470 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertiesByTypeLL(CStifItemParser& aItem)
       
   471     {
       
   472     LOCAL_ASSERT( ETrue );
       
   473     return KErrNone;
       
   474     }
       
   475 
       
   476 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetIntPropertyL_1L(CStifItemParser& aItem)
       
   477     {
       
   478     LOCAL_ASSERT( ETrue );
       
   479     return KErrNone;
       
   480     }
       
   481 
       
   482 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_IntPropertyL_1L(CStifItemParser& aItem)
       
   483     {
       
   484     LOCAL_ASSERT( ETrue );
       
   485     return KErrNone;
       
   486     }
       
   487 
       
   488 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetBoolPropertyL_1L(CStifItemParser& aItem)
       
   489     {
       
   490     LOCAL_ASSERT( ETrue );
       
   491     return KErrNone;
       
   492     }
       
   493 
       
   494 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_BoolPropertyL_1L(CStifItemParser& aItem)
       
   495     {
       
   496     LOCAL_ASSERT( ETrue );
       
   497     return KErrNone;
       
   498     }
       
   499 
       
   500 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_SetPropertyL_2L(CStifItemParser& aItem)
       
   501     {
       
   502     LOCAL_ASSERT( ETrue );
       
   503     return KErrNone;
       
   504     }
       
   505 
       
   506 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_PropertyL_4L(CStifItemParser& aItem)
       
   507     {
       
   508     LOCAL_ASSERT( ETrue );
       
   509     return KErrNone;
       
   510     }
       
   511     
       
   512 TInt CSenLayeredPropertiesTester::UT_CSenLayeredTransportProperties_CloneLL(CStifItemParser& aItem)
       
   513     {
       
   514     _LIT8(KOutputString, "<Properties><PropertyName6>PropertyValue6</PropertyName6>\
       
   515 <PropertyName5>PropertyValue5</PropertyName5>\
       
   516 <PropertyName4>PropertyValue4</PropertyName4>\
       
   517 <PropertyName3>PropertyValue3</PropertyName3>\
       
   518 <PropertyName2>PropertyValue2</PropertyName2>\
       
   519 <PropertyName1>PropertyValue1</PropertyName1></Properties>"); 
       
   520     
       
   521     CSenLayeredTransportProperties* pProperties = CSenLayeredTransportProperties::NewLC();
       
   522     
       
   523     // Create properties for all 6 leayers
       
   524     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
   525                               MSenLayeredProperties::ESenTransportLayer);
       
   526     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
   527                               MSenLayeredProperties::ESenSereneLayer);
       
   528     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
   529                               MSenLayeredProperties::ESenFrameworkLayer);
       
   530     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
   531                               MSenLayeredProperties::ESenProviderSessionLayer);
       
   532     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
   533                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
   534     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
   535                               MSenLayeredProperties::ESenMessageLayer);
       
   536                               
       
   537     HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   538     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   539     CleanupStack::PopAndDestroy(pAsXml);
       
   540 
       
   541     CSenLayeredTransportProperties* pProperties2 = (CSenLayeredTransportProperties*)pProperties->CloneL();
       
   542     // Destroy cloned properties immediately after cloning
       
   543     CleanupStack::PopAndDestroy(pProperties);
       
   544     CleanupStack::PushL(pProperties2);
       
   545 
       
   546     pAsXml = pProperties2->AsUtf8LC();
       
   547     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   548     CleanupStack::PopAndDestroy(pAsXml);
       
   549     
       
   550     CleanupStack::PopAndDestroy(pProperties2);
       
   551     
       
   552     // Test Layered Properties and StringPool
       
   553     RStringPool stringPool;
       
   554     stringPool.OpenL();
       
   555     CleanupClosePushL(stringPool);
       
   556 
       
   557     pProperties = CSenLayeredTransportProperties::NewLC(stringPool);
       
   558     
       
   559     // Create properties for all 6 leayers
       
   560     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
   561                               MSenLayeredProperties::ESenTransportLayer);
       
   562     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
   563                               MSenLayeredProperties::ESenSereneLayer);
       
   564     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
   565                               MSenLayeredProperties::ESenFrameworkLayer);
       
   566     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
   567                               MSenLayeredProperties::ESenProviderSessionLayer);
       
   568     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
   569                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
   570     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
   571                               MSenLayeredProperties::ESenMessageLayer);
       
   572 
       
   573     TPtrC8 propertyValue;                              
       
   574     pProperties->PropertyL(_L8("PropertyName1"), propertyValue);
       
   575                               
       
   576     pAsXml = pProperties->AsUtf8LC();
       
   577     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   578     CleanupStack::PopAndDestroy(pAsXml);
       
   579 
       
   580     pProperties2 = (CSenLayeredTransportProperties*)pProperties->CloneL();
       
   581     // Destroy cloned properties immediately after cloning
       
   582     CleanupStack::PopAndDestroy(pProperties);
       
   583     CleanupStack::PushL(pProperties2);
       
   584 
       
   585     pAsXml = pProperties2->AsUtf8LC();
       
   586     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   587     CleanupStack::PopAndDestroy(pAsXml);
       
   588 
       
   589     CleanupStack::PopAndDestroy(pProperties2);
       
   590     
       
   591     CleanupStack::PopAndDestroy(&stringPool);
       
   592     return KErrNone;
       
   593     }
       
   594 
       
   595 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLL(CStifItemParser& aItem)
       
   596     {
       
   597     _LIT8(KInputString, "<Properties>\
       
   598 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   599 <Element2>Content2</Element2>\
       
   600 <Element3>Content3</Element3>\
       
   601 <Element4/></Properties>");
       
   602 
       
   603     _LIT8(KOutputString, "<Properties>\
       
   604 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   605 <Element2>Content2</Element2>\
       
   606 <Element3>Content3</Element3>\
       
   607 <Element4/></Properties>");
       
   608 
       
   609     _LIT8(KInputString1, "<Properties>\
       
   610 <Element1>äveli öisellä kadulla</Element1>\
       
   611 <Element2>Content2</Element2>\
       
   612 <Element3>Content3</Element3>\
       
   613 <Element4/></Properties>");
       
   614 
       
   615     _LIT8(KOutputString1, "<Properties>\
       
   616 <Element1>äveli öisellä kadulla</Element1>\
       
   617 <Element2>Content2</Element2>\
       
   618 <Element3>Content3</Element3>\
       
   619 <Element4/></Properties>");
       
   620 
       
   621 	CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewL();
       
   622 	CleanupStack::PushL(pProperties);
       
   623 	
       
   624 	pProperties->ReadFromL(KInputString);
       
   625 	
       
   626 	HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   627     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   628 
       
   629     
       
   630     CleanupStack::PopAndDestroy(pAsXml);
       
   631 
       
   632     CleanupStack::PopAndDestroy(pProperties);
       
   633 
       
   634     // Test CSenLayeredXmlProperties when RStringPool is used
       
   635     RStringPool stringPool;
       
   636     stringPool.OpenL();
       
   637     CleanupClosePushL(stringPool);
       
   638 
       
   639 	pProperties = CSenLayeredXmlProperties::NewL(stringPool);
       
   640 	CleanupStack::PushL(pProperties);
       
   641 	
       
   642 	pProperties->ReadFromL(KInputString);
       
   643 	
       
   644 	pAsXml = pProperties->AsUtf8LC();
       
   645     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   646     CleanupStack::PopAndDestroy(pAsXml);
       
   647 
       
   648     CleanupStack::PopAndDestroy(pProperties);
       
   649 
       
   650     CleanupStack::PopAndDestroy(&stringPool);
       
   651     return KErrNone;
       
   652     }
       
   653 
       
   654 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLCL(CStifItemParser& aItem)
       
   655     {
       
   656     _LIT8(KInputString, "<Properties>\
       
   657 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   658 <Element2>Content2</Element2>\
       
   659 <Element3>Content3</Element3>\
       
   660 <Element4/></Properties>");
       
   661 
       
   662     _LIT8(KOutputString, "<Properties>\
       
   663 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   664 <Element2>Content2</Element2>\
       
   665 <Element3>Content3</Element3>\
       
   666 <Element4/></Properties>");
       
   667 
       
   668 	CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewLC();
       
   669 	
       
   670 	pProperties->ReadFromL(KInputString);
       
   671 	
       
   672 	HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   673     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   674     CleanupStack::PopAndDestroy(pAsXml);
       
   675 
       
   676     CleanupStack::PopAndDestroy(pProperties);
       
   677 
       
   678 
       
   679     RStringPool stringPool;
       
   680     stringPool.OpenL();
       
   681     CleanupClosePushL(stringPool);
       
   682 
       
   683 	pProperties = CSenLayeredXmlProperties::NewLC(stringPool);
       
   684 	
       
   685 	pProperties->ReadFromL(KInputString);
       
   686 	
       
   687 	pAsXml = pProperties->AsUtf8LC();
       
   688     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   689     CleanupStack::PopAndDestroy(pAsXml);
       
   690 
       
   691     CleanupStack::PopAndDestroy(pProperties);
       
   692 
       
   693     CleanupStack::PopAndDestroy(&stringPool);
       
   694     
       
   695     return KErrNone;
       
   696     }
       
   697 
       
   698 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewL_1L(CStifItemParser& aItem)
       
   699     {
       
   700     _LIT8(KInputString, "<Properties>\
       
   701 <Element1>Kissa käveli öisellä kadulla</Element1>\
       
   702 <Element2>Content2</Element2>\
       
   703 <Element3>Content3</Element3>\
       
   704 <Element4/></Properties>");
       
   705 
       
   706     _LIT8(KOutputString, "<Properties>\
       
   707 <Element1>Kissa käveli öisellä kadulla</Element1>\
       
   708 <Element2>Content2</Element2>\
       
   709 <Element3>Content3</Element3>\
       
   710 <Element4/></Properties>");
       
   711 
       
   712     CSenXmlReader* pReader = CSenXmlReader::NewLC();
       
   713 
       
   714 	CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewL(KInputString, *pReader);
       
   715 	CleanupStack::PushL(pProperties);
       
   716 	
       
   717 	HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   718     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   719     CleanupStack::PopAndDestroy(pAsXml);
       
   720 
       
   721     CleanupStack::PopAndDestroy(pProperties);
       
   722 
       
   723     // Test CSenLayeredXmlProperties when RStringPool is used
       
   724     RStringPool stringPool;
       
   725     stringPool.OpenL();
       
   726     CleanupClosePushL(stringPool);
       
   727 
       
   728 	pProperties = CSenLayeredXmlProperties::NewL(KInputString, *pReader, stringPool);
       
   729 	CleanupStack::PushL(pProperties);
       
   730 	
       
   731 	pAsXml = pProperties->AsUtf8LC();
       
   732     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   733     CleanupStack::PopAndDestroy(pAsXml);
       
   734 
       
   735     CleanupStack::PopAndDestroy(pProperties);
       
   736     CleanupStack::PopAndDestroy(&stringPool);
       
   737     CleanupStack::PopAndDestroy(pReader);
       
   738     
       
   739     return KErrNone;
       
   740     }
       
   741 
       
   742 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLC_1L(CStifItemParser& aItem)
       
   743     {
       
   744     _LIT8(KInputString, "<Properties>\
       
   745 <Element1>Kissa käveli öisellä kadulla</Element1>\
       
   746 <Element2>Content2</Element2>\
       
   747 <Element3>Content3</Element3>\
       
   748 <Element4/></Properties>");
       
   749 
       
   750     _LIT8(KOutputString, "<Properties>\
       
   751 <Element1>Kissa käveli öisellä kadulla</Element1>\
       
   752 <Element2>Content2</Element2>\
       
   753 <Element3>Content3</Element3>\
       
   754 <Element4/></Properties>");
       
   755 
       
   756     CSenXmlReader* pReader = CSenXmlReader::NewLC();
       
   757 
       
   758 	CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewLC(KInputString, *pReader);
       
   759 	
       
   760 	HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   761     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   762     CleanupStack::PopAndDestroy(pAsXml);
       
   763 
       
   764     CleanupStack::PopAndDestroy(pProperties);
       
   765 
       
   766     // Test CSenLayeredXmlProperties when RStringPool is used
       
   767     RStringPool stringPool;
       
   768     stringPool.OpenL();
       
   769     CleanupClosePushL(stringPool);
       
   770 
       
   771 	pProperties = CSenLayeredXmlProperties::NewLC(KInputString, *pReader, stringPool);
       
   772 	
       
   773 	pAsXml = pProperties->AsUtf8LC();
       
   774     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   775     CleanupStack::PopAndDestroy(pAsXml);
       
   776 
       
   777     CleanupStack::PopAndDestroy(pProperties);
       
   778     CleanupStack::PopAndDestroy(&stringPool);
       
   779     CleanupStack::PopAndDestroy(pReader);
       
   780     return KErrNone;
       
   781     }
       
   782 
       
   783 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewL_2L(CStifItemParser& aItem)
       
   784     {
       
   785     LOCAL_ASSERT( ETrue );
       
   786     return KErrNone;
       
   787     }
       
   788 
       
   789 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_NewLC_2L(CStifItemParser& aItem)
       
   790     {
       
   791     LOCAL_ASSERT( ETrue );
       
   792     return KErrNone;
       
   793     }
       
   794 
       
   795 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetReaderL(CStifItemParser& aItem)
       
   796     {
       
   797     LOCAL_ASSERT( ETrue );
       
   798     return KErrNone;
       
   799     }
       
   800 
       
   801 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertiesClassTypeL(CStifItemParser& aItem)
       
   802     {
       
   803     LOCAL_ASSERT( ETrue );
       
   804     return KErrNone;
       
   805     }
       
   806 
       
   807 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_WriteToLL(CStifItemParser& aItem)
       
   808     {
       
   809     LOCAL_ASSERT( ETrue );
       
   810     return KErrNone;
       
   811     }
       
   812 
       
   813 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ReadFromLL(CStifItemParser& aItem)
       
   814     {
       
   815     _LIT8(KInputString, "<Properties>\
       
   816 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   817 <Element2>Content2</Element2>\
       
   818 <Element3>Content3</Element3>\
       
   819 <Element4/></Properties>");
       
   820 
       
   821     _LIT8(KOutputString, "<Properties>\
       
   822 <Element1>öKissa käveli öisellä kadulla</Element1>\
       
   823 <Element2>Content2</Element2>\
       
   824 <Element3>Content3</Element3>\
       
   825 <Element4/></Properties>");
       
   826 
       
   827 	CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewLC();
       
   828 	
       
   829 	pProperties->ReadFromL(KInputString);
       
   830 	
       
   831 	HBufC8* pAsXml = pProperties->AsUtf8LC();
       
   832     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   833     CleanupStack::PopAndDestroy(pAsXml);
       
   834 
       
   835     CleanupStack::PopAndDestroy(pProperties);
       
   836 
       
   837 
       
   838     RStringPool stringPool;
       
   839     stringPool.OpenL();
       
   840     CleanupClosePushL(stringPool);
       
   841 
       
   842 	pProperties = CSenLayeredXmlProperties::NewLC(stringPool);
       
   843 	
       
   844 	pProperties->ReadFromL(KInputString);
       
   845 	
       
   846 	pAsXml = pProperties->AsUtf8LC();
       
   847     LOCAL_ASSERT( *pAsXml == KOutputString );
       
   848     CleanupStack::PopAndDestroy(pAsXml);
       
   849 
       
   850     CleanupStack::PopAndDestroy(pProperties);
       
   851 
       
   852     CleanupStack::PopAndDestroy(&stringPool);
       
   853     
       
   854     return KErrNone;
       
   855     }
       
   856 
       
   857 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LL(CStifItemParser& aItem)
       
   858     {
       
   859     LOCAL_ASSERT( ETrue );
       
   860     return KErrNone;
       
   861     }
       
   862 
       
   863 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LCL(CStifItemParser& aItem)
       
   864     {
       
   865     LOCAL_ASSERT( ETrue );
       
   866     return KErrNone;
       
   867     }
       
   868 
       
   869 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyLL(CStifItemParser& aItem)
       
   870     {
       
   871     LOCAL_ASSERT( ETrue );
       
   872     return KErrNone;
       
   873     }
       
   874 
       
   875 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyLL(CStifItemParser& aItem)
       
   876     {
       
   877     LOCAL_ASSERT( ETrue );
       
   878     return KErrNone;
       
   879     }
       
   880 
       
   881 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetIntPropertyLL(CStifItemParser& aItem)
       
   882     {
       
   883     LOCAL_ASSERT( ETrue );
       
   884     return KErrNone;
       
   885     }
       
   886 
       
   887 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_IntPropertyLL(CStifItemParser& aItem)
       
   888     {
       
   889     LOCAL_ASSERT( ETrue );
       
   890     return KErrNone;
       
   891     }
       
   892 
       
   893 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetBoolPropertyLL(CStifItemParser& aItem)
       
   894     {
       
   895     LOCAL_ASSERT( ETrue );
       
   896     return KErrNone;
       
   897     }
       
   898 
       
   899 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_BoolPropertyLL(CStifItemParser& aItem)
       
   900     {
       
   901     LOCAL_ASSERT( ETrue );
       
   902     return KErrNone;
       
   903     }
       
   904 
       
   905 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_WriteToL_1L(CStifItemParser& aItem)
       
   906     {
       
   907     LOCAL_ASSERT( ETrue );
       
   908     return KErrNone;
       
   909     }
       
   910 
       
   911 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ReadFromL_1L(CStifItemParser& aItem)
       
   912     {
       
   913     LOCAL_ASSERT( ETrue );
       
   914     return KErrNone;
       
   915     }
       
   916 
       
   917 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8L_1L(CStifItemParser& aItem)
       
   918     {
       
   919     LOCAL_ASSERT( ETrue );
       
   920     return KErrNone;
       
   921     }
       
   922 
       
   923 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_AsUtf8LC_1L(CStifItemParser& aItem)
       
   924     {
       
   925     LOCAL_ASSERT( ETrue );
       
   926     return KErrNone;
       
   927     }
       
   928 
       
   929 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ShrinkToL(CStifItemParser& aItem)
       
   930     {
       
   931     LOCAL_ASSERT( ETrue );
       
   932     return KErrNone;
       
   933     }
       
   934 
       
   935 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_ExpandToLL(CStifItemParser& aItem)
       
   936     {
       
   937     LOCAL_ASSERT( ETrue );
       
   938     return KErrNone;
       
   939     }
       
   940 
       
   941 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_TopLayerL(CStifItemParser& aItem)
       
   942     {
       
   943     LOCAL_ASSERT( ETrue );
       
   944     return KErrNone;
       
   945     }
       
   946 
       
   947 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyL_1L(CStifItemParser& aItem)
       
   948     {
       
   949     LOCAL_ASSERT( ETrue );
       
   950     return KErrNone;
       
   951     }
       
   952 
       
   953 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_1L(CStifItemParser& aItem)
       
   954     {
       
   955     LOCAL_ASSERT( ETrue );
       
   956     return KErrNone;
       
   957     }
       
   958 
       
   959 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_2L(CStifItemParser& aItem)
       
   960     {
       
   961     LOCAL_ASSERT( ETrue );
       
   962     return KErrNone;
       
   963     }
       
   964 
       
   965 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_3L(CStifItemParser& aItem)
       
   966     {
       
   967     LOCAL_ASSERT( ETrue );
       
   968     return KErrNone;
       
   969     }
       
   970 
       
   971 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetPropertyL_2L(CStifItemParser& aItem)
       
   972     {
       
   973     LOCAL_ASSERT( ETrue );
       
   974     return KErrNone;
       
   975     }
       
   976 
       
   977 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertyL_4L(CStifItemParser& aItem)
       
   978     {
       
   979     LOCAL_ASSERT( ETrue );
       
   980     return KErrNone;
       
   981     }
       
   982 
       
   983 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_PropertiesByTypeLL(CStifItemParser& aItem)
       
   984     {
       
   985     LOCAL_ASSERT( ETrue );
       
   986     return KErrNone;
       
   987     }
       
   988 
       
   989 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetIntPropertyL_1L(CStifItemParser& aItem)
       
   990     {
       
   991     LOCAL_ASSERT( ETrue );
       
   992     return KErrNone;
       
   993     }
       
   994 
       
   995 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_IntPropertyL_1L(CStifItemParser& aItem)
       
   996     {
       
   997     LOCAL_ASSERT( ETrue );
       
   998     return KErrNone;
       
   999     }
       
  1000 
       
  1001 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_CloneLL(CStifItemParser& aItem)
       
  1002     {
       
  1003     _LIT8(KOutputString, "<Properties><PropertyName6>PropertyValue6</PropertyName6>\
       
  1004 <PropertyName5>PropertyValue5</PropertyName5>\
       
  1005 <PropertyName4>PropertyValue4</PropertyName4>\
       
  1006 <PropertyName3>PropertyValue3</PropertyName3>\
       
  1007 <PropertyName2>PropertyValue2</PropertyName2>\
       
  1008 <PropertyName1>PropertyValue1</PropertyName1></Properties>"); 
       
  1009     
       
  1010     CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewLC();
       
  1011     
       
  1012     // Create properties for all 6 leayers
       
  1013     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
  1014                               MSenLayeredProperties::ESenTransportLayer);
       
  1015     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
  1016                               MSenLayeredProperties::ESenSereneLayer);
       
  1017     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
  1018                               MSenLayeredProperties::ESenFrameworkLayer);
       
  1019     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
  1020                               MSenLayeredProperties::ESenProviderSessionLayer);
       
  1021     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
  1022                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
  1023     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
  1024                               MSenLayeredProperties::ESenMessageLayer);
       
  1025                               
       
  1026     HBufC8* pAsXml = pProperties->AsUtf8LC();
       
  1027     LOCAL_ASSERT( *pAsXml == KOutputString );
       
  1028     CleanupStack::PopAndDestroy(pAsXml);
       
  1029 
       
  1030     CSenLayeredXmlProperties* pProperties2 = (CSenLayeredXmlProperties*)pProperties->CloneL();
       
  1031     // Destroy cloned properties immediately after cloning
       
  1032     CleanupStack::PopAndDestroy(pProperties);
       
  1033     CleanupStack::PushL(pProperties2);
       
  1034 
       
  1035     pAsXml = pProperties2->AsUtf8LC();
       
  1036     LOCAL_ASSERT( *pAsXml == KOutputString );
       
  1037     CleanupStack::PopAndDestroy(pAsXml);
       
  1038     
       
  1039     CleanupStack::PopAndDestroy(pProperties2);
       
  1040     
       
  1041     // Test Layered Properties and StringPool
       
  1042     RStringPool stringPool;
       
  1043     stringPool.OpenL();
       
  1044     CleanupClosePushL(stringPool);
       
  1045 
       
  1046     pProperties = CSenLayeredXmlProperties::NewLC(stringPool);
       
  1047     
       
  1048     // Create properties for all 6 leayers
       
  1049     pProperties->SetPropertyL(_L8("PropertyName1"), _L8("PropertyValue1"),
       
  1050                               MSenLayeredProperties::ESenTransportLayer);
       
  1051     pProperties->SetPropertyL(_L8("PropertyName2"), _L8("PropertyValue2"),
       
  1052                               MSenLayeredProperties::ESenSereneLayer);
       
  1053     pProperties->SetPropertyL(_L8("PropertyName3"), _L8("PropertyValue3"),
       
  1054                               MSenLayeredProperties::ESenFrameworkLayer);
       
  1055     pProperties->SetPropertyL(_L8("PropertyName4"), _L8("PropertyValue4"),
       
  1056                               MSenLayeredProperties::ESenProviderSessionLayer);
       
  1057     pProperties->SetPropertyL(_L8("PropertyName5"), _L8("PropertyValue5"),
       
  1058                               MSenLayeredProperties::ESenConsumerSessionLayer);
       
  1059     pProperties->SetPropertyL(_L8("PropertyName6"), _L8("PropertyValue6"),
       
  1060                               MSenLayeredProperties::ESenMessageLayer);
       
  1061 
       
  1062     TPtrC8 propertyValue;                              
       
  1063     pProperties->PropertyL(_L8("PropertyName1"), propertyValue);
       
  1064                               
       
  1065     pAsXml = pProperties->AsUtf8LC();
       
  1066     LOCAL_ASSERT( *pAsXml == KOutputString );
       
  1067     CleanupStack::PopAndDestroy(pAsXml);
       
  1068 
       
  1069     pProperties2 = (CSenLayeredXmlProperties*)pProperties->CloneL();
       
  1070     // Destroy cloned properties immediately after cloning
       
  1071     CleanupStack::PopAndDestroy(pProperties);
       
  1072     CleanupStack::PushL(pProperties2);
       
  1073 
       
  1074     pAsXml = pProperties2->AsUtf8LC();
       
  1075     LOCAL_ASSERT( *pAsXml == KOutputString );
       
  1076     CleanupStack::PopAndDestroy(pAsXml);
       
  1077 
       
  1078     CleanupStack::PopAndDestroy(pProperties2);
       
  1079     
       
  1080     CleanupStack::PopAndDestroy(&stringPool);
       
  1081     return KErrNone;
       
  1082     }
       
  1083 
       
  1084 TInt CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetBoolPropertyL_1L(CStifItemParser& aItem)
       
  1085     {
       
  1086     TBool value;
       
  1087     CSenLayeredXmlProperties* pProperties = CSenLayeredXmlProperties::NewLC();
       
  1088     
       
  1089     pProperties->SetBoolPropertyL(_L8("PropertyName"), EFalse);
       
  1090     pProperties->BoolPropertyL(_L8("PropertyName"), value);
       
  1091     LOCAL_ASSERT( value == EFalse );
       
  1092 
       
  1093     HBufC8* pAsXml = pProperties->AsUtf8LC();
       
  1094     LOCAL_ASSERT( *pAsXml == _L8("<Properties><PropertyName>false</PropertyName></Properties>") );
       
  1095     CleanupStack::PopAndDestroy(pAsXml);
       
  1096 
       
  1097     pProperties->SetBoolPropertyL(_L8("PropertyName"), ETrue);
       
  1098     pProperties->BoolPropertyL(_L8("PropertyName"), value);
       
  1099     LOCAL_ASSERT( value != EFalse );
       
  1100     
       
  1101     pAsXml = pProperties->AsUtf8LC();
       
  1102     LOCAL_ASSERT( *pAsXml == _L8("<Properties><PropertyName>true</PropertyName></Properties>") );
       
  1103     CleanupStack::PopAndDestroy(pAsXml);
       
  1104     
       
  1105     CleanupStack::PopAndDestroy(pProperties);
       
  1106     
       
  1107     return KErrNone;
       
  1108     }
       
  1109 
       
  1110 void CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_BoolPropertyL_1L(CStifItemParser& aItem)
       
  1111     {
       
  1112     CSenLayeredPropertiesTester::UT_CSenLayeredXmlProperties_SetBoolPropertyL_1L(aItem);    
       
  1113     }
       
  1114 
       
  1115 // -----------------------------------------------------------------------------
       
  1116 // CSenLayeredPropertiesTester::?member_function
       
  1117 // ?implementation_description
       
  1118 // (other items were commented in a header).
       
  1119 // -----------------------------------------------------------------------------
       
  1120 //
       
  1121 /*
       
  1122 TInt CSenLayeredPropertiesTester::?member_function(
       
  1123    CItemParser& aItem )
       
  1124    {
       
  1125 
       
  1126    ?code
       
  1127 
       
  1128    }
       
  1129 */
       
  1130 
       
  1131 // ========================== OTHER EXPORTED FUNCTIONS =========================
       
  1132 // None
       
  1133 
       
  1134 //  [End of File] - Do not remove