# HG changeset patch # User brendand # Date 1257424190 0 # Node ID 5527762144873d1ab4c3848ba4deb41589bb5a3b # Parent 53abda826a9f66ddd9c9ce70c78832f28bd8de6d Test: Tweaked Profile tests and added AppInstall diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/Bmarm/AppInstallSmokeTestModuleU.DEF --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/Bmarm/AppInstallSmokeTestModuleU.DEF Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,3 @@ +EXPORTS + LibEntryL__FR13CTestModuleIf @ 1 NONAME R3UNUSED ; LibEntryL(CTestModuleIf &) + diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/Bwins/AppInstallSmokeTestModuleU.DEF --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/Bwins/AppInstallSmokeTestModuleU.DEF Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,3 @@ +EXPORTS + ?LibEntryL@@YAPAVCScriptBase@@AAVCTestModuleIf@@@Z @ 1 NONAME ; class CScriptBase * __cdecl LibEntryL(class CTestModuleIf &) + diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/EABI/AppInstallSmokeTestModuleU.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/EABI/AppInstallSmokeTestModuleU.def Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,3 @@ +EXPORTS + _Z9LibEntryLR13CTestModuleIf @ 1 NONAME + diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/conf/AppInstallSmokeTestModule.cfg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/conf/AppInstallSmokeTestModule.cfg Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,15 @@ +[Test] +title Install Application +create AppInstallSmokeTestModule installer +installer InstallApp c:\testing\data\sistest_winscw.sisx +delete installer +[Endtest] + +[Test] +title Uninstall Application +create AppInstallSmokeTestModule uninstaller +uninstaller UninstallApp 1A +delete uninstaller +[Endtest] + + diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/group/AppInstallSmokeTestModule.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/group/AppInstallSmokeTestModule.mmp Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,77 @@ +/*TYPE TESTCLASS*/ +/* +* 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 the License "Symbian Foundation License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: MMP file for STIF Test Framework's TestScripter +* testclass test module. +* +*/ + +#include + +TARGET AppInstallSmokeTestModule.dll +TARGETTYPE dll +UID 0x1000008D 0x101FB3E3 + +CAPABILITY ALL -TCB +/* Remove comments and replace 0x00000000 with correct vendor id */ +// VENDORID 0x00000000 +/* Remove comments and replace 0x00000000 with correct secure id */ +// SECUREID 0x00000000 + +//TARGETPATH ?target_path +DEFFILE AppInstallSmokeTestModule.def + +USERINCLUDE ../inc + +MW_LAYER_SYSTEMINCLUDE +SYSTEMINCLUDE /epoc32/include/ecom + +SOURCEPATH ../src + +SOURCE AppInstallSmokeTestModule.cpp +SOURCE AppInstallSmokeTestModuleBlocks.cpp + +//RESOURCE resource_file +//RESOURCE resource_file2 + +LIBRARY euser.lib +LIBRARY stiftestinterface.lib +LIBRARY stiftestengine.lib +LIBRARY swinstcli.lib + +LANG SC + +/* +START WINS +?wins_specific_information +END + +START MARM +?marm_specific_information +END +*/ +// Other possible keywords: + +// DOCUMENT ?file, that is not compiled, but added to MSVC project workspace (i.e. release notes) +/* +START BITMAP ?target +TARGETPATH ?emulated_path_on_target_machine +HEADER +SOURCE ?color_depth ?source_bitmap +END +*/ +// DEFFILE ?filename +// AIF ?filename + +// End of File diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/group/Bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/group/Bld.inf Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,60 @@ +/* +* 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 the License "Symbian Foundation License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +PRJ_PLATFORMS +// specify the platforms your component needs to be built for here +// defaults to WINS MARM so you can ignore this if you just build these + + DEFAULT + +PRJ_TESTEXPORTS +// NOTE: If using ARS requirements all export operations should be done under this. +// 'abld test export' +../conf/AppInstallSmokeTestModule.cfg c:/smoketest/AppInstallSmokeTest.cfg + +PRJ_EXPORTS +// Specify the source file followed by its destination here +// copy will be used to copy the source file to its destination +// If there's no destination then the source file will be copied +// to the same name in \epoc32\include +// Example: +/* +\agnmodel\inc\AGMCOMON.H +*/ + +PRJ_TESTMMPFILES + + AppInstallSmokeTestModule.mmp + +PRJ_MMPFILES + + +// Specify the .mmp files required for building the important component +// releasables. +// +// Specify "tidy" if the component you need to build doesn't need to be +// released. Specify "ignore" if the MMP file exists but should be +// ignored. +// Example: +/* +\agnmodel\group\agnmodel.mmp +#if defined(MARM) +\agnmodel\group\agsvexe.mmp +#endif +*/ + +// End of File diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/inc/AppInstallSmokeTestModule.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/inc/AppInstallSmokeTestModule.h Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,186 @@ +/* +* 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 the License "Symbian Foundation License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: STIF testclass declaration +* +*/ + +#ifndef APPINSTALLSMOKETESTMODULE_H +#define APPINSTALLSMOKETESTMODULE_H + +// INCLUDES +#include +#include +#include +#include + +// CONSTANTS +//const ?type ?constant_var = ?constant; + +// MACROS +//#define ?macro ?macro_def +#define TEST_CLASS_VERSION_MAJOR 0 +#define TEST_CLASS_VERSION_MINOR 0 +#define TEST_CLASS_VERSION_BUILD 0 + +// Logging path +_LIT( KAppInstallSmokeTestModuleLogPath, "\\logs\\testframework\\AppInstallSmokeTestModule\\" ); +// Log file +_LIT( KAppInstallSmokeTestModuleLogFile, "AppInstallSmokeTestModule.txt" ); +_LIT( KAppInstallSmokeTestModuleLogFileWithTitle, "AppInstallSmokeTestModule_[%S].txt" ); + +// FUNCTION PROTOTYPES +//?type ?function_name(?arg_list); + +// FORWARD DECLARATIONS +//class ?FORWARD_CLASSNAME; +class CAppMngr2Runtime; +class CAppInstallSmokeTestModule; + +// DATA TYPES +//enum ?declaration +//typedef ?declaration +//extern ?data_type; + +// CLASS DECLARATION + +/** +* CAppInstallSmokeTestModule test class for STIF Test Framework TestScripter. +* ?other_description_lines +* +* @lib ?library +* @since ?Series60_version +*/ +NONSHARABLE_CLASS(CAppInstallSmokeTestModule) : public CScriptBase + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CAppInstallSmokeTestModule* NewL( CTestModuleIf& aTestModuleIf ); + + /** + * Destructor. + */ + virtual ~CAppInstallSmokeTestModule(); + + public: // New functions + + /** + * ?member_description. + * @since ?Series60_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + public: // Functions from base classes + + /** + * From CScriptBase Runs a script line. + * @since ?Series60_version + * @param aItem Script line containing method name and parameters + * @return Symbian OS error code + */ + virtual TInt RunMethodL( CStifItemParser& aItem ); + + protected: // New functions + + /** + * ?member_description. + * @since ?Series60_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + protected: // Functions from base classes + + /** + * From ?base_class ?member_description + */ + //?type ?member_function(); + + private: + + /** + * C++ default constructor. + */ + CAppInstallSmokeTestModule( CTestModuleIf& aTestModuleIf ); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + // Prohibit copy constructor if not deriving from CBase. + // ?classname( const ?classname& ); + // Prohibit assigment operator if not deriving from CBase. + // ?classname& operator=( const ?classname& ); + + /** + * Frees all resources allocated from test methods. + * @since ?Series60_version + */ + void Delete(); + + /** + * Test methods are listed below. + */ + + /** + * Example test method. + * @since ?Series60_version + * @param aItem Script line containing parameters. + * @return Symbian OS error code. + */ + virtual TInt InstallAppL( CStifItemParser& aItem ); + virtual TInt UninstallAppL( CStifItemParser& aItem ); + + /** + * Method used to log version of test class + */ + void SendTestClassVersion(); + + //ADD NEW METHOD DEC HERE + //[TestMethods] - Do not remove + + public: // Data + // ?one_line_short_description_of_data + //?data_declaration; + + protected: // Data + // ?one_line_short_description_of_data + //?data_declaration; + + private: // Data + RPointerArray iPlugins; + // ?one_line_short_description_of_data + //?data_declaration; + + // Reserved pointer for future extension + //TAny* iReserved; + + public: // Friend classes + //?friend_class_declaration; + protected: // Friend classes + //?friend_class_declaration; + private: // Friend classes + //?friend_class_declaration; + + }; + +#endif // APPINSTALLSMOKETESTMODULE_H + +// End of File diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/src/AppInstallSmokeTestModule.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/src/AppInstallSmokeTestModule.cpp Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,199 @@ +/* +* 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 the License "Symbian Foundation License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: This file contains testclass implementation. +* +*/ + +// INCLUDE FILES +#include +#include "AppInstallSmokeTestModule.h" +#include + +// EXTERNAL DATA STRUCTURES +//extern ?external_data; + +// EXTERNAL FUNCTION PROTOTYPES +//extern ?external_function( ?arg_type,?arg_type ); + +// CONSTANTS +//const ?type ?constant_var = ?constant; + +// MACROS +//#define ?macro ?macro_def + +// LOCAL CONSTANTS AND MACROS +//const ?type ?constant_var = ?constant; +//#define ?macro_name ?macro_def + +// MODULE DATA STRUCTURES +//enum ?declaration +//typedef ?declaration + +// LOCAL FUNCTION PROTOTYPES +//?type ?function_name( ?arg_type, ?arg_type ); + +// FORWARD DECLARATIONS +//class ?FORWARD_CLASSNAME; + +// ============================= LOCAL FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// ?function_name ?description. +// ?description +// Returns: ?value_1: ?description +// ?value_n: ?description_line1 +// ?description_line2 +// ----------------------------------------------------------------------------- +// +/* +?type ?function_name( + ?arg_type arg, // ?description + ?arg_type arg) // ?description + { + + ?code // ?comment + + // ?comment + ?code + } +*/ + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::CAppInstallSmokeTestModule +// C++ default constructor can NOT contain any code, that +// might leave. +// ----------------------------------------------------------------------------- +// +CAppInstallSmokeTestModule::CAppInstallSmokeTestModule( + CTestModuleIf& aTestModuleIf ): + CScriptBase( aTestModuleIf ) + { + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::ConstructL +// Symbian 2nd phase constructor can leave. +// ----------------------------------------------------------------------------- +// +void CAppInstallSmokeTestModule::ConstructL() + { + //Read logger settings to check whether test case name is to be + //appended to log file name. + RSettingServer settingServer; + TInt ret = settingServer.Connect(); + if(ret != KErrNone) + { + User::Leave(ret); + } + // Struct to StifLogger settigs. + TLoggerSettings loggerSettings; + // Parse StifLogger defaults from STIF initialization file. + ret = settingServer.GetLoggerSettings(loggerSettings); + if(ret != KErrNone) + { + User::Leave(ret); + } + // Close Setting server session + settingServer.Close(); + + TFileName logFileName; + + if(loggerSettings.iAddTestCaseTitle) + { + TName title; + TestModuleIf().GetTestCaseTitleL(title); + logFileName.Format(KAppInstallSmokeTestModuleLogFileWithTitle, &title); + } + else + { + logFileName.Copy(KAppInstallSmokeTestModuleLogFile); + } + + iLog = CStifLogger::NewL( KAppInstallSmokeTestModuleLogPath, + logFileName, + CStifLogger::ETxt, + CStifLogger::EFile, + EFalse ); + + SendTestClassVersion(); + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::NewL +// Two-phased constructor. +// ----------------------------------------------------------------------------- +// +CAppInstallSmokeTestModule* CAppInstallSmokeTestModule::NewL( + CTestModuleIf& aTestModuleIf ) + { + CAppInstallSmokeTestModule* self = new (ELeave) CAppInstallSmokeTestModule( aTestModuleIf ); + + CleanupStack::PushL( self ); + self->ConstructL(); + CleanupStack::Pop(); + + return self; + + } + +// Destructor +CAppInstallSmokeTestModule::~CAppInstallSmokeTestModule() + { + + // Delete resources allocated from test methods + Delete(); + + // Delete logger + delete iLog; + + } + +//----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::SendTestClassVersion +// Method used to send version of test class +//----------------------------------------------------------------------------- +// +void CAppInstallSmokeTestModule::SendTestClassVersion() + { + TVersion moduleVersion; + moduleVersion.iMajor = TEST_CLASS_VERSION_MAJOR; + moduleVersion.iMinor = TEST_CLASS_VERSION_MINOR; + moduleVersion.iBuild = TEST_CLASS_VERSION_BUILD; + + TFileName moduleName; + moduleName = _L("AppInstallSmokeTestModule.dll"); + + TBool newVersionOfMethod = ETrue; + TestModuleIf().SendTestModuleVersion(moduleVersion, moduleName, newVersionOfMethod); + } + +// ========================== OTHER EXPORTED FUNCTIONS ========================= + +// ----------------------------------------------------------------------------- +// LibEntryL is a polymorphic Dll entry point. +// Returns: CScriptBase: New CScriptBase derived object +// ----------------------------------------------------------------------------- +// +EXPORT_C CScriptBase* LibEntryL( + CTestModuleIf& aTestModuleIf ) // Backpointer to STIF Test Framework + { + + return ( CScriptBase* ) CAppInstallSmokeTestModule::NewL( aTestModuleIf ); + + } + + +// End of File diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/appinstall/src/AppInstallSmokeTestModuleBlocks.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/tools/ats/smoketest/appinstall/src/AppInstallSmokeTestModuleBlocks.cpp Thu Nov 05 12:29:50 2009 +0000 @@ -0,0 +1,211 @@ +/* +* 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 the License "Symbian Foundation License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: This file contains testclass implementation. +* +*/ + +// [INCLUDE FILES] - do not remove +#include +#include +#include +#include +#include +#include "AppInstallSmokeTestModule.h" + +// EXTERNAL DATA STRUCTURES +//extern ?external_data; + +// EXTERNAL FUNCTION PROTOTYPES +//extern ?external_function( ?arg_type,?arg_type ); + +// CONSTANTS +//const ?type ?constant_var = ?constant; + +// MACROS +//#define ?macro ?macro_def + +// LOCAL CONSTANTS AND MACROS +//const ?type ?constant_var = ?constant; +//#define ?macro_name ?macro_def + +// MODULE DATA STRUCTURES +//enum ?declaration +//typedef ?declaration + +// LOCAL FUNCTION PROTOTYPES +//?type ?function_name( ?arg_type, ?arg_type ); + +// FORWARD DECLARATIONS +//class ?FORWARD_CLASSNAME; +using namespace SwiUI; + +// ============================= LOCAL FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// ?function_name ?description. +// ?description +// Returns: ?value_1: ?description +// ?value_n: ?description_line1 +// ?description_line2 +// ----------------------------------------------------------------------------- +// +/* +?type ?function_name( + ?arg_type arg, // ?description + ?arg_type arg) // ?description + { + + ?code // ?comment + + // ?comment + ?code + } +*/ + +// ============================ MEMBER FUNCTIONS =============================== + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::Delete +// Delete here all resources allocated and opened from test methods. +// Called from destructor. +// ----------------------------------------------------------------------------- +// +void CAppInstallSmokeTestModule::Delete() + { + + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::RunMethodL +// Run specified method. Contains also table of test mothods and their names. +// ----------------------------------------------------------------------------- +// +TInt CAppInstallSmokeTestModule::RunMethodL( + CStifItemParser& aItem ) + { + + static TStifFunctionInfo const KFunctions[] = + { + // 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( "InstallApp", CAppInstallSmokeTestModule::InstallAppL ), + ENTRY( "UninstallApp", CAppInstallSmokeTestModule::UninstallAppL ), + //ADD NEW ENTRY HERE + // [test cases entries] - Do not remove + + }; + + const TInt count = sizeof( KFunctions ) / + sizeof( TStifFunctionInfo ); + + return RunInternalL( KFunctions, count, aItem ); + + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::ExampleL +// Example test method function. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TInt CAppInstallSmokeTestModule::InstallAppL( CStifItemParser& aItem ) + { + // Print to UI + _LIT( KAppInstallSmokeTestModule, "AppInstallSmokeTestModule" ); + _LIT( KInstallApp, "In InstallApp" ); + TestModuleIf().Printf( 0, KAppInstallSmokeTestModule, KInstallApp ); + // Print to log file + iLog->Log( KInstallApp ); + + TInt i = 0; + TPtrC sisPath; + if ( aItem.GetNextString ( sisPath ) == KErrNone ) + { + RSWInstSilentLauncher installer; + CleanupClosePushL(installer); + User::LeaveIfError(installer.Connect()); + + TInstallOptionsPckg options; + options().iUpgrade = SwiUI::EPolicyAllowed; + options().iPackageInfo = SwiUI::EPolicyAllowed; + options().iOverwrite = SwiUI::EPolicyAllowed; + options().iKillApp = SwiUI::EPolicyAllowed; + + + User::LeaveIfError(installer.SilentInstall(sisPath, options)); + + CleanupStack::PopAndDestroy(&installer); + } + + return KErrNone; + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::ExampleL +// Example test method function. +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +TInt CAppInstallSmokeTestModule::UninstallAppL( CStifItemParser& aItem ) + { + + // Print to UI + _LIT( KAppInstallSmokeTestModule, "AppInstallSmokeTestModule" ); + _LIT( KUninstallApp, "In UninstallApp" ); + TestModuleIf().Printf( 0, KAppInstallSmokeTestModule, KUninstallApp ); + // Print to log file + iLog->Log( KUninstallApp ); + + TUint pkgUid; + if ( aItem.GetNextInt(pkgUid, EHex) == KErrNone ) + { + RSWInstSilentLauncher uninstaller; + CleanupClosePushL(uninstaller); + User::LeaveIfError(uninstaller.Connect()); + + TInstallOptionsPckg options; + options().iUpgrade = SwiUI::EPolicyAllowed; + options().iPackageInfo = SwiUI::EPolicyAllowed; + options().iOverwrite = SwiUI::EPolicyAllowed; + options().iKillApp = SwiUI::EPolicyAllowed; + + User::LeaveIfError(uninstaller.SilentUninstall( TUid::Uid(pkgUid), options, SwiUI::KSisxMimeType )); + + CleanupStack::PopAndDestroy(&uninstaller); + } + + return KErrNone; + } + +// ----------------------------------------------------------------------------- +// CAppInstallSmokeTestModule::?member_function +// ?implementation_description +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// +/* +TInt CAppInstallSmokeTestModule::?member_function( + CItemParser& aItem ) + { + + ?code + + } +*/ + +// ========================== OTHER EXPORTED FUNCTIONS ========================= +// None + +// [End of File] - Do not remove diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/profiles/conf/ProfileSmokeTestModule.cfg --- a/common/tools/ats/smoketest/profiles/conf/ProfileSmokeTestModule.cfg Thu Nov 05 15:33:29 2009 +0000 +++ b/common/tools/ats/smoketest/profiles/conf/ProfileSmokeTestModule.cfg Thu Nov 05 12:29:50 2009 +0000 @@ -1,21 +1,25 @@ [Test] -title SetProfileSilent +title CheckActiveProfile create ProfileSmokeTestModule profile -profile SetProfile Silent +profile CheckActiveProfile General 7 0 delete profile [Endtest] [Test] -title SetProfileMeeting +title SetActiveProfileSilent create ProfileSmokeTestModule profile -profile SetProfile Meeting +profile SetActiveProfile Silent +profile CheckActiveProfile Silent 1 4 +profile SetActiveProfile General delete profile [Endtest] [Test] -title SetProfileGeneral +title SetActiveProfileOutdoor create ProfileSmokeTestModule profile -profile SetProfile General +profile SetActiveProfile Outdoor +profile CheckActiveProfile Outdoor 10 0 +profile SetActiveProfile General delete profile [Endtest] diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/profiles/inc/ProfileSmokeTestModule.h --- a/common/tools/ats/smoketest/profiles/inc/ProfileSmokeTestModule.h Thu Nov 05 15:33:29 2009 +0000 +++ b/common/tools/ats/smoketest/profiles/inc/ProfileSmokeTestModule.h Thu Nov 05 12:29:50 2009 +0000 @@ -145,7 +145,8 @@ * @param aItem Script line containing parameters. * @return Symbian OS error code. */ - virtual TInt SetProfileL( CStifItemParser& aItem ); + virtual TInt CheckActiveProfileL( CStifItemParser& aItem); + virtual TInt SetActiveProfileL( CStifItemParser& aItem ); /** * Method used to log version of test class diff -r 53abda826a9f -r 552776214487 common/tools/ats/smoketest/profiles/src/ProfileSmokeTestModuleBlocks.cpp --- 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 #include #include +#include +#include #include #include #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