profilesservices/FileList/tsrc/public/basic/src/T_CFLDFileListContainer.cpp
branchRCL_3
changeset 54 7e0eff37aedb
equal deleted inserted replaced
53:8ee96d21d9bf 54:7e0eff37aedb
       
     1 /*
       
     2 * Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *  CFLDFileListContainer test class.
       
    16 *
       
    17 *
       
    18 */
       
    19 
       
    20 //  Include Files
       
    21 #include "T_CFLDFileListContainer.h"
       
    22 #include <CFLDFileListContainer.h>
       
    23 #include <EUnitMacros.h>
       
    24 #include <TEUnitAssertionInfo.h>
       
    25 #include <CEUnitAllocTestCaseDecorator.h>
       
    26 #include <coemain.h>
       
    27 #include <fldtest.rsg>
       
    28 #include "FLDTestConst.h"
       
    29 
       
    30 
       
    31 namespace
       
    32 	{
       
    33 	_LIT( KFLDTestMimeMP4, "audio/mp4" );
       
    34 	_LIT( KFLDTestMime3GPP, "video/3gpp" );
       
    35 	_LIT( KFLDTestMimeRNG, "application/vnd.nokia.ringing-tone" );
       
    36 	}
       
    37 
       
    38 
       
    39 // Classes under test include
       
    40 
       
    41 //  LOCAL FUNCTIONS
       
    42 
       
    43 // CONSTRUCTION
       
    44 // Static constructor
       
    45 T_CFLDFileListContainer* T_CFLDFileListContainer::NewLC()
       
    46     {
       
    47     T_CFLDFileListContainer* self = new(ELeave) T_CFLDFileListContainer;
       
    48     CleanupStack::PushL(self);
       
    49     self->ConstructL();
       
    50     return self;
       
    51     }
       
    52 
       
    53 // Destructor (virtual by CBase)
       
    54 T_CFLDFileListContainer::~T_CFLDFileListContainer()
       
    55     {
       
    56     delete iContainer;
       
    57     delete iContainer1;
       
    58     if( iResourceLoader )
       
    59         {
       
    60         iResourceLoader->Close();
       
    61         delete iResourceLoader;
       
    62         }
       
    63     iWsSession.Close();
       
    64     }
       
    65 
       
    66 // Second phase construct
       
    67 void T_CFLDFileListContainer::ConstructL()
       
    68     {
       
    69     CEUnitTestSuiteClass::ConstructL();
       
    70     }
       
    71 
       
    72 T_CFLDFileListContainer::T_CFLDFileListContainer()
       
    73     {
       
    74     }
       
    75 
       
    76 //---------------------------------------------------------------
       
    77 //----------------- TEST CASE METHODS ---------------------------
       
    78 //---------------------------------------------------------------
       
    79 
       
    80 //  METHODS
       
    81 
       
    82 // Setup nothing.
       
    83 void T_CFLDFileListContainer::EmptySetupL()
       
    84     {
       
    85     iResourceLoader = new ( ELeave ) RConeResourceLoader( *CCoeEnv::Static() );
       
    86     TFileName fileName( KFLDResourceFile );
       
    87     User::LeaveIfError( iResourceLoader->Open( fileName ) );
       
    88     }
       
    89 
       
    90 void T_CFLDFileListContainer::SetupL()
       
    91     {
       
    92     EmptySetupL();
       
    93 	
       
    94     iContainer = CFLDFileListContainer::NewL();
       
    95     iContainer1 = CFLDFileListContainer::NewLC();
       
    96     CleanupStack::Pop();
       
    97     iContainer2 = CFLDFileListContainer::NewL( R_FLD_TEST_MODEL1 );
       
    98     iContainer3 = CFLDFileListContainer::NewLC( R_FLD_TEST_MODEL1 );
       
    99     CleanupStack::Pop();
       
   100     iContainer4 = CFLDFileListContainer::NewL( R_FLD_TEST_MODEL1, R_FLD_TEST_ROM_MODEL );
       
   101     iContainer5 = CFLDFileListContainer::NewLC( R_FLD_TEST_MODEL1, R_FLD_TEST_ROM_MODEL );
       
   102     CleanupStack::Pop();
       
   103     
       
   104     iWsSession.Connect();
       
   105 
       
   106     iMimeTypeArray = new (ELeave) CDesCArrayFlat( 8 );
       
   107     }
       
   108 
       
   109 void T_CFLDFileListContainer::Teardown()
       
   110     {
       
   111     delete iContainer;
       
   112     iContainer = NULL;
       
   113     
       
   114     delete iContainer1;
       
   115     iContainer1 = NULL;
       
   116     
       
   117     delete iContainer2;
       
   118     iContainer2 = NULL;
       
   119     
       
   120     delete iContainer3;
       
   121     iContainer3 = NULL;
       
   122     
       
   123     delete iContainer4;
       
   124     iContainer4 = NULL;
       
   125     
       
   126     delete iContainer5;
       
   127     iContainer5 = NULL;
       
   128     
       
   129     if( iResourceLoader )
       
   130         {
       
   131         iResourceLoader->Close();
       
   132         delete iResourceLoader;
       
   133         iResourceLoader = NULL;
       
   134         }
       
   135     iWsSession.Close();
       
   136 
       
   137     delete iMimeTypeArray;
       
   138     iMimeTypeArray = NULL;
       
   139 
       
   140     iMediaTypeArray.Reset();
       
   141     iMediaTypeArray.Close();
       
   142     }
       
   143 
       
   144 // CREATIONAL TESTS
       
   145 void T_CFLDFileListContainer::TestCreateObjectL()
       
   146     {
       
   147     CFLDFileListContainer* container = CFLDFileListContainer::NewL();
       
   148     EUNIT_ASSERT( container );
       
   149     delete container;
       
   150     container = NULL;
       
   151 
       
   152     container = CFLDFileListContainer::NewLC();
       
   153     EUNIT_ASSERT( container );
       
   154     CleanupStack::PopAndDestroy();
       
   155     }
       
   156 
       
   157 void T_CFLDFileListContainer::LaunchTestL()
       
   158     {
       
   159     _LIT( KFLDTestFileName, "" );
       
   160     _LIT( KFLDTestPopupTitle, "PopupTitle" );
       
   161     TFileName fn( KFLDTestFileName );
       
   162 
       
   163     iContainer->LaunchL( fn );
       
   164     iContainer->LaunchL( fn, KFLDTestPopupTitle );
       
   165     }
       
   166 
       
   167 void T_CFLDFileListContainer::InsertNullItemTestL()
       
   168     {
       
   169     iContainer->InsertNullItemL( KFLDTestNullItem );
       
   170     iContainer->InsertNullItemL( KFLDTestNullItem, KFLDTestNullItemRingingTone );
       
   171     }
       
   172 
       
   173 void T_CFLDFileListContainer::InsertEndNullItemTestL()
       
   174     {
       
   175     iContainer->InsertEndNullItemL( KFLDTestNullItem );
       
   176     iContainer->InsertEndNullItemL( KFLDTestNullItem, KFLDTestNullItemRingingTone );
       
   177     }
       
   178 
       
   179 void T_CFLDFileListContainer::SetDelayTestL()
       
   180     {
       
   181     __UHEAP_MARK;
       
   182     iContainer->SetDelay( 0 );
       
   183     iContainer->SetDelay( 1000000 );
       
   184     __UHEAP_MARKEND;
       
   185     }
       
   186 
       
   187 void T_CFLDFileListContainer::SetVolumeTestL()
       
   188     {
       
   189     __UHEAP_MARK;
       
   190     iContainer->SetVolume( 5 );
       
   191     __UHEAP_MARKEND;
       
   192     }
       
   193 
       
   194 void T_CFLDFileListContainer::SetRingingTypeTestL()
       
   195     {
       
   196     __UHEAP_MARK;
       
   197     iContainer->SetRingingType( 0 );
       
   198     __UHEAP_MARKEND;
       
   199     }
       
   200 
       
   201 void T_CFLDFileListContainer::SetVibraTestL()
       
   202     {
       
   203     __UHEAP_MARK;
       
   204     iContainer->SetVibra( EFalse );
       
   205     iContainer->SetVibra( ETrue );
       
   206     __UHEAP_MARKEND;
       
   207     }
       
   208 
       
   209 void T_CFLDFileListContainer::Set3dEffectsTestL()
       
   210     {
       
   211     __UHEAP_MARK;
       
   212     iContainer->Set3dEffects( EFalse );
       
   213     __UHEAP_MARKEND;
       
   214     }
       
   215 
       
   216 void T_CFLDFileListContainer::SetAutomatedTypeTestL()
       
   217     {
       
   218     __UHEAP_MARK;
       
   219     iContainer->SetAutomatedType( CDRMHelper::EAutomatedTypeRingingTone );
       
   220     __UHEAP_MARKEND;
       
   221     }
       
   222 
       
   223 void T_CFLDFileListContainer::SetMaxFileSizeTestL()
       
   224     {
       
   225     __UHEAP_MARK;
       
   226     iContainer->SetMaxFileSize( 0 );
       
   227     __UHEAP_MARKEND;
       
   228     }
       
   229 
       
   230 void T_CFLDFileListContainer::AddExclusiveMimeTypeTestL()
       
   231     {
       
   232     iContainer->AddExclusiveMimeTypeL( KFLDTestMimeRNG );
       
   233     iContainer->AddExclusiveMimeTypeL( KFLDTestMimeMP4 );
       
   234     iContainer->AddExclusiveMimeTypeL( KFLDTestMime3GPP );
       
   235 
       
   236     iContainer->ResetExclusiveMimeTypes();
       
   237     }
       
   238 
       
   239 void T_CFLDFileListContainer::AddExclusiveMediaTypeTestL()
       
   240     {
       
   241     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeSound );
       
   242     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeMusic );
       
   243     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeVideo );
       
   244 
       
   245     iContainer->ResetExclusiveMediaTypes();
       
   246     }
       
   247 
       
   248 void T_CFLDFileListContainer::ResetExclusiveMimeTypesTestL()
       
   249 	{
       
   250     iContainer->AddExclusiveMimeTypeL( KFLDTestMimeRNG );
       
   251     iContainer->ResetExclusiveMimeTypes();
       
   252 	}
       
   253 
       
   254 void T_CFLDFileListContainer::ResetExclusiveMediaTypesTestL()
       
   255 	{
       
   256     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeSound );
       
   257     iContainer->ResetExclusiveMediaTypes();
       
   258 	}
       
   259 
       
   260 void T_CFLDFileListContainer::SetWantedMimeTypesTestL()
       
   261 	{
       
   262     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeSound );
       
   263     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeMusic );
       
   264     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeVideo );
       
   265 
       
   266 	iMimeTypeArray->Reset();
       
   267     iMimeTypeArray->AppendL( _L("*") );
       
   268     iContainer->SetWantedMimeTypesL( *iMimeTypeArray );
       
   269 	}
       
   270 
       
   271 void T_CFLDFileListContainer::SetWantedMediaTypesTestL()
       
   272 	{
       
   273     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeSound );
       
   274     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeMusic );
       
   275     iContainer->AddExclusiveMediaTypeL( ECLFMediaTypeVideo );
       
   276     
       
   277     iMediaTypeArray.AppendL( ECLFMediaTypeSound );
       
   278     iMediaTypeArray.AppendL( ECLFMediaTypeMusic );
       
   279     iContainer->SetWantedMediaTypesL( iMediaTypeArray.Array() );
       
   280 	}
       
   281 
       
   282 
       
   283 
       
   284 // Test case table for this test suite class
       
   285 EUNIT_BEGIN_TEST_TABLE(
       
   286     T_CFLDFileListContainer,
       
   287     "T_CFLDFileListContainer test suite",
       
   288     "MODULE" )
       
   289 
       
   290 EUNIT_TEST(
       
   291     "Create and delete",
       
   292     "CFLDFileListContainer",
       
   293     "NewL",
       
   294     "FUNCTIONALITY",
       
   295     EmptySetupL, TestCreateObjectL, Teardown )
       
   296 EUNIT_TEST(
       
   297     "Launch, CAknPopupList causes resource imbalance",
       
   298     "CFLDFileListContainer",
       
   299     "LaunchL",
       
   300     "FUNCTIONALITY",
       
   301     SetupL, LaunchTestL, Teardown )
       
   302 EUNIT_TEST(
       
   303     "Insert null item",
       
   304     "CFLDFileListContainer",
       
   305     "InsertNullItemL",
       
   306     "FUNCTIONALITY",
       
   307     SetupL, InsertNullItemTestL, Teardown )
       
   308 EUNIT_TEST(
       
   309     "Insert end null item",
       
   310     "CFLDFileListContainer",
       
   311     "InsertEndNullItemL",
       
   312     "FUNCTIONALITY",
       
   313     SetupL, InsertEndNullItemTestL, Teardown )
       
   314 EUNIT_TEST(
       
   315     "Set delay",
       
   316     "CFLDFileListContainer",
       
   317     "SetDelay",
       
   318     "FUNCTIONALITY",
       
   319     SetupL, SetDelayTestL, Teardown )
       
   320 EUNIT_TEST(
       
   321     "Set volume",
       
   322     "CFLDFileListContainer",
       
   323     "SetVolume",
       
   324     "FUNCTIONALITY",
       
   325     SetupL, SetVolumeTestL, Teardown )
       
   326 EUNIT_TEST(
       
   327     "Set Ringing type",
       
   328     "CFLDFileListContainer",
       
   329     "SetRingingType",
       
   330     "FUNCTIONALITY",
       
   331     SetupL, SetRingingTypeTestL, Teardown )
       
   332 EUNIT_TEST(
       
   333     "Set Vibra",
       
   334     "CFLDFileListContainer",
       
   335     "SetVibra",
       
   336     "FUNCTIONALITY",
       
   337     SetupL, SetVibraTestL, Teardown )
       
   338 EUNIT_TEST(
       
   339     "Set automated type",
       
   340     "CFLDFileListContainer",
       
   341     "SetAutomatedType",
       
   342     "FUNCTIONALITY",
       
   343     SetupL, SetAutomatedTypeTestL, Teardown )
       
   344 EUNIT_TEST(
       
   345     "Set 3d effects",
       
   346     "CFLDFileListContainer",
       
   347     "Set3dEffects",
       
   348     "FUNCTIONALITY",
       
   349     SetupL, Set3dEffectsTestL, Teardown )
       
   350 EUNIT_TEST(
       
   351     "Set max file size",
       
   352     "CFLDFileListContainer",
       
   353     "SetMaxFileSize",
       
   354     "FUNCTIONALITY",
       
   355     SetupL, SetMaxFileSizeTestL, Teardown )
       
   356 EUNIT_TEST(
       
   357     "Add exclusive MIME type",
       
   358     "CFLDFileListContainer",
       
   359     "AddExclusiveMimeType",
       
   360     "FUNCTIONALITY",
       
   361     SetupL, AddExclusiveMimeTypeTestL, Teardown )
       
   362 EUNIT_TEST(
       
   363     "Add exclusive media type",
       
   364     "CFLDFileListContainer",
       
   365     "AddExclusiveMediaType",
       
   366     "FUNCTIONALITY",
       
   367     SetupL, AddExclusiveMediaTypeTestL, Teardown )
       
   368 EUNIT_TEST(
       
   369     "Set wanted MIME types",
       
   370     "CFLDFileListContainer",
       
   371     "SetWantedMimeTypes",
       
   372     "FUNCTIONALITY",
       
   373     SetupL, SetWantedMimeTypesTestL, Teardown )
       
   374 EUNIT_TEST(
       
   375     "Set wanted media types",
       
   376     "CFLDFileListContainer",
       
   377     "SetWantedMediaTypes",
       
   378     "FUNCTIONALITY",
       
   379     SetupL, SetWantedMediaTypesTestL, Teardown )
       
   380 EUNIT_TEST(
       
   381     "Reset exclusive MIME types",
       
   382     "CFLDFileListContainer",
       
   383     "ResetExclusiveMimeTypes",
       
   384     "FUNCTIONALITY",
       
   385     SetupL, ResetExclusiveMimeTypesTestL, Teardown )
       
   386 EUNIT_TEST(
       
   387     "Reset exclusive media types",
       
   388     "CFLDFileListContainer",
       
   389     "ResetExclusiveMediaTypes",
       
   390     "FUNCTIONALITY",
       
   391     SetupL, ResetExclusiveMediaTypesTestL, Teardown )
       
   392 
       
   393 EUNIT_END_TEST_TABLE
       
   394 
       
   395 //  End of File