--- a/mmsharing/mmshengine/tsrc/ut_engine/src/ut_musengclipvideoplayer.cpp Tue Aug 31 15:12:07 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,805 +0,0 @@
-/*
-* Copyright (c) 2009 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:
-*
-*/
-
-
-// INTERNAL INCLUDES
-#include "ut_musengclipvideoplayer.h"
-#include "musengtestdefs.h"
-#include "musengmceutils.h"
-#include "musengclipvideoplayer.h"
-#include "mceoutsession.h"
-#include "mcevideostream.h"
-#include "mcertpsink.h"
-#include "mcefilesource.h"
-#include "drmcommon.h"
-
-// SYSTEM INCLUDES
-#include <eunitmacros.h>
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-UT_CMusEngClipVideoPlayer* UT_CMusEngClipVideoPlayer::NewL()
- {
- UT_CMusEngClipVideoPlayer* self = UT_CMusEngClipVideoPlayer::NewLC();
- CleanupStack::Pop( self );
- return self;
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-UT_CMusEngClipVideoPlayer* UT_CMusEngClipVideoPlayer::NewLC()
- {
- UT_CMusEngClipVideoPlayer* self = new( ELeave ) UT_CMusEngClipVideoPlayer();
- CleanupStack::PushL( self );
- self->ConstructL();
- return self;
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-UT_CMusEngClipVideoPlayer::~UT_CMusEngClipVideoPlayer()
- {
- // NOP
- }
-
-// -----------------------------------------------------------------------------
-// Default constructor
-// -----------------------------------------------------------------------------
-//
-UT_CMusEngClipVideoPlayer::UT_CMusEngClipVideoPlayer()
- {
- // NOP
- }
-
-// -----------------------------------------------------------------------------
-// Second phase construct
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::ConstructL()
- {
- // The ConstructL from the base class CEUnitTestSuiteClass must be called.
- // It generates the test case table.
- CEUnitTestSuiteClass::ConstructL();
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::SetupL()
- {
- iMceSession = CMceOutSession::NewL();
- CMceVideoStream* videoStream = CMceVideoStream::NewLC();
- CMceRtpSink* rtpsink = CMceRtpSink::NewLC();
- videoStream->AddSinkL( rtpsink );
- CleanupStack::Pop( rtpsink );
- CMceFileSource* fileSource =
- CMceFileSource::NewLC( *iMceSession->iManager, KTestVideoFileName() );
- fileSource->DisableL();
- videoStream->SetSourceL( fileSource );
- CleanupStack::Pop( fileSource );
- iMceSession->AddStreamL( videoStream );
- CleanupStack::Pop( videoStream );
- iClipVideoPlayer =
- CMusEngClipVideoPlayer::NewL(
- iDisplayHandlerStub,
- iLcAudioControlStub );
- iClipVideoPlayer->SetMceSession( iMceSession );
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::Teardown()
- {
- delete iClipVideoPlayer;
- delete iMceSession;
- iLcAudioControlStub.Reset();
- }
-
-
-// TEST CASES
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_HasClipEndedL()
- {
- CMceSession* invalidMceSession = CMceOutSession::NewL();
- CleanupStack::PushL( invalidMceSession );
-
- // Try before establishing the session
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // Try with session, but without video out stream
- iClipVideoPlayer->SetMceSession( invalidMceSession );
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // Try with video out stream without source...
- CMceVideoStream* videoStream = CMceVideoStream::NewLC();
- videoStream->AddSinkL( CMceRtpSink::NewLC() );
- CleanupStack::Pop();
- invalidMceSession->AddStreamL( videoStream );
- CleanupStack::Pop( videoStream );
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // And with enabled source and stream
- CMceFileSource* fileSource =
- CMceFileSource::NewLC(
- *invalidMceSession->iManager, KTestVideoFileName() );
- videoStream->SetSourceL( fileSource );
- CleanupStack::Pop( fileSource );
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // try with different position and duration
- fileSource->iPosition = 90;
- fileSource->iDuration = 111;
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // Disabled source
- fileSource->DisableL();
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // Disabled stream
- videoStream->iState = CMceMediaStream::EDisabled;
- EUNIT_ASSERT( !iClipVideoPlayer->HasClipEnded() )
-
- // and finaly try with "real" end of clip
- fileSource->iPosition = 0;
- fileSource->iDuration = 111;
-
- EUNIT_ASSERT( iClipVideoPlayer->HasClipEnded() )
-
- CleanupStack::PopAndDestroy( invalidMceSession );
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcVideoPlayerStateL()
- {
- // iMceSession not set
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EUnavailable ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
- iClipVideoPlayer->SetMceSession( iMceSession );
-
- // Establish Session and simulate media playing.
- iMceSession->iState = CMceSession::EEstablished;
- for ( TInt i = 0; i < iMceSession->Streams().Count(); i++ )
- {
- iMceSession->Streams()[i]->iState = CMceMediaStream::EStreaming;
- }
-
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EPlaying ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- // Media streams unavailable
- iMceSession->Streams()[0]->iState = CMceMediaStream::EUninitialized;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EUnavailable ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- // All other stream states
- iMceSession->Streams()[0]->iState = CMceMediaStream::EInitialized;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EInit ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::EBuffering;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EBuffering ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::EIdle;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EPaused ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::EDisabled;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EPaused ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::EStreaming;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EPlaying ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::ENoResources;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EUnavailable ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::ETranscodingRequired;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EUnavailable ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
-
- iMceSession->Streams()[0]->iState = CMceMediaStream::ETranscoding;
- EUNIT_ASSERT_EQUALS( TInt( MLcVideoPlayer::EUnavailable ),
- TInt( iClipVideoPlayer->LcVideoPlayerState() ) )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcPlayL()
- {
- // MCE session not set
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE( iClipVideoPlayer->LcPlayL(), KErrNotReady )
-
- // File source does not exist
- iClipVideoPlayer->SetMceSession( iMceSession );
- iMceSession->Streams()[ 0 ]->SetSourceL( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE( iClipVideoPlayer->LcPlayL(), KErrNotFound )
-
- // Play
- CMceFileSource* fileSource =
- CMceFileSource::NewLC( *iMceSession->iManager, KTestVideoFileName() );
- fileSource->DisableL();
- iMceSession->Streams()[ 0 ]->SetSourceL( fileSource );
- CleanupStack::Pop( fileSource );
- EUNIT_ASSERT( !iClipVideoPlayer->LcIsPlayingL() )
- iClipVideoPlayer->LcPlayL();
- EUNIT_ASSERT( iClipVideoPlayer->LcIsPlayingL() )
-
- // Try to play again
- iClipVideoPlayer->LcPlayL();
- EUNIT_ASSERT( iClipVideoPlayer->LcIsPlayingL() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcPauseL()
- {
- // MCE session not set
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE( iClipVideoPlayer->LcPauseL(), KErrNotReady )
-
- // File source does not exist
- iClipVideoPlayer->SetMceSession( iMceSession );
- iMceSession->Streams()[ 0 ]->SetSourceL( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE( iClipVideoPlayer->LcPauseL(), KErrNotFound )
-
- // Pause
- CMceFileSource* fileSource =
- CMceFileSource::NewLC( *iMceSession->iManager, KTestVideoFileName() );
- fileSource->EnableL();
- iMceSession->Streams()[ 0 ]->SetSourceL( fileSource );
- CleanupStack::Pop( fileSource );
- EUNIT_ASSERT( iClipVideoPlayer->LcIsPlayingL() )
- iClipVideoPlayer->LcPauseL();
- EUNIT_ASSERT( !iClipVideoPlayer->LcIsPlayingL() )
-
- // Try to pause already paused clip
- iClipVideoPlayer->LcPauseL();
- EUNIT_ASSERT( !iClipVideoPlayer->LcIsPlayingL() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcIsPlayingL()
- {
- // MCE session not set
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE( iClipVideoPlayer->LcIsPlayingL(), KErrNotReady )
-
- // Player is not playing when file source is disabled
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->DisableL();
- EUNIT_ASSERT( !iClipVideoPlayer->LcIsPlayingL() )
-
- // Player is playing when file source is enabled
- file->EnableL();
- EUNIT_ASSERT( iClipVideoPlayer->LcIsPlayingL() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_SetLcFileNameL()
- {
- // Set file before iMceSession is set
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- iClipVideoPlayer->SetMceSession( NULL );
- iClipVideoPlayer->SetLcFileNameL( KTestAvcVideoFileName() );
- EUNIT_ASSERT_EQUALS( iClipVideoPlayer->LcFileName(), KTestAvcVideoFileName() )
- EUNIT_ASSERT_EQUALS( file->iFileName, KTestVideoFileName() )
-
- // Set file after session is set
- iClipVideoPlayer->SetMceSession( iMceSession );
- file->iFileName = KTestAvcVideoFileName();
- iClipVideoPlayer->SetLcFileNameL( KTestVideoFileName() );
- EUNIT_ASSERT_EQUALS( iClipVideoPlayer->LcFileName(), KTestVideoFileName() )
- EUNIT_ASSERT_EQUALS( file->iFileName, KTestVideoFileName() )
-
- // Set DRM protected file, file names not changed
- MUSENG_EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->SetLcFileNameL( KMusDrmProtectedFileName() ),
- KErrPermissionDenied )
- EUNIT_ASSERT_EQUALS( iClipVideoPlayer->LcFileName(), KTestVideoFileName() )
- EUNIT_ASSERT_EQUALS( file->iFileName, KTestVideoFileName() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcFastForwardL()
- {
- // Try before establishment
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFastForwardL( ETrue ), KErrNotReady )
-
- // Establish session, simulate position and duration and try again
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->iDuration = KMusEngTestFileDuration;
- file->iPosition = KMusEngTestFilePosition;
- iClipVideoPlayer->LcFastForwardL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() > 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Simulate fastforwarding for a while
- User::After( 1000 );
-
- // Try to fastforward when already fastforwarding, will be ignored
- iClipVideoPlayer->LcFastForwardL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() > 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Stop fastforwarding
- iClipVideoPlayer->LcFastForwardL( EFalse );
- EUNIT_ASSERT( file->iPosition > KMusEngTestFilePosition )
- EUNIT_ASSERT( file->iPosition != file->iDuration )
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Try to stop fastforwarding again, leaves
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFastForwardL( EFalse ), KErrAlreadyExists )
-
- // Start fastrewinding
- iClipVideoPlayer->LcFastRewindL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() > 0 )
-
- // Start fastforwarding, rewinding should be stopped and FFWD started
- iClipVideoPlayer->LcFastForwardL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() > 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Simulate fastforwarding for a while
- User::After( 1000 );
-
- // Simulate that clip is almost in end and fastforwarding would have
- // continued over end, position should be set to duration.
- file->iPosition = TTimeIntervalMicroSeconds( file->iDuration.Int64() - 1 );
- iClipVideoPlayer->LcFastForwardL( EFalse );
- EUNIT_ASSERT( file->iPosition == file->iDuration )
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT_EQUALS( 0, iClipVideoPlayer->iFFWDStartTime.Int64() )
- EUNIT_ASSERT_EQUALS( 0, iClipVideoPlayer->iFRWDStartTime.Int64() )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcFastRewindL()
- {
- // Try before establishment
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFastRewindL( ETrue ), KErrNotReady )
-
- // Establish session, simulate position and duration and try again
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->iDuration = KMusEngTestFileDuration;
- file->iPosition = KMusEngTestFilePosition;
- iClipVideoPlayer->LcFastRewindL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() > 0 )
-
- // Simulate fastrewinding for a while
- User::After( 1000 );
-
- // Try to fastrewind when already fastrewinding, will be ignored
- iClipVideoPlayer->LcFastRewindL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() > 0 )
-
- // Stop fastrewinding
- iClipVideoPlayer->LcFastRewindL( EFalse );
- EUNIT_ASSERT( file->iPosition < KMusEngTestFilePosition )
- EUNIT_ASSERT( file->iPosition != TTimeIntervalMicroSeconds( 0 ) )
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Try to stop fastrewinding again, leaves
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFastRewindL( EFalse ), KErrAlreadyExists )
-
- // Start fastforwarding
- iClipVideoPlayer->LcFastForwardL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() >= 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
-
- // Start fastrewinding, forwarding should be stopped and FFWD started
- iClipVideoPlayer->LcFastRewindL( ETrue );
- EUNIT_ASSERT( !file->iIsEnabled );
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() >= 0 )
-
- // Simulate that clip has just begun and fastrewinding would have
- // continued over beginning, position should be set to zero.
-
- file->iPosition = TTimeIntervalMicroSeconds( 1 );
-
- // Simulate fastrewinding for a while
- User::After( 1000 );
-
- iClipVideoPlayer->LcFastRewindL( EFalse );
- EUNIT_ASSERT( file->iPosition == TTimeIntervalMicroSeconds( 0 ) )
- EUNIT_ASSERT( !file->iIsEnabled )
- EUNIT_ASSERT( iClipVideoPlayer->iFFWDStartTime.Int64() == 0 )
- EUNIT_ASSERT( iClipVideoPlayer->iFRWDStartTime.Int64() == 0 )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcFilePositionL()
- {
- // Try before establishment
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFilePositionL(), KErrNotReady )
-
- // Establish session and try again
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->iPosition = 2000000;
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 ==
- file->iPosition.Int64() )
-
- // Ask position while fastforwarding, it should be bigger than real position
- iClipVideoPlayer->LcFastForwardL( ETrue );
- User::After( 1000000 ); // We have to wait since dividing in LcFilePositionL and
- // multiplying before comparison loses difference
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 >
- file->iPosition.Int64() )
-
- // Ask position while fastforwarding beyond end of clip, clip duration is
- // returned
- file->iPosition = file->iDuration;
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 ==
- file->iDuration.Int64() )
-
- // Stop fastforwarding, start fastrewinding, position is set to the end clip
- iClipVideoPlayer->LcFastForwardL( EFalse );
- iClipVideoPlayer->LcFastRewindL( ETrue );
- User::After( 1000000 ); // We have to wait since dividing in LcFilePositionL and
- // multiplying before comparison loses difference
-
- // Ask position while fastrewinding, it should be smaller than real
- // position
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 <
- file->iPosition.Int64() )
-
- // Ask position while fastrewinding beyond the beginning of clip, zero
- // returned
- file->iPosition = 0;
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 == 0 )
-
- // Asking position when rewinded to beginning but rewinding has ended
- // and clip has not ended (position should not be altered in that case)
- iClipVideoPlayer->iRewindedToBeginning = ETrue;
- file->iPosition = 0;
- iClipVideoPlayer->iFRWDStartTime = TTime( 0 );
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 == 0 )
-
- // Position has proceeded from beginning, rewinding to beginning info
- // is cleared.
- file->iPosition = 10000000;
- iClipVideoPlayer->iFRWDStartTime = TTime( 0 );
- EUNIT_ASSERT( iClipVideoPlayer->LcFilePositionL().Int() * 1000000 == 10000000 )
- EUNIT_ASSERT( iClipVideoPlayer->iRewindedToBeginning == EFalse )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcFileDurationL()
- {
- // Try before establishment
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->LcFileDurationL(), KErrNotReady )
-
- // Establish session and try again
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->iDuration = 2000000;
- EUNIT_ASSERT( iClipVideoPlayer->LcFileDurationL().Int() * 1000000 ==
- file->iDuration.Int64() )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_SetLcFilePositionL()
- {
- TTimeIntervalSeconds time( 20 );
-
- // Try before establishment
- iClipVideoPlayer->SetMceSession( NULL );
- EUNIT_ASSERT_SPECIFIC_LEAVE(
- iClipVideoPlayer->SetLcFilePositionL( time ), KErrNotReady )
-
- // Normal case with already disabled file source
- iClipVideoPlayer->SetMceSession( iMceSession );
- CMceFileSource* file = MusEngMceUtils::GetFileSourceL( *iMceSession );
- file->iIsEnabled = EFalse;
- iClipVideoPlayer->SetLcFilePositionL( time );
- EUNIT_ASSERT( file->iPosition.Int64() ==
- static_cast< TInt64 >( time.Int() ) * 1000000 )
- EUNIT_ASSERT( !file->iIsEnabled )
-
- // Normal case with enabled file source
- TTimeIntervalSeconds anotherTime( 30 );
- file->iIsEnabled = ETrue;
- iClipVideoPlayer->SetLcFilePositionL( anotherTime );
- EUNIT_ASSERT( file->iPosition.Int64() ==
- static_cast< TInt64 >( anotherTime.Int() ) * 1000000 )
- EUNIT_ASSERT( file->iIsEnabled )
- }
-
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcWindowL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcWindow() == iClipVideoPlayer )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcCameraControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcCameraControl() == NULL )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcSourceFileControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcSourceFileControl() == iClipVideoPlayer )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcDestinationFileControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcDestinationFileControl() == NULL )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcAudioControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcAudioControl() == &iLcAudioControlStub )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcZoomControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcZoomControl() == NULL )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void UT_CMusEngClipVideoPlayer::UT_LcBrightnessControlL()
- {
- EUNIT_ASSERT( iClipVideoPlayer->LcBrightnessControl() == NULL )
- }
-
-// TEST TABLE
-
-EUNIT_BEGIN_TEST_TABLE(
- UT_CMusEngClipVideoPlayer,
- "UT_CMusEngClipVideoPlayer",
- "UNIT" )
-
-EUNIT_TEST(
- "HasClipEnded - test ",
- "CMusEngClipVideoPlayer",
- "HasClipEnded",
- "FUNCTIONALITY",
- SetupL, UT_HasClipEndedL, Teardown)
-
-EUNIT_TEST(
- "LcVideoPlayerState - test ",
- "CMusEngClipVideoPlayer",
- "LcVideoPlayerState",
- "FUNCTIONALITY",
- SetupL, UT_LcVideoPlayerStateL, Teardown)
-
-EUNIT_TEST(
- "LcPlayL - test ",
- "CMusEngClipVideoPlayer",
- "LcPlayL",
- "FUNCTIONALITY",
- SetupL, UT_LcPlayL, Teardown)
-
-EUNIT_TEST(
- "LcPauseL - test ",
- "CMusEngClipVideoPlayer",
- "LcPauseL",
- "FUNCTIONALITY",
- SetupL, UT_LcPauseL, Teardown)
-
-EUNIT_TEST(
- "LcIsPlayingL - test ",
- "CMusEngClipVideoPlayer",
- "LcIsPlayingL",
- "FUNCTIONALITY",
- SetupL, UT_LcIsPlayingL, Teardown)
-
-EUNIT_TEST(
- "SetLcFileNameL - test ",
- "CMusEngClipVideoPlayer",
- "SetLcFileNameL",
- "FUNCTIONALITY",
- SetupL, UT_SetLcFileNameL, Teardown)
-
-EUNIT_TEST(
- "LcFastForwardL - test ",
- "CMusEngClipVideoPlayer",
- "LcFastForwardL",
- "FUNCTIONALITY",
- SetupL, UT_LcFastForwardL, Teardown)
-
-EUNIT_TEST(
- "LcFastRewindL - test ",
- "CMusEngClipVideoPlayer",
- "LcFastRewindL",
- "FUNCTIONALITY",
- SetupL, UT_LcFastRewindL, Teardown)
-
-EUNIT_TEST(
- "LcFilePositionL - test ",
- "CMusEngClipVideoPlayer",
- "LcFilePositionL",
- "FUNCTIONALITY",
- SetupL, UT_LcFilePositionL, Teardown)
-
-EUNIT_TEST(
- "LcFileDurationL - test ",
- "CMusEngClipVideoPlayer",
- "LcFileDurationL",
- "FUNCTIONALITY",
- SetupL, UT_LcFileDurationL, Teardown)
-
-EUNIT_TEST(
- "SetLcFilePositionL - test ",
- "CMusEngClipVideoPlayer",
- "SetLcFilePositionL",
- "FUNCTIONALITY",
- SetupL, UT_SetLcFilePositionL, Teardown)
-
-EUNIT_TEST(
- "LcWindow - test ",
- "CMusEngClipVideoPlayer",
- "LcWindow",
- "FUNCTIONALITY",
- SetupL, UT_LcWindowL, Teardown)
-
-EUNIT_TEST(
- "LcCameraControl - test ",
- "CMusEngClipVideoPlayer",
- "LcCameraControl",
- "FUNCTIONALITY",
- SetupL, UT_LcCameraControlL, Teardown)
-
-EUNIT_TEST(
- "LcSourceFileControl - test ",
- "CMusEngClipVideoPlayer",
- "LcSourceFileControl",
- "FUNCTIONALITY",
- SetupL, UT_LcSourceFileControlL, Teardown)
-
-EUNIT_TEST(
- "LcDestinationFileControl - test ",
- "CMusEngClipVideoPlayer",
- "LcDestinationFileControl",
- "FUNCTIONALITY",
- SetupL, UT_LcDestinationFileControlL, Teardown)
-
-EUNIT_TEST(
- "LcAudioControl - test ",
- "CMusEngClipVideoPlayer",
- "LcAudioControl",
- "FUNCTIONALITY",
- SetupL, UT_LcAudioControlL, Teardown)
-
-EUNIT_TEST(
- "LcZoomControl - test ",
- "CMusEngClipVideoPlayer",
- "LcZoomControl",
- "FUNCTIONALITY",
- SetupL, UT_LcZoomControlL, Teardown)
-
-EUNIT_TEST(
- "LcBrightnessControl - test ",
- "CMusEngClipVideoPlayer",
- "LcBrightnessControl",
- "FUNCTIONALITY",
- SetupL, UT_LcBrightnessControlL, Teardown)
-
-EUNIT_END_TEST_TABLE
-
-// END OF FILE
-