--- a/mmsharing/mmshmanagersrv/tsrc/ut_managersrv/src/UT_CMusApplicationManager.cpp Thu Aug 19 09:51:39 2010 +0300
+++ b/mmsharing/mmshmanagersrv/tsrc/ut_managersrv/src/UT_CMusApplicationManager.cpp Tue Aug 31 15:12:07 2010 +0300
@@ -24,6 +24,8 @@
#include "musmanagerservercommon.h"
#include "mussessionproperties.h"
#include "mustesthelp.h"
+#include "mussettings.h"
+#include "mussesseioninformationapi.h"
#include <apgcli.h>
#include <apgtask.h>
#include <e32std.h>
@@ -92,7 +94,8 @@
{
delete iManager;
iManager = NULL;
- PropertyHelper::Close();
+ PropertyHelper::Close();
+ Dll::FreeTls(); // Used by the RProcess and TFindProcess stubs
}
@@ -106,7 +109,11 @@
void UT_CMusApplicationManager::UT_CMusApplicationManager_NewLL()
{
EUNIT_ASSERT( iManager );
- EUNIT_ASSERT( iManager->iApaSession.iConnected );
+ TInt fastMode;
+ User::LeaveIfError( RProperty::Get( NMusSessionApi::KCategoryUid,
+ NMusSessionApi::KFastMode,
+ fastMode ) );
+ EUNIT_ASSERT_EQUALS( TInt( MusSettingsKeys::EFastModeOff ), fastMode );
}
@@ -118,7 +125,6 @@
{
CMusApplicationManager* manager = CMusApplicationManager::NewLC();
EUNIT_ASSERT( manager );
- EUNIT_ASSERT( manager->iApaSession.iConnected );
CleanupStack::PopAndDestroy( manager );
}
@@ -129,12 +135,10 @@
//
void UT_CMusApplicationManager::UT_CMusApplicationManager_ApplicationRunningL()
{
- TApaTask::iApplicationExist = EFalse;
- EUNIT_ASSERT( !iManager->ApplicationRunning() );
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EExists )
- TApaTask::iApplicationExist = ETrue;
- EUNIT_ASSERT( iManager->ApplicationRunning() );
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EExists )
+ EUNIT_ASSERT( !iManager->ApplicationRunning() )
+
+ iManager->StartApplicationL();
+ EUNIT_ASSERT( iManager->ApplicationRunning() )
}
@@ -145,15 +149,13 @@
//
void UT_CMusApplicationManager::UT_CMusApplicationManager_StartApplicationLL()
{
- TApaTask::iApplicationExist = EFalse;
+ EUNIT_ASSERT( !iManager->ApplicationRunning() )
iManager->StartApplicationL();
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EExists )
- EUNIT_ASSERT_EQUALS( PropertyHelper::GetCalledFunction(), RProperty::ENone )
-
- TApaTask::iApplicationExist = ETrue;
+ EUNIT_ASSERT_EQUALS( PropertyHelper::GetCalledFunction(), RProperty::EDefine )
+ EUNIT_ASSERT( iManager->ApplicationRunning() )
+
iManager->StartApplicationL();
- EUNIT_ASSERT_EQUALS( PropertyHelper::GetCalledFunction(), RProperty::ENone )
-
+ EUNIT_ASSERT( iManager->ApplicationRunning() )
}
@@ -164,16 +166,17 @@
//
void UT_CMusApplicationManager::UT_CMusApplicationManager_StopApplicationLL()
{
- TApaTask::iApplicationExist = EFalse;
- iManager->StopApplicationL();
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EExists )
+ // MuS not running
+ iManager->StopApplicationL();
-
- TApaTask::iApplicationExist = ETrue;
+ // MuS running
+ User::LeaveIfError(
+ Dll::SetTls( reinterpret_cast< TAny* >( 1 ) ) );
+ // TLS is used by TFindProcess stub
iManager->StopApplicationL();
TInt availability = MultimediaSharing::EMultimediaSharingAvailable;
- TUint key(NMusSessionApi::KStatus);
- RProperty::Get( key,availability);
+ TUint key( NMusSessionApi::KStatus );
+ RProperty::Get( key, availability );
EUNIT_ASSERT_EQUALS( PropertyHelper::GetCalledFunction(), RProperty::EDefine )
EUNIT_ASSERT_EQUALS( availability,
MultimediaSharing::EMultimediaSharingNotAvailable )
@@ -181,18 +184,11 @@
// ---------------------------------------------------------------------------
-// Asserts that tested method calls TApaTask::Exists and if task exists it
-// calls TApaTask::BringToForeground.
+//
// ---------------------------------------------------------------------------
//
void UT_CMusApplicationManager::UT_CMusApplicationManager_ShowApplicationLL()
{
- TApaTask::iApplicationExist = EFalse;
- iManager->ShowApplicationL();
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EExists )
- TApaTask::iApplicationExist = ETrue;
- iManager->ShowApplicationL();
- EUNIT_ASSERT( TApaTask::iApaTaskCalledFunction == TApaTask::EBringToForeground )
}
@@ -213,7 +209,7 @@
array->AppendL( _L( "e" ) );
array->AppendL( _L( "f" ) );
array->AppendL( _L( "g" ) );
- array->AppendL( _L( "h" ) );
+ array->AppendL( _L( "0" ) ); //EFastModeOn
iManager->WriteSessionPropertiesL(
MultimediaSharing::EMusLiveVideo,
@@ -229,7 +225,40 @@
*array ), KErrGeneral );
PropertyHelper::SetErrorCode(KErrNone);
+
+
+ MultimediaSharingSettings::iVideoDirection = MusSettingsKeys::ETwoWayVideo;
+ iManager->WriteSessionPropertiesL(
+ MultimediaSharing::EMusLiveVideo,
+ (MultimediaSharing::TMusAvailabilityStatus) KErrNone,
+ *array );
+
+ TInt val;
+ User::LeaveIfError( RProperty::Get( NMusSessionApi::KCategoryUid,
+ NMusSessionApi::KUseCase,
+ val ) );
+
+ MultimediaSharing::TMusUseCase usecase =
+ static_cast< MultimediaSharing::TMusUseCase >( val );
+
+ EUNIT_ASSERT( usecase == MultimediaSharing::EMusTwoWayVideo );
+
+
+ //Ensure if fast mode key is "disabled", value from session params
+ //won't be published
+ User::LeaveIfError( RProperty::Set( NMusSessionApi::KCategoryUid,
+ NMusSessionApi::KFastMode,
+ MusSettingsKeys::EFastModeDisabled ) );
+ iManager->WriteSessionPropertiesL(
+ MultimediaSharing::EMusLiveVideo,
+ (MultimediaSharing::TMusAvailabilityStatus) KErrNone,
+ *array );
+ User::LeaveIfError( RProperty::Get( NMusSessionApi::KCategoryUid,
+ NMusSessionApi::KFastMode,
+ val ) );
+ EUNIT_ASSERT_EQUALS( TInt( MusSettingsKeys::EFastModeDisabled ), val );
+
CleanupStack::PopAndDestroy( array );
}
@@ -276,18 +305,6 @@
// ---------------------------------------------------------------------------
-// Asserts that TApaTaskList::FindApp is called by tested method.
-// ---------------------------------------------------------------------------
-//
-void UT_CMusApplicationManager::UT_CMusApplicationManager_GetApaTaskL()
- {
- TApaTask::iApplicationExist = EFalse;
- iManager->GetApaTask();
- EUNIT_ASSERT( TApaTaskList::iCalledFunction == TApaTaskList::EFindApp )
- }
-
-
-// ---------------------------------------------------------------------------
// Sets a videosharing status. Asserts that RProperty leaves are passed
// correctly to user and RProperty::Define is called.
// ---------------------------------------------------------------------------
@@ -306,6 +323,114 @@
}
+// ---------------------------------------------------------------------------
+// CallProviderL Test
+// ---------------------------------------------------------------------------
+//
+void UT_CMusApplicationManager::UT_CMusApplicationManager_CallProviderLL()
+ {
+ TInt error = KErrNone;
+
+ // Use Publish & Subscribe Keys to set CallProvider Name
+ _LIT( KProviderName1, "MultimediaSharing");
+ _LIT8( KProviderNameTest1, "MultimediaSharing");
+
+ _LIT( KProviderNameEmpty1, "");
+ _LIT8( KProviderNameEmptyTest1, "");
+
+
+ // Valid Test:
+ TRAP( error, RProperty::Set(
+ NMusSessionInformationApi::KCategoryUid,
+ NMusSessionInformationApi::KMUSCallProvider,
+ KProviderName1 ));
+
+ if ( error == KErrNoMemory ) User::Leave( error );
+ EUNIT_ASSERT ( error == KErrNone );
+
+ TBuf8<RProperty::KMaxPropertySize> providerName ;
+ iManager->CallProviderL( providerName );
+
+ EUNIT_ASSERT( providerName == KProviderNameTest1 );
+
+
+ //Empty Test
+ TRAP( error, RProperty::Set(
+ NMusSessionInformationApi::KCategoryUid,
+ NMusSessionInformationApi::KMUSCallProvider,
+ KProviderNameEmpty1 ));
+
+ if ( error == KErrNoMemory ) User::Leave( error );
+ EUNIT_ASSERT ( error == KErrNone );
+
+ iManager->CallProviderL( providerName );
+
+ EUNIT_ASSERT( providerName == KProviderNameEmptyTest1 );
+ }
+
+
+// ---------------------------------------------------------------------------
+// ResolvePluginName Test
+// ---------------------------------------------------------------------------
+//
+void UT_CMusApplicationManager::UT_CMusApplicationManager_ResolvePluginNameLL()
+ {
+ // Default Engine Name to be returned
+ TInt error = KErrNone;
+ _LIT( KEngineName, "MultimediaSharing");
+ _LIT8( KEngineTestName, "MultimediaSharing");
+
+ // Test String for the Publish/Subscribe Keys.
+ _LIT( KProviderName, "MultimediaSharing");
+ _LIT( KProviderName1, "CS");
+
+ TBuf8<RProperty::KMaxPropertySize> engineName ;
+
+ // Use Publish & Subscribe Keys to set Engine Name as
+ // 1. MultimediaSharing [Exact Name]
+ // 2. CS [No Match Found, Default MultiMediaSharing will be picked]
+
+ // 1. MultimediaSharing [Exact Name]
+
+ TRAP( error, RProperty::Set(
+ NMusSessionInformationApi::KCategoryUid,
+ NMusSessionInformationApi::KMUSCallProvider,
+ KProviderName ));
+
+ if ( error == KErrNoMemory ) User::Leave( error );
+ EUNIT_ASSERT ( error == KErrNone );
+
+ iManager->ResolvePluginNameL( engineName );
+ EUNIT_ASSERT( engineName == KEngineTestName );
+
+ // 2. CS [No Match Found, Default MultiMediaSharing will be picked]
+ TRAP( error, RProperty::Set(
+ NMusSessionInformationApi::KCategoryUid,
+ NMusSessionInformationApi::KMUSCallProvider,
+ KProviderName1 ));
+
+ if ( error == KErrNoMemory ) User::Leave( error );
+ EUNIT_ASSERT ( error == KErrNone );
+
+ iManager->ResolvePluginNameL( engineName );
+ EUNIT_ASSERT( engineName == KEngineTestName );
+ }
+
+// ---------------------------------------------------------------------------
+// Command line arg test
+// ---------------------------------------------------------------------------
+//
+void UT_CMusApplicationManager::UT_CMusApplicationManager_CreateCommandLineArgsLCL()
+ {
+ _LIT( KEnginePluginName, "MultimediaSharing" );
+ HBufC* cmdLineArgs = iManager->CreateCommandLineArgsLC();
+
+ EUNIT_ASSERT( cmdLineArgs != NULL )
+ EUNIT_ASSERT_EQUALS( KEnginePluginName(), *cmdLineArgs )
+
+ CleanupStack::PopAndDestroy( cmdLineArgs );
+ }
+
// ======== EUNIT TEST TABLE ========
@@ -378,17 +503,31 @@
SetupL, UT_CMusApplicationManager_SetPropertyL2L, Teardown )
EUNIT_TEST(
- "GetApaTask - test ",
- "CMusApplicationManager",
- "GetApaTask",
- "FUNCTIONALITY",
- SetupL, UT_CMusApplicationManager_GetApaTaskL, Teardown )
-
-EUNIT_TEST(
"SetStatusL - test ",
"CMusApplicationManager",
"SetStatusL",
"FUNCTIONALITY",
SetupL, UT_CMusApplicationManager_SetStatusLL, Teardown )
+EUNIT_TEST(
+ "CallProviderL - test ",
+ "CMusApplicationManager",
+ "CallProviderL",
+ "FUNCTIONALITY",
+ SetupL, UT_CMusApplicationManager_CallProviderLL, Teardown )
+
+EUNIT_TEST(
+ "ResolvePluginNameL - test ",
+ "CMusApplicationManager",
+ "ResolvePluginNameL",
+ "FUNCTIONALITY",
+ SetupL, UT_CMusApplicationManager_ResolvePluginNameLL, Teardown )
+
+EUNIT_TEST(
+ "CreateCommandLineLC - test ",
+ "CMusApplicationManager",
+ "CreateCommandLineLC",
+ "FUNCTIONALITY",
+ SetupL, UT_CMusApplicationManager_CreateCommandLineArgsLCL, Teardown )
+
EUNIT_END_TEST_TABLE