--- a/photosgallery/slideshow/engine/tsrc/t_cshwplaybackfactory/t_cshwplaybackfactory.cpp Thu Jul 15 18:39:01 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,332 +0,0 @@
-/*
-* Copyright (c) 2007-2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Test suite for CShwPlaybackFactory
- *
-*/
-
-
-
-// CLASS HEADER
-#include "t_cshwplaybackfactory.h"
-
-// EXTERNAL INCLUDES
-#include <digia/eunit/EUnitMacros.h>
-#include <digia/eunit/EUnitDecorators.h>
-#include <glxthumbnailcontext.h>
-#include <glxsetvaluelayout.h>
-
-// INTERNAL INCLUDES
-#include "shwplaybackfactory.h"
-#include "shwslideshowenginepanic.h"
-#include "shwcrossfadeeffect.h"
-#include "shwzoomandpaneffect.h"
-#include "shwconstants.h"
-
-// -----------------------------------------------------------------------------
-// Stub for NShwEngine::Panic -->
-// -----------------------------------------------------------------------------
-TBool gNShwEnginePanicCalled = EFalse;
-namespace NShwEngine
- {
- extern void Panic( TShwEnginePanic aPanic )
- {
- gNShwEnginePanicCalled = ETrue;
- // in test situation just do a leave
- User::Leave( aPanic );
- }
- }
-// -----------------------------------------------------------------------------
-// <-- Stub for NShwEngine::Panic
-// -----------------------------------------------------------------------------
-
-TGlxSetValueLayout gStubLayout( TGlxLayoutInfo::EPosition );
-
-// -----------------------------------------------------------------------------
-// Stub for CShwCrossFadeEffect -->
-// -----------------------------------------------------------------------------
-inline CShwCrossFadeEffect::CShwCrossFadeEffect()
- {
- }
-CShwCrossFadeEffect* CShwCrossFadeEffect::NewLC()
- {
- CShwCrossFadeEffect* self = new (ELeave) CShwCrossFadeEffect;
- CleanupStack::PushL( self );
- return self;
- }
-CShwCrossFadeEffect::~CShwCrossFadeEffect()
- {
- }
-MShwEffect* CShwCrossFadeEffect::CloneLC()
- {
- return NewLC();
- }
-void CShwCrossFadeEffect::InitializeL(
- CHuiEnv* /*aHuiEnv*/, MGlxVisualList* /*aVisualList*/,
- MGlxMediaList* /*aMediaList*/, TSize /*aScreenSize*/ )
- {
- }
-TSize CShwCrossFadeEffect::PrepareViewL( CHuiVisual* /*aVisual*/, TSize /*aSize*/ )
- {
- return TSize( 0, 0 );
- }
-MGlxLayout* CShwCrossFadeEffect::EnterViewL(
- CHuiVisual* /*aVisual*/, TInt /*aDuration*/, TInt /*aDuration2*/ )
- {
- return &gStubLayout;
- }
-void CShwCrossFadeEffect::ExitView( CHuiVisual* /*aVisual*/ )
- {
- }
-MGlxLayout* CShwCrossFadeEffect::EnterTransitionL(
- CHuiVisual* /*aVisual*/, TInt /*aDuration*/ )
- {
- return &gStubLayout;
- }
-void CShwCrossFadeEffect::ExitTransition( CHuiVisual* /*aVisual*/ )
- {
- }
-void CShwCrossFadeEffect::PauseL()
- {
- }
-void CShwCrossFadeEffect::Resume()
- {
- }
-// the effect info for zoom and pan
-TShwEffectInfo gCrossFadeEffectInfo;
-TShwEffectInfo CShwCrossFadeEffect::EffectInfo()
- {
- return gCrossFadeEffectInfo;
- }
-
-// -----------------------------------------------------------------------------
-// <-- Stub for CShwCrossFadeEffect
-// -----------------------------------------------------------------------------
-
-// -----------------------------------------------------------------------------
-// Stub for CShwZoomAndPanEffect -->
-// -----------------------------------------------------------------------------
-inline CShwZoomAndPanEffect::CShwZoomAndPanEffect()
- {
- }
-CShwZoomAndPanEffect* CShwZoomAndPanEffect::NewLC()
- {
- CShwZoomAndPanEffect* self = new (ELeave) CShwZoomAndPanEffect;
- CleanupStack::PushL( self );
- return self;
- }
-CShwZoomAndPanEffect::~CShwZoomAndPanEffect()
- {
- }
-MShwEffect* CShwZoomAndPanEffect::CloneLC()
- {
- return NewLC();
- }
-void CShwZoomAndPanEffect::InitializeL(
- CHuiEnv* /*aHuiEnv*/, MGlxVisualList* /*aVisualList*/,
- MGlxMediaList* /*aMediaList*/, TSize /*aScreenSize*/ )
- {
- }
-TSize CShwZoomAndPanEffect::PrepareViewL( CHuiVisual* /*aVisual*/, TSize /*aSize*/ )
- {
- return TSize( 0, 0 );
- }
-MGlxLayout* CShwZoomAndPanEffect::EnterViewL(
- CHuiVisual* /*aVisual*/, TInt /*aDuration*/, TInt /*aDuration2*/ )
- {
- return &gStubLayout;
- }
-void CShwZoomAndPanEffect::ExitView( CHuiVisual* /*aVisual*/ )
- {
- }
-MGlxLayout* CShwZoomAndPanEffect::EnterTransitionL(
- CHuiVisual* /*aVisual*/, TInt /*aDuration*/ )
- {
- return &gStubLayout;
- }
-void CShwZoomAndPanEffect::ExitTransition( CHuiVisual* /*aVisual*/ )
- {
- }
-void CShwZoomAndPanEffect::PauseL()
- {
- }
-void CShwZoomAndPanEffect::Resume()
- {
- }
-// the effect info for zoom and pan
-TShwEffectInfo gZoomAndPanEffectInfo;
-TShwEffectInfo CShwZoomAndPanEffect::EffectInfo()
- {
- return gZoomAndPanEffectInfo;
- }
-
-// -----------------------------------------------------------------------------
-// <-- Stub for CShwZoomAndPanEffect
-// -----------------------------------------------------------------------------
-
-// CONSTRUCTION
-T_CShwPlaybackFactory* T_CShwPlaybackFactory::NewL()
- {
- T_CShwPlaybackFactory* self = T_CShwPlaybackFactory::NewLC();
- CleanupStack::Pop( self );
- return self;
- }
-
-T_CShwPlaybackFactory* T_CShwPlaybackFactory::NewLC()
- {
- T_CShwPlaybackFactory* self = new( ELeave ) T_CShwPlaybackFactory();
- CleanupStack::PushL( self );
-
- self->ConstructL();
-
- return self;
- }
-
-// Destructor (virtual by CBase)
-T_CShwPlaybackFactory::~T_CShwPlaybackFactory()
- {
- }
-
-// Default constructor
-T_CShwPlaybackFactory::T_CShwPlaybackFactory()
- {
- }
-
-// Second phase construct
-void T_CShwPlaybackFactory::ConstructL()
- {
- // The ConstructL from the base class CEUnitTestSuiteClass must be called.
- // It generates the test case table.
- CEUnitTestSuiteClass::ConstructL();
- }
-
-// METHODS
-
-void T_CShwPlaybackFactory::Empty()
- {
- }
-
-void T_CShwPlaybackFactory::SetupL()
- {
- // create the stubs
- iStubVisuallist = new( ELeave ) TMGlxVisualList_Adapter( this );
- iStubMedialist = new( ELeave ) TMGlxMediaList_Stub( this );
-
- // fix the effect infos
- gCrossFadeEffectInfo.iId.iPluginUid = NShwSlideshow::KDefaultEffectPluginUid;
- gCrossFadeEffectInfo.iId.iIndex = NShwSlideshow::KEffectUidXFadeNormal;
- gZoomAndPanEffectInfo.iId.iPluginUid = NShwSlideshow::KDefaultEffectPluginUid;
- gZoomAndPanEffectInfo.iId.iIndex = NShwSlideshow::KEffectUidZoomAndPan;
-
- /// @todo add an own test case where the music observer is also given
- /// so that the music control is constructed
- iCShwPlaybackFactory =
- CShwPlaybackFactory::NewL(
- iHuiEnv, iStubVisuallist, iStubMedialist, *this, TSize( 100, 100 ) );
- }
-
-void T_CShwPlaybackFactory::Teardown()
- {
- delete iCShwPlaybackFactory;
- iCShwPlaybackFactory = NULL;
- delete iStubVisuallist;
- iStubVisuallist = NULL;
- delete iStubMedialist;
- iStubMedialist = NULL;
- }
-
-TInt gCounter = 0;
-
-void T_CShwPlaybackFactory::T_ContructL()
- {
- // trap the call as it will leave, dont trap oom as this is alloc test
- EUNIT_TRAP_EXCEPT_ALLOC_D( err,
- {
- iCShwPlaybackFactory =
- CShwPlaybackFactory::NewL(
- iHuiEnv, iStubVisuallist, iStubMedialist, *this, TSize( 100, 100 ) );
- } );
- EUNIT_ASSERT_EQUALS_DESC( KErrArgument, err, "wrong effect tried to set" );
- EUNIT_ASSERT_DESC( !iCShwPlaybackFactory, "playback factory not created" );
- }
-
-void T_CShwPlaybackFactory::T_ContructValidEffectL()
- {
- EUNIT_PRINT( _L("T_ContructValidEffectL") );
- // call setup to test the succesfull case
- SetupL();
-
- EUNIT_ASSERT_DESC( iCShwPlaybackFactory, "Test that object created" );
- }
-
-void T_CShwPlaybackFactory::T_EventObserversL()
- {
- // get observers
- RPointerArray< MShwEventObserver > obs =
- iCShwPlaybackFactory->EventObservers();
- // check the amount
- EUNIT_ASSERT_EQUALS_DESC(
- obs.Count(),
- 3,
- "3 observers returned, music is off by default");
- }
-
-void T_CShwPlaybackFactory::T_EventPublishersL( )
- {
- // get publishers
- RPointerArray< MShwEventPublisher > obs =
- iCShwPlaybackFactory->EventPublishers();
- // check the amount
- EUNIT_ASSERT_EQUALS_DESC(
- obs.Count(),
- 3,
- "3 publishers returned, music is off by default");
- }
-
-// TEST TABLE
-EUNIT_BEGIN_TEST_TABLE(
- T_CShwPlaybackFactory,
- "CShwPlaybackFactory test suite",
- "UNIT" )
-
-EUNIT_ALLOC_TEST(
- "Constructor invalid effects",
- "CShwPlaybackFactory",
- "Constructor test",
- "FUNCTIONALITY",
- Empty, T_ContructL, Teardown )
-
-EUNIT_ALLOC_TEST(
- "Constructor valid effects",
- "CShwPlaybackFactory",
- "Constructor test",
- "FUNCTIONALITY",
- Empty, T_ContructValidEffectL, Teardown )
-
-EUNIT_ALLOC_TEST(
- "EventObservers",
- "CShwPlaybackFactory",
- "EventObservers",
- "FUNCTIONALITY",
- SetupL, T_EventObserversL, Teardown)
-
-EUNIT_ALLOC_TEST(
- "EventPublishers",
- "CShwPlaybackFactory",
- "EventPublishers",
- "FUNCTIONALITY",
- SetupL, T_EventPublishersL, Teardown)
-
-EUNIT_END_TEST_TABLE
-
-// END OF FILE