mpx/tsrc/public/basic/collectiontest/src/mpxcollectiontest.cpp
author hgs
Tue, 21 Sep 2010 11:25:55 -0500
changeset 62 b276843a15ba
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
62
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2002 - 2007 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  MpxCollectionTest class member functions
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
// INCLUDE FILES
hgs
parents:
diff changeset
    19
#include <e32def.h>
hgs
parents:
diff changeset
    20
#include <bamdesca.h>
hgs
parents:
diff changeset
    21
#include <mpxcollectionutility.h>
hgs
parents:
diff changeset
    22
#include <mpxmedia.h>
hgs
parents:
diff changeset
    23
#include <mpxcollectionplaylist.h>
hgs
parents:
diff changeset
    24
#include <mpxharvesterutility.h>
hgs
parents:
diff changeset
    25
#include <mpxcollectionmessage.h>
hgs
parents:
diff changeset
    26
#include <mpxcommonframeworkdefs.h>
hgs
parents:
diff changeset
    27
#include <mpxmediageneraldefs.h>
hgs
parents:
diff changeset
    28
#include <mpxmediaarray.h>
hgs
parents:
diff changeset
    29
#include <mpxmediacontainerdefs.h>
hgs
parents:
diff changeset
    30
#include <mpxmediamusicdefs.h>
hgs
parents:
diff changeset
    31
#include <mpxmediaaudiodefs.h>
hgs
parents:
diff changeset
    32
#include <mpxmediadrmdefs.h>
hgs
parents:
diff changeset
    33
#include <mpxcollectionpath.h>
hgs
parents:
diff changeset
    34
#include <mpxattribute.h>
hgs
parents:
diff changeset
    35
#include <stiflogger.h>
hgs
parents:
diff changeset
    36
#include "consolemain.h"
hgs
parents:
diff changeset
    37
#include "mpxcollectiontest.h"
hgs
parents:
diff changeset
    38
#include "collectiontests.h"
hgs
parents:
diff changeset
    39
hgs
parents:
diff changeset
    40
_LIT(KTestFailed, "Failed");
hgs
parents:
diff changeset
    41
_LIT(KTestPassed, "Passed");
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
// CONSTANTS
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
// ============================ MEMBER FUNCTIONS ===============================
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    49
// CMpxCollectionTest::NewL
hgs
parents:
diff changeset
    50
// Two-phased constructor.
hgs
parents:
diff changeset
    51
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    52
//
hgs
parents:
diff changeset
    53
CMpxCollectionTest* CMpxCollectionTest::NewL()
hgs
parents:
diff changeset
    54
    {
hgs
parents:
diff changeset
    55
    CMpxCollectionTest* self = new (ELeave) CMpxCollectionTest;
hgs
parents:
diff changeset
    56
    
hgs
parents:
diff changeset
    57
    CleanupStack::PushL( self );
hgs
parents:
diff changeset
    58
    self->ConstructL();
hgs
parents:
diff changeset
    59
    CleanupStack::Pop();
hgs
parents:
diff changeset
    60
hgs
parents:
diff changeset
    61
    return self;
hgs
parents:
diff changeset
    62
    }
hgs
parents:
diff changeset
    63
hgs
parents:
diff changeset
    64
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    65
// CMpxCollectionTest::CMpxCollectionTest
hgs
parents:
diff changeset
    66
// C++ default constructor can NOT contain any code, that
hgs
parents:
diff changeset
    67
// might leave.
hgs
parents:
diff changeset
    68
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    69
//
hgs
parents:
diff changeset
    70
CMpxCollectionTest::CMpxCollectionTest()
hgs
parents:
diff changeset
    71
	: iMainConsole(NULL)
hgs
parents:
diff changeset
    72
    {
hgs
parents:
diff changeset
    73
    }
hgs
parents:
diff changeset
    74
hgs
parents:
diff changeset
    75
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    76
// CMpxCollectionTest::ConstructL
hgs
parents:
diff changeset
    77
// Symbian 2nd phase constructor can leave.
hgs
parents:
diff changeset
    78
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    79
//
hgs
parents:
diff changeset
    80
void CMpxCollectionTest::ConstructL()
hgs
parents:
diff changeset
    81
    {
hgs
parents:
diff changeset
    82
    iScheduler = new(ELeave) CActiveScheduler;
hgs
parents:
diff changeset
    83
    CActiveScheduler::Install(iScheduler);
hgs
parents:
diff changeset
    84
hgs
parents:
diff changeset
    85
    iLogger = CStifLogger::NewL( _L("c:\\"), 
hgs
parents:
diff changeset
    86
                                 _L("MpxCollectionTest.html"), 
hgs
parents:
diff changeset
    87
                                 CStifLogger::EHtml,
hgs
parents:
diff changeset
    88
                                 CStifLogger::EFile,
hgs
parents:
diff changeset
    89
                                 ETrue,
hgs
parents:
diff changeset
    90
                                 ETrue,
hgs
parents:
diff changeset
    91
                                 ETrue,
hgs
parents:
diff changeset
    92
                                 EFalse,
hgs
parents:
diff changeset
    93
                                 ETrue,
hgs
parents:
diff changeset
    94
                                 ETrue);
hgs
parents:
diff changeset
    95
    
hgs
parents:
diff changeset
    96
    iLogger->Log(_L("===MpxCollectionTest constructed==="));
hgs
parents:
diff changeset
    97
    }
hgs
parents:
diff changeset
    98
hgs
parents:
diff changeset
    99
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   100
// Destructor
hgs
parents:
diff changeset
   101
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   102
CMpxCollectionTest::~CMpxCollectionTest()
hgs
parents:
diff changeset
   103
    {
hgs
parents:
diff changeset
   104
    if(iMainConsole)
hgs
parents:
diff changeset
   105
        {
hgs
parents:
diff changeset
   106
    	delete iMainConsole;
hgs
parents:
diff changeset
   107
    	iMainConsole = NULL;
hgs
parents:
diff changeset
   108
    	}
hgs
parents:
diff changeset
   109
    if(iLogger)
hgs
parents:
diff changeset
   110
    	{
hgs
parents:
diff changeset
   111
    	delete iLogger;
hgs
parents:
diff changeset
   112
    	iLogger = NULL;
hgs
parents:
diff changeset
   113
    	}
hgs
parents:
diff changeset
   114
    if(iScheduler)
hgs
parents:
diff changeset
   115
    	{
hgs
parents:
diff changeset
   116
    	delete iScheduler;
hgs
parents:
diff changeset
   117
    	iScheduler = NULL;	
hgs
parents:
diff changeset
   118
    	}
hgs
parents:
diff changeset
   119
    }
hgs
parents:
diff changeset
   120
     
hgs
parents:
diff changeset
   121
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   122
// CMpxCollectionTest::InitL
hgs
parents:
diff changeset
   123
// InitL is used to initialize the Test Module.
hgs
parents:
diff changeset
   124
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   125
//
hgs
parents:
diff changeset
   126
TInt CMpxCollectionTest::InitL( 
hgs
parents:
diff changeset
   127
    TFileName& /*aIniFile*/, 
hgs
parents:
diff changeset
   128
    TBool /*aFirstTime*/ )
hgs
parents:
diff changeset
   129
    {
hgs
parents:
diff changeset
   130
    return KErrNone;
hgs
parents:
diff changeset
   131
    }
hgs
parents:
diff changeset
   132
hgs
parents:
diff changeset
   133
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   134
// CMpxCollectionTest::GetTestCasesL
hgs
parents:
diff changeset
   135
// GetTestCases is used to inquire test cases from the Test Module. Test
hgs
parents:
diff changeset
   136
// cases are stored to array of test cases. The Test Framework will be 
hgs
parents:
diff changeset
   137
// the owner of the data in the RPointerArray after GetTestCases return
hgs
parents:
diff changeset
   138
// and it does the memory deallocation. 
hgs
parents:
diff changeset
   139
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   140
//
hgs
parents:
diff changeset
   141
TInt CMpxCollectionTest::GetTestCasesL( 
hgs
parents:
diff changeset
   142
    const TFileName& /*aConfig*/, 
hgs
parents:
diff changeset
   143
    RPointerArray<TTestCaseInfo>& aTestCases )
hgs
parents:
diff changeset
   144
    {
hgs
parents:
diff changeset
   145
    
hgs
parents:
diff changeset
   146
    // Loop through all test cases and create new
hgs
parents:
diff changeset
   147
    // TTestCaseInfo items and append items to aTestCase array    
hgs
parents:
diff changeset
   148
    for( TInt i = 0; Case(i).iMethod != NULL; i++ )
hgs
parents:
diff changeset
   149
        {
hgs
parents:
diff changeset
   150
 
hgs
parents:
diff changeset
   151
        // Allocate new TTestCaseInfo from heap for a testcase definition.
hgs
parents:
diff changeset
   152
        TTestCaseInfo* newCase = new( ELeave ) TTestCaseInfo();
hgs
parents:
diff changeset
   153
    
hgs
parents:
diff changeset
   154
        // PushL TTestCaseInfo to CleanupStack.    
hgs
parents:
diff changeset
   155
        CleanupStack::PushL( newCase );
hgs
parents:
diff changeset
   156
hgs
parents:
diff changeset
   157
        // Set number for the testcase.
hgs
parents:
diff changeset
   158
        // When the testcase is run, this comes as a parameter to RunTestCaseL.
hgs
parents:
diff changeset
   159
        newCase->iCaseNumber = i;
hgs
parents:
diff changeset
   160
hgs
parents:
diff changeset
   161
        // Set title for the test case. This is shown in UI to user.
hgs
parents:
diff changeset
   162
        newCase->iTitle.Copy( Case(i).iCaseName );
hgs
parents:
diff changeset
   163
hgs
parents:
diff changeset
   164
        // Append TTestCaseInfo to the testcase array. After appended 
hgs
parents:
diff changeset
   165
        // successfully the TTestCaseInfo object is owned (and freed) 
hgs
parents:
diff changeset
   166
        // by the TestServer. 
hgs
parents:
diff changeset
   167
        User::LeaveIfError(aTestCases.Append ( newCase ) );
hgs
parents:
diff changeset
   168
        
hgs
parents:
diff changeset
   169
        // Pop TTestCaseInfo from the CleanupStack.
hgs
parents:
diff changeset
   170
        CleanupStack::Pop( newCase );
hgs
parents:
diff changeset
   171
        }
hgs
parents:
diff changeset
   172
    
hgs
parents:
diff changeset
   173
    return KErrNone;
hgs
parents:
diff changeset
   174
    
hgs
parents:
diff changeset
   175
    }
hgs
parents:
diff changeset
   176
hgs
parents:
diff changeset
   177
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   178
// CMpxCollectionTest::RunTestCaseL
hgs
parents:
diff changeset
   179
// RunTestCaseL is used to run an individual test case specified 
hgs
parents:
diff changeset
   180
// by aTestCase. Test cases that can be run may be requested from 
hgs
parents:
diff changeset
   181
// Test Module by GetTestCases method before calling RunTestCase.
hgs
parents:
diff changeset
   182
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   183
//
hgs
parents:
diff changeset
   184
TInt CMpxCollectionTest::RunTestCaseL( 
hgs
parents:
diff changeset
   185
    const TInt aCaseNumber,   
hgs
parents:
diff changeset
   186
    const TFileName& /*aConfig*/,                 
hgs
parents:
diff changeset
   187
    TTestResult& aResult )
hgs
parents:
diff changeset
   188
    {
hgs
parents:
diff changeset
   189
    
hgs
parents:
diff changeset
   190
    // Return value
hgs
parents:
diff changeset
   191
    TInt execStatus = KErrNone;
hgs
parents:
diff changeset
   192
hgs
parents:
diff changeset
   193
    // Get the pointer to test case function
hgs
parents:
diff changeset
   194
    TCaseInfo tmp = Case ( aCaseNumber );
hgs
parents:
diff changeset
   195
hgs
parents:
diff changeset
   196
    // Check that case number was valid
hgs
parents:
diff changeset
   197
    if ( tmp.iMethod != NULL )
hgs
parents:
diff changeset
   198
        {
hgs
parents:
diff changeset
   199
        iLogger->Log( _L( "Running test for: %S" ), &(tmp.iCaseName) );
hgs
parents:
diff changeset
   200
        
hgs
parents:
diff changeset
   201
        // Valid case was found, call it via function pointer
hgs
parents:
diff changeset
   202
        iMethod = tmp.iMethod;        
hgs
parents:
diff changeset
   203
        execStatus  = ( this->*iMethod )( aResult );                  
hgs
parents:
diff changeset
   204
        
hgs
parents:
diff changeset
   205
        // Write log information
hgs
parents:
diff changeset
   206
        if ( aResult.iResult == KErrNone )
hgs
parents:
diff changeset
   207
            {
hgs
parents:
diff changeset
   208
            iLogger->Log( _L( "Result: %S" ), &KTestPassed );
hgs
parents:
diff changeset
   209
            iLogger->Log( _L( "" ) );
hgs
parents:
diff changeset
   210
            }
hgs
parents:
diff changeset
   211
        else
hgs
parents:
diff changeset
   212
            {
hgs
parents:
diff changeset
   213
            iLogger->Log( _L( "Result: %S" ), &KTestFailed );
hgs
parents:
diff changeset
   214
            iLogger->Log( _L( "Description: %S" ), &(aResult.iResultDes) );
hgs
parents:
diff changeset
   215
            iLogger->Log( _L( "" ) );
hgs
parents:
diff changeset
   216
            }
hgs
parents:
diff changeset
   217
        }
hgs
parents:
diff changeset
   218
    else
hgs
parents:
diff changeset
   219
        {        
hgs
parents:
diff changeset
   220
        // Valid case was not found, return error.
hgs
parents:
diff changeset
   221
        execStatus = KErrNotFound;
hgs
parents:
diff changeset
   222
        }
hgs
parents:
diff changeset
   223
hgs
parents:
diff changeset
   224
    // Return case execution status (not the result of the case execution)
hgs
parents:
diff changeset
   225
    return execStatus;
hgs
parents:
diff changeset
   226
    
hgs
parents:
diff changeset
   227
    }
hgs
parents:
diff changeset
   228
    
hgs
parents:
diff changeset
   229
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   230
// CMpxCollectionTest::Case
hgs
parents:
diff changeset
   231
// Returns a test case by number.
hgs
parents:
diff changeset
   232
//
hgs
parents:
diff changeset
   233
// This function contains an array of all available test cases 
hgs
parents:
diff changeset
   234
// i.e pair of case name and test function. If case specified by parameter
hgs
parents:
diff changeset
   235
// aCaseNumber is found from array, then that item is returned.
hgs
parents:
diff changeset
   236
// 
hgs
parents:
diff changeset
   237
// The reason for this rather complicated function is to specify all the
hgs
parents:
diff changeset
   238
// test cases only in one place. It is not necessary to understand how
hgs
parents:
diff changeset
   239
// function pointers to class member functions works when adding new test
hgs
parents:
diff changeset
   240
// cases. See function body for instructions how to add new test case.
hgs
parents:
diff changeset
   241
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   242
//
hgs
parents:
diff changeset
   243
const TCaseInfo CMpxCollectionTest::Case ( 
hgs
parents:
diff changeset
   244
    const TInt aCaseNumber ) const 
hgs
parents:
diff changeset
   245
    {
hgs
parents:
diff changeset
   246
hgs
parents:
diff changeset
   247
    /**
hgs
parents:
diff changeset
   248
    * To add new test cases, implement new test case function and add new 
hgs
parents:
diff changeset
   249
    * line to KCases array specify the name of the case and the function 
hgs
parents:
diff changeset
   250
    * doing the test case
hgs
parents:
diff changeset
   251
    * In practice, do following
hgs
parents:
diff changeset
   252
    * 1) Make copy of existing test case function and change its name
hgs
parents:
diff changeset
   253
    *    and functionality. Note that the function must be added to 
hgs
parents:
diff changeset
   254
    *    MpxCollectionTest.cpp file and to MpxCollectionTest.h 
hgs
parents:
diff changeset
   255
    *    header file.
hgs
parents:
diff changeset
   256
    * 2) Add entry to following KCases array either by using FUNCENTRY or 
hgs
parents:
diff changeset
   257
    *    ENTRY macro. 
hgs
parents:
diff changeset
   258
    * ENTRY macro takes two parameters: test case name and test case 
hgs
parents:
diff changeset
   259
    * function name.
hgs
parents:
diff changeset
   260
    * FUNCENTRY macro takes only test case function name as a parameter and uses
hgs
parents:
diff changeset
   261
    * that as a test case name and test case function name.
hgs
parents:
diff changeset
   262
    */
hgs
parents:
diff changeset
   263
    
hgs
parents:
diff changeset
   264
    static TCaseInfoInternal const KCases[] =
hgs
parents:
diff changeset
   265
        {
hgs
parents:
diff changeset
   266
        // To add new test cases, add new items to this array
hgs
parents:
diff changeset
   267
  	    ENTRY( "Test0001-OpenL() Collection 1 - NewL Default, OpenL Default + case 11", Test0001L),
hgs
parents:
diff changeset
   268
	    //ENTRY( "Test0002-OpenL()   blank", Test0002L),
hgs
parents:
diff changeset
   269
	    //ENTRY( "Test0003-OpenL()   blank", Test0003L),
hgs
parents:
diff changeset
   270
	    //ENTRY( "Test0004-OpenL()   blank", Test0004L),
hgs
parents:
diff changeset
   271
	    //ENTRY( "Test0005-OpenL()   blank", Test0005L),
hgs
parents:
diff changeset
   272
	    //ENTRY( "Test0006-OpenL()   blank", Test0006L),
hgs
parents:
diff changeset
   273
	    //ENTRY( "Test0007-OpenL()   blank", Test0007L),
hgs
parents:
diff changeset
   274
	    //ENTRY( "Test0008-OpenL()   blank", Test0008L),
hgs
parents:
diff changeset
   275
	    //ENTRY( "Test0009-OpenL()   blank", Test0009L),
hgs
parents:
diff changeset
   276
	    //ENTRY( "Test0010-OpenL()   blank", Test0010L),
hgs
parents:
diff changeset
   277
  	    ENTRY( "Test0011-OpenL() Collection 2 - NewL(Isolated), OpenL(Default)", Test0011L),
hgs
parents:
diff changeset
   278
	    //ENTRY( "Test0012-OpenL() blank", Test0012L),
hgs
parents:
diff changeset
   279
	    ENTRY( "Test0013-OpenL() NewL(Isolated), OpenL(EMPXOpenGroupOrPlaylist)", Test0013L),
hgs
parents:
diff changeset
   280
	    //ENTRY( "Test0014-OpenL() blank", Test0014L),
hgs
parents:
diff changeset
   281
	    ENTRY( "Test0015-OpenL() NewL(Isolated), OpenL(EMPXOpenAllItems)", Test0015L),
hgs
parents:
diff changeset
   282
	    //ENTRY( "Test0016-OpenL() blank", Test0016L),
hgs
parents:
diff changeset
   283
	    ENTRY( "Test0017-OpenL() NewL(Isolated), OpenL(EMPXOpenNoPlaylist)", Test0017L),
hgs
parents:
diff changeset
   284
	    //ENTRY( "Test0018-OpenL() blank", Test0018L),
hgs
parents:
diff changeset
   285
	    ENTRY( "Test0019-OpenL() Collection 2 - NewL(Isolated), OpenL(EMPXOpenPlaylistOnly)", Test0019L),
hgs
parents:
diff changeset
   286
	    ENTRY( "Test0020-OpenL() Collection 2 - Open(), Close()", Test0020L),
hgs
parents:
diff changeset
   287
  	    ENTRY( "Test0021-OpenL() NewL Default, OpenL(EMPXOpenDefault)", Test0021L),
hgs
parents:
diff changeset
   288
	    //ENTRY( "Test0022-OpenL()   NewL Default, OpenL(KColTestPluginNormIndex,EMPXOpenDefault)", Test0022L),
hgs
parents:
diff changeset
   289
	    //ENTRY( "Test0023-OpenL()   same as 21", Test0023L),
hgs
parents:
diff changeset
   290
	    //ENTRY( "Test0024-OpenL()   NewL Default, OpenL(EMPXOpenGroupOrPlaylist)", Test0024L),
hgs
parents:
diff changeset
   291
	    //ENTRY( "Test0025-OpenL()   NewL Default, OpenL(EMPXOpenAllItems)", Test0025L),
hgs
parents:
diff changeset
   292
	    //ENTRY( "Test0026-OpenL()   NewL Default, OpenL(EMPXOpenNoPlaylist)", Test0026L),
hgs
parents:
diff changeset
   293
	    //ENTRY( "Test0027-OpenL()   NewL Default, OpenL(EMPXOpenPlaylistOnly)", Test0027L),
hgs
parents:
diff changeset
   294
	    //ENTRY( "Test0028-OpenL()   same as 21", Test0028L),
hgs
parents:
diff changeset
   295
	    //ENTRY( "Test0029-OpenL()   NewL Default, OpenL(0,EMPXOpenDefault)", Test0029L),
hgs
parents:
diff changeset
   296
	    //ENTRY( "Test0030-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0030L),
hgs
parents:
diff changeset
   297
  	    //ENTRY( "Test0031-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0031L),
hgs
parents:
diff changeset
   298
	    //ENTRY( "Test0032-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0032L),
hgs
parents:
diff changeset
   299
	    //ENTRY( "Test0033-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0033L),
hgs
parents:
diff changeset
   300
	    //ENTRY( "Test0034-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0034L),
hgs
parents:
diff changeset
   301
	    //ENTRY( "Test0035-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0035L),
hgs
parents:
diff changeset
   302
	    ENTRY( "Test0036-OpenL() NewL Default, OpenL(EMPXOpenDefault)", Test0036L),
hgs
parents:
diff changeset
   303
	    //ENTRY( "Test0037-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0037L),
hgs
parents:
diff changeset
   304
	    //ENTRY( "Test0038-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0038L),
hgs
parents:
diff changeset
   305
	    //ENTRY( "Test0039-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0039L),
hgs
parents:
diff changeset
   306
	    //ENTRY( "Test0040-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0040L),
hgs
parents:
diff changeset
   307
  	    //ENTRY( "Test0041-OpenL()   NewL Default, OpenL(EMPXOpenDefault)", Test0041L),
hgs
parents:
diff changeset
   308
	    ENTRY( "Test0042-Filters,Path,UID", Test0042L),
hgs
parents:
diff changeset
   309
	    //ENTRY( "Test0043-		   Filters,Path,UID", Test0043L),
hgs
parents:
diff changeset
   310
	    //ENTRY( "Test0044-		   Filters,Path,UID", Test0044L),
hgs
parents:
diff changeset
   311
	    //ENTRY( "Test0045-		   Filters,Path,UID", Test0045L),
hgs
parents:
diff changeset
   312
	    //ENTRY( "Test0046-		   Filters,Path,UID", Test0046L),
hgs
parents:
diff changeset
   313
	    //ENTRY( "Test0047-		   Filters,Path,UID", Test0047L),
hgs
parents:
diff changeset
   314
	    //ENTRY( "Test0048-		   Filters,Path,UID", Test0048L),
hgs
parents:
diff changeset
   315
	    //ENTRY( "Test0049-		   Filters,Path,UID", Test0049L),
hgs
parents:
diff changeset
   316
	    //ENTRY( "Test0050-		   Filters,Path,UID", Test0050L),
hgs
parents:
diff changeset
   317
  	    //ENTRY( "Test0051-		   Filters,Path,UID", Test0051L),
hgs
parents:
diff changeset
   318
	    //ENTRY( "Test0052-		   Filters,Path,UID", Test0052L),
hgs
parents:
diff changeset
   319
	    //ENTRY( "Test0053-		   Filters,Path,UID", Test0053L),
hgs
parents:
diff changeset
   320
	    ENTRY( "Test0054-Filters,Path,UID", Test0054L),
hgs
parents:
diff changeset
   321
	    //ENTRY( "Test0055-		   PathL()", Test0055L),
hgs
parents:
diff changeset
   322
	    //ENTRY( "Test0056-		   PathL()", Test0056L),
hgs
parents:
diff changeset
   323
	    //ENTRY( "Test0057-		   PathL()", Test0057L),
hgs
parents:
diff changeset
   324
	    //ENTRY( "Test0058-		   PathL()", Test0058L),
hgs
parents:
diff changeset
   325
	    //ENTRY( "Test0059-		   Back()", Test0059L),
hgs
parents:
diff changeset
   326
	    //ENTRY( "Test0060-		   Back()", Test0060L),
hgs
parents:
diff changeset
   327
  	    //ENTRY( "Test0061-		   Back()", Test0061L),
hgs
parents:
diff changeset
   328
	    //ENTRY( "Test0062-		   Back()", Test0062L),
hgs
parents:
diff changeset
   329
	    //ENTRY( "Test0063-		   Back()", Test0063L),
hgs
parents:
diff changeset
   330
	    //ENTRY( "Test0064-		   Empty", Test0064L),
hgs
parents:
diff changeset
   331
	    //ENTRY( "Test0065-		   Empty", Test0065L),
hgs
parents:
diff changeset
   332
	    //ENTRY( "Test0066-		   Empty", Test0066L),
hgs
parents:
diff changeset
   333
	    //ENTRY( "Test0067-		   Empty", Test0067L),
hgs
parents:
diff changeset
   334
	    //ENTRY( "Test0068-		   Empty", Test0068L),
hgs
parents:
diff changeset
   335
	    //ENTRY( "Test0069-		   Empty", Test0069L),
hgs
parents:
diff changeset
   336
	    ENTRY( "Test0070-AddL()", Test0070L),
hgs
parents:
diff changeset
   337
  	    //ENTRY( "Test0071-		   AddL()", Test0071L),
hgs
parents:
diff changeset
   338
	    //ENTRY( "Test0072-		   AddL()", Test0072L),
hgs
parents:
diff changeset
   339
	    //ENTRY( "Test0073-		   AddL()", Test0073L),
hgs
parents:
diff changeset
   340
	    //ENTRY( "Test0074-		   AddL()", Test0074L),
hgs
parents:
diff changeset
   341
	    //ENTRY( "Test0075-		   AddL()", Test0075L),
hgs
parents:
diff changeset
   342
	    //ENTRY( "Test0076-		   AddL()", Test0076L),
hgs
parents:
diff changeset
   343
	    //ENTRY( "Test0077-		   AddL()", Test0077L),
hgs
parents:
diff changeset
   344
	    //ENTRY( "Test0078-		   AddL()", Test0078L),
hgs
parents:
diff changeset
   345
	    //ENTRY( "Test0079-		   AddL()", Test0079L),
hgs
parents:
diff changeset
   346
	    //ENTRY( "Test0080-		   AddL()", Test0080L),
hgs
parents:
diff changeset
   347
  	    //ENTRY( "Test0081-		   AddL()", Test0081L),
hgs
parents:
diff changeset
   348
	    ENTRY( "Test0082-RemoveL()", Test0082L),
hgs
parents:
diff changeset
   349
	    //ENTRY( "Test0083-		   RemoveL()", Test0083L),
hgs
parents:
diff changeset
   350
	    //ENTRY( "Test0084-		   RemoveL()", Test0084L),
hgs
parents:
diff changeset
   351
	    //ENTRY( "Test0085-		   RemoveL()", Test0085L),
hgs
parents:
diff changeset
   352
	    //ENTRY( "Test0086-		   RemoveL()", Test0086L),
hgs
parents:
diff changeset
   353
	    //ENTRY( "Test0087-		   RemoveL()", Test0087L),
hgs
parents:
diff changeset
   354
	    //ENTRY( "Test0088-		   RemoveL()", Test0088L),
hgs
parents:
diff changeset
   355
	    //ENTRY( "Test0089-		   RemoveL()", Test0089L),
hgs
parents:
diff changeset
   356
	    //ENTRY( "Test0090-		   RemoveL()", Test0090L),
hgs
parents:
diff changeset
   357
  	    //ENTRY( "Test0091-		   RemoveL()", Test0091L),
hgs
parents:
diff changeset
   358
	    //ENTRY( "Test0092-		   RemoveL()", Test0092L),
hgs
parents:
diff changeset
   359
	    //ENTRY( "Test0093-		   RemoveL()", Test0093L),
hgs
parents:
diff changeset
   360
	    //ENTRY( "Test0094-		   RemoveL()", Test0094L),
hgs
parents:
diff changeset
   361
	    //ENTRY( "Test0095-		   RemoveL()", Test0095L),
hgs
parents:
diff changeset
   362
	    //ENTRY( "Test0096-		   RemoveL()", Test0096L),
hgs
parents:
diff changeset
   363
	    //ENTRY( "Test0097-		   RemoveL()", Test0097L),
hgs
parents:
diff changeset
   364
	    //ENTRY( "Test0098-		   RemoveL()", Test0098L),
hgs
parents:
diff changeset
   365
	    //ENTRY( "Test0099-		   RemoveL()", Test0099L),
hgs
parents:
diff changeset
   366
	    //ENTRY( "Test0100-		   RemoveL()", Test0100L),
hgs
parents:
diff changeset
   367
  	    ENTRY( "Test0101-SetSync()", Test0101L),
hgs
parents:
diff changeset
   368
	    //ENTRY( "Test0102-		   SetSync()", Test0102L),
hgs
parents:
diff changeset
   369
	    //ENTRY( "Test0103-		   SetSync()", Test0103L),
hgs
parents:
diff changeset
   370
	    //ENTRY( "Test0104-		   SetSync()", Test0104L),
hgs
parents:
diff changeset
   371
	    //ENTRY( "Test0105-		   SetSync()", Test0105L),
hgs
parents:
diff changeset
   372
	    //ENTRY( "Test0106-		   SetSync()", Test0106L),
hgs
parents:
diff changeset
   373
	    //ENTRY( "Test0107-		   SetSync()", Test0107L),
hgs
parents:
diff changeset
   374
	    //ENTRY( "Test0108-		   SetSync()", Test0108L),
hgs
parents:
diff changeset
   375
	    //ENTRY( "Test0109-		   SetSync()", Test0109L),
hgs
parents:
diff changeset
   376
	    ENTRY( "Test0110-SetL()", Test0110L),
hgs
parents:
diff changeset
   377
  	    //ENTRY( "Test0111-		   SetL()", Test0111L),
hgs
parents:
diff changeset
   378
	    //ENTRY( "Test0112-		   SetL()", Test0112L),
hgs
parents:
diff changeset
   379
	    //ENTRY( "Test0113-		   SetL()", Test0113L),
hgs
parents:
diff changeset
   380
	    //ENTRY( "Test0114-		   SetL()", Test0114L),
hgs
parents:
diff changeset
   381
	    //ENTRY( "Test0115-		   SetL()", Test0115L),
hgs
parents:
diff changeset
   382
	    //ENTRY( "Test0116-		   SetL()", Test0116L),
hgs
parents:
diff changeset
   383
	    //ENTRY( "Test0117-		   SetL()", Test0117L),
hgs
parents:
diff changeset
   384
	    //ENTRY( "Test0118-		   SetL()", Test0118L),
hgs
parents:
diff changeset
   385
	    //ENTRY( "Test0119-		   SetL()", Test0119L),
hgs
parents:
diff changeset
   386
	    //ENTRY( "Test0120-		   SetL()", Test0120L),
hgs
parents:
diff changeset
   387
  	    ENTRY( "Test0121-FindAllL()", Test0121L),
hgs
parents:
diff changeset
   388
	    //ENTRY( "Test0122-	  	   FindAllL()", Test0122L),
hgs
parents:
diff changeset
   389
	    //ENTRY( "Test0123-		   FindAllL()", Test0123L),
hgs
parents:
diff changeset
   390
	    //ENTRY( "Test0124-		   FindAllL()", Test0124L),
hgs
parents:
diff changeset
   391
	    //ENTRY( "Test0125-		   FindAllL()", Test0125L),
hgs
parents:
diff changeset
   392
	    //ENTRY( "Test0126-		   FindAllL()", Test0126L),
hgs
parents:
diff changeset
   393
	    //ENTRY( "Test0127-		   FindAllL()", Test0127L),
hgs
parents:
diff changeset
   394
	    //ENTRY( "Test0128-		   FindAllL()", Test0128L),
hgs
parents:
diff changeset
   395
	    //ENTRY( "Test0129-		   FindAllL()", Test0129L),
hgs
parents:
diff changeset
   396
	    //ENTRY( "Test0130-		   FindAllL()", Test0130L),
hgs
parents:
diff changeset
   397
  	    //ENTRY( "Test0131-		   FindAllL()", Test0131L),
hgs
parents:
diff changeset
   398
	    //ENTRY( "Test0132-		   FindAllL()", Test0132L),
hgs
parents:
diff changeset
   399
	    //ENTRY( "Test0133-		   FindAllL()", Test0133L),
hgs
parents:
diff changeset
   400
	    //ENTRY( "Test0134-		   FindAllL()", Test0134L),
hgs
parents:
diff changeset
   401
	    //ENTRY( "Test0135-		   FindAllL()", Test0135L),
hgs
parents:
diff changeset
   402
	    //ENTRY( "Test0136-		   FindAllL()", Test0136L),
hgs
parents:
diff changeset
   403
	    //ENTRY( "Test0137-		   FindAllL()", Test0137L),
hgs
parents:
diff changeset
   404
	    //ENTRY( "Test0138-		   FindAllL()", Test0138L),
hgs
parents:
diff changeset
   405
	    //ENTRY( "Test0139-		   FindAllL()", Test0139L),
hgs
parents:
diff changeset
   406
	    //ENTRY( "Test0140-		   FindAllL()", Test0140L),
hgs
parents:
diff changeset
   407
  	    ENTRY( "Test0141-MediaL()", Test0141L),
hgs
parents:
diff changeset
   408
	    //ENTRY( "Test0142-		   MediaL()", Test0142L),
hgs
parents:
diff changeset
   409
	    //ENTRY( "Test0143-		   MediaL()", Test0143L),
hgs
parents:
diff changeset
   410
	    //ENTRY( "Test0144-		   MediaL()", Test0144L),
hgs
parents:
diff changeset
   411
	    //ENTRY( "Test0145-		   MediaL()", Test0145L),
hgs
parents:
diff changeset
   412
	    //ENTRY( "Test0146-		   MediaL()", Test0146L),
hgs
parents:
diff changeset
   413
	    //ENTRY( "Test0147-		   MediaL()", Test0147L),
hgs
parents:
diff changeset
   414
	    //ENTRY( "Test0148-		   MediaL()", Test0148L),
hgs
parents:
diff changeset
   415
	    //ENTRY( "Test0149-		   MediaL()", Test0149L),
hgs
parents:
diff changeset
   416
	    ENTRY( "Test0150-CommandL()", Test0150L),
hgs
parents:
diff changeset
   417
  	    //ENTRY( "Test0151-		   CommandL()", Test0151L),
hgs
parents:
diff changeset
   418
	    //ENTRY( "Test0152-		   CommandL()", Test0152L),
hgs
parents:
diff changeset
   419
	    //ENTRY( "Test0153-		   CommandL()", Test0153L),
hgs
parents:
diff changeset
   420
	    //ENTRY( "Test0154-		   CommandL()", Test0154L),
hgs
parents:
diff changeset
   421
	    //ENTRY( "Test0155-		   CommandL()", Test0155L),
hgs
parents:
diff changeset
   422
	    //ENTRY( "Test0156-		   CommandL()", Test0156L),
hgs
parents:
diff changeset
   423
	    //ENTRY( "Test0157-		   CommandL()", Test0157L),
hgs
parents:
diff changeset
   424
	    //ENTRY( "Test0158-		   CommandL()", Test0158L),
hgs
parents:
diff changeset
   425
	    //ENTRY( "Test0159-		   CommandL()", Test0159L),
hgs
parents:
diff changeset
   426
	    //ENTRY( "Test0160-		   CommandL()", Test0160L),
hgs
parents:
diff changeset
   427
  	    //ENTRY( "Test0161-		   CommandL()", Test0161L),
hgs
parents:
diff changeset
   428
	    //ENTRY( "Test0162-		   CommandL()", Test0162L),
hgs
parents:
diff changeset
   429
	    //ENTRY( "Test0163-		   CommandL()", Test0163L),
hgs
parents:
diff changeset
   430
	    //ENTRY( "Test0164-		   CommandL()", Test0164L),
hgs
parents:
diff changeset
   431
	    //ENTRY( "Test0165-		   CommandL()", Test0165L),
hgs
parents:
diff changeset
   432
	    //ENTRY( "Test0166-		   CommandL()", Test0166L),
hgs
parents:
diff changeset
   433
	    //ENTRY( "Test0167-		   CommandL()", Test0167L),
hgs
parents:
diff changeset
   434
	    //ENTRY( "Test0168-		   CommandL()", Test0168L),
hgs
parents:
diff changeset
   435
	    //ENTRY( "Test0169-		   CommandL()", Test0169L),
hgs
parents:
diff changeset
   436
	    ENTRY( "Test0170-CommandL()", Test0170L),
hgs
parents:
diff changeset
   437
  	    //ENTRY( "Test0171-		   CommandL()", Test0171L),
hgs
parents:
diff changeset
   438
	    //ENTRY( "Test0172-		   CommandL()", Test0172L),
hgs
parents:
diff changeset
   439
	    //ENTRY( "Test0173-		   CommandL()", Test0173L),
hgs
parents:
diff changeset
   440
	    //ENTRY( "Test0174-		   CommandL()", Test0174L),
hgs
parents:
diff changeset
   441
	    //ENTRY( "Test0175-		   CommandL()", Test0175L),
hgs
parents:
diff changeset
   442
	    //ENTRY( "Test0176-		   CommandL()", Test0176L),
hgs
parents:
diff changeset
   443
	    //ENTRY( "Test0177-		   CommandL()", Test0177L),
hgs
parents:
diff changeset
   444
	    //ENTRY( "Test0178-		   CommandL()", Test0178L),
hgs
parents:
diff changeset
   445
	    //ENTRY( "Test0179-		   CommandL()", Test0179L),
hgs
parents:
diff changeset
   446
	    //ENTRY( "Test0180-		   CommandL()", Test0180L),
hgs
parents:
diff changeset
   447
  	    //ENTRY( "Test0181-		   CommandL()", Test0181L),
hgs
parents:
diff changeset
   448
	    //ENTRY( "Test0182-		   CommandL()", Test0182L),
hgs
parents:
diff changeset
   449
	    //ENTRY( "Test0183-		   CommandL()", Test0183L),
hgs
parents:
diff changeset
   450
	    //ENTRY( "Test0184-		   CommandL()", Test0184L),
hgs
parents:
diff changeset
   451
	    //ENTRY( "Test0185-GetSupportedTypesL()", Test0185L),
hgs
parents:
diff changeset
   452
	    //ENTRY( "Test0186-GetSupportedTypesL()", Test0186L),
hgs
parents:
diff changeset
   453
	    //ENTRY( "Test0187-GetSupportedCapabilitiesL()", Test0187L),
hgs
parents:
diff changeset
   454
	    //ENTRY( "Test0188-GetSupportedCapabilitiesL()", Test0188L),
hgs
parents:
diff changeset
   455
	    //ENTRY( "Test0189-GetSupportedCapabilitiesL()", Test0189L),
hgs
parents:
diff changeset
   456
	    ENTRY( "Test0190-CollectionIDL()", Test0190L),
hgs
parents:
diff changeset
   457
  	    ENTRY( "Test0191-CollectionIDL()", Test0191L),
hgs
parents:
diff changeset
   458
	    ENTRY( "Test0192-CollectionIDL()", Test0192L),
hgs
parents:
diff changeset
   459
	    ENTRY( "Test0193-CollectionIDL()", Test0193L),
hgs
parents:
diff changeset
   460
	    ENTRY( "Test0194-NotifyL()", Test0194L),
hgs
parents:
diff changeset
   461
	    //ENTRY( "Test0195-		   NotifyL()", Test0195L),
hgs
parents:
diff changeset
   462
	    //ENTRY( "Test0196-		   NotifyL()", Test0196L),
hgs
parents:
diff changeset
   463
	    //ENTRY( "Test0197-		   NotifyL()", Test0197L),
hgs
parents:
diff changeset
   464
	    //ENTRY( "Test0198-		   NotifyL()", Test0198L),
hgs
parents:
diff changeset
   465
	    //ENTRY( "Test0199-		   NotifyL()", Test0199L),
hgs
parents:
diff changeset
   466
	    //ENTRY( "Test0200-		   NotifyL()", Test0200L),
hgs
parents:
diff changeset
   467
  	    //ENTRY( "Test0201-		   NotifyL()", Test0201L),
hgs
parents:
diff changeset
   468
	    //ENTRY( "Test0202-		   NotifyL()", Test0202L)
hgs
parents:
diff changeset
   469
        };
hgs
parents:
diff changeset
   470
hgs
parents:
diff changeset
   471
    // Verify that case number is valid
hgs
parents:
diff changeset
   472
    if( (TUint) aCaseNumber >= sizeof( KCases ) / 
hgs
parents:
diff changeset
   473
                               sizeof( TCaseInfoInternal ) )
hgs
parents:
diff changeset
   474
        {
hgs
parents:
diff changeset
   475
        // Invalid case, construct empty object
hgs
parents:
diff changeset
   476
        TCaseInfo null( (const TText*) L"" );
hgs
parents:
diff changeset
   477
        null.iMethod = NULL;
hgs
parents:
diff changeset
   478
        return null;
hgs
parents:
diff changeset
   479
        } 
hgs
parents:
diff changeset
   480
hgs
parents:
diff changeset
   481
    // Construct TCaseInfo object and return it
hgs
parents:
diff changeset
   482
    TCaseInfo tmp ( KCases[ aCaseNumber ].iCaseName );
hgs
parents:
diff changeset
   483
    tmp.iMethod = KCases[ aCaseNumber ].iMethod;
hgs
parents:
diff changeset
   484
    return tmp;
hgs
parents:
diff changeset
   485
    }
hgs
parents:
diff changeset
   486
hgs
parents:
diff changeset
   487
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   488
// Initialize environment before test case
hgs
parents:
diff changeset
   489
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   490
void CMpxCollectionTest::InitializeL(CActiveScheduler* scheduler)
hgs
parents:
diff changeset
   491
    {
hgs
parents:
diff changeset
   492
    iMainConsole = CConsoleMain::NewL(scheduler);
hgs
parents:
diff changeset
   493
    }
hgs
parents:
diff changeset
   494
hgs
parents:
diff changeset
   495
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   496
// Cleanup environment after test
hgs
parents:
diff changeset
   497
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   498
void CMpxCollectionTest::Cleanup()
hgs
parents:
diff changeset
   499
    {
hgs
parents:
diff changeset
   500
    if(iMainConsole)
hgs
parents:
diff changeset
   501
    	{
hgs
parents:
diff changeset
   502
    	delete iMainConsole;
hgs
parents:
diff changeset
   503
    	iMainConsole = NULL;
hgs
parents:
diff changeset
   504
    	}
hgs
parents:
diff changeset
   505
    }
hgs
parents:
diff changeset
   506
    
hgs
parents:
diff changeset
   507
// ================================= TEST CASES ================================
hgs
parents:
diff changeset
   508
		
hgs
parents:
diff changeset
   509
TInt CMpxCollectionTest::CommonTestL(TInt testIndex, TTestResult& aResult) 
hgs
parents:
diff changeset
   510
	{
hgs
parents:
diff changeset
   511
	__UHEAP_MARK;
hgs
parents:
diff changeset
   512
	
hgs
parents:
diff changeset
   513
	InitializeL(iScheduler);  //Initialize environment
hgs
parents:
diff changeset
   514
hgs
parents:
diff changeset
   515
    // create and push
hgs
parents:
diff changeset
   516
    CCollectionTests* collectionTests = CCollectionTests::NewLC(iMainConsole,
hgs
parents:
diff changeset
   517
                                            NULL,
hgs
parents:
diff changeset
   518
                                            KTxtCollectionTests,
hgs
parents:
diff changeset
   519
                                            iLogger,
hgs
parents:
diff changeset
   520
                                            testIndex);
hgs
parents:
diff changeset
   521
                                           
hgs
parents:
diff changeset
   522
	collectionTests->StartNextTestL();
hgs
parents:
diff changeset
   523
		
hgs
parents:
diff changeset
   524
	if(!collectionTests->IsTestSynchronous(testIndex))
hgs
parents:
diff changeset
   525
		{
hgs
parents:
diff changeset
   526
		TRAPD(err, iMainConsole->ActivateL(collectionTests));
hgs
parents:
diff changeset
   527
hgs
parents:
diff changeset
   528
    	// Test passed/failed    
hgs
parents:
diff changeset
   529
    	if(KErrNone != err)
hgs
parents:
diff changeset
   530
    	    {
hgs
parents:
diff changeset
   531
    		aResult.iResult = err;
hgs
parents:
diff changeset
   532
     	   	}
hgs
parents:
diff changeset
   533
     	else
hgs
parents:
diff changeset
   534
    		{
hgs
parents:
diff changeset
   535
    		aResult.iResult = collectionTests->GetLatestTestResult();
hgs
parents:
diff changeset
   536
    		}		
hgs
parents:
diff changeset
   537
		}
hgs
parents:
diff changeset
   538
	else
hgs
parents:
diff changeset
   539
		{
hgs
parents:
diff changeset
   540
		aResult.iResult = collectionTests->GetLatestTestResult();
hgs
parents:
diff changeset
   541
		}
hgs
parents:
diff changeset
   542
hgs
parents:
diff changeset
   543
    aResult.iResultDes = KTxtCollectionTests;
hgs
parents:
diff changeset
   544
    
hgs
parents:
diff changeset
   545
    CleanupStack::PopAndDestroy(collectionTests);      
hgs
parents:
diff changeset
   546
        	
hgs
parents:
diff changeset
   547
	Cleanup();  //Cleanup environment
hgs
parents:
diff changeset
   548
    		
hgs
parents:
diff changeset
   549
    //iCollectionUtility may take a short time to Close()
hgs
parents:
diff changeset
   550
    User::After(1000000); // 1 second
hgs
parents:
diff changeset
   551
    
hgs
parents:
diff changeset
   552
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   553
    iLogger->Log( KTxtCollectionTests);
hgs
parents:
diff changeset
   554
        
hgs
parents:
diff changeset
   555
    return aResult.iResult;	
hgs
parents:
diff changeset
   556
	}
hgs
parents:
diff changeset
   557
hgs
parents:
diff changeset
   558
// =============================== HELP FUNCTIONS ==============================
hgs
parents:
diff changeset
   559
hgs
parents:
diff changeset
   560
hgs
parents:
diff changeset
   561
// ========================== OTHER EXPORTED FUNCTIONS =========================
hgs
parents:
diff changeset
   562
hgs
parents:
diff changeset
   563
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   564
// LibEntryL is a polymorphic Dll entry point
hgs
parents:
diff changeset
   565
// Returns: CTestModuleBase*: Pointer to Test Module object
hgs
parents:
diff changeset
   566
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   567
//
hgs
parents:
diff changeset
   568
EXPORT_C CTestModuleBase* LibEntryL()
hgs
parents:
diff changeset
   569
    {
hgs
parents:
diff changeset
   570
    return CMpxCollectionTest::NewL();
hgs
parents:
diff changeset
   571
    }
hgs
parents:
diff changeset
   572
hgs
parents:
diff changeset
   573
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   574
// SetRequirements handles test module parameters(implements evolution
hgs
parents:
diff changeset
   575
// version 1 for test module's heap and stack sizes configuring).
hgs
parents:
diff changeset
   576
// Returns: TInt: Symbian error code.
hgs
parents:
diff changeset
   577
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   578
//
hgs
parents:
diff changeset
   579
EXPORT_C TInt SetRequirements( CTestModuleParam*& /*aTestModuleParam*/, 
hgs
parents:
diff changeset
   580
                                TUint32& /*aParameterValid*/ )
hgs
parents:
diff changeset
   581
    {
hgs
parents:
diff changeset
   582
hgs
parents:
diff changeset
   583
    /* --------------------------------- NOTE ---------------------------------
hgs
parents:
diff changeset
   584
    USER PANICS occurs in test thread creation when:
hgs
parents:
diff changeset
   585
    1) "The panic occurs when the value of the stack size is negative."
hgs
parents:
diff changeset
   586
    2) "The panic occurs if the minimum heap size specified is less
hgs
parents:
diff changeset
   587
       than KMinHeapSize".
hgs
parents:
diff changeset
   588
       KMinHeapSize: "Functions that require a new heap to be allocated will
hgs
parents:
diff changeset
   589
       either panic, or will reset the required heap size to this value if
hgs
parents:
diff changeset
   590
       a smaller heap size is specified".
hgs
parents:
diff changeset
   591
    3) "The panic occurs if the minimum heap size specified is greater than
hgs
parents:
diff changeset
   592
       the maximum size to which the heap can grow".
hgs
parents:
diff changeset
   593
    Other:
hgs
parents:
diff changeset
   594
    1) Make sure that your hardware or Symbian OS is supporting given sizes.
hgs
parents:
diff changeset
   595
       e.g. Hardware might support only sizes that are divisible by four.
hgs
parents:
diff changeset
   596
    ------------------------------- NOTE end ------------------------------- */
hgs
parents:
diff changeset
   597
hgs
parents:
diff changeset
   598
    // Normally STIF uses default heap and stack sizes for test thread, see:
hgs
parents:
diff changeset
   599
    // KTestThreadMinHeap, KTestThreadMinHeap and KStackSize.
hgs
parents:
diff changeset
   600
    // If needed heap and stack sizes can be configured here by user. Remove
hgs
parents:
diff changeset
   601
    // comments and define sizes.
hgs
parents:
diff changeset
   602
hgs
parents:
diff changeset
   603
/*
hgs
parents:
diff changeset
   604
    aParameterValid = KStifTestModuleParameterChanged;
hgs
parents:
diff changeset
   605
hgs
parents:
diff changeset
   606
    CTestModuleParamVer01* param = CTestModuleParamVer01::NewL();
hgs
parents:
diff changeset
   607
    // Stack size
hgs
parents:
diff changeset
   608
    param->iTestThreadStackSize= 16384; // 16K stack
hgs
parents:
diff changeset
   609
    // Heap sizes
hgs
parents:
diff changeset
   610
    param->iTestThreadMinHeap = 4096;   // 4K heap min
hgs
parents:
diff changeset
   611
    param->iTestThreadMaxHeap = 1048576;// 1M heap max
hgs
parents:
diff changeset
   612
hgs
parents:
diff changeset
   613
    aTestModuleParam = param;
hgs
parents:
diff changeset
   614
*/
hgs
parents:
diff changeset
   615
    return KErrNone;
hgs
parents:
diff changeset
   616
hgs
parents:
diff changeset
   617
    }
hgs
parents:
diff changeset
   618
hgs
parents:
diff changeset
   619
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   620
// E32Dll is a DLL entry point function
hgs
parents:
diff changeset
   621
// Returns: KErrNone: No error
hgs
parents:
diff changeset
   622
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   623
//
hgs
parents:
diff changeset
   624
#ifndef EKA2
hgs
parents:
diff changeset
   625
GLDEF_C TInt E32Dll(
hgs
parents:
diff changeset
   626
    TDllReason /*aReason*/) // Reason
hgs
parents:
diff changeset
   627
    {
hgs
parents:
diff changeset
   628
    return(KErrNone);
hgs
parents:
diff changeset
   629
    }
hgs
parents:
diff changeset
   630
#endif
hgs
parents:
diff changeset
   631
//  End of File