common/tools/ats/smoketest/profiles/src/ProfileSmokeTestModuleBlocks.cpp
changeset 739 552776214487
parent 722 d34d2cabd32d
child 872 17498133d9ad
--- a/common/tools/ats/smoketest/profiles/src/ProfileSmokeTestModuleBlocks.cpp	Thu Nov 05 15:33:29 2009 +0000
+++ b/common/tools/ats/smoketest/profiles/src/ProfileSmokeTestModuleBlocks.cpp	Thu Nov 05 12:29:50 2009 +0000
@@ -21,6 +21,8 @@
 #include <Stiftestinterface.h>
 #include <MProEngEngine.h>
 #include <MProEngProfile.h>
+#include <MProEngProfileName.h>
+#include <MProEngToneSettings.h>
 #include <ProEngFactory.h>
 #include <Profile.hrh>
 #include "ProfileSmokeTestModule.h"
@@ -35,10 +37,12 @@
 //const ?type ?constant_var = ?constant;
 _LIT( KProfileSmokeTestModule, "ProfileSmokeTestModule" );
 _LIT( KProfile, "Profile: %S" );
+_LIT( KRingingVolume, "Ringing Volume: %d");
 
-_LIT(KGeneral, "General");
-_LIT(KSilent,  "Silent");
-_LIT(KMeeting, "Meeting");
+_LIT(KGeneral, 	"General");
+_LIT(KSilent,  	"Silent");
+_LIT(KMeeting, 	"Meeting");
+_LIT(KOutdoor,	"Outdoor");
 
 // MACROS
 //#define ?macro ?macro_def
@@ -106,7 +110,8 @@
         // Copy this line for every implemented function.
         // First string is the function name used in TestScripter script file.
         // Second is the actual implementation member function. 
-        ENTRY( "SetProfile", CProfileSmokeTestModule::SetProfileL ),
+        ENTRY( "CheckActiveProfile", CProfileSmokeTestModule::CheckActiveProfileL),
+        ENTRY( "SetActiveProfile", CProfileSmokeTestModule::SetActiveProfileL ),
         //ADD NEW ENTRY HERE
         // [test cases entries] - Do not remove
         };
@@ -119,14 +124,73 @@
     }
 
 // -----------------------------------------------------------------------------
+// CProfileSmokeTestModule::CheckActiveProfileL
+// Changes the current active profile according to the parameter
+// -----------------------------------------------------------------------------
+//
+TInt CProfileSmokeTestModule::CheckActiveProfileL( CStifItemParser& aItem )
+    {
+    // Print to UI
+    _LIT( KSetProfile, "In CheckActiveProfile" );
+    TestModuleIf().Printf( 0, KProfileSmokeTestModule, KSetProfile );
+    // Print to log file
+    iLog->Log( KSetProfile );
+
+	MProEngEngine* engine = ProEngFactory::NewEngineLC( iFs );
+	MProEngProfile* active = engine->ActiveProfileLC();
+    
+    TPtrC expectedName;
+    if ( aItem.GetNextString( expectedName ) == KErrNone )
+    	{
+    	TL( active->ProfileName().Name() == expectedName)
+    	}
+    
+    TInt expectedRingVol;
+    if ( aItem.GetNextInt( expectedRingVol ) == KErrNone )
+    	{
+    	TL(active->ToneSettings().RingingVolume() == expectedRingVol);
+    	}
+    
+    TInt expectedRingType;
+    if ( aItem.GetNextInt( expectedRingType ) == KErrNone )
+    	{
+    	TL(active->ToneSettings().RingingType() == expectedRingType);
+    	}
+    
+    TPtrC vibrate;
+    if ( aItem.GetNextString(vibrate) == KErrNone )
+    	{
+    	TBool expectedVibrate;
+    	if ( vibrate == _L("true"))
+    		{
+    		expectedVibrate = ETrue;
+    		}
+    	else if ( vibrate == _L("false"))
+    		{
+    		expectedVibrate = EFalse;
+    		}
+    	else
+    		{
+    		User::Leave(KErrArgument);
+    		}
+    	
+    	TL(expectedVibrate == active->ToneSettings().VibratingAlert());
+    	}
+    
+    CleanupStack::PopAndDestroy(2);
+    
+    return KErrNone;
+    }
+
+// -----------------------------------------------------------------------------
 // CProfileSmokeTestModule::SetProfileL
 // Changes the current active profile according to the parameter
 // -----------------------------------------------------------------------------
 //
-TInt CProfileSmokeTestModule::SetProfileL( CStifItemParser& aItem )
+TInt CProfileSmokeTestModule::SetActiveProfileL( CStifItemParser& aItem )
     {
     // Print to UI
-    _LIT( KSetProfile, "In SetProfile" );
+    _LIT( KSetProfile, "In SetActiveProfile" );
     TestModuleIf().Printf( 0, KProfileSmokeTestModule, KSetProfile );
     // Print to log file
     iLog->Log( KSetProfile );
@@ -152,6 +216,11 @@
     		// set to general
     		engine->SetActiveProfileL( EProfileGeneralId );
     		}
+    	else if (profile == KOutdoor)
+    		{
+    		// set to outdoors
+    		engine->SetActiveProfileL( EProfileOutdoorId );
+    		}
 
     	CleanupStack::PopAndDestroy();
     	}
@@ -159,6 +228,7 @@
     return KErrNone;
     }
 
+
 // -----------------------------------------------------------------------------
 // CProfileSmokeTestModule::?member_function
 // ?implementation_description