# HG changeset patch # User hgs # Date 1277972410 -10800 # Node ID c87e5f80c17d884635e2b171f1597c7da6b31434 # Parent f7565e9c9ce804d143c554775e1cbfbd124e7e24 201025_04 diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/tests/init/accmonitoringtestmodule_exe.ini --- a/accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/tests/init/accmonitoringtestmodule_exe.ini Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/tests/init/accmonitoringtestmodule_exe.ini Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -[StifSettings] -CapsModifier= accMonitoringTestModule.exe -[EndStifSettings] +[StifSettings] +CapsModifier= accMonitoringTestModule.exe +[EndStifSettings] diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -EXPORTS - ImplementationGroupProxy__FRi @ 1 NONAME R3UNUSED ; ImplementationGroupProxy(int &) - GetDosServerControl__Fv @ 2 NONAME R3UNUSED ; GetDosServerControl(void) - +EXPORTS + ImplementationGroupProxy__FRi @ 1 NONAME R3UNUSED ; ImplementationGroupProxy(int &) + GetDosServerControl__Fv @ 2 NONAME R3UNUSED ; GetDosServerControl(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -EXPORTS - ?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * __cdecl ImplementationGroupProxy(int &) - ?GetDosServerControl@@YAPAVMTFDosServerControl@@XZ @ 2 NONAME ; class MTFDosServerControl * __cdecl GetDosServerControl(void) - +EXPORTS + ?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * __cdecl ImplementationGroupProxy(int &) + ?GetDosServerControl@@YAPAVMTFDosServerControl@@XZ @ 2 NONAME ; class MTFDosServerControl * __cdecl GetDosServerControl(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/EABI/dosservercontrolU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/EABI/dosservercontrolU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/EABI/dosservercontrolU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,5 +1,5 @@ -EXPORTS - _Z24ImplementationGroupProxyRi @ 1 NONAME - _Z19GetDosServerControlv @ 2 NONAME - - +EXPORTS + _Z24ImplementationGroupProxyRi @ 1 NONAME + _Z19GetDosServerControlv @ 2 NONAME + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/data/10200c6f.rss --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/data/10200c6f.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/data/10200c6f.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,54 +1,54 @@ -/* -* 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: Declaration of DOS server control ECom resource -* -*/ - - -// INCLUDE FILES -#include "registryinfov2.rh" - -// RESOURCE DEFINITIONS -// --------------------------------------------------------- -// -// DosServerControlPlugin -// -// --------------------------------------------------------- -// -RESOURCE REGISTRY_INFO DosServerControlPlugin - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10200c6f; - interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x10200c7d; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0x10200c77; - version_no = 1; - display_name = "DOSSERVERCONTROLPLUGIN"; - default_data = "DOSSERVERCONTROLPLUGIN"; - opaque_data = ""; - rom_only = 0; - } - }; - } - }; - } - -// End of File +/* +* 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: Declaration of DOS server control ECom resource +* +*/ + + +// INCLUDE FILES +#include "registryinfov2.rh" + +// RESOURCE DEFINITIONS +// --------------------------------------------------------- +// +// DosServerControlPlugin +// +// --------------------------------------------------------- +// +RESOURCE REGISTRY_INFO DosServerControlPlugin + { + resource_format_version = RESOURCE_FORMAT_VERSION_2; + dll_uid = 0x10200c6f; + interfaces = + { + INTERFACE_INFO + { + interface_uid = 0x10200c7d; + implementations = + { + IMPLEMENTATION_INFO + { + implementation_uid = 0x10200c77; + version_no = 1; + display_name = "DOSSERVERCONTROLPLUGIN"; + default_data = "DOSSERVERCONTROLPLUGIN"; + opaque_data = ""; + rom_only = 0; + } + }; + } + }; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/bld.inf --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,28 +1,28 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dosservercontrol -* -*/ - - -#include - -PRJ_EXPORTS -#ifndef RD_STARTUP_CHANGE -../inc/mtfdosservercontrol.h OS_LAYER_PLATFORM_EXPORT_PATH(mtfdosservercontrol.h) -#endif // RD_STARTUP_CHANGE -PRJ_MMPFILES -#ifndef RD_STARTUP_CHANGE -dosservercontrol.mmp +/* +* Copyright (c) 2002-2006 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: Build information file for project dosservercontrol +* +*/ + + +#include + +PRJ_EXPORTS +#ifndef RD_STARTUP_CHANGE +../inc/mtfdosservercontrol.h OS_LAYER_PLATFORM_EXPORT_PATH(mtfdosservercontrol.h) +#endif // RD_STARTUP_CHANGE +PRJ_MMPFILES +#ifndef RD_STARTUP_CHANGE +dosservercontrol.mmp #endif // RD_STARTUP_CHANGE \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/dosservercontrol.mmp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/dosservercontrol.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/group/dosservercontrol.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,64 +1,64 @@ -/* -* Copyright (c) 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: Declaration of dosservercontrol module -* -*/ - - -#include -#include - -TARGET dosservercontrol.dll -TARGETTYPE dll -TARGETPATH ECOM_RESOURCE_DIR - -UID 0x10009D8D 0x10200C6F - -CAPABILITY CAP_GENERAL_DLL - -SOURCEPATH ../src -SOURCE tfdosservercontrol.cpp -SOURCE tfdosservercontroltestcase.cpp -SOURCE tfdosserverproxy.cpp -SOURCE tfdosserverplugin.cpp -SOURCE tfdoseventlistener.cpp - -USERINCLUDE ../inc -USERINCLUDE ../../dsytfcore/inc - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -START RESOURCE ../data/10200c6f.rss - -HEADER -TARGETPATH ECOM_RESOURCE_DIR - -target dosservercontrol.rsc - -END - -LIBRARY euser.lib -LIBRARY ecom.lib -LIBRARY dsytfcore.lib -LIBRARY dsclient.lib -LIBRARY bluetooth.lib - -//MACRO COMPONENT_TRACE_FLAG -MACRO TEST_CASE_TRACE_FLAG - -// Disable if running tests without UI (eg. running tests from console) -//MACRO TESTS_NO_UI - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dosservercontrol module +* +*/ + + +#include +#include + +TARGET dosservercontrol.dll +TARGETTYPE dll +TARGETPATH ECOM_RESOURCE_DIR + +UID 0x10009D8D 0x10200C6F + +CAPABILITY CAP_GENERAL_DLL + +SOURCEPATH ../src +SOURCE tfdosservercontrol.cpp +SOURCE tfdosservercontroltestcase.cpp +SOURCE tfdosserverproxy.cpp +SOURCE tfdosserverplugin.cpp +SOURCE tfdoseventlistener.cpp + +USERINCLUDE ../inc +USERINCLUDE ../../dsytfcore/inc + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +START RESOURCE ../data/10200c6f.rss + +HEADER +TARGETPATH ECOM_RESOURCE_DIR + +target dosservercontrol.rsc + +END + +LIBRARY euser.lib +LIBRARY ecom.lib +LIBRARY dsytfcore.lib +LIBRARY dsclient.lib +LIBRARY bluetooth.lib + +//MACRO COMPONENT_TRACE_FLAG +MACRO TEST_CASE_TRACE_FLAG + +// Disable if running tests without UI (eg. running tests from console) +//MACRO TESTS_NO_UI + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdoseventlistener.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdoseventlistener.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdoseventlistener.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,257 +1,257 @@ -/* -* 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: Declaration of CTFDosServerEventListener class -* -*/ - - -#ifndef __CTFDOSEVENTLISTENER_H__ -#define __CTFDOSEVENTLISTENER_H__ - -#include - -class CTFDosServerControl; - -NONSHARABLE_CLASS( CTFDosServerEventListener ): public CDosEventListenerBase - { - public: - /** - * Constructor - */ - CTFDosServerEventListener( RDosServer& aServer ); - - /** - * Destructor - */ - virtual ~CTFDosServerEventListener( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerEventListener( const CTFDosServerEventListener& aListener ); - - /** - * Assignment operator is hidden - */ - CTFDosServerEventListener& operator=( const CTFDosServerEventListener& aListener ); - - protected: - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies that a Dos SelfTest has completed. - * @param aSelftTestResult The result of the self test. - */ - void NotifySelfTestStatusL( const TInt aSelfTestResult ); - - /** - * It notifies that the phone side has initiated a shutdown. - */ - void DoMtcInitiatedShutdownL(); - - /** - * It notifies that the phone is on. - */ - void PhonePowerOnL(); -#endif // RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies that the SIM card is ready to be fully used. - * @param aStatus The new status. - */ - void SimReadyL( EPSSimReadyStatus aStatus ); - - /** - * It notifies if the SIM card has been changed. - * @param aValue ETrue if it has been or EFalse otherwise. - */ - void SimChangedL( TBool aValue ); - - /** - * It notifies about a change in the status of the SimLock. - * @param aStatus The new status. - */ - void SimLockStatusL(EPSSimLockStatus aStatus); - /** - * It notifies about a change in the state of the SIM card. - * @param aStatus The new state. - */ - void SimStateL( TDosSimState aState ); - - /** - * It notifies about a change in the status of the calls forwarding settings. - * @param aStatus The new status. - */ - void CallsForwardingStatusL(EPSCallsForwardingStatus aStatus); - /** - * It notifies about a change in the status of the voice mail settings. - * @param aStatus The new status. - */ - void VoiceMailStatusL(EPSVoiceMailStatus aStatus); - - /** - * It notifies about the existance of a fax message in our voice mail. - * @param aValue ETrue or EFalse - */ - void FaxMessageL( TBool aValue ); - - /** - * It notifies about the existance of a E-mail message in our voice mail. - * @param aValue ETrue or EFalse - */ - void EmailMessageL( TBool aValue ); -#endif //RD_STARTUP_CHANGE - - /** - * It notifies about a change in the network bars. - * @param aValue The new value. - */ - // void NetworkBarsL( TInt aValue ); - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change in the status of the security code. - * @param aStatus The new status. - */ - void SecurityCodeL(EPSSecurityCodeStatus aStatus); -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change in the status of the current SIM. - * @param aStatus The new status. - */ - void CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus); -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - /** - * It notifies about a headset button state change - * @param aMode - */ - void HeadsetButtonChangedL(EPSButtonState aState); - - /** - * It notifies about a output volume level changes - * @param aState - */ - void OutputVolumeLevelChangedL( TInt aLevel ); - - /** - * It requests to open a BT Audio link between phone and BT Audio Accessory. - */ - void AudioLinkOpenReq(); - - /** - * It requests to close the BT Audio link between phone and BTAA. - * @param aConnectionHandle Handle to the audio connection. - */ - void AudioLinkCloseReq( THCIConnHandle aConnectionHandle ); - - /** - * It requests to activate voice recognition. - */ - void ActivateVoiceRecognitionReq(); - - /** - * It requests to abort voice recognition. - */ - void AbortVoiceRecognitionReq(); - - /** - * It requests status of voice recognition. - */ - void VoiceRecognitionStatusReq(); - - /** - * It requests to query speed dial number. - * @param aIndex A speed dial index. - */ - void QuerySpeedDialNumberReq( TInt aIndex ); - - /** - * It requests to query last dialled number. - */ - void QueryLastDialledVoiceNumberReq(); - - /** - * It notifies about a change in audio accessory mode. - * @param aAccMode The new accessorymode. - */ - void AccessoryModeChangedInd( TBTAccessoryMode aAccMode ); - - /** - * It notifies about a change in BT audio accessory mode. - * @param aDeviceType BT Accessory device's type. - */ - void BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ); - - /** - * It notifies about a change in audio accessory's speaker volume level. - * @param aVolume The new volume level. - */ - void AccessorySpeakerVolumeSetInd( TUint aVolume ); - - /** - * It notifies about a change in BT connection status. - * @param aServiceLevelConnParams A struct containing parameters. - */ - void ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ); -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change sms storage status. - * @param aServiceLevelConnParams A struct containing parameters. - */ - void SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ); -#endif // RD_STARTUP_CHANGE - - /** - * This a raw event that is intended for expansion of the event functionality by licensees. - * @param aEvent The event. - * @param aParameter A pointer to the parameter. - */ - void GeneralEventL( const TRegisterEvent& aEvent,TAny* aParameter ); - -#ifndef __ACCESSORY_FW - /** - * It notifies about a change in the status of the handsfree mode. - * @param aStatus The new status. - */ - void HandsfreeModeChanged(EPSHandsFreeMode aMode); - - /** - * Notifies of changes in accessory mode - * @param aMode New accessory mode - */ - void AccessoryModeChangedL( TDosAccessoryMode aMode ); -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - /** - * Notifies if SIM is present or not - * @param aMode SIM present state - */ - void SimPresentStateChangedL( TDosSimPresentState aState ); -#endif //RD_STARTUP_CHANGE - - }; - - -#endif - -// End of file +/* +* 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: Declaration of CTFDosServerEventListener class +* +*/ + + +#ifndef __CTFDOSEVENTLISTENER_H__ +#define __CTFDOSEVENTLISTENER_H__ + +#include + +class CTFDosServerControl; + +NONSHARABLE_CLASS( CTFDosServerEventListener ): public CDosEventListenerBase + { + public: + /** + * Constructor + */ + CTFDosServerEventListener( RDosServer& aServer ); + + /** + * Destructor + */ + virtual ~CTFDosServerEventListener( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerEventListener( const CTFDosServerEventListener& aListener ); + + /** + * Assignment operator is hidden + */ + CTFDosServerEventListener& operator=( const CTFDosServerEventListener& aListener ); + + protected: + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies that a Dos SelfTest has completed. + * @param aSelftTestResult The result of the self test. + */ + void NotifySelfTestStatusL( const TInt aSelfTestResult ); + + /** + * It notifies that the phone side has initiated a shutdown. + */ + void DoMtcInitiatedShutdownL(); + + /** + * It notifies that the phone is on. + */ + void PhonePowerOnL(); +#endif // RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies that the SIM card is ready to be fully used. + * @param aStatus The new status. + */ + void SimReadyL( EPSSimReadyStatus aStatus ); + + /** + * It notifies if the SIM card has been changed. + * @param aValue ETrue if it has been or EFalse otherwise. + */ + void SimChangedL( TBool aValue ); + + /** + * It notifies about a change in the status of the SimLock. + * @param aStatus The new status. + */ + void SimLockStatusL(EPSSimLockStatus aStatus); + /** + * It notifies about a change in the state of the SIM card. + * @param aStatus The new state. + */ + void SimStateL( TDosSimState aState ); + + /** + * It notifies about a change in the status of the calls forwarding settings. + * @param aStatus The new status. + */ + void CallsForwardingStatusL(EPSCallsForwardingStatus aStatus); + /** + * It notifies about a change in the status of the voice mail settings. + * @param aStatus The new status. + */ + void VoiceMailStatusL(EPSVoiceMailStatus aStatus); + + /** + * It notifies about the existance of a fax message in our voice mail. + * @param aValue ETrue or EFalse + */ + void FaxMessageL( TBool aValue ); + + /** + * It notifies about the existance of a E-mail message in our voice mail. + * @param aValue ETrue or EFalse + */ + void EmailMessageL( TBool aValue ); +#endif //RD_STARTUP_CHANGE + + /** + * It notifies about a change in the network bars. + * @param aValue The new value. + */ + // void NetworkBarsL( TInt aValue ); + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change in the status of the security code. + * @param aStatus The new status. + */ + void SecurityCodeL(EPSSecurityCodeStatus aStatus); +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change in the status of the current SIM. + * @param aStatus The new status. + */ + void CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus); +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + /** + * It notifies about a headset button state change + * @param aMode + */ + void HeadsetButtonChangedL(EPSButtonState aState); + + /** + * It notifies about a output volume level changes + * @param aState + */ + void OutputVolumeLevelChangedL( TInt aLevel ); + + /** + * It requests to open a BT Audio link between phone and BT Audio Accessory. + */ + void AudioLinkOpenReq(); + + /** + * It requests to close the BT Audio link between phone and BTAA. + * @param aConnectionHandle Handle to the audio connection. + */ + void AudioLinkCloseReq( THCIConnHandle aConnectionHandle ); + + /** + * It requests to activate voice recognition. + */ + void ActivateVoiceRecognitionReq(); + + /** + * It requests to abort voice recognition. + */ + void AbortVoiceRecognitionReq(); + + /** + * It requests status of voice recognition. + */ + void VoiceRecognitionStatusReq(); + + /** + * It requests to query speed dial number. + * @param aIndex A speed dial index. + */ + void QuerySpeedDialNumberReq( TInt aIndex ); + + /** + * It requests to query last dialled number. + */ + void QueryLastDialledVoiceNumberReq(); + + /** + * It notifies about a change in audio accessory mode. + * @param aAccMode The new accessorymode. + */ + void AccessoryModeChangedInd( TBTAccessoryMode aAccMode ); + + /** + * It notifies about a change in BT audio accessory mode. + * @param aDeviceType BT Accessory device's type. + */ + void BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ); + + /** + * It notifies about a change in audio accessory's speaker volume level. + * @param aVolume The new volume level. + */ + void AccessorySpeakerVolumeSetInd( TUint aVolume ); + + /** + * It notifies about a change in BT connection status. + * @param aServiceLevelConnParams A struct containing parameters. + */ + void ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ); +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change sms storage status. + * @param aServiceLevelConnParams A struct containing parameters. + */ + void SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ); +#endif // RD_STARTUP_CHANGE + + /** + * This a raw event that is intended for expansion of the event functionality by licensees. + * @param aEvent The event. + * @param aParameter A pointer to the parameter. + */ + void GeneralEventL( const TRegisterEvent& aEvent,TAny* aParameter ); + +#ifndef __ACCESSORY_FW + /** + * It notifies about a change in the status of the handsfree mode. + * @param aStatus The new status. + */ + void HandsfreeModeChanged(EPSHandsFreeMode aMode); + + /** + * Notifies of changes in accessory mode + * @param aMode New accessory mode + */ + void AccessoryModeChangedL( TDosAccessoryMode aMode ); +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + /** + * Notifies if SIM is present or not + * @param aMode SIM present state + */ + void SimPresentStateChangedL( TDosSimPresentState aState ); +#endif //RD_STARTUP_CHANGE + + }; + + +#endif + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,124 +1,124 @@ -/* -* 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: Declaration of CTFDosServerControl class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROL_H__ -#define __CTFDOSSERVERCONTROL_H__ - -#include -#include "ctfstub.h" -#include "mtfdosservercontrol.h" -#include "tfdosservertypes.h" - -struct TTFDosServerControlTestCaseState; -class CTFDosServerEventListener; -class RTFDosExtension; - -const TInt KTFStubTypeDosServerControl = 560; - -NONSHARABLE_CLASS( CTFDosServerControl ): public CTFStub, public MTFDosServerControl - { - public: - /** - * Constructor - */ - CTFDosServerControl( void ); - - /** - * Destructor - */ - virtual ~CTFDosServerControl( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControl( const CTFDosServerControl& aStub ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControl& operator=( const CTFDosServerControl& aStub ); - - public: - /** - * Initializes this stub - */ - void InitializeL( void ); - - public: - /** - * Calls a DosServer function - */ - void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ); - - /** - * Gets the parameter count for given DosServer method - */ - TInt ParameterCount( TTFDosFunction aFunction ) const; - - /** - * Gets the parameter bounds of given DosServer method - */ - TBool ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const; - - /** - * Notifies about a DosServer event - */ - void NotifyDosEvent( TInt aEvent, TInt aParameter ); - - /** - * Closes all DosServer services - */ - void ResetDosServices( void ); - - private: - RDosServer iDosServer; -#ifndef __ACCESSORY_FW - RDosAudio* iDosAudio; - RDosAccessory* iDosAccessory; -#endif //__ACCESSORY_FW -#ifndef RD_STARTUP_CHANGE - RDosSysUtils* iDosSysUtils; - RDosHelper* iDosHelper; - RDosMtc* iDosMtc; - RDosSelfTest* iDosSelfTest; -#endif //RD_STARTUP_CHANGE - RDosSae* iDosSae; -#ifndef __ACCESSORY_FW - RDosBTAudio* iDosBTAudio; -#endif //__ACCESSORY_FW - RTFDosExtension* iDosExtension; - CTFDosServerEventListener* iEventListener; - TBool iInitialized; - }; - -class RTFDosExtension : public RDosExtension - { - public: - /** - * Calls a synchronous RDosExtension::CallFunction - */ - TInt CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); - - /** - * Calls an asynchronous RDosExtension::CallFunction - */ - TInt CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); - }; - -#endif +/* +* 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: Declaration of CTFDosServerControl class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROL_H__ +#define __CTFDOSSERVERCONTROL_H__ + +#include +#include "ctfstub.h" +#include "mtfdosservercontrol.h" +#include "tfdosservertypes.h" + +struct TTFDosServerControlTestCaseState; +class CTFDosServerEventListener; +class RTFDosExtension; + +const TInt KTFStubTypeDosServerControl = 560; + +NONSHARABLE_CLASS( CTFDosServerControl ): public CTFStub, public MTFDosServerControl + { + public: + /** + * Constructor + */ + CTFDosServerControl( void ); + + /** + * Destructor + */ + virtual ~CTFDosServerControl( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControl( const CTFDosServerControl& aStub ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControl& operator=( const CTFDosServerControl& aStub ); + + public: + /** + * Initializes this stub + */ + void InitializeL( void ); + + public: + /** + * Calls a DosServer function + */ + void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ); + + /** + * Gets the parameter count for given DosServer method + */ + TInt ParameterCount( TTFDosFunction aFunction ) const; + + /** + * Gets the parameter bounds of given DosServer method + */ + TBool ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const; + + /** + * Notifies about a DosServer event + */ + void NotifyDosEvent( TInt aEvent, TInt aParameter ); + + /** + * Closes all DosServer services + */ + void ResetDosServices( void ); + + private: + RDosServer iDosServer; +#ifndef __ACCESSORY_FW + RDosAudio* iDosAudio; + RDosAccessory* iDosAccessory; +#endif //__ACCESSORY_FW +#ifndef RD_STARTUP_CHANGE + RDosSysUtils* iDosSysUtils; + RDosHelper* iDosHelper; + RDosMtc* iDosMtc; + RDosSelfTest* iDosSelfTest; +#endif //RD_STARTUP_CHANGE + RDosSae* iDosSae; +#ifndef __ACCESSORY_FW + RDosBTAudio* iDosBTAudio; +#endif //__ACCESSORY_FW + RTFDosExtension* iDosExtension; + CTFDosServerEventListener* iEventListener; + TBool iInitialized; + }; + +class RTFDosExtension : public RDosExtension + { + public: + /** + * Calls a synchronous RDosExtension::CallFunction + */ + TInt CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); + + /** + * Calls an asynchronous RDosExtension::CallFunction + */ + TInt CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcase.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,165 +1,165 @@ -/* -* 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: Declaration of CTFDosServerControlTestCase class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROLTESTCASE_H__ -#define __CTFDOSSERVERCONTROLTESTCASE_H__ - -#include -#include "ctfstubtestcase.h" -#include "tfdosservertypes.h" - -class CTFATestTimer; -class CTFDosServerControlTestCaseParam; - -/** -* Test case declaration macro -*/ -#define TF_DOS_SERVER_CONTROL_TEST_CASE_L( aCaseId, aCaseStates ) \ - case aCaseId: \ - { \ - CTFDosServerControlTestCaseParam* param = new ( ELeave ) CTFDosServerControlTestCaseParam(); \ - CleanupStack::PushL( param ); \ - param->ConstructL( aCaseStates, sizeof ( aCaseStates ) / sizeof ( TTFDosServerControlTestCaseState ) ); \ - returnValue = new ( ELeave ) CTFDosServerControlTestCase( param ); \ - CleanupStack::Pop(); \ - CleanupStack::PushL( returnValue ); \ - STATIC_CAST( CTFDosServerControlTestCase*, returnValue )->ConstructL(); \ - CleanupStack::Pop(); \ - } \ - break - -NONSHARABLE_CLASS( CTFDosServerControlTestCase ): public CTFStubTestCase, public MTFAActiveTest - { - public: - /** - * Constructor - */ - CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Destructor - */ - ~CTFDosServerControlTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControlTestCase( const CTFDosServerControlTestCase& aStub ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControlTestCase& operator=( const CTFDosServerControlTestCase& aStub ); - - public: - /** - * Notifies about a DosServer event - */ - void NotifyDosEvent( TInt aEvent, TInt aParameter ); - - public: - /** - * Timer callback to cancel test if it takes too long - */ - void ActiveTestRunL( void ); - - protected: - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Initializes this test case - */ - void InitL( void ); - - /** - * Runs this test case - */ - void RunL( void ); - - /** - * Releases this test case - */ - void Teardown( void ); - - protected: - /** - * Completes this test case with given result - */ - void DoCompleteTest( TInt aResult ); - - /** - * Starts the next test case state - */ - void StartNextState( TInt aResult ); - - /** - * Calls the DosServer function of the current test case state - */ - void CallCurrentDosFunctionL( void ); - - /** - * Gets the index of current state - */ - TInt CurrentStateIndex( void ) const; - - /** - * Gets the test case parameters - */ - CTFDosServerControlTestCaseParam& Parameters( void ); - - /** - * Gets the current DosServer function - */ - TTFDosFunction CurrentDosFunction( void ) const; - - /** - * Gets the current argument 1 - */ - TInt CurrentArg1( void ) const; - - /** - * Gets the timer - */ - CTFATestTimer* Timer( void ); - - private: - /** - * Checks a test result - */ - TInt CheckResult( TInt aResult, TBool aIsEvent ); - - private: - CTFDosServerControlTestCaseParam* iParameters; - TTFDosServerControlTestCaseState iCurrentState; - TInt iCurrentStateIndex; - CTFATestTimer* iTimer; - TBool iCleanupWait; - TInt iStoredArg1; - TInt iStoredArg2; - }; - -#endif +/* +* 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: Declaration of CTFDosServerControlTestCase class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROLTESTCASE_H__ +#define __CTFDOSSERVERCONTROLTESTCASE_H__ + +#include +#include "ctfstubtestcase.h" +#include "tfdosservertypes.h" + +class CTFATestTimer; +class CTFDosServerControlTestCaseParam; + +/** +* Test case declaration macro +*/ +#define TF_DOS_SERVER_CONTROL_TEST_CASE_L( aCaseId, aCaseStates ) \ + case aCaseId: \ + { \ + CTFDosServerControlTestCaseParam* param = new ( ELeave ) CTFDosServerControlTestCaseParam(); \ + CleanupStack::PushL( param ); \ + param->ConstructL( aCaseStates, sizeof ( aCaseStates ) / sizeof ( TTFDosServerControlTestCaseState ) ); \ + returnValue = new ( ELeave ) CTFDosServerControlTestCase( param ); \ + CleanupStack::Pop(); \ + CleanupStack::PushL( returnValue ); \ + STATIC_CAST( CTFDosServerControlTestCase*, returnValue )->ConstructL(); \ + CleanupStack::Pop(); \ + } \ + break + +NONSHARABLE_CLASS( CTFDosServerControlTestCase ): public CTFStubTestCase, public MTFAActiveTest + { + public: + /** + * Constructor + */ + CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Destructor + */ + ~CTFDosServerControlTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControlTestCase( const CTFDosServerControlTestCase& aStub ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControlTestCase& operator=( const CTFDosServerControlTestCase& aStub ); + + public: + /** + * Notifies about a DosServer event + */ + void NotifyDosEvent( TInt aEvent, TInt aParameter ); + + public: + /** + * Timer callback to cancel test if it takes too long + */ + void ActiveTestRunL( void ); + + protected: + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Initializes this test case + */ + void InitL( void ); + + /** + * Runs this test case + */ + void RunL( void ); + + /** + * Releases this test case + */ + void Teardown( void ); + + protected: + /** + * Completes this test case with given result + */ + void DoCompleteTest( TInt aResult ); + + /** + * Starts the next test case state + */ + void StartNextState( TInt aResult ); + + /** + * Calls the DosServer function of the current test case state + */ + void CallCurrentDosFunctionL( void ); + + /** + * Gets the index of current state + */ + TInt CurrentStateIndex( void ) const; + + /** + * Gets the test case parameters + */ + CTFDosServerControlTestCaseParam& Parameters( void ); + + /** + * Gets the current DosServer function + */ + TTFDosFunction CurrentDosFunction( void ) const; + + /** + * Gets the current argument 1 + */ + TInt CurrentArg1( void ) const; + + /** + * Gets the timer + */ + CTFATestTimer* Timer( void ); + + private: + /** + * Checks a test result + */ + TInt CheckResult( TInt aResult, TBool aIsEvent ); + + private: + CTFDosServerControlTestCaseParam* iParameters; + TTFDosServerControlTestCaseState iCurrentState; + TInt iCurrentStateIndex; + CTFATestTimer* iTimer; + TBool iCleanupWait; + TInt iStoredArg1; + TInt iStoredArg2; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,71 +1,71 @@ -/* -* 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: Declaration of CTFDosServerControlTestCaseParam class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ -#define __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ - -#include -#include "ctfstubtestcaseparam.h" -#include "tfdosservertypes.h" - -NONSHARABLE_CLASS( CTFDosServerControlTestCaseParam ): public CTFStubTestCaseParam - { - public: - /** - * Constructor - */ - CTFDosServerControlTestCaseParam( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ); - - /** - * Destructor - */ - virtual ~CTFDosServerControlTestCaseParam( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControlTestCaseParam( const CTFDosServerControlTestCaseParam& aParam ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControlTestCaseParam& operator=( const CTFDosServerControlTestCaseParam& aParam ); - - public: - /** - * Gets the test case states - */ - const TTFDosServerControlTestCaseState* States( void ) const; - - /** - * Gets the state count - */ - TInt StateCount( void ) const; - - private: - TTFDosServerControlTestCaseState* iStates; - TInt iStateCount; - }; - -#endif +/* +* 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: Declaration of CTFDosServerControlTestCaseParam class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ +#define __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ + +#include +#include "ctfstubtestcaseparam.h" +#include "tfdosservertypes.h" + +NONSHARABLE_CLASS( CTFDosServerControlTestCaseParam ): public CTFStubTestCaseParam + { + public: + /** + * Constructor + */ + CTFDosServerControlTestCaseParam( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ); + + /** + * Destructor + */ + virtual ~CTFDosServerControlTestCaseParam( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControlTestCaseParam( const CTFDosServerControlTestCaseParam& aParam ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControlTestCaseParam& operator=( const CTFDosServerControlTestCaseParam& aParam ); + + public: + /** + * Gets the test case states + */ + const TTFDosServerControlTestCaseState* States( void ) const; + + /** + * Gets the state count + */ + TInt StateCount( void ) const; + + private: + TTFDosServerControlTestCaseState* iStates; + TInt iStateCount; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosserverplugin.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosserverplugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/ctfdosserverplugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,75 +1,75 @@ -/* -* 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: Declaration of CTFDosServerPlugin class -* -*/ - - -#ifndef __CTFDOSSERVERPLUGIN_H__ -#define __CTFDOSSERVERPLUGIN_H__ - -// INCLUDE FILES -#include "ctfstubmoduleinterface.h" - -// CLASS DECLARATION - -/** -* An implementation of CTFStubModuleInterface. -*/ -NONSHARABLE_CLASS( CTFDosServerPlugin ) : public CTFStubModuleInterface - { - public: // Constructors and destructor - /** - * Two-phased constructor. - * @param aInitParams Initialisation parameters. - * @return The created object. - */ - static CTFDosServerPlugin* NewL( TAny* aInitParams ); - - /** - * Destructor. - */ - ~CTFDosServerPlugin( void ); - - public: // Functions from base classes - /** - * Gets the stub implementation of this plug-in module - */ - CTFStub* GetStubL( void ); - - /** - * Builds the test suite of this plug-in module. - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); - - private: // Functions - /** - * C++ default constructor. - * @param aParams Initialisation parameters. - */ - CTFDosServerPlugin( TAny* aParams ); - - private: // Data - CTFStubModuleInterface::TInterfaceInitParams* iInitParams; - - }; - -#endif //__CTFDOSSERVERPLUGIN_H__ - -// End of File +/* +* 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: Declaration of CTFDosServerPlugin class +* +*/ + + +#ifndef __CTFDOSSERVERPLUGIN_H__ +#define __CTFDOSSERVERPLUGIN_H__ + +// INCLUDE FILES +#include "ctfstubmoduleinterface.h" + +// CLASS DECLARATION + +/** +* An implementation of CTFStubModuleInterface. +*/ +NONSHARABLE_CLASS( CTFDosServerPlugin ) : public CTFStubModuleInterface + { + public: // Constructors and destructor + /** + * Two-phased constructor. + * @param aInitParams Initialisation parameters. + * @return The created object. + */ + static CTFDosServerPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CTFDosServerPlugin( void ); + + public: // Functions from base classes + /** + * Gets the stub implementation of this plug-in module + */ + CTFStub* GetStubL( void ); + + /** + * Builds the test suite of this plug-in module. + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); + + private: // Functions + /** + * C++ default constructor. + * @param aParams Initialisation parameters. + */ + CTFDosServerPlugin( TAny* aParams ); + + private: // Data + CTFStubModuleInterface::TInterfaceInitParams* iInitParams; + + }; + +#endif //__CTFDOSSERVERPLUGIN_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsyenums.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsyenums.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsyenums.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,48 +1,48 @@ -/* -* 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: Declaration of DosServer enumerations -* -*/ - - -#ifndef __DSYENUMS_H__ -#define __DSYENUMS_H__ - -enum TStartupSTResult - { - EStartupSTNotStarted = 0, - EStartupSTNotReady = 1, - EStartupSTFail = 2, - EStartupSTOk = 3 - }; - -enum TSysApMtcStateType - { - ESysApMtcChargingState, - ESysApMtcAlarmState, - ESysApMtcPowerOffState, - ESysApMtcNormalState, - ESysApMtcRfInactiveState - }; - -// RFS Types, must be same as in RFS module -enum TRfsType - { - ERfsNormal = 0, - ERfsDeep = 1 - }; - -#endif // DSYENUMS_H - -// End of file +/* +* 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: Declaration of DosServer enumerations +* +*/ + + +#ifndef __DSYENUMS_H__ +#define __DSYENUMS_H__ + +enum TStartupSTResult + { + EStartupSTNotStarted = 0, + EStartupSTNotReady = 1, + EStartupSTFail = 2, + EStartupSTOk = 3 + }; + +enum TSysApMtcStateType + { + ESysApMtcChargingState, + ESysApMtcAlarmState, + ESysApMtcPowerOffState, + ESysApMtcNormalState, + ESysApMtcRfInactiveState + }; + +// RFS Types, must be same as in RFS module +enum TRfsType + { + ERfsNormal = 0, + ERfsDeep = 1 + }; + +#endif // DSYENUMS_H + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,111 +1,111 @@ -/* -* 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: Declaration of test tool trace macros -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Expression with side effects (from TEST_CASE_TRACE macro) -//lint -e666 - -// Enumeration / enum constant not referenced -//lint -e758 -//lint -e769 - -// Virtual function not referenced -//lint -e1716 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) \ - RDebug::Print a; \ - Logger().Write a; \ - Logger().EndLine() - - #else //#ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) \ - Logger().Write a; \ - Logger().EndLine() - - #endif //#ifdef TEST_CASE_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define TEST_CASE_TRACE( a ) - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of test tool trace macros +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Expression with side effects (from TEST_CASE_TRACE macro) +//lint -e666 + +// Enumeration / enum constant not referenced +//lint -e758 +//lint -e769 + +// Virtual function not referenced +//lint -e1716 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) \ + RDebug::Print a; \ + Logger().Write a; \ + Logger().EndLine() + + #else //#ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) \ + Logger().Write a; \ + Logger().EndLine() + + #endif //#ifdef TEST_CASE_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define TEST_CASE_TRACE( a ) + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/mtfdosservercontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/mtfdosservercontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/mtfdosservercontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,68 +1,68 @@ -/* -* 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: Declaration of MTFDosServerControl class -* -*/ - - -#ifndef __MTFDOSSERVERCONTROL_H__ -#define __MTFDOSSERVERCONTROL_H__ - -#include - -struct TTFDosServerControlTestCaseState; - -NONSHARABLE_CLASS( MTFDosServerControl ) - { - public: - /** - * Constructor - */ - MTFDosServerControl( void ); - - /** - * Destructor - */ - virtual ~MTFDosServerControl( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFDosServerControl( const MTFDosServerControl& aStub ); - - /** - * Assignment operator is hidden - */ - MTFDosServerControl& operator=( const MTFDosServerControl& aStub ); - - public: - /** - * Calls a DosServer function with given parameters - */ - virtual void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) = 0; - - /** - * Notifies the controller about a DosServer event - */ - virtual void NotifyDosEvent( TInt aEvent, TInt aParameter ) = 0; - }; - - -/** -* Gets the DosServer control interface -*/ -IMPORT_C MTFDosServerControl* GetDosServerControl( void ); - -#endif +/* +* 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: Declaration of MTFDosServerControl class +* +*/ + + +#ifndef __MTFDOSSERVERCONTROL_H__ +#define __MTFDOSSERVERCONTROL_H__ + +#include + +struct TTFDosServerControlTestCaseState; + +NONSHARABLE_CLASS( MTFDosServerControl ) + { + public: + /** + * Constructor + */ + MTFDosServerControl( void ); + + /** + * Destructor + */ + virtual ~MTFDosServerControl( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFDosServerControl( const MTFDosServerControl& aStub ); + + /** + * Assignment operator is hidden + */ + MTFDosServerControl& operator=( const MTFDosServerControl& aStub ); + + public: + /** + * Calls a DosServer function with given parameters + */ + virtual void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) = 0; + + /** + * Notifies the controller about a DosServer event + */ + virtual void NotifyDosEvent( TInt aEvent, TInt aParameter ) = 0; + }; + + +/** +* Gets the DosServer control interface +*/ +IMPORT_C MTFDosServerControl* GetDosServerControl( void ); + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/tfdosservertypes.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/tfdosservertypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/inc/tfdosservertypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,195 +1,195 @@ -/* -* 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: Definition of integration test constants -* -*/ - - -#ifndef __TFDOSSERVERTYPES_H__ -#define __TFDOSSERVERTYPES_H__ - -#include - -enum TTFDosFunction - { - ETFDosFunction_None = 0, - -#ifndef __ACCESSORY_FW - ETFDosAudio_Open = 1, - ETFDosAudio_SetHandsfreeMode = 4, - ETFDosAudio_GetHandsfreeMode = 5, - ETFDosAudio_GetOutputVolume = 19, - ETFDosAudio_SetOutputVolume = 22, - ETFDosAudio_Close = 28, - ETFDosAccessory_Open = 30, - ETFDosAccessory_SetLoopSetModeState = 31, - ETFDosAccessory_GetLoopSetModeState = 32, - ETFDosAccessory_GetAccessoryMode = 33, - ETFDosAccessory_Close = 40, -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - ETFDosSysUtils_Open = 41, - ETFDosSysUtils_GetSimLanguage = 42, - ETFDosSysUtils_SetDosAlarm = 43, - ETFDosSysUtils_PerformDosRfs = 44, - ETFDosSysUtils_Close = 45, - ETFDosHelper_Open = 50, - ETFDosHelper_GetStartupReason = 51, - ETFDosHelper_GetSWStartupReason = 52, - ETFDosHelper_SetSWStartupReason = 53, - ETFDosHelper_HiddenReset = 54, - ETFDosHelper_GetRTCStatus = 55, - ETFDosHelper_GenerateGripEvent = 56, - ETFDosHelper_Close = 57, - ETFDosMtc_Open = 60, - ETFDosMtc_PowerOn = 61, - ETFDosMtc_PowerOff = 62, - ETFDosMtc_DosSync = 63, - ETFDosMtc_ResetGenerate = 64, - ETFDosMtc_SetState = 65, - ETFDosMtc_SetStateFlag = 66, - ETFDosMtc_GetStateFlag = 67, - ETFDosMtc_DosShutdownSync = 68, - ETFDosMtc_Close = 69, - ETFDosSelfTest_Open = 70, - ETFDosSelfTest_PerformSelfTest = 71, - ETFDosSelfTest_Close = 72, -#endif // RD_STARTUP_CHANGE - - ETFDosSae_Open = 90, - ETFDosSae_StartSae = 91, - ETFDosSae_Close = 92, - -#ifndef __ACCESSORY_FW - ETFDosBTAudio_Open = 100, - ETFDosBTAudio_AttachAudioAccessoryReq = 101, - ETFDosBTAudio_CancelAttachReq = 102, - ETFDosBTAudio_DetachAudioAccessoryReq = 103, - ETFDosBTAudio_CancelDetachReq = 104, - ETFDosBTAudio_AudioLinkOpenResp = 105, - ETFDosBTAudio_AudioLinkCloseResp = 106, - ETFDosBTAudio_ActivateVoiceRecognitionResp = 107, - ETFDosBTAudio_AbortVoiceRecognitionResp = 108, - ETFDosBTAudio_VoiceRecognitionStatusResp = 109, - ETFDosBTAudio_QuerySpeedDialNumberResp = 110, - ETFDosBTAudio_QueryLastDialledVoiceNumberResp = 111, - ETFDosBTAudio_AudioLinkOpenInd = 112, - ETFDosBTAudio_AudioLinkCloseInd = 113, - ETFDosBTAudio_VoiceRecognitionStatusInd = 114, - ETFDosBTAudio_Close = 115, -#endif // __ACCESSORY_FW - - ETFDosExtension_Open = 120, - ETFDosExtension_CallFunction = 121, - ETFDosExtension_CallFunctionAndComplete = 122, - ETFDosExtension_Close = 123, - }; - - -enum TTFDosEvent - { - ETFDosEvent_None = 0, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_NotifySelfTestStatus = 1, - ETFDosEvent_DoMtcInitiatedShutdown = 2, - ETFDosEvent_PhonePowerOn = 3, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SimReady = 8, - ETFDosEvent_SimChanged = 9, - ETFDosEvent_SimLockStatus = 10, - ETFDosEvent_SimState = 11, - ETFDosEvent_CallsForwardingStatus = 12, - ETFDosEvent_VoiceMailStatus = 13, - ETFDosEvent_FaxMessage = 14, - ETFDosEvent_EmailMessage = 15, -#endif //RD_STARTUP_CHANGE - - // ETFDosEvent_NetworkBars = 16, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SecurityCode = 17, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_CurrentSimOwnedStatus = 19, -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - ETFDosEvent_AudioLinkOpenReq = 20, - ETFDosEvent_AudioLinkCloseReq = 21, - ETFDosEvent_ActivateVoiceRecognitionReq = 22, - ETFDosEvent_AbortVoiceRecognitionReq = 23, - ETFDosEvent_VoiceRecognitionStatusReq = 24, - ETFDosEvent_QuerySpeedDialNumberReq = 25, - ETFDosEvent_QueryLastDialledVoiceNumberReq = 26, - ETFDosEvent_AccessoryModeChangedInd = 27, - ETFDosEvent_BTAccessoryModeChangedInd = 28, - ETFDosEvent_AccessorySpeakerVolumeSetInd = 29, - ETFDosEvent_ServiceLevelConnEstablishedInd = 30, - ETFDosEvent_AccessoryModeChanged = 31, - ETFDosEvent_HeadsetButtonChanged = 32, - ETFDosEvent_HandsfreeModeChanged = 33, - ETFDosEvent_MicrophoneMuteStateChanged = 34, - ETFDosEvent_OutputVolumeLevelChanged = 35, -#endif - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SmsStorageStatusChanged = 36, -#endif // RD_STARTUP_CHANGE - - ETFDosEvent_General = 39, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SimPresentStateChanged = 40, -#endif //RD_STARTUP_CHANGE - - ETFDosEvent_Synchronized = 10000 - }; - - -enum TTFDosFlags - { - ETFDosFlags_None = 0x00, - ETFDosFlags_IgnoreParameters = 0x01, - ETFDosFlags_IgnoreEventParameters = 0x02, - ETFDosFlags_IgnoreResult = 0x04, - ETFDosFlags_IgnoreUnexpectedEvents = 0x08, - ETFDosFlags_StoreParameters = 0x10, - ETFDosFlags_UseParameters = 0x20, - }; - - -struct TTFDosServerControlTestCaseState - { - TTFDosFunction iDosFunction; - TInt iArg1; - TInt iArg2; - TInt iExpectedResult; - TTFDosEvent iCompletionEvent; - TInt iStateFlags; - }; - -const TInt KTFErrDosServiceMissing = -4001; -const TInt KTFErrDosNoSyncEnd = -4002; -const TInt KTFErrDosUnexpectedEvent = -5000; -const TInt KTFErrDosUnexpectedEventParameter = -6000; -const TInt KTFErrDosUnexpectedArg1 = -7000; -const TInt KTFErrDosUnexpectedArg2 = -8000; -const TInt KTFErrDosUnexpectedResult = -9000; - -#endif +/* +* 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: Definition of integration test constants +* +*/ + + +#ifndef __TFDOSSERVERTYPES_H__ +#define __TFDOSSERVERTYPES_H__ + +#include + +enum TTFDosFunction + { + ETFDosFunction_None = 0, + +#ifndef __ACCESSORY_FW + ETFDosAudio_Open = 1, + ETFDosAudio_SetHandsfreeMode = 4, + ETFDosAudio_GetHandsfreeMode = 5, + ETFDosAudio_GetOutputVolume = 19, + ETFDosAudio_SetOutputVolume = 22, + ETFDosAudio_Close = 28, + ETFDosAccessory_Open = 30, + ETFDosAccessory_SetLoopSetModeState = 31, + ETFDosAccessory_GetLoopSetModeState = 32, + ETFDosAccessory_GetAccessoryMode = 33, + ETFDosAccessory_Close = 40, +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + ETFDosSysUtils_Open = 41, + ETFDosSysUtils_GetSimLanguage = 42, + ETFDosSysUtils_SetDosAlarm = 43, + ETFDosSysUtils_PerformDosRfs = 44, + ETFDosSysUtils_Close = 45, + ETFDosHelper_Open = 50, + ETFDosHelper_GetStartupReason = 51, + ETFDosHelper_GetSWStartupReason = 52, + ETFDosHelper_SetSWStartupReason = 53, + ETFDosHelper_HiddenReset = 54, + ETFDosHelper_GetRTCStatus = 55, + ETFDosHelper_GenerateGripEvent = 56, + ETFDosHelper_Close = 57, + ETFDosMtc_Open = 60, + ETFDosMtc_PowerOn = 61, + ETFDosMtc_PowerOff = 62, + ETFDosMtc_DosSync = 63, + ETFDosMtc_ResetGenerate = 64, + ETFDosMtc_SetState = 65, + ETFDosMtc_SetStateFlag = 66, + ETFDosMtc_GetStateFlag = 67, + ETFDosMtc_DosShutdownSync = 68, + ETFDosMtc_Close = 69, + ETFDosSelfTest_Open = 70, + ETFDosSelfTest_PerformSelfTest = 71, + ETFDosSelfTest_Close = 72, +#endif // RD_STARTUP_CHANGE + + ETFDosSae_Open = 90, + ETFDosSae_StartSae = 91, + ETFDosSae_Close = 92, + +#ifndef __ACCESSORY_FW + ETFDosBTAudio_Open = 100, + ETFDosBTAudio_AttachAudioAccessoryReq = 101, + ETFDosBTAudio_CancelAttachReq = 102, + ETFDosBTAudio_DetachAudioAccessoryReq = 103, + ETFDosBTAudio_CancelDetachReq = 104, + ETFDosBTAudio_AudioLinkOpenResp = 105, + ETFDosBTAudio_AudioLinkCloseResp = 106, + ETFDosBTAudio_ActivateVoiceRecognitionResp = 107, + ETFDosBTAudio_AbortVoiceRecognitionResp = 108, + ETFDosBTAudio_VoiceRecognitionStatusResp = 109, + ETFDosBTAudio_QuerySpeedDialNumberResp = 110, + ETFDosBTAudio_QueryLastDialledVoiceNumberResp = 111, + ETFDosBTAudio_AudioLinkOpenInd = 112, + ETFDosBTAudio_AudioLinkCloseInd = 113, + ETFDosBTAudio_VoiceRecognitionStatusInd = 114, + ETFDosBTAudio_Close = 115, +#endif // __ACCESSORY_FW + + ETFDosExtension_Open = 120, + ETFDosExtension_CallFunction = 121, + ETFDosExtension_CallFunctionAndComplete = 122, + ETFDosExtension_Close = 123, + }; + + +enum TTFDosEvent + { + ETFDosEvent_None = 0, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_NotifySelfTestStatus = 1, + ETFDosEvent_DoMtcInitiatedShutdown = 2, + ETFDosEvent_PhonePowerOn = 3, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SimReady = 8, + ETFDosEvent_SimChanged = 9, + ETFDosEvent_SimLockStatus = 10, + ETFDosEvent_SimState = 11, + ETFDosEvent_CallsForwardingStatus = 12, + ETFDosEvent_VoiceMailStatus = 13, + ETFDosEvent_FaxMessage = 14, + ETFDosEvent_EmailMessage = 15, +#endif //RD_STARTUP_CHANGE + + // ETFDosEvent_NetworkBars = 16, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SecurityCode = 17, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_CurrentSimOwnedStatus = 19, +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + ETFDosEvent_AudioLinkOpenReq = 20, + ETFDosEvent_AudioLinkCloseReq = 21, + ETFDosEvent_ActivateVoiceRecognitionReq = 22, + ETFDosEvent_AbortVoiceRecognitionReq = 23, + ETFDosEvent_VoiceRecognitionStatusReq = 24, + ETFDosEvent_QuerySpeedDialNumberReq = 25, + ETFDosEvent_QueryLastDialledVoiceNumberReq = 26, + ETFDosEvent_AccessoryModeChangedInd = 27, + ETFDosEvent_BTAccessoryModeChangedInd = 28, + ETFDosEvent_AccessorySpeakerVolumeSetInd = 29, + ETFDosEvent_ServiceLevelConnEstablishedInd = 30, + ETFDosEvent_AccessoryModeChanged = 31, + ETFDosEvent_HeadsetButtonChanged = 32, + ETFDosEvent_HandsfreeModeChanged = 33, + ETFDosEvent_MicrophoneMuteStateChanged = 34, + ETFDosEvent_OutputVolumeLevelChanged = 35, +#endif + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SmsStorageStatusChanged = 36, +#endif // RD_STARTUP_CHANGE + + ETFDosEvent_General = 39, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SimPresentStateChanged = 40, +#endif //RD_STARTUP_CHANGE + + ETFDosEvent_Synchronized = 10000 + }; + + +enum TTFDosFlags + { + ETFDosFlags_None = 0x00, + ETFDosFlags_IgnoreParameters = 0x01, + ETFDosFlags_IgnoreEventParameters = 0x02, + ETFDosFlags_IgnoreResult = 0x04, + ETFDosFlags_IgnoreUnexpectedEvents = 0x08, + ETFDosFlags_StoreParameters = 0x10, + ETFDosFlags_UseParameters = 0x20, + }; + + +struct TTFDosServerControlTestCaseState + { + TTFDosFunction iDosFunction; + TInt iArg1; + TInt iArg2; + TInt iExpectedResult; + TTFDosEvent iCompletionEvent; + TInt iStateFlags; + }; + +const TInt KTFErrDosServiceMissing = -4001; +const TInt KTFErrDosNoSyncEnd = -4002; +const TInt KTFErrDosUnexpectedEvent = -5000; +const TInt KTFErrDosUnexpectedEventParameter = -6000; +const TInt KTFErrDosUnexpectedArg1 = -7000; +const TInt KTFErrDosUnexpectedArg2 = -8000; +const TInt KTFErrDosUnexpectedResult = -9000; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdoseventlistener.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdoseventlistener.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdoseventlistener.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,227 +1,227 @@ -/* -* 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: Implementation of CTFDosServerEventListener class -* -*/ - - -#include -#include "dsytesttooltrace.h" -#include "tfdosservertypes.h" -#include "ctfdoseventlistener.h" -#include "mtfdosservercontrol.h" - -CTFDosServerEventListener::CTFDosServerEventListener( RDosServer& aServer ) -: CDosEventListenerBase( aServer ) - { - } - - -CTFDosServerEventListener::~CTFDosServerEventListener( void ) - { - } - - -static void NotifyEvent( TInt aEvent, TInt aParameter ) - { - MTFDosServerControl* control = GetDosServerControl(); - if ( control != NULL ) - { - control->NotifyDosEvent( aEvent, aParameter ); - } - else - { - TRACE_ASSERT_ALWAYS; - } - } - - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::NotifySelfTestStatusL( const TInt aSelfTestResult ) - { - NotifyEvent( ETFDosEvent_NotifySelfTestStatus, aSelfTestResult ); - } - -void CTFDosServerEventListener::DoMtcInitiatedShutdownL() - { - NotifyEvent( ETFDosEvent_DoMtcInitiatedShutdown, 0 ); - } - -void CTFDosServerEventListener::PhonePowerOnL() - { - NotifyEvent( ETFDosEvent_PhonePowerOn, 0 ); - } -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::SimReadyL( EPSSimReadyStatus aStatus ) - { - NotifyEvent( ETFDosEvent_SimReady, aStatus ); - } - -void CTFDosServerEventListener::SimChangedL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_SimChanged, aValue ); - } - - -void CTFDosServerEventListener::SimLockStatusL(EPSSimLockStatus aStatus) - { - NotifyEvent( ETFDosEvent_SimLockStatus, aStatus ); - } - - -void CTFDosServerEventListener::SimStateL( TDosSimState aState ) - { - NotifyEvent( ETFDosEvent_SimState, aState ); - } - - void CTFDosServerEventListener::CallsForwardingStatusL(EPSCallsForwardingStatus aStatus) - { - NotifyEvent( ETFDosEvent_CallsForwardingStatus, aStatus ); - } - - void CTFDosServerEventListener::VoiceMailStatusL(EPSVoiceMailStatus aStatus) - { - NotifyEvent( ETFDosEvent_VoiceMailStatus, aStatus ); - } - -void CTFDosServerEventListener::FaxMessageL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_FaxMessage, aValue ); - } - -void CTFDosServerEventListener::EmailMessageL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_EmailMessage, aValue ); - } -#endif //RD_STARTUP_CHANGE - -/*void CTFDosServerEventListener::NetworkBarsL( TInt aValue ) - { - NotifyEvent( ETFDosEvent_NetworkBars, aValue ); - }*/ - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::SecurityCodeL(EPSSecurityCodeStatus aStatus) - { - NotifyEvent( ETFDosEvent_SecurityCode, aStatus ); - } -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus) - { - NotifyEvent( ETFDosEvent_CurrentSimOwnedStatus, aStatus ); - } -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW -void CTFDosServerEventListener::AccessoryModeChangedL( TDosAccessoryMode aMode ) - { - NotifyEvent( ETFDosEvent_AccessoryModeChanged, aMode ); - } - - void CTFDosServerEventListener::HeadsetButtonChangedL(EPSButtonState aState) - { - NotifyEvent( ETFDosEvent_HeadsetButtonChanged, aState ); - } - -void CTFDosServerEventListener::OutputVolumeLevelChangedL( TInt aLevel ) - { - NotifyEvent( ETFDosEvent_OutputVolumeLevelChanged, aLevel ); - } - -void CTFDosServerEventListener::AudioLinkOpenReq() - { - NotifyEvent( ETFDosEvent_AudioLinkOpenReq, 0 ); - } - -void CTFDosServerEventListener::AudioLinkCloseReq( THCIConnHandle aConnectionHandle ) - { - NotifyEvent( ETFDosEvent_AudioLinkCloseReq, aConnectionHandle ); - } - -void CTFDosServerEventListener::ActivateVoiceRecognitionReq() - { - NotifyEvent( ETFDosEvent_ActivateVoiceRecognitionReq, 0 ); - } - -void CTFDosServerEventListener::AbortVoiceRecognitionReq() - { - NotifyEvent( ETFDosEvent_AbortVoiceRecognitionReq, 0 ); - } - -void CTFDosServerEventListener::VoiceRecognitionStatusReq() - { - NotifyEvent( ETFDosEvent_VoiceRecognitionStatusReq, 0 ); - } - -void CTFDosServerEventListener::QuerySpeedDialNumberReq( TInt aIndex ) - { - NotifyEvent( ETFDosEvent_QuerySpeedDialNumberReq, aIndex ); - } - -void CTFDosServerEventListener::QueryLastDialledVoiceNumberReq() - { - NotifyEvent( ETFDosEvent_QueryLastDialledVoiceNumberReq, 0 ); - } - -void CTFDosServerEventListener::AccessoryModeChangedInd( TBTAccessoryMode aAccMode ) - { - NotifyEvent( ETFDosEvent_AccessoryModeChangedInd, aAccMode ); - } - -void CTFDosServerEventListener::BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ) - { - NotifyEvent( ETFDosEvent_BTAccessoryModeChangedInd, aDeviceType ); - } - -void CTFDosServerEventListener::AccessorySpeakerVolumeSetInd( TUint aVolume ) - { - NotifyEvent( ETFDosEvent_AccessorySpeakerVolumeSetInd, aVolume ); - } - -void CTFDosServerEventListener::ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ) - { - NotifyEvent( ETFDosEvent_ServiceLevelConnEstablishedInd, ( TInt )&aServiceLevelConnParams ); - } -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ) - { - NotifyEvent( ETFDosEvent_SmsStorageStatusChanged, aStatus ); - } -#endif // RD_STARTUP_CHANGE - -void CTFDosServerEventListener::GeneralEventL( const TRegisterEvent& /*aEvent*/,TAny* /*aParameter*/ ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerEventListener::GeneralEventL() - not implemented" ) ) ); - } - -#ifndef __ACCESSORY_FW - void CTFDosServerEventListener::HandsfreeModeChanged(EPSHandsFreeMode aMode) - { - NotifyEvent( ETFDosEvent_HandsfreeModeChanged, aMode ); - } -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::SimPresentStateChangedL( TDosSimPresentState aState ) - { - NotifyEvent( ETFDosEvent_SimPresentStateChanged, aState ); - } -#endif //RD_STARTUP_CHANGE - +/* +* 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: Implementation of CTFDosServerEventListener class +* +*/ + + +#include +#include "dsytesttooltrace.h" +#include "tfdosservertypes.h" +#include "ctfdoseventlistener.h" +#include "mtfdosservercontrol.h" + +CTFDosServerEventListener::CTFDosServerEventListener( RDosServer& aServer ) +: CDosEventListenerBase( aServer ) + { + } + + +CTFDosServerEventListener::~CTFDosServerEventListener( void ) + { + } + + +static void NotifyEvent( TInt aEvent, TInt aParameter ) + { + MTFDosServerControl* control = GetDosServerControl(); + if ( control != NULL ) + { + control->NotifyDosEvent( aEvent, aParameter ); + } + else + { + TRACE_ASSERT_ALWAYS; + } + } + + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::NotifySelfTestStatusL( const TInt aSelfTestResult ) + { + NotifyEvent( ETFDosEvent_NotifySelfTestStatus, aSelfTestResult ); + } + +void CTFDosServerEventListener::DoMtcInitiatedShutdownL() + { + NotifyEvent( ETFDosEvent_DoMtcInitiatedShutdown, 0 ); + } + +void CTFDosServerEventListener::PhonePowerOnL() + { + NotifyEvent( ETFDosEvent_PhonePowerOn, 0 ); + } +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::SimReadyL( EPSSimReadyStatus aStatus ) + { + NotifyEvent( ETFDosEvent_SimReady, aStatus ); + } + +void CTFDosServerEventListener::SimChangedL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_SimChanged, aValue ); + } + + +void CTFDosServerEventListener::SimLockStatusL(EPSSimLockStatus aStatus) + { + NotifyEvent( ETFDosEvent_SimLockStatus, aStatus ); + } + + +void CTFDosServerEventListener::SimStateL( TDosSimState aState ) + { + NotifyEvent( ETFDosEvent_SimState, aState ); + } + + void CTFDosServerEventListener::CallsForwardingStatusL(EPSCallsForwardingStatus aStatus) + { + NotifyEvent( ETFDosEvent_CallsForwardingStatus, aStatus ); + } + + void CTFDosServerEventListener::VoiceMailStatusL(EPSVoiceMailStatus aStatus) + { + NotifyEvent( ETFDosEvent_VoiceMailStatus, aStatus ); + } + +void CTFDosServerEventListener::FaxMessageL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_FaxMessage, aValue ); + } + +void CTFDosServerEventListener::EmailMessageL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_EmailMessage, aValue ); + } +#endif //RD_STARTUP_CHANGE + +/*void CTFDosServerEventListener::NetworkBarsL( TInt aValue ) + { + NotifyEvent( ETFDosEvent_NetworkBars, aValue ); + }*/ + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::SecurityCodeL(EPSSecurityCodeStatus aStatus) + { + NotifyEvent( ETFDosEvent_SecurityCode, aStatus ); + } +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus) + { + NotifyEvent( ETFDosEvent_CurrentSimOwnedStatus, aStatus ); + } +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW +void CTFDosServerEventListener::AccessoryModeChangedL( TDosAccessoryMode aMode ) + { + NotifyEvent( ETFDosEvent_AccessoryModeChanged, aMode ); + } + + void CTFDosServerEventListener::HeadsetButtonChangedL(EPSButtonState aState) + { + NotifyEvent( ETFDosEvent_HeadsetButtonChanged, aState ); + } + +void CTFDosServerEventListener::OutputVolumeLevelChangedL( TInt aLevel ) + { + NotifyEvent( ETFDosEvent_OutputVolumeLevelChanged, aLevel ); + } + +void CTFDosServerEventListener::AudioLinkOpenReq() + { + NotifyEvent( ETFDosEvent_AudioLinkOpenReq, 0 ); + } + +void CTFDosServerEventListener::AudioLinkCloseReq( THCIConnHandle aConnectionHandle ) + { + NotifyEvent( ETFDosEvent_AudioLinkCloseReq, aConnectionHandle ); + } + +void CTFDosServerEventListener::ActivateVoiceRecognitionReq() + { + NotifyEvent( ETFDosEvent_ActivateVoiceRecognitionReq, 0 ); + } + +void CTFDosServerEventListener::AbortVoiceRecognitionReq() + { + NotifyEvent( ETFDosEvent_AbortVoiceRecognitionReq, 0 ); + } + +void CTFDosServerEventListener::VoiceRecognitionStatusReq() + { + NotifyEvent( ETFDosEvent_VoiceRecognitionStatusReq, 0 ); + } + +void CTFDosServerEventListener::QuerySpeedDialNumberReq( TInt aIndex ) + { + NotifyEvent( ETFDosEvent_QuerySpeedDialNumberReq, aIndex ); + } + +void CTFDosServerEventListener::QueryLastDialledVoiceNumberReq() + { + NotifyEvent( ETFDosEvent_QueryLastDialledVoiceNumberReq, 0 ); + } + +void CTFDosServerEventListener::AccessoryModeChangedInd( TBTAccessoryMode aAccMode ) + { + NotifyEvent( ETFDosEvent_AccessoryModeChangedInd, aAccMode ); + } + +void CTFDosServerEventListener::BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ) + { + NotifyEvent( ETFDosEvent_BTAccessoryModeChangedInd, aDeviceType ); + } + +void CTFDosServerEventListener::AccessorySpeakerVolumeSetInd( TUint aVolume ) + { + NotifyEvent( ETFDosEvent_AccessorySpeakerVolumeSetInd, aVolume ); + } + +void CTFDosServerEventListener::ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ) + { + NotifyEvent( ETFDosEvent_ServiceLevelConnEstablishedInd, ( TInt )&aServiceLevelConnParams ); + } +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ) + { + NotifyEvent( ETFDosEvent_SmsStorageStatusChanged, aStatus ); + } +#endif // RD_STARTUP_CHANGE + +void CTFDosServerEventListener::GeneralEventL( const TRegisterEvent& /*aEvent*/,TAny* /*aParameter*/ ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerEventListener::GeneralEventL() - not implemented" ) ) ); + } + +#ifndef __ACCESSORY_FW + void CTFDosServerEventListener::HandsfreeModeChanged(EPSHandsFreeMode aMode) + { + NotifyEvent( ETFDosEvent_HandsfreeModeChanged, aMode ); + } +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::SimPresentStateChangedL( TDosSimPresentState aState ) + { + NotifyEvent( ETFDosEvent_SimPresentStateChanged, aState ); + } +#endif //RD_STARTUP_CHANGE + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontrol.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontrol.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontrol.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,1094 +1,1094 @@ -/* -* 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: Implementation of CTFDosServerControl class -* -*/ - - -// INCLUDE FILES -#ifndef RD_STARTUP_CHANGE -#include -#endif // RD_STARTUP_CHANGE - -#include "ctffactory.h" -#include "tftypes.h" -#include -#include "dsytesttooltrace.h" -#include "dsyenums.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcase.h" -#include "ctfdoseventlistener.h" - - -// ----------------------------------------------------------------------------- -// GetDosServerControl -// ----------------------------------------------------------------------------- -EXPORT_C MTFDosServerControl* GetDosServerControl( void ) - { - CTFStub* stub = CTFFactory::Stub( KTFStubTypeDosServerControl ); - return STATIC_CAST( CTFDosServerControl*, stub ); - } - - -// ----------------------------------------------------------------------------- -// MTFDosServerControl::MTFDosServerControl -// ----------------------------------------------------------------------------- -MTFDosServerControl::MTFDosServerControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFDosServerControl::~MTFDosServerControl -// ----------------------------------------------------------------------------- -MTFDosServerControl::~MTFDosServerControl( void ) - { - } - - -CTFDosServerControl::CTFDosServerControl( void ) -: CTFStub( KTFStubTypeDosServerControl ) - { - } - -//lint -e1740 Pointer not directly deleted by destructor -CTFDosServerControl::~CTFDosServerControl( void ) - { - ResetDosServices(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::~CTFDosServerControl() - DosServer connection closed" ) ) ); - } -//lint +e1740 - -void CTFDosServerControl::InitializeL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL()" ) ) ); - - User::LeaveIfError( iDosServer.Connect() ); - iEventListener = new ( ELeave ) CTFDosServerEventListener( iDosServer ); - TRegisterEvent eventList[] = - { -#ifndef RD_STARTUP_CHANGE - { KNotifySelfTestStatus, sizeof ( TInt ), EQueue }, - { KDoMtcInitiatedShutdown, sizeof ( TInt ), EQueue }, - { KPhonePowerOn, 0, EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - { KSimReady, sizeof ( TInt ), EQueue }, - { KSimChanged, sizeof ( TInt ), EQueue }, - { KSimLockStatus, sizeof ( TInt ), EQueue }, - { KSimState, sizeof ( TInt ), EQueue }, - { KCallsForwardingStatus, sizeof ( TInt ), EQueue }, - { KVoiceMailStatus, sizeof ( TInt ), EQueue }, - { KFaxMessage, sizeof ( TInt ), EQueue }, - { KEmailMessage, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - - // { KNetworkBars, sizeof ( TInt ), EQueue }, - -#ifndef RD_STARTUP_CHANGE - { KSecurityCode, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - { KCurrentSimOwnedStatus, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - { KAudioLinkOpenReq, sizeof ( TInt ), EQueue }, - { KAudioLinkCloseReq, sizeof ( TInt ), EQueue }, - { KActivateVoiceRecognitionReq, sizeof ( TInt ), EQueue }, - { KAbortVoiceRecognitionReq, sizeof ( TInt ), EQueue }, - { KVoiceRecognitionStatusReq, sizeof ( TInt ), EQueue }, - { KQuerySpeedDialNumberReq, sizeof ( TInt ), EQueue }, - { KQueryLastDialledVoiceNumberReq, sizeof ( TInt ), EQueue }, - { KAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, - { KBTAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, - { KAccessorySpeakerVolumeSetInd, sizeof ( TInt ), EQueue }, - { KServiceLevelConnEstablishedInd, sizeof ( TInt ), EQueue }, - { KHeadsetButtonChanged, sizeof ( TInt ), EQueue }, - { KHandsfreeModeChanged, sizeof ( TInt ), EQueue }, - { KOutputVolumeLevelChanged, sizeof ( TInt ), EQueue }, -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - { KSmsStorageStatusChanged, sizeof ( TDosSmsStorageStatus ), EQueue }, -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - { KAccessoryModeChanged, sizeof ( TInt ), EQueue } -#endif //__ACCESSORY_FW - }; - iEventListener->StartListeningL( eventList, sizeof ( eventList ) / sizeof ( TRegisterEvent ) ); - iInitialized = ETrue; - - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL - return" ) ) ); - } - -void CTFDosServerControl::ResetDosServices( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices()" ) ) ); - - if ( iEventListener != NULL ) - { - iEventListener->Stop(); - delete iEventListener; - } -#ifndef RD_STARTUP_CHANGE - if ( iDosSysUtils != NULL ) - { - iDosSysUtils->Close(); - iDosSysUtils = NULL; - } - if ( iDosHelper != NULL ) - { - iDosHelper->Close(); - iDosHelper = NULL; - } - if ( iDosMtc != NULL ) - { - iDosMtc->Close(); - iDosMtc = NULL; - } - if ( iDosSelfTest != NULL ) - { - iDosSelfTest->Close(); - iDosSelfTest = NULL; - } -#endif //RD_STARTUP_CHANGE - - if ( iDosSae != NULL ) - { - iDosSae->Close(); - iDosSae = NULL; - } -#ifndef __ACCESSORY_FW - if ( iDosBTAudio != NULL ) - { - iDosBTAudio->Close(); - iDosBTAudio = NULL; - } -#endif //__ACCESSORY_FW - if ( iDosExtension != NULL ) - { - iDosExtension->Close(); - iDosExtension = NULL; - } -#ifndef __ACCESSORY_FW - if ( iDosAccessory != NULL ) - { - iDosAccessory->Close(); - iDosAccessory = NULL; - } - if ( iDosAudio != NULL ) - { - iDosAudio->Close(); - iDosAudio = NULL; - } -#endif //__ACCESSORY_FW - - iDosServer.Close(); - iInitialized = EFalse; - - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices() - Success" ) ) ); - } - -void CTFDosServerControl::CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::CallDosFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); - - // DosServer connection needs to be opened. - if ( !iInitialized ) - { - InitializeL(); - } - - TInt retval = KTFErrDosServiceMissing; - switch ( aParameter.iDosFunction ) - { - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - if ( iDosSysUtils == NULL ) - { - iDosSysUtils = new ( ELeave ) RDosSysUtils(); - retval = iDosSysUtils->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSysUtils_GetSimLanguage: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - retval = iDosSysUtils->GetSimLanguage( aParameter.iArg1 ); - } - break; - case ETFDosSysUtils_SetDosAlarm: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - if ( aParameter.iArg1 != 0 ) - { - TTime time; - time.HomeTime(); - if ( aParameter.iArg1 > 0 ) - { - TTimeIntervalMinutes interval = aParameter.iArg1; - time += interval; - } - else - { - TTimeIntervalMinutes interval = 0 - aParameter.iArg1; - time -= interval; - } - time.RoundUpToNextMinute(); - if ( aParameter.iArg2 != 0 ) - { - TTimeIntervalSeconds interval = aParameter.iArg2; - time += interval; - } - retval = iDosSysUtils->SetDosAlarm( &time ); - } - else - { - retval = iDosSysUtils->SetDosAlarm( NULL ); - } - } - break; - case ETFDosSysUtils_PerformDosRfs: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - } - break; - case ETFDosSysUtils_Close: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - iDosSysUtils->Close(); - delete iDosSysUtils; - iDosSysUtils = NULL; - } - retval = KErrNone; - break; - - case ETFDosHelper_Open: - if ( iDosHelper == NULL ) - { - iDosHelper = new ( ELeave ) RDosHelper(); - retval = iDosHelper->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosHelper_GetStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GetStartupReason( aParameter.iArg1 ); - } - break; - case ETFDosHelper_GetSWStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - TInt16 temp; - retval = iDosHelper->GetSWStartupReason( temp ); - aParameter.iArg1 = temp; - } - break; - case ETFDosHelper_SetSWStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->SetSWStartupReason( ( TInt16 )aParameter.iArg1 ); - } - break; - case ETFDosHelper_HiddenReset: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - aParameter.iArg1 = iDosHelper->HiddenReset(); - retval = KErrNone; - } - break; - case ETFDosHelper_GetRTCStatus: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GetRTCStatus( aParameter.iArg1 ); - } - break; - /*case ETFDosHelper_GenerateGripEvent: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GenerateGripEvent(); - } - break;*/ - case ETFDosHelper_Close: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - iDosHelper->Close(); - delete iDosHelper; - iDosHelper = NULL; - } - retval = KErrNone; - break; - - case ETFDosMtc_Open: - if ( iDosMtc == NULL ) - { - iDosMtc = new ( ELeave ) RDosMtc(); - retval = iDosMtc->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosMtc_PowerOn: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->PowerOn(); - } - break; - case ETFDosMtc_PowerOff: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->PowerOff(); - } - break; - case ETFDosMtc_DosSync: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->DosSync(); - } - break; - case ETFDosMtc_ResetGenerate: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->ResetGenerate(); - } - break; - case ETFDosMtc_SetState: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->SetState( aParameter.iArg1 ); - } - break; - case ETFDosMtc_SetStateFlag: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->SetStateFlag( ( TDosStateFlag )aParameter.iArg1 ); - } - break; - case ETFDosMtc_GetStateFlag: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - TDosStateFlag flag; - retval = iDosMtc->GetStateFlag( flag ); - aParameter.iArg1 = flag; - } - break; - case ETFDosMtc_Close: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - iDosMtc->Close(); - delete iDosMtc; - iDosMtc = NULL; - } - retval = KErrNone; - break; - - case ETFDosSelfTest_Open: - if ( iDosSelfTest == NULL ) - { - iDosSelfTest = new ( ELeave ) RDosSelfTest(); - retval = iDosSelfTest->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSelfTest_PerformSelfTest: - TRACE_ASSERT( iDosSelfTest != NULL ); - if ( iDosSelfTest != NULL ) - { - retval = iDosSelfTest->PerformSelfTest(); - } - break; - case ETFDosSelfTest_Close: - TRACE_ASSERT( iDosSelfTest != NULL ); - if ( iDosSelfTest != NULL ) - { - iDosSelfTest->Close(); - delete iDosSelfTest; - iDosSelfTest = NULL; - } - retval = KErrNone; - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - if ( iDosSae == NULL ) - { - iDosSae = new ( ELeave ) RDosSae(); - retval = iDosSae->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSae_StartSae: - TRACE_ASSERT( iDosSae != NULL ); - if ( iDosSae != NULL ) - { - retval = iDosSae->StartSae(); - } - break; - case ETFDosSae_Close: - TRACE_ASSERT( iDosSae != NULL ); - if ( iDosSae != NULL ) - { - iDosSae->Close(); - delete iDosSae; - iDosSae = NULL; - } - retval = KErrNone; - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - if ( iDosBTAudio == NULL ) - { - iDosBTAudio = new ( ELeave ) RDosBTAudio(); - retval = iDosBTAudio->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosBTAudio_AttachAudioAccessoryReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_CancelAttachReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_CancelDetachReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkOpenResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkCloseResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkOpenInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkCloseInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_Close: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - iDosBTAudio->Close(); - delete iDosBTAudio; - iDosBTAudio = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_Open: - if ( iDosExtension == NULL ) - { - iDosExtension = new ( ELeave ) RTFDosExtension(); - retval = iDosExtension->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosExtension_CallFunction: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - retval = iDosExtension->CallSyncDosExtFunction( aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( aParameter.iArg2 ), ETrue ); - } - break; - case ETFDosExtension_CallFunctionAndComplete: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - TRequestStatus status; - retval = iDosExtension->CallAsyncDosExtFunction( status, aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( TInt ), ETrue ); - } - break; - case ETFDosExtension_Close: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - iDosExtension->Close(); - delete iDosExtension; - iDosExtension = NULL; - } - retval = KErrNone; - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_Open: - if ( iDosAccessory == NULL ) - { - iDosAccessory = new ( ELeave ) RDosAccessory(); - retval = iDosAccessory->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosAccessory_GetAccessoryMode: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - TDosAccessoryMode acc; - retval = iDosAccessory->GetAccessoryMode( acc ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = acc; - } - } - break; - case ETFDosAccessory_SetLoopSetModeState: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - retval = iDosAccessory->SetLoopSetModeState( ( EPSAccLpsMode )aParameter.iArg1 ); - } - break; - case ETFDosAccessory_GetLoopSetModeState: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - EPSAccLpsMode acc; - retval = iDosAccessory->GetLoopSetModeState( acc ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = acc; - } - } - break; - - case ETFDosAccessory_Close: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - iDosAccessory->Close(); - delete iDosAccessory; - iDosAccessory = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - -#ifndef __ACCESSORY_FW - case ETFDosAudio_Open: - if ( iDosAudio == NULL ) - { - iDosAudio = new ( ELeave ) RDosAudio(); - retval = iDosAudio->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosAudio_SetHandsfreeMode: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->SetHandsfreeMode( ( EPSHandsFreeMode )aParameter.iArg1 ); - } - break; - case ETFDosAudio_GetHandsfreeMode: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - EPSHandsFreeMode hf; - retval = iDosAudio->GetHandsfreeMode( hf ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = hf; - } - } - break; - - case ETFDosAudio_GetOutputVolume: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->GetOutputVolume( aParameter.iArg1 ); - } - break; - case ETFDosAudio_SetOutputVolume: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->SetOutputVolume( aParameter.iArg1 ); - } - break; - case ETFDosAudio_Close: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - iDosAudio->Close(); - delete iDosAudio; - iDosAudio = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - User::LeaveIfError( retval ); - } - -// Getters return 0, since they are not used in parameter tests -TInt CTFDosServerControl::ParameterCount( TTFDosFunction aFunction ) const - { - TInt retval = 0; - switch ( aFunction ) - { -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - case ETFDosHelper_Open: - case ETFDosMtc_Open: - case ETFDosSelfTest_Open: - case ETFDosSysUtils_Close: - case ETFDosHelper_Close: - case ETFDosMtc_Close: - case ETFDosSelfTest_Close: -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - case ETFDosSae_Close: - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - case ETFDosBTAudio_Close: -#endif // __ACCESSORY_FW - - case ETFDosExtension_Open: - case ETFDosExtension_Close: - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_Open: - case ETFDosAudio_Open: - case ETFDosAccessory_Close: - case ETFDosAudio_Close: -#endif // __ACCESSORY_FW - break; - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_SetDosAlarm: - case ETFDosSysUtils_PerformDosRfs: - retval = 1; - break; - case ETFDosHelper_GetStartupReason: - case ETFDosHelper_GetSWStartupReason: - break; - case ETFDosHelper_SetSWStartupReason: - retval = 1; - break; - case ETFDosHelper_HiddenReset: - case ETFDosHelper_GetRTCStatus: - //case ETFDosHelper_GenerateGripEvent: - case ETFDosMtc_PowerOn: - case ETFDosMtc_PowerOff: - case ETFDosMtc_DosSync: - case ETFDosMtc_ResetGenerate: - break; - case ETFDosMtc_SetState: - case ETFDosMtc_SetStateFlag: - retval = 1; - break; - case ETFDosMtc_GetStateFlag: - case ETFDosSelfTest_PerformSelfTest: - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_StartSae: - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_AttachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelAttachReq: - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelDetachReq: - break; - case ETFDosBTAudio_AudioLinkOpenResp: - break; - case ETFDosBTAudio_AudioLinkCloseResp: - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - break; - case ETFDosBTAudio_AudioLinkOpenInd: - break; - case ETFDosBTAudio_AudioLinkCloseInd: - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_CallFunction: - break; - case ETFDosExtension_CallFunctionAndComplete: - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_GetAccessoryMode: - break; - case ETFDosAccessory_SetLoopSetModeState: - retval = 1; - break; - case ETFDosAccessory_GetLoopSetModeState: - break; - - case ETFDosAudio_SetHandsfreeMode: - retval = 1; - break; - case ETFDosAudio_GetHandsfreeMode: - break; - - case ETFDosAudio_GetOutputVolume: - break; - case ETFDosAudio_SetOutputVolume: - retval = 1; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - return retval; - } - - -TBool CTFDosServerControl::ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const - { - TBool retval = EFalse; - TRACE_ASSERT( aMin != NULL && aMax != NULL ); - if ( aMin != NULL && aMax != NULL ) - { - switch ( aFunction ) - { -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - case ETFDosHelper_Open: - case ETFDosMtc_Open: - case ETFDosSelfTest_Open: - case ETFDosSysUtils_Close: - case ETFDosHelper_Close: - case ETFDosMtc_Close: - case ETFDosSelfTest_Close: -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - case ETFDosExtension_Open: - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - case ETFDosBTAudio_Close: - case ETFDosAccessory_Open: - case ETFDosAudio_Open: - case ETFDosAccessory_Close: - case ETFDosAudio_Close: -#endif // __ACCESSORY_FW - - case ETFDosSae_Close: - case ETFDosExtension_Close: - break; - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_GetSimLanguage: - break; - case ETFDosSysUtils_SetDosAlarm: - // Not supported, too many time values to test. - break; - case ETFDosSysUtils_PerformDosRfs: - retval = ETrue; - *aMin = ERfsNormal; - *aMax = ERfsDeep; - break; - - case ETFDosHelper_GetStartupReason: - break; - case ETFDosHelper_GetSWStartupReason: - break; - case ETFDosHelper_SetSWStartupReason: - retval = ETrue; - *aMin = ESWNone; - *aMax = ESWRestoreFactorySetDeep; - break; - case ETFDosHelper_HiddenReset: - break; - case ETFDosHelper_GetRTCStatus: - break; - //case ETFDosHelper_GenerateGripEvent: - // break; - - case ETFDosMtc_PowerOn: - break; - case ETFDosMtc_PowerOff: - break; - case ETFDosMtc_DosSync: - break; - case ETFDosMtc_ResetGenerate: - break; - case ETFDosMtc_SetState: - retval = ETrue; - *aMin = ESysApMtcChargingState; - *aMax = ESysApMtcRfInactiveState; - break; - case ETFDosMtc_SetStateFlag: - retval = ETrue; - *aMin = EDosOfflineStateFlagFalse; - *aMax = EDosOfflineStateFlagTrue; - break; - case ETFDosMtc_GetStateFlag: - break; - - case ETFDosSelfTest_PerformSelfTest: - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_StartSae: - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_AttachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelAttachReq: - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelDetachReq: - break; - case ETFDosBTAudio_AudioLinkOpenResp: - break; - case ETFDosBTAudio_AudioLinkCloseResp: - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - break; - case ETFDosBTAudio_AudioLinkOpenInd: - break; - case ETFDosBTAudio_AudioLinkCloseInd: - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_CallFunction: - break; - case ETFDosExtension_CallFunctionAndComplete: - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_GetAccessoryMode: - break; - case ETFDosAccessory_SetLoopSetModeState: - retval = ETrue; - *aMin = EPSAccLpsOff; - *aMax = EPSAccTty; - break; - case ETFDosAccessory_GetLoopSetModeState: - break; - - case ETFDosAudio_SetHandsfreeMode: - retval = ETrue; - *aMin = EPSIhfOff; - *aMax = EPSIhfOn; - break; - case ETFDosAudio_GetHandsfreeMode: - break; - - case ETFDosAudio_GetOutputVolume: - break; - case ETFDosAudio_SetOutputVolume: - retval = ETrue; - *aMin = 0; - *aMax = 9; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - } - else - { - retval = KErrArgument; - } - return retval; - } - -void CTFDosServerControl::NotifyDosEvent( TInt aEvent, TInt aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent( %d, %d )" ), aEvent, aParameter ) ); - CTFDosServerControlTestCase* testCase = STATIC_CAST( CTFDosServerControlTestCase*, CurrentTestCase() ); - TRACE_ASSERT( testCase != NULL ); - if ( testCase != NULL ) - { - testCase->NotifyDosEvent( aEvent, aParameter ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent - return" ) ) ); - } - - -TInt RTFDosExtension::CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = ETrue ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x)" ), aFunc, aParam, aParLength, aAutoComplete ) ); - TExtensionParPckg package; - package().iFunc = aFunc; - package().iParLength = aParLength; - package().iAutoComplete = aAutoComplete; - TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); - TInt result = CallFunction( package, ptr ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction - return 0x%x" ), result ) ); - return result; - } - - -TInt RTFDosExtension::CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = EFalse ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), &aStatus, aFunc, aParam, aParLength, aAutoComplete ) ); - TExtensionParPckg package; - package().iFunc = aFunc; - package().iParLength = aParLength; - package().iAutoComplete = aAutoComplete; - TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); - CallFunction( aStatus, package, ptr ); - User::WaitForRequest( aStatus ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction - return 0x%x" ), aStatus.Int() ) ); - return aStatus.Int(); - } +/* +* 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: Implementation of CTFDosServerControl class +* +*/ + + +// INCLUDE FILES +#ifndef RD_STARTUP_CHANGE +#include +#endif // RD_STARTUP_CHANGE + +#include "ctffactory.h" +#include "tftypes.h" +#include +#include "dsytesttooltrace.h" +#include "dsyenums.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcase.h" +#include "ctfdoseventlistener.h" + + +// ----------------------------------------------------------------------------- +// GetDosServerControl +// ----------------------------------------------------------------------------- +EXPORT_C MTFDosServerControl* GetDosServerControl( void ) + { + CTFStub* stub = CTFFactory::Stub( KTFStubTypeDosServerControl ); + return STATIC_CAST( CTFDosServerControl*, stub ); + } + + +// ----------------------------------------------------------------------------- +// MTFDosServerControl::MTFDosServerControl +// ----------------------------------------------------------------------------- +MTFDosServerControl::MTFDosServerControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFDosServerControl::~MTFDosServerControl +// ----------------------------------------------------------------------------- +MTFDosServerControl::~MTFDosServerControl( void ) + { + } + + +CTFDosServerControl::CTFDosServerControl( void ) +: CTFStub( KTFStubTypeDosServerControl ) + { + } + +//lint -e1740 Pointer not directly deleted by destructor +CTFDosServerControl::~CTFDosServerControl( void ) + { + ResetDosServices(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::~CTFDosServerControl() - DosServer connection closed" ) ) ); + } +//lint +e1740 + +void CTFDosServerControl::InitializeL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL()" ) ) ); + + User::LeaveIfError( iDosServer.Connect() ); + iEventListener = new ( ELeave ) CTFDosServerEventListener( iDosServer ); + TRegisterEvent eventList[] = + { +#ifndef RD_STARTUP_CHANGE + { KNotifySelfTestStatus, sizeof ( TInt ), EQueue }, + { KDoMtcInitiatedShutdown, sizeof ( TInt ), EQueue }, + { KPhonePowerOn, 0, EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + { KSimReady, sizeof ( TInt ), EQueue }, + { KSimChanged, sizeof ( TInt ), EQueue }, + { KSimLockStatus, sizeof ( TInt ), EQueue }, + { KSimState, sizeof ( TInt ), EQueue }, + { KCallsForwardingStatus, sizeof ( TInt ), EQueue }, + { KVoiceMailStatus, sizeof ( TInt ), EQueue }, + { KFaxMessage, sizeof ( TInt ), EQueue }, + { KEmailMessage, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + + // { KNetworkBars, sizeof ( TInt ), EQueue }, + +#ifndef RD_STARTUP_CHANGE + { KSecurityCode, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + { KCurrentSimOwnedStatus, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + { KAudioLinkOpenReq, sizeof ( TInt ), EQueue }, + { KAudioLinkCloseReq, sizeof ( TInt ), EQueue }, + { KActivateVoiceRecognitionReq, sizeof ( TInt ), EQueue }, + { KAbortVoiceRecognitionReq, sizeof ( TInt ), EQueue }, + { KVoiceRecognitionStatusReq, sizeof ( TInt ), EQueue }, + { KQuerySpeedDialNumberReq, sizeof ( TInt ), EQueue }, + { KQueryLastDialledVoiceNumberReq, sizeof ( TInt ), EQueue }, + { KAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, + { KBTAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, + { KAccessorySpeakerVolumeSetInd, sizeof ( TInt ), EQueue }, + { KServiceLevelConnEstablishedInd, sizeof ( TInt ), EQueue }, + { KHeadsetButtonChanged, sizeof ( TInt ), EQueue }, + { KHandsfreeModeChanged, sizeof ( TInt ), EQueue }, + { KOutputVolumeLevelChanged, sizeof ( TInt ), EQueue }, +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + { KSmsStorageStatusChanged, sizeof ( TDosSmsStorageStatus ), EQueue }, +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + { KAccessoryModeChanged, sizeof ( TInt ), EQueue } +#endif //__ACCESSORY_FW + }; + iEventListener->StartListeningL( eventList, sizeof ( eventList ) / sizeof ( TRegisterEvent ) ); + iInitialized = ETrue; + + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL - return" ) ) ); + } + +void CTFDosServerControl::ResetDosServices( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices()" ) ) ); + + if ( iEventListener != NULL ) + { + iEventListener->Stop(); + delete iEventListener; + } +#ifndef RD_STARTUP_CHANGE + if ( iDosSysUtils != NULL ) + { + iDosSysUtils->Close(); + iDosSysUtils = NULL; + } + if ( iDosHelper != NULL ) + { + iDosHelper->Close(); + iDosHelper = NULL; + } + if ( iDosMtc != NULL ) + { + iDosMtc->Close(); + iDosMtc = NULL; + } + if ( iDosSelfTest != NULL ) + { + iDosSelfTest->Close(); + iDosSelfTest = NULL; + } +#endif //RD_STARTUP_CHANGE + + if ( iDosSae != NULL ) + { + iDosSae->Close(); + iDosSae = NULL; + } +#ifndef __ACCESSORY_FW + if ( iDosBTAudio != NULL ) + { + iDosBTAudio->Close(); + iDosBTAudio = NULL; + } +#endif //__ACCESSORY_FW + if ( iDosExtension != NULL ) + { + iDosExtension->Close(); + iDosExtension = NULL; + } +#ifndef __ACCESSORY_FW + if ( iDosAccessory != NULL ) + { + iDosAccessory->Close(); + iDosAccessory = NULL; + } + if ( iDosAudio != NULL ) + { + iDosAudio->Close(); + iDosAudio = NULL; + } +#endif //__ACCESSORY_FW + + iDosServer.Close(); + iInitialized = EFalse; + + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices() - Success" ) ) ); + } + +void CTFDosServerControl::CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::CallDosFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); + + // DosServer connection needs to be opened. + if ( !iInitialized ) + { + InitializeL(); + } + + TInt retval = KTFErrDosServiceMissing; + switch ( aParameter.iDosFunction ) + { + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + if ( iDosSysUtils == NULL ) + { + iDosSysUtils = new ( ELeave ) RDosSysUtils(); + retval = iDosSysUtils->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSysUtils_GetSimLanguage: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + retval = iDosSysUtils->GetSimLanguage( aParameter.iArg1 ); + } + break; + case ETFDosSysUtils_SetDosAlarm: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + if ( aParameter.iArg1 != 0 ) + { + TTime time; + time.HomeTime(); + if ( aParameter.iArg1 > 0 ) + { + TTimeIntervalMinutes interval = aParameter.iArg1; + time += interval; + } + else + { + TTimeIntervalMinutes interval = 0 - aParameter.iArg1; + time -= interval; + } + time.RoundUpToNextMinute(); + if ( aParameter.iArg2 != 0 ) + { + TTimeIntervalSeconds interval = aParameter.iArg2; + time += interval; + } + retval = iDosSysUtils->SetDosAlarm( &time ); + } + else + { + retval = iDosSysUtils->SetDosAlarm( NULL ); + } + } + break; + case ETFDosSysUtils_PerformDosRfs: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + } + break; + case ETFDosSysUtils_Close: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + iDosSysUtils->Close(); + delete iDosSysUtils; + iDosSysUtils = NULL; + } + retval = KErrNone; + break; + + case ETFDosHelper_Open: + if ( iDosHelper == NULL ) + { + iDosHelper = new ( ELeave ) RDosHelper(); + retval = iDosHelper->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosHelper_GetStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GetStartupReason( aParameter.iArg1 ); + } + break; + case ETFDosHelper_GetSWStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + TInt16 temp; + retval = iDosHelper->GetSWStartupReason( temp ); + aParameter.iArg1 = temp; + } + break; + case ETFDosHelper_SetSWStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->SetSWStartupReason( ( TInt16 )aParameter.iArg1 ); + } + break; + case ETFDosHelper_HiddenReset: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + aParameter.iArg1 = iDosHelper->HiddenReset(); + retval = KErrNone; + } + break; + case ETFDosHelper_GetRTCStatus: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GetRTCStatus( aParameter.iArg1 ); + } + break; + /*case ETFDosHelper_GenerateGripEvent: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GenerateGripEvent(); + } + break;*/ + case ETFDosHelper_Close: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + iDosHelper->Close(); + delete iDosHelper; + iDosHelper = NULL; + } + retval = KErrNone; + break; + + case ETFDosMtc_Open: + if ( iDosMtc == NULL ) + { + iDosMtc = new ( ELeave ) RDosMtc(); + retval = iDosMtc->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosMtc_PowerOn: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->PowerOn(); + } + break; + case ETFDosMtc_PowerOff: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->PowerOff(); + } + break; + case ETFDosMtc_DosSync: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->DosSync(); + } + break; + case ETFDosMtc_ResetGenerate: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->ResetGenerate(); + } + break; + case ETFDosMtc_SetState: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->SetState( aParameter.iArg1 ); + } + break; + case ETFDosMtc_SetStateFlag: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->SetStateFlag( ( TDosStateFlag )aParameter.iArg1 ); + } + break; + case ETFDosMtc_GetStateFlag: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + TDosStateFlag flag; + retval = iDosMtc->GetStateFlag( flag ); + aParameter.iArg1 = flag; + } + break; + case ETFDosMtc_Close: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + iDosMtc->Close(); + delete iDosMtc; + iDosMtc = NULL; + } + retval = KErrNone; + break; + + case ETFDosSelfTest_Open: + if ( iDosSelfTest == NULL ) + { + iDosSelfTest = new ( ELeave ) RDosSelfTest(); + retval = iDosSelfTest->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSelfTest_PerformSelfTest: + TRACE_ASSERT( iDosSelfTest != NULL ); + if ( iDosSelfTest != NULL ) + { + retval = iDosSelfTest->PerformSelfTest(); + } + break; + case ETFDosSelfTest_Close: + TRACE_ASSERT( iDosSelfTest != NULL ); + if ( iDosSelfTest != NULL ) + { + iDosSelfTest->Close(); + delete iDosSelfTest; + iDosSelfTest = NULL; + } + retval = KErrNone; + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + if ( iDosSae == NULL ) + { + iDosSae = new ( ELeave ) RDosSae(); + retval = iDosSae->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSae_StartSae: + TRACE_ASSERT( iDosSae != NULL ); + if ( iDosSae != NULL ) + { + retval = iDosSae->StartSae(); + } + break; + case ETFDosSae_Close: + TRACE_ASSERT( iDosSae != NULL ); + if ( iDosSae != NULL ) + { + iDosSae->Close(); + delete iDosSae; + iDosSae = NULL; + } + retval = KErrNone; + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + if ( iDosBTAudio == NULL ) + { + iDosBTAudio = new ( ELeave ) RDosBTAudio(); + retval = iDosBTAudio->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosBTAudio_AttachAudioAccessoryReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_CancelAttachReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_CancelDetachReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkOpenResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkCloseResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkOpenInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkCloseInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_Close: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + iDosBTAudio->Close(); + delete iDosBTAudio; + iDosBTAudio = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_Open: + if ( iDosExtension == NULL ) + { + iDosExtension = new ( ELeave ) RTFDosExtension(); + retval = iDosExtension->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosExtension_CallFunction: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + retval = iDosExtension->CallSyncDosExtFunction( aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( aParameter.iArg2 ), ETrue ); + } + break; + case ETFDosExtension_CallFunctionAndComplete: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + TRequestStatus status; + retval = iDosExtension->CallAsyncDosExtFunction( status, aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( TInt ), ETrue ); + } + break; + case ETFDosExtension_Close: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + iDosExtension->Close(); + delete iDosExtension; + iDosExtension = NULL; + } + retval = KErrNone; + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_Open: + if ( iDosAccessory == NULL ) + { + iDosAccessory = new ( ELeave ) RDosAccessory(); + retval = iDosAccessory->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosAccessory_GetAccessoryMode: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + TDosAccessoryMode acc; + retval = iDosAccessory->GetAccessoryMode( acc ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = acc; + } + } + break; + case ETFDosAccessory_SetLoopSetModeState: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + retval = iDosAccessory->SetLoopSetModeState( ( EPSAccLpsMode )aParameter.iArg1 ); + } + break; + case ETFDosAccessory_GetLoopSetModeState: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + EPSAccLpsMode acc; + retval = iDosAccessory->GetLoopSetModeState( acc ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = acc; + } + } + break; + + case ETFDosAccessory_Close: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + iDosAccessory->Close(); + delete iDosAccessory; + iDosAccessory = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + +#ifndef __ACCESSORY_FW + case ETFDosAudio_Open: + if ( iDosAudio == NULL ) + { + iDosAudio = new ( ELeave ) RDosAudio(); + retval = iDosAudio->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosAudio_SetHandsfreeMode: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->SetHandsfreeMode( ( EPSHandsFreeMode )aParameter.iArg1 ); + } + break; + case ETFDosAudio_GetHandsfreeMode: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + EPSHandsFreeMode hf; + retval = iDosAudio->GetHandsfreeMode( hf ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = hf; + } + } + break; + + case ETFDosAudio_GetOutputVolume: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->GetOutputVolume( aParameter.iArg1 ); + } + break; + case ETFDosAudio_SetOutputVolume: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->SetOutputVolume( aParameter.iArg1 ); + } + break; + case ETFDosAudio_Close: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + iDosAudio->Close(); + delete iDosAudio; + iDosAudio = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + User::LeaveIfError( retval ); + } + +// Getters return 0, since they are not used in parameter tests +TInt CTFDosServerControl::ParameterCount( TTFDosFunction aFunction ) const + { + TInt retval = 0; + switch ( aFunction ) + { +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + case ETFDosHelper_Open: + case ETFDosMtc_Open: + case ETFDosSelfTest_Open: + case ETFDosSysUtils_Close: + case ETFDosHelper_Close: + case ETFDosMtc_Close: + case ETFDosSelfTest_Close: +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + case ETFDosSae_Close: + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + case ETFDosBTAudio_Close: +#endif // __ACCESSORY_FW + + case ETFDosExtension_Open: + case ETFDosExtension_Close: + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_Open: + case ETFDosAudio_Open: + case ETFDosAccessory_Close: + case ETFDosAudio_Close: +#endif // __ACCESSORY_FW + break; + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_SetDosAlarm: + case ETFDosSysUtils_PerformDosRfs: + retval = 1; + break; + case ETFDosHelper_GetStartupReason: + case ETFDosHelper_GetSWStartupReason: + break; + case ETFDosHelper_SetSWStartupReason: + retval = 1; + break; + case ETFDosHelper_HiddenReset: + case ETFDosHelper_GetRTCStatus: + //case ETFDosHelper_GenerateGripEvent: + case ETFDosMtc_PowerOn: + case ETFDosMtc_PowerOff: + case ETFDosMtc_DosSync: + case ETFDosMtc_ResetGenerate: + break; + case ETFDosMtc_SetState: + case ETFDosMtc_SetStateFlag: + retval = 1; + break; + case ETFDosMtc_GetStateFlag: + case ETFDosSelfTest_PerformSelfTest: + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_StartSae: + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_AttachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelAttachReq: + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelDetachReq: + break; + case ETFDosBTAudio_AudioLinkOpenResp: + break; + case ETFDosBTAudio_AudioLinkCloseResp: + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + break; + case ETFDosBTAudio_AudioLinkOpenInd: + break; + case ETFDosBTAudio_AudioLinkCloseInd: + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_CallFunction: + break; + case ETFDosExtension_CallFunctionAndComplete: + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_GetAccessoryMode: + break; + case ETFDosAccessory_SetLoopSetModeState: + retval = 1; + break; + case ETFDosAccessory_GetLoopSetModeState: + break; + + case ETFDosAudio_SetHandsfreeMode: + retval = 1; + break; + case ETFDosAudio_GetHandsfreeMode: + break; + + case ETFDosAudio_GetOutputVolume: + break; + case ETFDosAudio_SetOutputVolume: + retval = 1; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + return retval; + } + + +TBool CTFDosServerControl::ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const + { + TBool retval = EFalse; + TRACE_ASSERT( aMin != NULL && aMax != NULL ); + if ( aMin != NULL && aMax != NULL ) + { + switch ( aFunction ) + { +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + case ETFDosHelper_Open: + case ETFDosMtc_Open: + case ETFDosSelfTest_Open: + case ETFDosSysUtils_Close: + case ETFDosHelper_Close: + case ETFDosMtc_Close: + case ETFDosSelfTest_Close: +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + case ETFDosExtension_Open: + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + case ETFDosBTAudio_Close: + case ETFDosAccessory_Open: + case ETFDosAudio_Open: + case ETFDosAccessory_Close: + case ETFDosAudio_Close: +#endif // __ACCESSORY_FW + + case ETFDosSae_Close: + case ETFDosExtension_Close: + break; + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_GetSimLanguage: + break; + case ETFDosSysUtils_SetDosAlarm: + // Not supported, too many time values to test. + break; + case ETFDosSysUtils_PerformDosRfs: + retval = ETrue; + *aMin = ERfsNormal; + *aMax = ERfsDeep; + break; + + case ETFDosHelper_GetStartupReason: + break; + case ETFDosHelper_GetSWStartupReason: + break; + case ETFDosHelper_SetSWStartupReason: + retval = ETrue; + *aMin = ESWNone; + *aMax = ESWRestoreFactorySetDeep; + break; + case ETFDosHelper_HiddenReset: + break; + case ETFDosHelper_GetRTCStatus: + break; + //case ETFDosHelper_GenerateGripEvent: + // break; + + case ETFDosMtc_PowerOn: + break; + case ETFDosMtc_PowerOff: + break; + case ETFDosMtc_DosSync: + break; + case ETFDosMtc_ResetGenerate: + break; + case ETFDosMtc_SetState: + retval = ETrue; + *aMin = ESysApMtcChargingState; + *aMax = ESysApMtcRfInactiveState; + break; + case ETFDosMtc_SetStateFlag: + retval = ETrue; + *aMin = EDosOfflineStateFlagFalse; + *aMax = EDosOfflineStateFlagTrue; + break; + case ETFDosMtc_GetStateFlag: + break; + + case ETFDosSelfTest_PerformSelfTest: + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_StartSae: + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_AttachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelAttachReq: + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelDetachReq: + break; + case ETFDosBTAudio_AudioLinkOpenResp: + break; + case ETFDosBTAudio_AudioLinkCloseResp: + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + break; + case ETFDosBTAudio_AudioLinkOpenInd: + break; + case ETFDosBTAudio_AudioLinkCloseInd: + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_CallFunction: + break; + case ETFDosExtension_CallFunctionAndComplete: + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_GetAccessoryMode: + break; + case ETFDosAccessory_SetLoopSetModeState: + retval = ETrue; + *aMin = EPSAccLpsOff; + *aMax = EPSAccTty; + break; + case ETFDosAccessory_GetLoopSetModeState: + break; + + case ETFDosAudio_SetHandsfreeMode: + retval = ETrue; + *aMin = EPSIhfOff; + *aMax = EPSIhfOn; + break; + case ETFDosAudio_GetHandsfreeMode: + break; + + case ETFDosAudio_GetOutputVolume: + break; + case ETFDosAudio_SetOutputVolume: + retval = ETrue; + *aMin = 0; + *aMax = 9; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + } + else + { + retval = KErrArgument; + } + return retval; + } + +void CTFDosServerControl::NotifyDosEvent( TInt aEvent, TInt aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent( %d, %d )" ), aEvent, aParameter ) ); + CTFDosServerControlTestCase* testCase = STATIC_CAST( CTFDosServerControlTestCase*, CurrentTestCase() ); + TRACE_ASSERT( testCase != NULL ); + if ( testCase != NULL ) + { + testCase->NotifyDosEvent( aEvent, aParameter ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent - return" ) ) ); + } + + +TInt RTFDosExtension::CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = ETrue ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x)" ), aFunc, aParam, aParLength, aAutoComplete ) ); + TExtensionParPckg package; + package().iFunc = aFunc; + package().iParLength = aParLength; + package().iAutoComplete = aAutoComplete; + TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); + TInt result = CallFunction( package, ptr ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction - return 0x%x" ), result ) ); + return result; + } + + +TInt RTFDosExtension::CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = EFalse ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), &aStatus, aFunc, aParam, aParLength, aAutoComplete ) ); + TExtensionParPckg package; + package().iFunc = aFunc; + package().iParLength = aParLength; + package().iAutoComplete = aAutoComplete; + TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); + CallFunction( aStatus, package, ptr ); + User::WaitForRequest( aStatus ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction - return 0x%x" ), aStatus.Int() ) ); + return aStatus.Int(); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontroltestcase.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontroltestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosservercontroltestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,396 +1,396 @@ -/* -* 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: Implementation of CTFDosServerControlTestCase class -* -*/ - - -// INCLUDE FILES -#include "ctfatesttimer.h" -#include "ctfatestlog.h" -#include "tftypes.h" -#include "dsytesttooltrace.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcase.h" -#include "ctfdosservercontroltestcaseparam.h" - -const TInt KTFStateTransitionTimeout = 1000; -const TInt KTFTeardownTimeout = 100000; - - -CTFDosServerControlTestCaseParam::CTFDosServerControlTestCaseParam( void ) - { - } - - -void CTFDosServerControlTestCaseParam::ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ) - { - TRACE_ASSERT( aStates != NULL ); - TRACE_ASSERT( aStateCount > 0 ); - iStates = REINTERPRET_CAST( TTFDosServerControlTestCaseState*, User::Alloc( sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ) ); - User::LeaveIfNull( iStates ); - Mem::Copy( iStates, aStates, sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ); - iStateCount = aStateCount; - } - - -CTFDosServerControlTestCaseParam::~CTFDosServerControlTestCaseParam( void ) - { - User::Free( iStates ); - iStates = NULL; - } - - -const TTFDosServerControlTestCaseState* CTFDosServerControlTestCaseParam::States( void ) const - { - return iStates; - } - - -TInt CTFDosServerControlTestCaseParam::StateCount( void ) const - { - return iStateCount; - } - - -CTFDosServerControlTestCase::CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ) -: CTFStubTestCase( KTFStubTypeDosServerControl ) -, iParameters( aParameters ) - { - TRACE_ASSERT( aParameters != NULL ); - if ( aParameters != NULL ) - { - TRACE_ASSERT( aParameters->States() != NULL ); - TRACE_ASSERT( aParameters->StateCount() > 0 ); - } - } - - -void CTFDosServerControlTestCase::ConstructL( void ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - - -CTFDosServerControlTestCase::~CTFDosServerControlTestCase( void ) - { - delete iParameters; - delete iTimer; - } - - -void CTFDosServerControlTestCase::Log( TInt aDepth ) - { - _LIT( KStart, "DosServer control component, %d states" ); - _LIT( KState, "Flags: %d %d %d %d %d" ); - Logger().WriteList( aDepth, KStart, iParameters->StateCount() ); - for ( TInt i = 0; i < iParameters->StateCount(); i++ ) - { - Logger().WriteList( aDepth + 1, KState, - iParameters->States()[i].iDosFunction, - iParameters->States()[i].iArg1, - iParameters->States()[i].iArg2, - iParameters->States()[i].iExpectedResult, - iParameters->States()[i].iCompletionEvent ); - } - } - - -void CTFDosServerControlTestCase::InitL( void ) - { - iCleanupWait = EFalse; - iCurrentStateIndex = 0; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - } - - -void CTFDosServerControlTestCase::ActiveTestRunL( void ) - { - if ( iCleanupWait ) - { - CActiveScheduler::Stop(); - } - else - { - RunL(); - } - } - - -void CTFDosServerControlTestCase::RunL( void ) - { - TInt result = KErrNone; - TBool syncStart = -1; - if ( iCurrentState.iDosFunction != 0 ) - { - // If the state is the start of synchronized block, the current state - // is changed to the state that represents the next event that should occur. - if ( iCurrentState.iCompletionEvent == ETFDosEvent_Synchronized ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - Starting synchronized block from state %d" ), iCurrentStateIndex + 1 ) ); - syncStart = iCurrentStateIndex++; - TRACE_ASSERT( iCurrentStateIndex < iParameters->StateCount() ); - TTFDosServerControlTestCaseState state( iCurrentState ); - iCurrentState = iParameters->States()[iCurrentStateIndex]; - TRAP( result, STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( state ) ); - } - else - { - TRAP( result, CallCurrentDosFunctionL() ); - } - } - // If the current state does not have a completion event, the transition to next state can be made - // after the result and parameters have been checked. - // If the current state is not a synchronization state and it contains a completion event, - // the state change occurs when the event arrives. - // If CallDSYFunctionL started a synchronized block, the current state should now - // be the end of the synchronized block. Otherwise the events between the synchronized - // states did not occur. - if ( ( syncStart == -1 && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_None ) || - ( syncStart != -1 && syncStart != iCurrentStateIndex && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_Synchronized ) ) - { - if ( syncStart != -1 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block ( states %d-%d )" ), syncStart + 1, iCurrentStateIndex + 1 ) ); - } - result = CheckResult( result, EFalse ); - StartNextState( result ); - } - else - { - // KErrNotSupported result from a synchronized block or a state with a completion event - // is not interpreted as passed. - if ( syncStart != -1 && result == KErrNone ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block missing" ) ) ); - result = KTFErrDosNoSyncEnd; - } - if ( result != KErrNone ) - { - DoCompleteTest( result ); - } - } - } - - -void CTFDosServerControlTestCase::Teardown( void ) - { - // If the test is terminated by a failing stub test case, - // the timer may be left active and thus must be cancelled. - iTimer->Cancel(); - iTimer->After( KTFTeardownTimeout ); // 100-ms timeout to wait for pending events. - iCleanupWait = ETrue; - CActiveScheduler::Start(); - } - - -void CTFDosServerControlTestCase::NotifyDosEvent( TInt aEvent, TInt aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent(%d, %d)" ), aEvent, aParameter ) ); - if ( !IsComplete() ) - { - if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && aParameter == iParameters->States()[iCurrentStateIndex].iExpectedResult ) - { - TInt result = CheckResult( aParameter, ETrue ); - StartNextState( result ); - } - else if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreEventParameters ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected result was unspecified, result was %d" ), aParameter ) ); - StartNextState( KErrNone ); - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Unexpected event: %d, %d" ), aEvent, aParameter ) ); - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected event was: %d, %d" ), iParameters->States()[iCurrentStateIndex].iCompletionEvent, iParameters->States()[iCurrentStateIndex].iExpectedResult ) ); - if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreUnexpectedEvents ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - IgnoreUnexpectedEvents flag is on" ) ) ); - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); - if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent ) - { - DoCompleteTest( KTFErrDosUnexpectedEvent - aEvent ); - } - else - { - DoCompleteTest( KTFErrDosUnexpectedEventParameter - aParameter ); - } - } - } - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Test already finished" ) ) ); - } - } - - -void CTFDosServerControlTestCase::DoCompleteTest( TInt aResult ) - { - iTimer->Cancel(); - CompleteTest( aResult ); - } - - -void CTFDosServerControlTestCase::CallCurrentDosFunctionL( void ) - { - TRACE_ASSERT( iStub != NULL ); - if ( iStub != NULL ) - { - STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( iCurrentState ); - } - else - { - User::Leave( KTFErrNoStub ); - } - } - - -CTFDosServerControlTestCaseParam& CTFDosServerControlTestCase::Parameters( void ) - { - return *iParameters; - } - - -TTFDosFunction CTFDosServerControlTestCase::CurrentDosFunction( void ) const - { - return iCurrentState.iDosFunction; - } - - -TInt CTFDosServerControlTestCase::CurrentArg1( void ) const - { - return iCurrentState.iArg1; - } - - -TInt CTFDosServerControlTestCase::CurrentStateIndex( void ) const - { - return iCurrentStateIndex; - } - - -CTFATestTimer* CTFDosServerControlTestCase::Timer( void ) - { - return iTimer; - } - - -void CTFDosServerControlTestCase::StartNextState( TInt aResult ) - { - if ( aResult != KErrNone ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); - TEST_CASE_TRACE( ( _L( " DSYTESTTEST - CTFDosServerControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); - DoCompleteTest( aResult ); - } - else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) - { - DoCompleteTest( KErrNone ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); - iCurrentStateIndex++; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - // Timer is active if synchronized block was used - if ( !iTimer->IsActive() ) - { - iTimer->After( KTFStateTransitionTimeout ); // Timer calls RunL - } - } - } - - -// Checks that the test results are expected: -// - iExpectedResult matches unless IgnoreResult flag is set or result is KErrNotSupported -// - Test parameters match unless IgnoreParameters flag is set -TInt CTFDosServerControlTestCase::CheckResult( TInt aResult, TBool aIsEvent ) - { - TInt result = aResult; - if ( !aIsEvent && ( aResult == KErrNotSupported ) ) - { - // KErrNotSupported return value from DosServer function is interpreted as passed. - // The parameters are not checked in this case since they may contain arbitrary values. - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - KErrNotSupported -> KErrNone" ) ) ); - result = KErrNone; - } - else - { - // If result is not KErrNotSupported it is compared to the expected result unless - // IgnoreResult flag is set. If the result does not match, the test case fails - if ( ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreResult ) || - ( aResult == iParameters->States()[iCurrentStateIndex].iExpectedResult ) ) - { - if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_StoreParameters ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Parameters stored: %d, %d" ), iCurrentState.iArg1, iCurrentState.iArg2 ) ); - // StoreParameters flag tells that the values from current state are stored to - // be used when a state with UseParameters is encountered - iStoredArg1 = iCurrentState.iArg1; - iStoredArg2 = iCurrentState.iArg2; - result = KErrNone; - } - else if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_UseParameters ) - { - if ( iStoredArg1 != iCurrentState.iArg1 ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 1 ( %d ) did not match %d" ), iStoredArg1, iCurrentState.iArg1 ) ); - result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; - } - else if ( iStoredArg2 != iCurrentState.iArg2 ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 2 ( %d ) did not match %d" ), iStoredArg2, iCurrentState.iArg2 ) ); - result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); - result = KErrNone; - } - } - // The parameters of the current state are changed by the DosServer function if it - // contains output parameters. The changed parameters are compared to the expected - // parameters and if they do not match, the test case is failed. - else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && - ( iParameters->States()[iCurrentStateIndex].iArg1 != iCurrentState.iArg1 ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 1 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg1, iCurrentState.iArg1 ) ); - result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; - } - else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && - ( iParameters->States()[iCurrentStateIndex].iArg2 != iCurrentState.iArg2 ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 2 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg2, iCurrentState.iArg2 ) ); - result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); - result = KErrNone; - } - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Unexpected result: %d" ), aResult ) ); - result = KTFErrDosUnexpectedResult + aResult; - } - } - return result; - } - - +/* +* 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: Implementation of CTFDosServerControlTestCase class +* +*/ + + +// INCLUDE FILES +#include "ctfatesttimer.h" +#include "ctfatestlog.h" +#include "tftypes.h" +#include "dsytesttooltrace.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcase.h" +#include "ctfdosservercontroltestcaseparam.h" + +const TInt KTFStateTransitionTimeout = 1000; +const TInt KTFTeardownTimeout = 100000; + + +CTFDosServerControlTestCaseParam::CTFDosServerControlTestCaseParam( void ) + { + } + + +void CTFDosServerControlTestCaseParam::ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ) + { + TRACE_ASSERT( aStates != NULL ); + TRACE_ASSERT( aStateCount > 0 ); + iStates = REINTERPRET_CAST( TTFDosServerControlTestCaseState*, User::Alloc( sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ) ); + User::LeaveIfNull( iStates ); + Mem::Copy( iStates, aStates, sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ); + iStateCount = aStateCount; + } + + +CTFDosServerControlTestCaseParam::~CTFDosServerControlTestCaseParam( void ) + { + User::Free( iStates ); + iStates = NULL; + } + + +const TTFDosServerControlTestCaseState* CTFDosServerControlTestCaseParam::States( void ) const + { + return iStates; + } + + +TInt CTFDosServerControlTestCaseParam::StateCount( void ) const + { + return iStateCount; + } + + +CTFDosServerControlTestCase::CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ) +: CTFStubTestCase( KTFStubTypeDosServerControl ) +, iParameters( aParameters ) + { + TRACE_ASSERT( aParameters != NULL ); + if ( aParameters != NULL ) + { + TRACE_ASSERT( aParameters->States() != NULL ); + TRACE_ASSERT( aParameters->StateCount() > 0 ); + } + } + + +void CTFDosServerControlTestCase::ConstructL( void ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + + +CTFDosServerControlTestCase::~CTFDosServerControlTestCase( void ) + { + delete iParameters; + delete iTimer; + } + + +void CTFDosServerControlTestCase::Log( TInt aDepth ) + { + _LIT( KStart, "DosServer control component, %d states" ); + _LIT( KState, "Flags: %d %d %d %d %d" ); + Logger().WriteList( aDepth, KStart, iParameters->StateCount() ); + for ( TInt i = 0; i < iParameters->StateCount(); i++ ) + { + Logger().WriteList( aDepth + 1, KState, + iParameters->States()[i].iDosFunction, + iParameters->States()[i].iArg1, + iParameters->States()[i].iArg2, + iParameters->States()[i].iExpectedResult, + iParameters->States()[i].iCompletionEvent ); + } + } + + +void CTFDosServerControlTestCase::InitL( void ) + { + iCleanupWait = EFalse; + iCurrentStateIndex = 0; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + } + + +void CTFDosServerControlTestCase::ActiveTestRunL( void ) + { + if ( iCleanupWait ) + { + CActiveScheduler::Stop(); + } + else + { + RunL(); + } + } + + +void CTFDosServerControlTestCase::RunL( void ) + { + TInt result = KErrNone; + TBool syncStart = -1; + if ( iCurrentState.iDosFunction != 0 ) + { + // If the state is the start of synchronized block, the current state + // is changed to the state that represents the next event that should occur. + if ( iCurrentState.iCompletionEvent == ETFDosEvent_Synchronized ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - Starting synchronized block from state %d" ), iCurrentStateIndex + 1 ) ); + syncStart = iCurrentStateIndex++; + TRACE_ASSERT( iCurrentStateIndex < iParameters->StateCount() ); + TTFDosServerControlTestCaseState state( iCurrentState ); + iCurrentState = iParameters->States()[iCurrentStateIndex]; + TRAP( result, STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( state ) ); + } + else + { + TRAP( result, CallCurrentDosFunctionL() ); + } + } + // If the current state does not have a completion event, the transition to next state can be made + // after the result and parameters have been checked. + // If the current state is not a synchronization state and it contains a completion event, + // the state change occurs when the event arrives. + // If CallDSYFunctionL started a synchronized block, the current state should now + // be the end of the synchronized block. Otherwise the events between the synchronized + // states did not occur. + if ( ( syncStart == -1 && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_None ) || + ( syncStart != -1 && syncStart != iCurrentStateIndex && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_Synchronized ) ) + { + if ( syncStart != -1 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block ( states %d-%d )" ), syncStart + 1, iCurrentStateIndex + 1 ) ); + } + result = CheckResult( result, EFalse ); + StartNextState( result ); + } + else + { + // KErrNotSupported result from a synchronized block or a state with a completion event + // is not interpreted as passed. + if ( syncStart != -1 && result == KErrNone ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block missing" ) ) ); + result = KTFErrDosNoSyncEnd; + } + if ( result != KErrNone ) + { + DoCompleteTest( result ); + } + } + } + + +void CTFDosServerControlTestCase::Teardown( void ) + { + // If the test is terminated by a failing stub test case, + // the timer may be left active and thus must be cancelled. + iTimer->Cancel(); + iTimer->After( KTFTeardownTimeout ); // 100-ms timeout to wait for pending events. + iCleanupWait = ETrue; + CActiveScheduler::Start(); + } + + +void CTFDosServerControlTestCase::NotifyDosEvent( TInt aEvent, TInt aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent(%d, %d)" ), aEvent, aParameter ) ); + if ( !IsComplete() ) + { + if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && aParameter == iParameters->States()[iCurrentStateIndex].iExpectedResult ) + { + TInt result = CheckResult( aParameter, ETrue ); + StartNextState( result ); + } + else if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreEventParameters ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected result was unspecified, result was %d" ), aParameter ) ); + StartNextState( KErrNone ); + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Unexpected event: %d, %d" ), aEvent, aParameter ) ); + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected event was: %d, %d" ), iParameters->States()[iCurrentStateIndex].iCompletionEvent, iParameters->States()[iCurrentStateIndex].iExpectedResult ) ); + if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreUnexpectedEvents ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - IgnoreUnexpectedEvents flag is on" ) ) ); + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); + if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent ) + { + DoCompleteTest( KTFErrDosUnexpectedEvent - aEvent ); + } + else + { + DoCompleteTest( KTFErrDosUnexpectedEventParameter - aParameter ); + } + } + } + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Test already finished" ) ) ); + } + } + + +void CTFDosServerControlTestCase::DoCompleteTest( TInt aResult ) + { + iTimer->Cancel(); + CompleteTest( aResult ); + } + + +void CTFDosServerControlTestCase::CallCurrentDosFunctionL( void ) + { + TRACE_ASSERT( iStub != NULL ); + if ( iStub != NULL ) + { + STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( iCurrentState ); + } + else + { + User::Leave( KTFErrNoStub ); + } + } + + +CTFDosServerControlTestCaseParam& CTFDosServerControlTestCase::Parameters( void ) + { + return *iParameters; + } + + +TTFDosFunction CTFDosServerControlTestCase::CurrentDosFunction( void ) const + { + return iCurrentState.iDosFunction; + } + + +TInt CTFDosServerControlTestCase::CurrentArg1( void ) const + { + return iCurrentState.iArg1; + } + + +TInt CTFDosServerControlTestCase::CurrentStateIndex( void ) const + { + return iCurrentStateIndex; + } + + +CTFATestTimer* CTFDosServerControlTestCase::Timer( void ) + { + return iTimer; + } + + +void CTFDosServerControlTestCase::StartNextState( TInt aResult ) + { + if ( aResult != KErrNone ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); + TEST_CASE_TRACE( ( _L( " DSYTESTTEST - CTFDosServerControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); + DoCompleteTest( aResult ); + } + else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) + { + DoCompleteTest( KErrNone ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); + iCurrentStateIndex++; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + // Timer is active if synchronized block was used + if ( !iTimer->IsActive() ) + { + iTimer->After( KTFStateTransitionTimeout ); // Timer calls RunL + } + } + } + + +// Checks that the test results are expected: +// - iExpectedResult matches unless IgnoreResult flag is set or result is KErrNotSupported +// - Test parameters match unless IgnoreParameters flag is set +TInt CTFDosServerControlTestCase::CheckResult( TInt aResult, TBool aIsEvent ) + { + TInt result = aResult; + if ( !aIsEvent && ( aResult == KErrNotSupported ) ) + { + // KErrNotSupported return value from DosServer function is interpreted as passed. + // The parameters are not checked in this case since they may contain arbitrary values. + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - KErrNotSupported -> KErrNone" ) ) ); + result = KErrNone; + } + else + { + // If result is not KErrNotSupported it is compared to the expected result unless + // IgnoreResult flag is set. If the result does not match, the test case fails + if ( ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreResult ) || + ( aResult == iParameters->States()[iCurrentStateIndex].iExpectedResult ) ) + { + if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_StoreParameters ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Parameters stored: %d, %d" ), iCurrentState.iArg1, iCurrentState.iArg2 ) ); + // StoreParameters flag tells that the values from current state are stored to + // be used when a state with UseParameters is encountered + iStoredArg1 = iCurrentState.iArg1; + iStoredArg2 = iCurrentState.iArg2; + result = KErrNone; + } + else if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_UseParameters ) + { + if ( iStoredArg1 != iCurrentState.iArg1 ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 1 ( %d ) did not match %d" ), iStoredArg1, iCurrentState.iArg1 ) ); + result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; + } + else if ( iStoredArg2 != iCurrentState.iArg2 ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 2 ( %d ) did not match %d" ), iStoredArg2, iCurrentState.iArg2 ) ); + result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); + result = KErrNone; + } + } + // The parameters of the current state are changed by the DosServer function if it + // contains output parameters. The changed parameters are compared to the expected + // parameters and if they do not match, the test case is failed. + else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && + ( iParameters->States()[iCurrentStateIndex].iArg1 != iCurrentState.iArg1 ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 1 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg1, iCurrentState.iArg1 ) ); + result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; + } + else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && + ( iParameters->States()[iCurrentStateIndex].iArg2 != iCurrentState.iArg2 ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 2 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg2, iCurrentState.iArg2 ) ); + result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); + result = KErrNone; + } + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Unexpected result: %d" ), aResult ) ); + result = KTFErrDosUnexpectedResult + aResult; + } + } + return result; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverplugin.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverplugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverplugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,1146 +1,1146 @@ -/* -* 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: Definition of integration test cases -* -*/ - - -// INCLUDE FILES -#include "tftestmacros.h" - -#ifndef RD_STARTUP_CHANGE -#include -#endif // RD_STARTUP_CHANGE - -#include "ctfatestenvironment.h" -#include -#include "dsyenums.h" -#include "dsytesttooltrace.h" -#include "ctfdosserverplugin.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcaseparam.h" -#include "ctfdosservercontroltestcase.h" - -// LOCAL FUNCTIONS -#ifndef __ACCESSORY_FW -static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ); -static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ); -static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ); -static void AudioParameterSuiteL( CTFATestSuite* aSuite ); - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ); -static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ); -static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ); -static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ); -static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ); -#endif // RD_STARTUP_CHANGE - -static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ); - -static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ); - -#ifndef __ACCESSORY_FW -/***************************** AUDIO *********************************/ -// I0002.01 DSY [Handsfree On] -// Sets handsfree mode on. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnStates[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.02 DSY [Handsfree Off] -// Sets handsfree mode off. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffStates[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.03 DSY [Invalid Handsfree 100] -// Tries to set handsfree mode to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetHandsfreeMode( 100 ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidStates[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.07 DSY [Output Volume 0] -// Sets output volume to 0. -// Tested function: -// - RDosAudio::SetOutputVolume( 0 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume0States[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.08 DSY [Output Volume 9] -// Sets output volume to 9. -// Tested function: -// - RDosAudio::SetOutputVolume( 9 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume9States[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.09 DSY [Invalid Output Volume 100] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 100 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.10 DSY [Open and Close Audio] -// Opens and closes the audio service. -// Tested function: -// - RDosAudio::Open() -// - RDosAudio::Close() -const TTFDosServerControlTestCaseState KTFAudioOpenCloseStates[2] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.11 DSY [Handsfree On Twice] -// Sets handsfree mode on twice. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnTwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.12 DSY [Handsfree Off Twice] -// Sets handsfree mode off twice. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffTwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.13 DSY [Invalid Handsfree 100 Twice] -// Tries to set handsfree mode to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetHandsfreeMode( 100 ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidTwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.17 DSY [Output Volume 0 Twice] -// Sets output volume to 0 twice. -// Tested function: -// - RDosAudio::SetOutputVolume( 0 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume0TwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.18 DSY [Output Volume 9 Twice] -// Sets output volume to 9 twice. -// Tested function: -// - RDosAudio::SetOutputVolume( 9 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume9TwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.19 DSY [Invalid Output Volume 100 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 100 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.22 DSY [Invalid Output Volume -1] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( -1 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.23 DSY [Invalid Output Volume 10] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 10 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.24 DSY [Invalid Output Volume -1 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( -1 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.25 DSY [Invalid Output Volume 10 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 10 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.26 DSY [Output Volume 0 - 9] -// Sets and gets output volumes. -// Tested function: -// - RDosAudio::SetOutputVolume -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeStates[20] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // __ACCESSORY_FW - - -/***************************** SAE *********************************/ -// I0010.01 DSY [Open and Close SAE] -// Opens and closes the SAE service. -// Tested function: -// - RDosSae::Open() -// - RDosSae::Close() -const TTFDosServerControlTestCaseState KTFSAEOpenCloseStates[2] = - { - { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.04 DSY [Start SAE] -// Starts sae. -// Tested function: -// - RDosSae::StartSae() -const TTFDosServerControlTestCaseState KTFSAEStartSAEStates[3] = - { - { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_StartSae, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#ifndef RD_STARTUP_CHANGE -/***************************** SysUtils *********************************/ -// I0008.01 DSY [Open and Close SysUtils] -// Opens and closes the SysUtils service. -// Tested function: -// - RDosSysUtils::Open() -// - RDosSysUtils::Close() -const TTFDosServerControlTestCaseState KTFSysUtilsOpenCloseStates[2] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.05 DSY [SIM Language] -// Gets SIM language. -// Tested function: -// - RDosSysUtils::GetSimLanguage() -const TTFDosServerControlTestCaseState KTFSysUtilsGetSimLanguageStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_GetSimLanguage, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_IgnoreParameters }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.02 DSY [Set Alarm] -// Sets a DOS alarm 60*24*365 minutes from current time. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.03 DSY [Cancel Alarm] -// Cancels current DOS alarm. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsCancelAlarmStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.04 DSY [Set and Cancel Alarm] -// Sets alarm twice, cancels it twice. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetCancelAlarmStates[6] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365*2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.05 DSY [Invalid Alarm Neg.] -// Sets a DOS alarm ~10 years before current time. Setter should return KErrGeneral -// result if the CMT clock is not ~10 years behind the APE clock. -// Tested function: -// - MDosSysUtilsBaseDSY::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, -( 60*24*365*10 ), 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.06 DSY [Invalid Alarm Sec] -// Sets a DOS alarm 60*24*365 minutes after current time and sets the seconds in the alarm to 30. -// Since alarm cannot contain seconds, setter should return KErrGeneral. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidSecondsStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 30, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -/***************************** Helper *********************************/ -// I0010.02 DSY [Open and Close Helper] -// Opens and closes the helper service. -// Tested function: -// - RDosHelper::Open() -// - RDosHelper::Close() -const TTFDosServerControlTestCaseState KTFHelperOpenCloseStates[2] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.06 DSY [Startup Reason] -// Gets the startup reason. -// Tested function: -// - RDosHelper::GetStartupReason() -const TTFDosServerControlTestCaseState KTFHelperGetStartupReasonStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetStartupReason, ENormal, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.07 DSY [SW Startup Reason] -// Sets / gets SW startup reasons. -// Tested function: -// - RDosHelper::SetSWStartupReason() -const TTFDosServerControlTestCaseState KTFHelperSetSWStartupReasonStates[15] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.08 DSY [Hidden Reset] -// Gets hidden reset status. -// Tested function: -// - RDosHelper::HiddenReset() -const TTFDosServerControlTestCaseState KTFHelperHiddenResetStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_HiddenReset, EFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.01 DSY [RTC Status] -// Gets the RTC status. -// Tested function: -// - RDosHelper::GetRTCStatus() -const TTFDosServerControlTestCaseState KTFHelperGetRTCStatusStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetRTCStatus, ETrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0004.01 DSY [Grip Event] -// Generates a grip event. -// Tested function: -// - RDosHelper::GenerateGripEvent -/*const TTFDosServerControlTestCaseState KTFHelperGripEventStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GenerateGripEvent, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -*/ - -/***************************** MTC *********************************/ -// I0010.03 DSY [Open and Close MTC] -// Opens and closes the MTC service. -// Tested function: -// - RDosMtc::Open() -// - RDosMtc::Close() -const TTFDosServerControlTestCaseState KTFMtcOpenCloseStates[2] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.09 DSY [Offline State True] -// Sets offline state flag to true. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagTrue ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagTrueStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.10 DSY [Offline State False] -// Sets offline state flag to false. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagFalseStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.11 DSY [Invalid Offline State 100] -// Tries to set offline state flag to invalid value. The current value must not change. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagInvalidStates[5] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosMtc_SetStateFlag, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.12 DSY [RF Inactive and Normal States] -// Sets MTC state to RF inactive and then normal. -// Tested function: -// - RDosMtc::SetState( ESysApMtcRfInactiveState ) -// - RDosMtc::SetState( ESysApMtcNormalState ) -const TTFDosServerControlTestCaseState KTFMtcStateRFInactiveNormalStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcRfInactiveState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -/***************************** SelfTest *********************************/ -// I0009.01 DSY [Open and Close Self Test] -// Opens and closes the self test service. -// Tested function: -// - RDosSelfTest::Open() -// - RDosSelfTest::Close() -const TTFDosServerControlTestCaseState KTFSelfTestOpenCloseStates[2] = - { - { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0009.02 DSY [Perform Self Test] -// Performs self test. -// Tested function: -// - RDosSelfTest::PerformSelfTest() -const TTFDosServerControlTestCaseState KTFSelfTestPerformStates[3] = - { - { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_PerformSelfTest, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // RD_STARTUP_CHANGE - - -#ifndef __ACCESSORY_FW -/***************************** BT Audio *********************************/ -// I0003.01 DSY [Open and Close BT Audio] -// Opens and closes the BT audio service. -// Tested function: -// - RDosBTAudio::Open() -// - RDosBTAudio::Close() -const TTFDosServerControlTestCaseState KTFBTAudioOpenCloseStates[2] = - { - { ETFDosBTAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosBTAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // __ACCESSORY_FW - -/***************************** Extension *********************************/ -// I0005.01 DSY [Open and Close Extension] -// Opens and closes the extension service. -// Tested function: -// - RDosExtension::Open() -// - RDosExtension::Close() -const TTFDosServerControlTestCaseState KTFExtensionOpenCloseStates[2] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0005.02 DSY [Invalid Call Function Sync] -// Tests sync CallFunction with invalid parameter. -// Tested function: -// - RDosExtension::CallFunction() ( sync ) -const TTFDosServerControlTestCaseState KTFExtensionInvalidSyncCallFunctionStates[3] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_CallFunction, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0005.03 DSY [Invalid Call Function Async] -// Tests async CallFunction with invalid parameter. -// Tested function: -// - RDosExtension::CallFunction() ( async ) -const TTFDosServerControlTestCaseState KTFExtensionInvalidAsyncCallFunctionStates[3] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_CallFunctionAndComplete, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#ifndef __ACCESSORY_FW -/***************************** Accessory *********************************/ -// I0001.01 DSY [Loopset On] -// Sets loopset mode on. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOn ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOnStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.02 DSY [Loopset Tty] -// Sets loopset mode to tty. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccTty ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetTtyStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.03 DSY [Loopset Off] -// Sets loopset mode off. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOff ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOffStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.04 DSY [Invalid Loopset 100] -// Tries to set loopset mode to invalid value. The current value must not change -// Tested function: -// - RDosAccessory::SetLoopSetModeState( 100 ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetInvalidStates[5] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAccessory_SetLoopSetModeState, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.05 DSY [Open and Close Accessory] -// Opens and closes the accessory service. -// Tested function: -// - RDosAccessory::Open() -// - RDosAccessory::Close() -const TTFDosServerControlTestCaseState KTFAccessoryOpenCloseStates[2] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.08 DSY [Accessory Mode] -// Tests GetAccessoryMode, which should return EDosAccNotConnected -// Tested function: -// - RDosAccessory::GetAccessoryMode -const TTFDosServerControlTestCaseState KTFAccessoryGetAccessoryModeStates[3] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetAccessoryMode, EDosAccNotConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -/***************************** BT SAP *********************************/ -// I0012.01 DSY [BT SAP On] -// Sets BT SAP state on -// Tested function: -// - RDosMtc::SetState( 5 ) -const TTFDosServerControlTestCaseState KTFMtcBTSapOnStates[3] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, 5, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0012.02 DSY [BT SAP Off] -// Sets BT SAP state off -// Tested function: -// - RDosMtc::SetState( ESysApMtcNormalState ) -const TTFDosServerControlTestCaseState KTFMtcBTSapOffStates[3] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // RD_STARTUP_CHANGE - - - -// C++ default constructor can NOT contain any code, that -// might leave. -// -CTFDosServerPlugin::CTFDosServerPlugin( TAny* aInitParams ) -: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) - { - } - -// Two-phased constructor. -CTFDosServerPlugin* CTFDosServerPlugin::NewL( TAny* aInitParams ) - { - return new ( ELeave ) CTFDosServerPlugin( aInitParams ); - } - -// Destructor. -CTFDosServerPlugin::~CTFDosServerPlugin() - { - iInitParams = NULL; - } - - -CTFStub* CTFDosServerPlugin::GetStubL( void ) - { - return new ( ELeave ) CTFDosServerControl(); - } - - -void CTFDosServerPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - // Memory checks are disabled since DSY runs in separate thread and heap. - aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); - TF_START_TEST_DECLARATION_L( aRootSuite ); - // Use case test cases - TF_ADD_TEST_SUITE_L( _L( "Use Case Tests" ) ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SAE" ), SAEUseCaseSuiteL ); - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio" ), AudioUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio Param" ), AudioParameterSuiteL ); -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SysUtils" ), SysUtilsUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Helper" ), HelperUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Self Test" ), SelfTestUseCaseSuiteL ); -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT Audio" ), BTAudioUseCaseSuiteL ); -#endif // __ACCESSORY_FW - - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Extension" ), ExtensionUseCaseSuiteL ); - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory" ), AccessoryUseCaseSuiteL ); -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "MTC" ), MtcUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT SAP" ), BluetoothSAPSuiteL ); -#endif // RD_STARTUP_CHANGE - TF_END_TEST_SUITE(); - TF_END_TEST_DECLARATION(); - } - - -MTFStubTestCase* CTFDosServerPlugin::GetStubTestCaseL( TInt aTestCaseId ) - { - TF_START_STUB_TEST_CASES( aTestCaseId ); - -#ifndef __ACCESSORY_FW - //AUDIO - // I0002.10 DSY [Open and Close Audio] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10110, KTFAudioOpenCloseStates ) ; - - // I0002.01 DSY [Handsfree On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAudioHandsfreeOnStates ) ; - - // I0002.02 DSY [Handsfree Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAudioHandsfreeOffStates ) ; - - // I0002.03 DSY [Invalid Handsfree 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAudioHandsfreeInvalidStates ) ; - - // I0002.07 DSY [Output Volume 0] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAudioOutputVolume0States ) ; - - // I0002.08 DSY [Output Volume 9] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAudioOutputVolume9States ) ; - - // I0002.09 DSY [Invalid Output Volume 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10109, KTFAudioOutputVolumeInvalid100States ) ; - - // I0002.11 DSY [Handsfree On Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10111, KTFAudioHandsfreeOnTwiceStates ) ; - - // I0002.12 DSY [Handsfree Off Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10112, KTFAudioHandsfreeOffTwiceStates ) ; - - // I0002.13 DSY [Invalid Handsfree 100 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10113, KTFAudioHandsfreeInvalidTwiceStates ) ; - - // I0002.17 DSY [Output Volume 0 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10117, KTFAudioOutputVolume0TwiceStates ) ; - - // I0002.18 DSY [Output Volume 9 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10118, KTFAudioOutputVolume9TwiceStates ) ; - - // I0002.19 DSY [Invalid Output Volume 100 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10119, KTFAudioOutputVolumeInvalid100TwiceStates ) ; - - // I0002.22 DSY [Invalid Output Volume -1] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10122, KTFAudioOutputVolumeInvalidNeg1States ) ; - - // I0002.23 DSY [Invalid Output Volume 10] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10123, KTFAudioOutputVolumeInvalid10States ) ; - - // I0002.24 DSY [Invalid Output Volume -1 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10124, KTFAudioOutputVolumeInvalidNeg1TwiceStates ) ; - - // I0002.25 DSY [Invalid Output Volume 10 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10125, KTFAudioOutputVolumeInvalid10TwiceStates ) ; - - // I0002.20 DSY [Audio Regression] - // Case 10120: Uses other test cases - - // I0002.21 DSY [Audio Randomizer] - // Case 10121: Uses other test cases - - // I0002.26 DSY [Output Volume 0 - 9] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10126, KTFAudioOutputVolumeStates ) ; -#endif // __ACCESSORY_FW - - // SAE - // I0010.01 DSY [Open and Close SAE] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10301, KTFSAEOpenCloseStates ) ; - - // I0010.04 DSY [Start SAE] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10302, KTFSAEStartSAEStates ) ; - -#ifndef RD_STARTUP_CHANGE - // SYSUTILS - // I0008.01 DSY [Open and Close SysUtils] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10401, KTFSysUtilsOpenCloseStates ) ; - - // I0010.05 DSY [SIM Language] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10402, KTFSysUtilsGetSimLanguageStates ) ; - - // I0007.02 DSY [Set Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10403, KTFSysUtilsSetAlarmStates ) ; - - // I0007.03 DSY [Cancel Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10404, KTFSysUtilsCancelAlarmStates ) ; - - // I0007.04 DSY [Set and Cancel Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10405, KTFSysUtilsSetCancelAlarmStates ) ; - - // I0007.05 DSY [Invalid Alarm Neg.] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10406, KTFSysUtilsSetAlarmInvalidStates ) ; - - // I0007.06 DSY [Invalid Alarm Sec] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10407, KTFSysUtilsSetAlarmInvalidSecondsStates ) ; - - //HELPER - // I0010.02 DSY [Open and Close Helper] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10501, KTFHelperOpenCloseStates ) ; - - // I0010.06 DSY [Startup Reason] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10502, KTFHelperGetStartupReasonStates ) ; - - // I0010.07 DSY [SW Startup Reason] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10503, KTFHelperSetSWStartupReasonStates ) ; - - // I0010.08 DSY [Hidden Reset] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10504, KTFHelperHiddenResetStates ) ; - - // I0007.01 DSY [RTC Status] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10505, KTFHelperGetRTCStatusStates ) ; - - // I0004.01 DSY [Grip Event] - // TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10506, KTFHelperGripEventStates ) ; - - //MTC - // I0010.03 DSY [Open and Close MTC] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10601, KTFMtcOpenCloseStates ) ; - - // I0010.09 DSY [Offline State True] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10602, KTFMtcStateFlagTrueStates ) ; - - // I0010.10 DSY [Offline State False] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10603, KTFMtcStateFlagFalseStates ) ; - - // I0010.11 DSY [Invalid Offline State 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10604, KTFMtcStateFlagInvalidStates ) ; - - // I0010.12 DSY [RF Inactive and Normal States] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10605, KTFMtcStateRFInactiveNormalStates ) ; - - // SELFTEST - // I0009.01 DSY [Open and Close Self Test] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10701, KTFSelfTestOpenCloseStates ) ; - - // I0009.02 DSY [Perform Self Test] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10702, KTFSelfTestPerformStates ) ; -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - - //BT AUDIO - // I0003.01 DSY [Open and Close BT Audio] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10801, KTFBTAudioOpenCloseStates ) ; -#endif // __ACCESSORY_FW - - - // EXTENSION - // I0005.01 DSY [Open and Close Extension] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10901, KTFExtensionOpenCloseStates ) ; - - // I0005.02 DSY [Invalid Call Function Sync] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10902, KTFExtensionInvalidSyncCallFunctionStates ) ; - - // I0005.03 DSY [Invalid Call Function Async] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10903, KTFExtensionInvalidAsyncCallFunctionStates ) ; - - -#ifndef __ACCESSORY_FW - // ACCESSORY - // I0001.05 DSY [Open and Close Accessory] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11005, KTFAccessoryOpenCloseStates ) ; - - // I0001.01 DSY [Loopset On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11001, KTFAccessoryLoopsetOnStates ) ; - - // I0001.02 DSY [Loopset Tty] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11002, KTFAccessoryLoopsetTtyStates ) ; - - // I0001.03 DSY [Loopset Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11003, KTFAccessoryLoopsetOffStates ) ; - - // I0001.04 DSY [Invalid Loopset 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11004, KTFAccessoryLoopsetInvalidStates ) ; - - // I0001.08 DSY [Accessory Mode] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11008, KTFAccessoryGetAccessoryModeStates ) ; - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - // I0012.01 DSY [BT SAP On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12001, KTFMtcBTSapOnStates ) ; - - // I0012.02 DSY [BT SAP Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12002, KTFMtcBTSapOffStates ) ; -#endif // RD_STARTUP_CHANGE - - TF_END_STUB_TEST_CASES(); - } - -#ifndef __ACCESSORY_FW -static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10110, _L( "I0002.10 DSY [Open and Close Audio]" ) ); - TF_ADD_TEST_CASE_L( 10101, _L( "I0002.01 DSY [Handsfree On]" ) ); - TF_ADD_TEST_CASE_L( 10102, _L( "I0002.02 DSY [Handsfree Off]" ) ); - TF_ADD_TEST_CASE_L( 10103, _L( "I0002.03 DSY [Invalid Handsfree 100]" ) ); - TF_ADD_TEST_CASE_L( 10107, _L( "I0002.07 DSY [Output Volume 0]" ) ); - TF_ADD_TEST_CASE_L( 10108, _L( "I0002.08 DSY [Output Volume 9]" ) ); - TF_ADD_TEST_CASE_L( 10109, _L( "I0002.09 DSY [Invalid Output Volume 100]" ) ); - TF_ADD_TEST_CASE_L( 10111, _L( "I0002.11 DSY [Handsfree On Twice]" ) ); - TF_ADD_TEST_CASE_L( 10112, _L( "I0002.12 DSY [Handsfree Off Twice]" ) ); - TF_ADD_TEST_CASE_L( 10113, _L( "I0002.13 DSY [Invalid Handsfree 100 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10117, _L( "I0002.17 DSY [Output Volume 0 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10118, _L( "I0002.18 DSY [Output Volume 9 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10119, _L( "I0002.19 DSY [Invalid Output Volume 100 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10122, _L( "I0002.22 DSY [Invalid Output Volume -1]" ) ); - TF_ADD_TEST_CASE_L( 10123, _L( "I0002.23 DSY [Invalid Output Volume 10]" ) ); - TF_ADD_TEST_CASE_L( 10124, _L( "I0002.24 DSY [Invalid Output Volume -1 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10125, _L( "I0002.25 DSY [Invalid Output Volume 10 Twice]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10120, _L( "I0002.20 DSY [Audio Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10121, _L( "I0002.21 DSY [Audio Randomizer]" ), 200 ); - } - -static void AudioParameterSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10126, _L( "I0002.26 DSY [Output Volume 0 - 9]" ) ); - } -#endif // __ACCESSORY_FW - -static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10301, _L( "I0010.01 DSY [Open and Close SAE]" ) ); - // NOTE: In HW SAE has already called StartSAE during boot. -#ifdef TESTS_NO_UI - TF_ADD_TEST_CASE_L( 10302, _L( "I0010.04 DSY [Start SAE]" ) ); -#endif - } - -#ifndef RD_STARTUP_CHANGE -static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10401, _L( "I0008.01 DSY [Open and Close SysUtils]" ) ); - TF_ADD_TEST_CASE_L( 10402, _L( "I0010.05 DSY [SIM Language]" ) ); - TF_ADD_TEST_CASE_L( 10403, _L( "I0007.02 DSY [Set Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10404, _L( "I0007.03 DSY [Cancel Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10405, _L( "I0007.04 DSY [Set and Cancel Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10406, _L( "I0007.05 DSY [Invalid Alarm Neg.]" ) ); - TF_ADD_TEST_CASE_L( 10407, _L( "I0007.06 DSY [Invalid Alarm Sec]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10408, _L( "I0007.07 DSY [SysUtils Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10409, _L( "I0007.08 DSY [SysUtils Randomizer]" ), 200 ); - } - -static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10501, _L( "I0010.02 DSY [Open and Close Helper]" ) ); - TF_ADD_TEST_CASE_L( 10502, _L( "I0010.06 DSY [Startup Reason]" ) ); - TF_ADD_TEST_CASE_L( 10503, _L( "I0010.07 DSY [SW Startup Reason]" ) ); - TF_ADD_TEST_CASE_L( 10504, _L( "I0010.08 DSY [Hidden Reset]" ) ); - TF_ADD_TEST_CASE_L( 10505, _L( "I0007.01 DSY [RTC Status]" ) ); - //TF_ADD_TEST_CASE_L( 10506, _L( "I0004.01 DSY [Grip Event]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10507, _L( "I0010.13 DSY [Helper Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10508, _L( "I0010.14 DSY [Helper Randomizer]" ), 200 ); - } - -static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10601, _L( "I0010.03 DSY [Open and Close MTC]" ) ); - TF_ADD_TEST_CASE_L( 10602, _L( "I0010.09 DSY [Offline State True]" ) ); - TF_ADD_TEST_CASE_L( 10603, _L( "I0010.10 DSY [Offline State False]" ) ); - TF_ADD_TEST_CASE_L( 10604, _L( "I0010.11 DSY [Invalid Offline State 100]" ) ); - TF_ADD_TEST_CASE_L( 10605, _L( "I0010.12 DSY [RF Inactive and Normal States]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10606, _L( "I0010.15 DSY [MTC Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10607, _L( "I0010.16 DSY [MTC Randomizer]" ), 200 ); - } - -static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10701, _L( "I0009.01 DSY [Open and Close Self Test]" ) ); -#ifdef __WINS__ - TF_ADD_TEST_CASE_L( 10702, _L( "I0009.02 DSY [Perform Self Test]" ) ); -#endif - } -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW -static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10801, _L( "I0003.01 DSY [Open and Close BT Audio]" ) ); - } -#endif // __ACCESSORY_FW - -static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10901, _L( "I0005.01 DSY [Open and Close Extension]" ) ); - TF_ADD_TEST_CASE_L( 10902, _L( "I0005.02 DSY [Invalid Call Function Sync]" ) ); - TF_ADD_TEST_CASE_L( 10903, _L( "I0005.03 DSY [Invalid Call Function Async]" ) ); - } - -#ifndef __ACCESSORY_FW -static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 11005, _L( "I0001.05 DSY [Open and Close Accessory]" ) ); - TF_ADD_TEST_CASE_L( 11001, _L( "I0001.01 DSY [Loopset On]" ) ); - TF_ADD_TEST_CASE_L( 11002, _L( "I0001.02 DSY [Loopset Tty]" ) ); - TF_ADD_TEST_CASE_L( 11003, _L( "I0001.03 DSY [Loopset Off]" ) ); - TF_ADD_TEST_CASE_L( 11004, _L( "I0001.04 DSY [Invalid Loopset 100]" ) ); - TF_ADD_TEST_CASE_L( 11008, _L( "I0001.08 DSY [Accessory Mode]" ) ) ; - - TF_ADD_TEST_SUITE_REGRESSION_L( 11006, _L( "I0001.06 DSY [Accessory Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 11007, _L( "I0001.07 DSY [Accessory Randomizer]" ), 200 ); - } - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -#ifdef __BT_SAP -static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 12001, _L( "I0012.01 DSY [BT SAP On]" ) ) ; - TF_ADD_TEST_CASE_L( 12002, _L( "I0012.02 DSY [BT SAP Off]" ) ) ; - } -#else -#pragma message ( "BT SAP Disabled" ) -static void BluetoothSAPSuiteL( CTFATestSuite* /*aSuite*/ ) - { - } -#endif -#endif // RD_STARTUP_CHANGE - -// End of File +/* +* 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: Definition of integration test cases +* +*/ + + +// INCLUDE FILES +#include "tftestmacros.h" + +#ifndef RD_STARTUP_CHANGE +#include +#endif // RD_STARTUP_CHANGE + +#include "ctfatestenvironment.h" +#include +#include "dsyenums.h" +#include "dsytesttooltrace.h" +#include "ctfdosserverplugin.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcaseparam.h" +#include "ctfdosservercontroltestcase.h" + +// LOCAL FUNCTIONS +#ifndef __ACCESSORY_FW +static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ); +static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ); +static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ); +static void AudioParameterSuiteL( CTFATestSuite* aSuite ); + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ); +static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ); +static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ); +static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ); +static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ); +#endif // RD_STARTUP_CHANGE + +static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ); + +static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ); + +#ifndef __ACCESSORY_FW +/***************************** AUDIO *********************************/ +// I0002.01 DSY [Handsfree On] +// Sets handsfree mode on. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnStates[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.02 DSY [Handsfree Off] +// Sets handsfree mode off. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffStates[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.03 DSY [Invalid Handsfree 100] +// Tries to set handsfree mode to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetHandsfreeMode( 100 ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidStates[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.07 DSY [Output Volume 0] +// Sets output volume to 0. +// Tested function: +// - RDosAudio::SetOutputVolume( 0 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume0States[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.08 DSY [Output Volume 9] +// Sets output volume to 9. +// Tested function: +// - RDosAudio::SetOutputVolume( 9 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume9States[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.09 DSY [Invalid Output Volume 100] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 100 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.10 DSY [Open and Close Audio] +// Opens and closes the audio service. +// Tested function: +// - RDosAudio::Open() +// - RDosAudio::Close() +const TTFDosServerControlTestCaseState KTFAudioOpenCloseStates[2] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.11 DSY [Handsfree On Twice] +// Sets handsfree mode on twice. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnTwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.12 DSY [Handsfree Off Twice] +// Sets handsfree mode off twice. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffTwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.13 DSY [Invalid Handsfree 100 Twice] +// Tries to set handsfree mode to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetHandsfreeMode( 100 ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidTwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.17 DSY [Output Volume 0 Twice] +// Sets output volume to 0 twice. +// Tested function: +// - RDosAudio::SetOutputVolume( 0 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume0TwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.18 DSY [Output Volume 9 Twice] +// Sets output volume to 9 twice. +// Tested function: +// - RDosAudio::SetOutputVolume( 9 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume9TwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.19 DSY [Invalid Output Volume 100 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 100 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.22 DSY [Invalid Output Volume -1] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( -1 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.23 DSY [Invalid Output Volume 10] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 10 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.24 DSY [Invalid Output Volume -1 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( -1 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.25 DSY [Invalid Output Volume 10 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 10 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.26 DSY [Output Volume 0 - 9] +// Sets and gets output volumes. +// Tested function: +// - RDosAudio::SetOutputVolume +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeStates[20] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // __ACCESSORY_FW + + +/***************************** SAE *********************************/ +// I0010.01 DSY [Open and Close SAE] +// Opens and closes the SAE service. +// Tested function: +// - RDosSae::Open() +// - RDosSae::Close() +const TTFDosServerControlTestCaseState KTFSAEOpenCloseStates[2] = + { + { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.04 DSY [Start SAE] +// Starts sae. +// Tested function: +// - RDosSae::StartSae() +const TTFDosServerControlTestCaseState KTFSAEStartSAEStates[3] = + { + { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_StartSae, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#ifndef RD_STARTUP_CHANGE +/***************************** SysUtils *********************************/ +// I0008.01 DSY [Open and Close SysUtils] +// Opens and closes the SysUtils service. +// Tested function: +// - RDosSysUtils::Open() +// - RDosSysUtils::Close() +const TTFDosServerControlTestCaseState KTFSysUtilsOpenCloseStates[2] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.05 DSY [SIM Language] +// Gets SIM language. +// Tested function: +// - RDosSysUtils::GetSimLanguage() +const TTFDosServerControlTestCaseState KTFSysUtilsGetSimLanguageStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_GetSimLanguage, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_IgnoreParameters }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.02 DSY [Set Alarm] +// Sets a DOS alarm 60*24*365 minutes from current time. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.03 DSY [Cancel Alarm] +// Cancels current DOS alarm. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsCancelAlarmStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.04 DSY [Set and Cancel Alarm] +// Sets alarm twice, cancels it twice. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetCancelAlarmStates[6] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365*2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.05 DSY [Invalid Alarm Neg.] +// Sets a DOS alarm ~10 years before current time. Setter should return KErrGeneral +// result if the CMT clock is not ~10 years behind the APE clock. +// Tested function: +// - MDosSysUtilsBaseDSY::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, -( 60*24*365*10 ), 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.06 DSY [Invalid Alarm Sec] +// Sets a DOS alarm 60*24*365 minutes after current time and sets the seconds in the alarm to 30. +// Since alarm cannot contain seconds, setter should return KErrGeneral. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidSecondsStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 30, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +/***************************** Helper *********************************/ +// I0010.02 DSY [Open and Close Helper] +// Opens and closes the helper service. +// Tested function: +// - RDosHelper::Open() +// - RDosHelper::Close() +const TTFDosServerControlTestCaseState KTFHelperOpenCloseStates[2] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.06 DSY [Startup Reason] +// Gets the startup reason. +// Tested function: +// - RDosHelper::GetStartupReason() +const TTFDosServerControlTestCaseState KTFHelperGetStartupReasonStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetStartupReason, ENormal, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.07 DSY [SW Startup Reason] +// Sets / gets SW startup reasons. +// Tested function: +// - RDosHelper::SetSWStartupReason() +const TTFDosServerControlTestCaseState KTFHelperSetSWStartupReasonStates[15] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.08 DSY [Hidden Reset] +// Gets hidden reset status. +// Tested function: +// - RDosHelper::HiddenReset() +const TTFDosServerControlTestCaseState KTFHelperHiddenResetStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_HiddenReset, EFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.01 DSY [RTC Status] +// Gets the RTC status. +// Tested function: +// - RDosHelper::GetRTCStatus() +const TTFDosServerControlTestCaseState KTFHelperGetRTCStatusStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetRTCStatus, ETrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0004.01 DSY [Grip Event] +// Generates a grip event. +// Tested function: +// - RDosHelper::GenerateGripEvent +/*const TTFDosServerControlTestCaseState KTFHelperGripEventStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GenerateGripEvent, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +*/ + +/***************************** MTC *********************************/ +// I0010.03 DSY [Open and Close MTC] +// Opens and closes the MTC service. +// Tested function: +// - RDosMtc::Open() +// - RDosMtc::Close() +const TTFDosServerControlTestCaseState KTFMtcOpenCloseStates[2] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.09 DSY [Offline State True] +// Sets offline state flag to true. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagTrue ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagTrueStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.10 DSY [Offline State False] +// Sets offline state flag to false. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagFalseStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.11 DSY [Invalid Offline State 100] +// Tries to set offline state flag to invalid value. The current value must not change. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagInvalidStates[5] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosMtc_SetStateFlag, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.12 DSY [RF Inactive and Normal States] +// Sets MTC state to RF inactive and then normal. +// Tested function: +// - RDosMtc::SetState( ESysApMtcRfInactiveState ) +// - RDosMtc::SetState( ESysApMtcNormalState ) +const TTFDosServerControlTestCaseState KTFMtcStateRFInactiveNormalStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcRfInactiveState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +/***************************** SelfTest *********************************/ +// I0009.01 DSY [Open and Close Self Test] +// Opens and closes the self test service. +// Tested function: +// - RDosSelfTest::Open() +// - RDosSelfTest::Close() +const TTFDosServerControlTestCaseState KTFSelfTestOpenCloseStates[2] = + { + { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0009.02 DSY [Perform Self Test] +// Performs self test. +// Tested function: +// - RDosSelfTest::PerformSelfTest() +const TTFDosServerControlTestCaseState KTFSelfTestPerformStates[3] = + { + { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_PerformSelfTest, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // RD_STARTUP_CHANGE + + +#ifndef __ACCESSORY_FW +/***************************** BT Audio *********************************/ +// I0003.01 DSY [Open and Close BT Audio] +// Opens and closes the BT audio service. +// Tested function: +// - RDosBTAudio::Open() +// - RDosBTAudio::Close() +const TTFDosServerControlTestCaseState KTFBTAudioOpenCloseStates[2] = + { + { ETFDosBTAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosBTAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // __ACCESSORY_FW + +/***************************** Extension *********************************/ +// I0005.01 DSY [Open and Close Extension] +// Opens and closes the extension service. +// Tested function: +// - RDosExtension::Open() +// - RDosExtension::Close() +const TTFDosServerControlTestCaseState KTFExtensionOpenCloseStates[2] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0005.02 DSY [Invalid Call Function Sync] +// Tests sync CallFunction with invalid parameter. +// Tested function: +// - RDosExtension::CallFunction() ( sync ) +const TTFDosServerControlTestCaseState KTFExtensionInvalidSyncCallFunctionStates[3] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_CallFunction, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0005.03 DSY [Invalid Call Function Async] +// Tests async CallFunction with invalid parameter. +// Tested function: +// - RDosExtension::CallFunction() ( async ) +const TTFDosServerControlTestCaseState KTFExtensionInvalidAsyncCallFunctionStates[3] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_CallFunctionAndComplete, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#ifndef __ACCESSORY_FW +/***************************** Accessory *********************************/ +// I0001.01 DSY [Loopset On] +// Sets loopset mode on. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOn ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOnStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.02 DSY [Loopset Tty] +// Sets loopset mode to tty. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccTty ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetTtyStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.03 DSY [Loopset Off] +// Sets loopset mode off. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOff ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOffStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.04 DSY [Invalid Loopset 100] +// Tries to set loopset mode to invalid value. The current value must not change +// Tested function: +// - RDosAccessory::SetLoopSetModeState( 100 ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetInvalidStates[5] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAccessory_SetLoopSetModeState, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.05 DSY [Open and Close Accessory] +// Opens and closes the accessory service. +// Tested function: +// - RDosAccessory::Open() +// - RDosAccessory::Close() +const TTFDosServerControlTestCaseState KTFAccessoryOpenCloseStates[2] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.08 DSY [Accessory Mode] +// Tests GetAccessoryMode, which should return EDosAccNotConnected +// Tested function: +// - RDosAccessory::GetAccessoryMode +const TTFDosServerControlTestCaseState KTFAccessoryGetAccessoryModeStates[3] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetAccessoryMode, EDosAccNotConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +/***************************** BT SAP *********************************/ +// I0012.01 DSY [BT SAP On] +// Sets BT SAP state on +// Tested function: +// - RDosMtc::SetState( 5 ) +const TTFDosServerControlTestCaseState KTFMtcBTSapOnStates[3] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, 5, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0012.02 DSY [BT SAP Off] +// Sets BT SAP state off +// Tested function: +// - RDosMtc::SetState( ESysApMtcNormalState ) +const TTFDosServerControlTestCaseState KTFMtcBTSapOffStates[3] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // RD_STARTUP_CHANGE + + + +// C++ default constructor can NOT contain any code, that +// might leave. +// +CTFDosServerPlugin::CTFDosServerPlugin( TAny* aInitParams ) +: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) + { + } + +// Two-phased constructor. +CTFDosServerPlugin* CTFDosServerPlugin::NewL( TAny* aInitParams ) + { + return new ( ELeave ) CTFDosServerPlugin( aInitParams ); + } + +// Destructor. +CTFDosServerPlugin::~CTFDosServerPlugin() + { + iInitParams = NULL; + } + + +CTFStub* CTFDosServerPlugin::GetStubL( void ) + { + return new ( ELeave ) CTFDosServerControl(); + } + + +void CTFDosServerPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + // Memory checks are disabled since DSY runs in separate thread and heap. + aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); + TF_START_TEST_DECLARATION_L( aRootSuite ); + // Use case test cases + TF_ADD_TEST_SUITE_L( _L( "Use Case Tests" ) ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SAE" ), SAEUseCaseSuiteL ); + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio" ), AudioUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio Param" ), AudioParameterSuiteL ); +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SysUtils" ), SysUtilsUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Helper" ), HelperUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Self Test" ), SelfTestUseCaseSuiteL ); +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT Audio" ), BTAudioUseCaseSuiteL ); +#endif // __ACCESSORY_FW + + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Extension" ), ExtensionUseCaseSuiteL ); + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory" ), AccessoryUseCaseSuiteL ); +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "MTC" ), MtcUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT SAP" ), BluetoothSAPSuiteL ); +#endif // RD_STARTUP_CHANGE + TF_END_TEST_SUITE(); + TF_END_TEST_DECLARATION(); + } + + +MTFStubTestCase* CTFDosServerPlugin::GetStubTestCaseL( TInt aTestCaseId ) + { + TF_START_STUB_TEST_CASES( aTestCaseId ); + +#ifndef __ACCESSORY_FW + //AUDIO + // I0002.10 DSY [Open and Close Audio] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10110, KTFAudioOpenCloseStates ) ; + + // I0002.01 DSY [Handsfree On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAudioHandsfreeOnStates ) ; + + // I0002.02 DSY [Handsfree Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAudioHandsfreeOffStates ) ; + + // I0002.03 DSY [Invalid Handsfree 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAudioHandsfreeInvalidStates ) ; + + // I0002.07 DSY [Output Volume 0] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAudioOutputVolume0States ) ; + + // I0002.08 DSY [Output Volume 9] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAudioOutputVolume9States ) ; + + // I0002.09 DSY [Invalid Output Volume 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10109, KTFAudioOutputVolumeInvalid100States ) ; + + // I0002.11 DSY [Handsfree On Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10111, KTFAudioHandsfreeOnTwiceStates ) ; + + // I0002.12 DSY [Handsfree Off Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10112, KTFAudioHandsfreeOffTwiceStates ) ; + + // I0002.13 DSY [Invalid Handsfree 100 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10113, KTFAudioHandsfreeInvalidTwiceStates ) ; + + // I0002.17 DSY [Output Volume 0 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10117, KTFAudioOutputVolume0TwiceStates ) ; + + // I0002.18 DSY [Output Volume 9 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10118, KTFAudioOutputVolume9TwiceStates ) ; + + // I0002.19 DSY [Invalid Output Volume 100 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10119, KTFAudioOutputVolumeInvalid100TwiceStates ) ; + + // I0002.22 DSY [Invalid Output Volume -1] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10122, KTFAudioOutputVolumeInvalidNeg1States ) ; + + // I0002.23 DSY [Invalid Output Volume 10] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10123, KTFAudioOutputVolumeInvalid10States ) ; + + // I0002.24 DSY [Invalid Output Volume -1 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10124, KTFAudioOutputVolumeInvalidNeg1TwiceStates ) ; + + // I0002.25 DSY [Invalid Output Volume 10 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10125, KTFAudioOutputVolumeInvalid10TwiceStates ) ; + + // I0002.20 DSY [Audio Regression] + // Case 10120: Uses other test cases + + // I0002.21 DSY [Audio Randomizer] + // Case 10121: Uses other test cases + + // I0002.26 DSY [Output Volume 0 - 9] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10126, KTFAudioOutputVolumeStates ) ; +#endif // __ACCESSORY_FW + + // SAE + // I0010.01 DSY [Open and Close SAE] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10301, KTFSAEOpenCloseStates ) ; + + // I0010.04 DSY [Start SAE] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10302, KTFSAEStartSAEStates ) ; + +#ifndef RD_STARTUP_CHANGE + // SYSUTILS + // I0008.01 DSY [Open and Close SysUtils] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10401, KTFSysUtilsOpenCloseStates ) ; + + // I0010.05 DSY [SIM Language] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10402, KTFSysUtilsGetSimLanguageStates ) ; + + // I0007.02 DSY [Set Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10403, KTFSysUtilsSetAlarmStates ) ; + + // I0007.03 DSY [Cancel Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10404, KTFSysUtilsCancelAlarmStates ) ; + + // I0007.04 DSY [Set and Cancel Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10405, KTFSysUtilsSetCancelAlarmStates ) ; + + // I0007.05 DSY [Invalid Alarm Neg.] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10406, KTFSysUtilsSetAlarmInvalidStates ) ; + + // I0007.06 DSY [Invalid Alarm Sec] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10407, KTFSysUtilsSetAlarmInvalidSecondsStates ) ; + + //HELPER + // I0010.02 DSY [Open and Close Helper] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10501, KTFHelperOpenCloseStates ) ; + + // I0010.06 DSY [Startup Reason] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10502, KTFHelperGetStartupReasonStates ) ; + + // I0010.07 DSY [SW Startup Reason] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10503, KTFHelperSetSWStartupReasonStates ) ; + + // I0010.08 DSY [Hidden Reset] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10504, KTFHelperHiddenResetStates ) ; + + // I0007.01 DSY [RTC Status] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10505, KTFHelperGetRTCStatusStates ) ; + + // I0004.01 DSY [Grip Event] + // TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10506, KTFHelperGripEventStates ) ; + + //MTC + // I0010.03 DSY [Open and Close MTC] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10601, KTFMtcOpenCloseStates ) ; + + // I0010.09 DSY [Offline State True] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10602, KTFMtcStateFlagTrueStates ) ; + + // I0010.10 DSY [Offline State False] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10603, KTFMtcStateFlagFalseStates ) ; + + // I0010.11 DSY [Invalid Offline State 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10604, KTFMtcStateFlagInvalidStates ) ; + + // I0010.12 DSY [RF Inactive and Normal States] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10605, KTFMtcStateRFInactiveNormalStates ) ; + + // SELFTEST + // I0009.01 DSY [Open and Close Self Test] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10701, KTFSelfTestOpenCloseStates ) ; + + // I0009.02 DSY [Perform Self Test] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10702, KTFSelfTestPerformStates ) ; +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + + //BT AUDIO + // I0003.01 DSY [Open and Close BT Audio] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10801, KTFBTAudioOpenCloseStates ) ; +#endif // __ACCESSORY_FW + + + // EXTENSION + // I0005.01 DSY [Open and Close Extension] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10901, KTFExtensionOpenCloseStates ) ; + + // I0005.02 DSY [Invalid Call Function Sync] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10902, KTFExtensionInvalidSyncCallFunctionStates ) ; + + // I0005.03 DSY [Invalid Call Function Async] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10903, KTFExtensionInvalidAsyncCallFunctionStates ) ; + + +#ifndef __ACCESSORY_FW + // ACCESSORY + // I0001.05 DSY [Open and Close Accessory] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11005, KTFAccessoryOpenCloseStates ) ; + + // I0001.01 DSY [Loopset On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11001, KTFAccessoryLoopsetOnStates ) ; + + // I0001.02 DSY [Loopset Tty] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11002, KTFAccessoryLoopsetTtyStates ) ; + + // I0001.03 DSY [Loopset Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11003, KTFAccessoryLoopsetOffStates ) ; + + // I0001.04 DSY [Invalid Loopset 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11004, KTFAccessoryLoopsetInvalidStates ) ; + + // I0001.08 DSY [Accessory Mode] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11008, KTFAccessoryGetAccessoryModeStates ) ; + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + // I0012.01 DSY [BT SAP On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12001, KTFMtcBTSapOnStates ) ; + + // I0012.02 DSY [BT SAP Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12002, KTFMtcBTSapOffStates ) ; +#endif // RD_STARTUP_CHANGE + + TF_END_STUB_TEST_CASES(); + } + +#ifndef __ACCESSORY_FW +static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10110, _L( "I0002.10 DSY [Open and Close Audio]" ) ); + TF_ADD_TEST_CASE_L( 10101, _L( "I0002.01 DSY [Handsfree On]" ) ); + TF_ADD_TEST_CASE_L( 10102, _L( "I0002.02 DSY [Handsfree Off]" ) ); + TF_ADD_TEST_CASE_L( 10103, _L( "I0002.03 DSY [Invalid Handsfree 100]" ) ); + TF_ADD_TEST_CASE_L( 10107, _L( "I0002.07 DSY [Output Volume 0]" ) ); + TF_ADD_TEST_CASE_L( 10108, _L( "I0002.08 DSY [Output Volume 9]" ) ); + TF_ADD_TEST_CASE_L( 10109, _L( "I0002.09 DSY [Invalid Output Volume 100]" ) ); + TF_ADD_TEST_CASE_L( 10111, _L( "I0002.11 DSY [Handsfree On Twice]" ) ); + TF_ADD_TEST_CASE_L( 10112, _L( "I0002.12 DSY [Handsfree Off Twice]" ) ); + TF_ADD_TEST_CASE_L( 10113, _L( "I0002.13 DSY [Invalid Handsfree 100 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10117, _L( "I0002.17 DSY [Output Volume 0 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10118, _L( "I0002.18 DSY [Output Volume 9 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10119, _L( "I0002.19 DSY [Invalid Output Volume 100 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10122, _L( "I0002.22 DSY [Invalid Output Volume -1]" ) ); + TF_ADD_TEST_CASE_L( 10123, _L( "I0002.23 DSY [Invalid Output Volume 10]" ) ); + TF_ADD_TEST_CASE_L( 10124, _L( "I0002.24 DSY [Invalid Output Volume -1 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10125, _L( "I0002.25 DSY [Invalid Output Volume 10 Twice]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10120, _L( "I0002.20 DSY [Audio Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10121, _L( "I0002.21 DSY [Audio Randomizer]" ), 200 ); + } + +static void AudioParameterSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10126, _L( "I0002.26 DSY [Output Volume 0 - 9]" ) ); + } +#endif // __ACCESSORY_FW + +static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10301, _L( "I0010.01 DSY [Open and Close SAE]" ) ); + // NOTE: In HW SAE has already called StartSAE during boot. +#ifdef TESTS_NO_UI + TF_ADD_TEST_CASE_L( 10302, _L( "I0010.04 DSY [Start SAE]" ) ); +#endif + } + +#ifndef RD_STARTUP_CHANGE +static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10401, _L( "I0008.01 DSY [Open and Close SysUtils]" ) ); + TF_ADD_TEST_CASE_L( 10402, _L( "I0010.05 DSY [SIM Language]" ) ); + TF_ADD_TEST_CASE_L( 10403, _L( "I0007.02 DSY [Set Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10404, _L( "I0007.03 DSY [Cancel Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10405, _L( "I0007.04 DSY [Set and Cancel Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10406, _L( "I0007.05 DSY [Invalid Alarm Neg.]" ) ); + TF_ADD_TEST_CASE_L( 10407, _L( "I0007.06 DSY [Invalid Alarm Sec]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10408, _L( "I0007.07 DSY [SysUtils Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10409, _L( "I0007.08 DSY [SysUtils Randomizer]" ), 200 ); + } + +static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10501, _L( "I0010.02 DSY [Open and Close Helper]" ) ); + TF_ADD_TEST_CASE_L( 10502, _L( "I0010.06 DSY [Startup Reason]" ) ); + TF_ADD_TEST_CASE_L( 10503, _L( "I0010.07 DSY [SW Startup Reason]" ) ); + TF_ADD_TEST_CASE_L( 10504, _L( "I0010.08 DSY [Hidden Reset]" ) ); + TF_ADD_TEST_CASE_L( 10505, _L( "I0007.01 DSY [RTC Status]" ) ); + //TF_ADD_TEST_CASE_L( 10506, _L( "I0004.01 DSY [Grip Event]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10507, _L( "I0010.13 DSY [Helper Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10508, _L( "I0010.14 DSY [Helper Randomizer]" ), 200 ); + } + +static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10601, _L( "I0010.03 DSY [Open and Close MTC]" ) ); + TF_ADD_TEST_CASE_L( 10602, _L( "I0010.09 DSY [Offline State True]" ) ); + TF_ADD_TEST_CASE_L( 10603, _L( "I0010.10 DSY [Offline State False]" ) ); + TF_ADD_TEST_CASE_L( 10604, _L( "I0010.11 DSY [Invalid Offline State 100]" ) ); + TF_ADD_TEST_CASE_L( 10605, _L( "I0010.12 DSY [RF Inactive and Normal States]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10606, _L( "I0010.15 DSY [MTC Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10607, _L( "I0010.16 DSY [MTC Randomizer]" ), 200 ); + } + +static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10701, _L( "I0009.01 DSY [Open and Close Self Test]" ) ); +#ifdef __WINS__ + TF_ADD_TEST_CASE_L( 10702, _L( "I0009.02 DSY [Perform Self Test]" ) ); +#endif + } +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW +static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10801, _L( "I0003.01 DSY [Open and Close BT Audio]" ) ); + } +#endif // __ACCESSORY_FW + +static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10901, _L( "I0005.01 DSY [Open and Close Extension]" ) ); + TF_ADD_TEST_CASE_L( 10902, _L( "I0005.02 DSY [Invalid Call Function Sync]" ) ); + TF_ADD_TEST_CASE_L( 10903, _L( "I0005.03 DSY [Invalid Call Function Async]" ) ); + } + +#ifndef __ACCESSORY_FW +static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 11005, _L( "I0001.05 DSY [Open and Close Accessory]" ) ); + TF_ADD_TEST_CASE_L( 11001, _L( "I0001.01 DSY [Loopset On]" ) ); + TF_ADD_TEST_CASE_L( 11002, _L( "I0001.02 DSY [Loopset Tty]" ) ); + TF_ADD_TEST_CASE_L( 11003, _L( "I0001.03 DSY [Loopset Off]" ) ); + TF_ADD_TEST_CASE_L( 11004, _L( "I0001.04 DSY [Invalid Loopset 100]" ) ); + TF_ADD_TEST_CASE_L( 11008, _L( "I0001.08 DSY [Accessory Mode]" ) ) ; + + TF_ADD_TEST_SUITE_REGRESSION_L( 11006, _L( "I0001.06 DSY [Accessory Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 11007, _L( "I0001.07 DSY [Accessory Randomizer]" ), 200 ); + } + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +#ifdef __BT_SAP +static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 12001, _L( "I0012.01 DSY [BT SAP On]" ) ) ; + TF_ADD_TEST_CASE_L( 12002, _L( "I0012.02 DSY [BT SAP Off]" ) ) ; + } +#else +#pragma message ( "BT SAP Disabled" ) +static void BluetoothSAPSuiteL( CTFATestSuite* /*aSuite*/ ) + { + } +#endif +#endif // RD_STARTUP_CHANGE + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverproxy.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverproxy.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dosservercontrol/src/tfdosserverproxy.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of DosServer control ECom export -* -*/ - - -// INCLUDE FILES -#include -#include -#include "ctfdosserverplugin.h" - -// CONSTANTS -const TImplementationProxy ImplementationTable[] = - { -//lint -e611 Suspicious cast - IMPLEMENTATION_PROXY_ENTRY( 0x10200c77, CTFDosServerPlugin::NewL ) -//lint +e611 - }; - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer && date && time ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), - buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - -// ================= OTHER EXPORTED FUNCTIONS ============== - -// --------------------------------------------------------- -// ImplementationGroupProxy -// Returns: TImplementationProxy*: ?description -// --------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); - - return ImplementationTable; - } - +/* +* 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: Implementation of DosServer control ECom export +* +*/ + + +// INCLUDE FILES +#include +#include +#include "ctfdosserverplugin.h" + +// CONSTANTS +const TImplementationProxy ImplementationTable[] = + { +//lint -e611 Suspicious cast + IMPLEMENTATION_PROXY_ENTRY( 0x10200c77, CTFDosServerPlugin::NewL ) +//lint +e611 + }; + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer && date && time ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), + buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + +// ================= OTHER EXPORTED FUNCTIONS ============== + +// --------------------------------------------------------- +// ImplementationGroupProxy +// Returns: TImplementationProxy*: ?description +// --------------------------------------------------------- +// +EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) + { + aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); + + return ImplementationTable; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BMARM/DSYTFCOREU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BMARM/DSYTFCOREU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BMARM/DSYTFCOREU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,80 +1,80 @@ -EXPORTS - __7CTFStubi @ 1 NONAME R3UNUSED ; CTFStub::CTFStub(int) - AddL__20CTFATestSuiteAdapterR15MTFATestAdapter @ 2 NONAME R3UNUSED ; CTFATestSuiteAdapter::AddL(MTFATestAdapter &) - AddStubTestCaseL__18CTFTestCaseWrapperR15MTFStubTestCase @ 3 NONAME R3UNUSED ; CTFTestCaseWrapper::AddStubTestCaseL(MTFStubTestCase &) - At__13CTFATestSuitei @ 4 NONAME R3UNUSED ; CTFATestSuite::At(int) - CallLocalStubL__10CTFFactoryiPvN32 @ 5 NONAME ; CTFFactory::CallLocalStubL(int, void *, void *, void *, void *) - CallRemoteStubL__10CTFFactoryiPvN32 @ 6 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *) - CallRemoteStubL__10CTFFactoryiPvN32R14TRequestStatus @ 7 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *, TRequestStatus &) - CompleteTest__15CTFStubTestCasei @ 8 NONAME R3UNUSED ; CTFStubTestCase::CompleteTest(int) - ConstructL__14CTFAEntryPoint @ 9 NONAME R3UNUSED ; CTFAEntryPoint::ConstructL(void) - Count__C13CTFATestSuite @ 10 NONAME R3UNUSED ; CTFATestSuite::Count(void) const - CurrentTestCaseID__7CTFStub @ 11 NONAME R3UNUSED ; CTFStub::CurrentTestCaseID(void) - CurrentTestCase__7CTFStub @ 12 NONAME R3UNUSED ; CTFStub::CurrentTestCase(void) - DoSetActive__14CTFAActiveTest @ 13 NONAME R3UNUSED ; CTFAActiveTest::DoSetActive(void) - Environment__8CTFATest @ 14 NONAME R3UNUSED ; CTFATest::Environment(void) - Factory__19CTFATestEnvironment @ 15 NONAME R3UNUSED ; CTFATestEnvironment::Factory(void) - Id__C12CTFATestCase @ 16 NONAME R3UNUSED ; CTFATestCase::Id(void) const - IsComplete__15CTFStubTestCase @ 17 NONAME R3UNUSED ; CTFStubTestCase::IsComplete(void) - Logger__15CTFStubTestCase @ 18 NONAME R3UNUSED ; CTFStubTestCase::Logger(void) - Logger__19CTFATestEnvironment @ 19 NONAME R3UNUSED ; CTFATestEnvironment::Logger(void) - Name__C8CTFATest @ 20 NONAME R3UNUSED ; CTFATest::Name(void) const - NewL__13CTFATestTimerR14MTFAActiveTest @ 21 NONAME R3UNUSED ; CTFATestTimer::NewL(MTFAActiveTest &) - RootSuiteAdapter__14CTFAEntryPoint @ 22 NONAME R3UNUSED ; CTFAEntryPoint::RootSuiteAdapter(void) - RunOnStartup__C12CTFATestCase @ 23 NONAME R3UNUSED ; CTFATestCase::RunOnStartup(void) const - SetCallback__15CTFStubTestCaseR20MTFTestCaseInterface @ 24 NONAME R3UNUSED ; CTFStubTestCase::SetCallback(MTFTestCaseInterface &) - SetEnvironment__18CTFTestCaseWrapperR19CTFATestEnvironment @ 25 NONAME R3UNUSED ; CTFTestCaseWrapper::SetEnvironment(CTFATestEnvironment &) - SetEnvironment__19CTFTestCaseRepeaterR19CTFATestEnvironment @ 26 NONAME R3UNUSED ; CTFTestCaseRepeater::SetEnvironment(CTFATestEnvironment &) - SetEnvironment__8CTFATestR19CTFATestEnvironment @ 27 NONAME R3UNUSED ; CTFATest::SetEnvironment(CTFATestEnvironment &) - SetRunOnStartup__12CTFATestCasei @ 28 NONAME R3UNUSED ; CTFATestCase::SetRunOnStartup(int) - SetStub__15CTFStubTestCaseR7CTFStub @ 29 NONAME R3UNUSED ; CTFStubTestCase::SetStub(CTFStub &) - SetTimeout__12CTFATestCasei @ 30 NONAME R3UNUSED ; CTFATestCase::SetTimeout(int) - SetupL__15CTFStubTestCase @ 31 NONAME R3UNUSED ; CTFStubTestCase::SetupL(void) - Status__14CTFAActiveTest @ 32 NONAME R3UNUSED ; CTFAActiveTest::Status(void) - Stub__10CTFFactoryi @ 33 NONAME R3UNUSED ; CTFFactory::Stub(int) - Timeout__C12CTFATestCase @ 34 NONAME R3UNUSED ; CTFATestCase::Timeout(void) const - Type__15CTFStubTestCase @ 35 NONAME R3UNUSED ; CTFStubTestCase::Type(void) - Type__C12CTFATestCase @ 36 NONAME R3UNUSED ; CTFATestCase::Type(void) const - Type__C13CTFATestSuite @ 37 NONAME R3UNUSED ; CTFATestSuite::Type(void) const - Type__C19CTFATestCaseAdapter @ 38 NONAME R3UNUSED ; CTFATestCaseAdapter::Type(void) const - Type__C20CTFATestSuiteAdapter @ 39 NONAME R3UNUSED ; CTFATestSuiteAdapter::Type(void) const - "_._11CTFATestLog" @ 40 NONAME R3UNUSED ; CTFATestLog::~CTFATestLog(void) - "_._12CTFATestCase" @ 41 NONAME R3UNUSED ; CTFATestCase::~CTFATestCase(void) - "_._13CTFATestSuite" @ 42 NONAME R3UNUSED ; CTFATestSuite::~CTFATestSuite(void) - "_._13CTFATestTimer" @ 43 NONAME R3UNUSED ; CTFATestTimer::~CTFATestTimer(void) - "_._13CTFRemoteStub" @ 44 NONAME R3UNUSED ; CTFRemoteStub::~CTFRemoteStub(void) - "_._14CTFAActiveTest" @ 45 NONAME R3UNUSED ; CTFAActiveTest::~CTFAActiveTest(void) - "_._14CTFAEntryPoint" @ 46 NONAME R3UNUSED ; CTFAEntryPoint::~CTFAEntryPoint(void) - "_._14MTFAActiveTest" @ 47 NONAME R3UNUSED ; MTFAActiveTest::~MTFAActiveTest(void) - "_._15CTFStubTestCase" @ 48 NONAME R3UNUSED ; CTFStubTestCase::~CTFStubTestCase(void) - "_._15MTFATestAdapter" @ 49 NONAME R3UNUSED ; MTFATestAdapter::~MTFATestAdapter(void) - "_._19CTFATestCaseAdapter" @ 50 NONAME R3UNUSED ; CTFATestCaseAdapter::~CTFATestCaseAdapter(void) - "_._19CTFATestEnvironment" @ 51 NONAME R3UNUSED ; CTFATestEnvironment::~CTFATestEnvironment(void) - "_._19MTFATestCaseAdapter" @ 52 NONAME R3UNUSED ; MTFATestCaseAdapter::~MTFATestCaseAdapter(void) - "_._20CTFATestSuiteAdapter" @ 53 NONAME R3UNUSED ; CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) - "_._20CTFStubTestCaseParam" @ 54 NONAME R3UNUSED ; CTFStubTestCaseParam::~CTFStubTestCaseParam(void) - "_._20MTFATestSuiteAdapter" @ 55 NONAME R3UNUSED ; MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) - "_._7CTFStub" @ 56 NONAME R3UNUSED ; CTFStub::~CTFStub(void) - __11CTFATestLog @ 57 NONAME R3UNUSED ; CTFATestLog::CTFATestLog(void) - __12CTFATestCaseiRC7TDesC16 @ 58 NONAME R3UNUSED ; CTFATestCase::CTFATestCase(int, TDesC16 const &) - __13CTFATestSuiteRC7TDesC16 @ 59 NONAME R3UNUSED ; CTFATestSuite::CTFATestSuite(TDesC16 const &) - __13CTFRemoteStubi @ 60 NONAME R3UNUSED ; CTFRemoteStub::CTFRemoteStub(int) - __14CTFAActiveTestR14MTFAActiveTest @ 61 NONAME R3UNUSED ; CTFAActiveTest::CTFAActiveTest(MTFAActiveTest &) - __14CTFAEntryPoint @ 62 NONAME R3UNUSED ; CTFAEntryPoint::CTFAEntryPoint(void) - __14MTFAActiveTest @ 63 NONAME R3UNUSED ; MTFAActiveTest::MTFAActiveTest(void) - __15CTFStubTestCasei @ 64 NONAME R3UNUSED ; CTFStubTestCase::CTFStubTestCase(int) - __15MTFATestAdapter @ 65 NONAME R3UNUSED ; MTFATestAdapter::MTFATestAdapter(void) - __18CTFTestCaseWrapperiRC7TDesC16 @ 66 NONAME R3UNUSED ; CTFTestCaseWrapper::CTFTestCaseWrapper(int, TDesC16 const &) - __19CTFATestCaseAdapterR12CTFATestCase @ 67 NONAME R3UNUSED ; CTFATestCaseAdapter::CTFATestCaseAdapter(CTFATestCase &) - __19CTFATestEnvironmentR11CTFATestLog @ 68 NONAME R3UNUSED ; CTFATestEnvironment::CTFATestEnvironment(CTFATestLog &) - __19CTFTestCaseRepeateriRC7TDesC16P13CTFATestSuiteii @ 69 NONAME ; CTFTestCaseRepeater::CTFTestCaseRepeater(int, TDesC16 const &, CTFATestSuite *, int, int) - __19MTFATestCaseAdapter @ 70 NONAME R3UNUSED ; MTFATestCaseAdapter::MTFATestCaseAdapter(void) - __20CTFATestSuiteAdapterR13CTFATestSuiteP14CTFAEntryPoint @ 71 NONAME R3UNUSED ; CTFATestSuiteAdapter::CTFATestSuiteAdapter(CTFATestSuite &, CTFAEntryPoint *) - __20CTFStubTestCaseParam @ 72 NONAME R3UNUSED ; CTFStubTestCaseParam::CTFStubTestCaseParam(void) - __20MTFATestSuiteAdapter @ 73 NONAME R3UNUSED ; MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) - AddL__13CTFATestSuiteRC8CTFATest @ 74 NONAME R3UNUSED ; CTFATestSuite::AddL(CTFATest const &) - Flags__C12CTFATestCase @ 75 NONAME R3UNUSED ; CTFATestCase::Flags(void) const - SetFlags__12CTFATestCaseUl @ 76 NONAME R3UNUSED ; CTFATestCase::SetFlags(unsigned long) - SetEnvironment__12CTFATestCaseR19CTFATestEnvironment @ 77 NONAME R3UNUSED ; CTFATestCase::SetEnvironment(CTFATestEnvironment &) - SetTestCaseFlags__19CTFATestEnvironmentUl @ 78 NONAME R3UNUSED ; CTFATestEnvironment::SetTestCaseFlags(unsigned long) - +EXPORTS + __7CTFStubi @ 1 NONAME R3UNUSED ; CTFStub::CTFStub(int) + AddL__20CTFATestSuiteAdapterR15MTFATestAdapter @ 2 NONAME R3UNUSED ; CTFATestSuiteAdapter::AddL(MTFATestAdapter &) + AddStubTestCaseL__18CTFTestCaseWrapperR15MTFStubTestCase @ 3 NONAME R3UNUSED ; CTFTestCaseWrapper::AddStubTestCaseL(MTFStubTestCase &) + At__13CTFATestSuitei @ 4 NONAME R3UNUSED ; CTFATestSuite::At(int) + CallLocalStubL__10CTFFactoryiPvN32 @ 5 NONAME ; CTFFactory::CallLocalStubL(int, void *, void *, void *, void *) + CallRemoteStubL__10CTFFactoryiPvN32 @ 6 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *) + CallRemoteStubL__10CTFFactoryiPvN32R14TRequestStatus @ 7 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *, TRequestStatus &) + CompleteTest__15CTFStubTestCasei @ 8 NONAME R3UNUSED ; CTFStubTestCase::CompleteTest(int) + ConstructL__14CTFAEntryPoint @ 9 NONAME R3UNUSED ; CTFAEntryPoint::ConstructL(void) + Count__C13CTFATestSuite @ 10 NONAME R3UNUSED ; CTFATestSuite::Count(void) const + CurrentTestCaseID__7CTFStub @ 11 NONAME R3UNUSED ; CTFStub::CurrentTestCaseID(void) + CurrentTestCase__7CTFStub @ 12 NONAME R3UNUSED ; CTFStub::CurrentTestCase(void) + DoSetActive__14CTFAActiveTest @ 13 NONAME R3UNUSED ; CTFAActiveTest::DoSetActive(void) + Environment__8CTFATest @ 14 NONAME R3UNUSED ; CTFATest::Environment(void) + Factory__19CTFATestEnvironment @ 15 NONAME R3UNUSED ; CTFATestEnvironment::Factory(void) + Id__C12CTFATestCase @ 16 NONAME R3UNUSED ; CTFATestCase::Id(void) const + IsComplete__15CTFStubTestCase @ 17 NONAME R3UNUSED ; CTFStubTestCase::IsComplete(void) + Logger__15CTFStubTestCase @ 18 NONAME R3UNUSED ; CTFStubTestCase::Logger(void) + Logger__19CTFATestEnvironment @ 19 NONAME R3UNUSED ; CTFATestEnvironment::Logger(void) + Name__C8CTFATest @ 20 NONAME R3UNUSED ; CTFATest::Name(void) const + NewL__13CTFATestTimerR14MTFAActiveTest @ 21 NONAME R3UNUSED ; CTFATestTimer::NewL(MTFAActiveTest &) + RootSuiteAdapter__14CTFAEntryPoint @ 22 NONAME R3UNUSED ; CTFAEntryPoint::RootSuiteAdapter(void) + RunOnStartup__C12CTFATestCase @ 23 NONAME R3UNUSED ; CTFATestCase::RunOnStartup(void) const + SetCallback__15CTFStubTestCaseR20MTFTestCaseInterface @ 24 NONAME R3UNUSED ; CTFStubTestCase::SetCallback(MTFTestCaseInterface &) + SetEnvironment__18CTFTestCaseWrapperR19CTFATestEnvironment @ 25 NONAME R3UNUSED ; CTFTestCaseWrapper::SetEnvironment(CTFATestEnvironment &) + SetEnvironment__19CTFTestCaseRepeaterR19CTFATestEnvironment @ 26 NONAME R3UNUSED ; CTFTestCaseRepeater::SetEnvironment(CTFATestEnvironment &) + SetEnvironment__8CTFATestR19CTFATestEnvironment @ 27 NONAME R3UNUSED ; CTFATest::SetEnvironment(CTFATestEnvironment &) + SetRunOnStartup__12CTFATestCasei @ 28 NONAME R3UNUSED ; CTFATestCase::SetRunOnStartup(int) + SetStub__15CTFStubTestCaseR7CTFStub @ 29 NONAME R3UNUSED ; CTFStubTestCase::SetStub(CTFStub &) + SetTimeout__12CTFATestCasei @ 30 NONAME R3UNUSED ; CTFATestCase::SetTimeout(int) + SetupL__15CTFStubTestCase @ 31 NONAME R3UNUSED ; CTFStubTestCase::SetupL(void) + Status__14CTFAActiveTest @ 32 NONAME R3UNUSED ; CTFAActiveTest::Status(void) + Stub__10CTFFactoryi @ 33 NONAME R3UNUSED ; CTFFactory::Stub(int) + Timeout__C12CTFATestCase @ 34 NONAME R3UNUSED ; CTFATestCase::Timeout(void) const + Type__15CTFStubTestCase @ 35 NONAME R3UNUSED ; CTFStubTestCase::Type(void) + Type__C12CTFATestCase @ 36 NONAME R3UNUSED ; CTFATestCase::Type(void) const + Type__C13CTFATestSuite @ 37 NONAME R3UNUSED ; CTFATestSuite::Type(void) const + Type__C19CTFATestCaseAdapter @ 38 NONAME R3UNUSED ; CTFATestCaseAdapter::Type(void) const + Type__C20CTFATestSuiteAdapter @ 39 NONAME R3UNUSED ; CTFATestSuiteAdapter::Type(void) const + "_._11CTFATestLog" @ 40 NONAME R3UNUSED ; CTFATestLog::~CTFATestLog(void) + "_._12CTFATestCase" @ 41 NONAME R3UNUSED ; CTFATestCase::~CTFATestCase(void) + "_._13CTFATestSuite" @ 42 NONAME R3UNUSED ; CTFATestSuite::~CTFATestSuite(void) + "_._13CTFATestTimer" @ 43 NONAME R3UNUSED ; CTFATestTimer::~CTFATestTimer(void) + "_._13CTFRemoteStub" @ 44 NONAME R3UNUSED ; CTFRemoteStub::~CTFRemoteStub(void) + "_._14CTFAActiveTest" @ 45 NONAME R3UNUSED ; CTFAActiveTest::~CTFAActiveTest(void) + "_._14CTFAEntryPoint" @ 46 NONAME R3UNUSED ; CTFAEntryPoint::~CTFAEntryPoint(void) + "_._14MTFAActiveTest" @ 47 NONAME R3UNUSED ; MTFAActiveTest::~MTFAActiveTest(void) + "_._15CTFStubTestCase" @ 48 NONAME R3UNUSED ; CTFStubTestCase::~CTFStubTestCase(void) + "_._15MTFATestAdapter" @ 49 NONAME R3UNUSED ; MTFATestAdapter::~MTFATestAdapter(void) + "_._19CTFATestCaseAdapter" @ 50 NONAME R3UNUSED ; CTFATestCaseAdapter::~CTFATestCaseAdapter(void) + "_._19CTFATestEnvironment" @ 51 NONAME R3UNUSED ; CTFATestEnvironment::~CTFATestEnvironment(void) + "_._19MTFATestCaseAdapter" @ 52 NONAME R3UNUSED ; MTFATestCaseAdapter::~MTFATestCaseAdapter(void) + "_._20CTFATestSuiteAdapter" @ 53 NONAME R3UNUSED ; CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) + "_._20CTFStubTestCaseParam" @ 54 NONAME R3UNUSED ; CTFStubTestCaseParam::~CTFStubTestCaseParam(void) + "_._20MTFATestSuiteAdapter" @ 55 NONAME R3UNUSED ; MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) + "_._7CTFStub" @ 56 NONAME R3UNUSED ; CTFStub::~CTFStub(void) + __11CTFATestLog @ 57 NONAME R3UNUSED ; CTFATestLog::CTFATestLog(void) + __12CTFATestCaseiRC7TDesC16 @ 58 NONAME R3UNUSED ; CTFATestCase::CTFATestCase(int, TDesC16 const &) + __13CTFATestSuiteRC7TDesC16 @ 59 NONAME R3UNUSED ; CTFATestSuite::CTFATestSuite(TDesC16 const &) + __13CTFRemoteStubi @ 60 NONAME R3UNUSED ; CTFRemoteStub::CTFRemoteStub(int) + __14CTFAActiveTestR14MTFAActiveTest @ 61 NONAME R3UNUSED ; CTFAActiveTest::CTFAActiveTest(MTFAActiveTest &) + __14CTFAEntryPoint @ 62 NONAME R3UNUSED ; CTFAEntryPoint::CTFAEntryPoint(void) + __14MTFAActiveTest @ 63 NONAME R3UNUSED ; MTFAActiveTest::MTFAActiveTest(void) + __15CTFStubTestCasei @ 64 NONAME R3UNUSED ; CTFStubTestCase::CTFStubTestCase(int) + __15MTFATestAdapter @ 65 NONAME R3UNUSED ; MTFATestAdapter::MTFATestAdapter(void) + __18CTFTestCaseWrapperiRC7TDesC16 @ 66 NONAME R3UNUSED ; CTFTestCaseWrapper::CTFTestCaseWrapper(int, TDesC16 const &) + __19CTFATestCaseAdapterR12CTFATestCase @ 67 NONAME R3UNUSED ; CTFATestCaseAdapter::CTFATestCaseAdapter(CTFATestCase &) + __19CTFATestEnvironmentR11CTFATestLog @ 68 NONAME R3UNUSED ; CTFATestEnvironment::CTFATestEnvironment(CTFATestLog &) + __19CTFTestCaseRepeateriRC7TDesC16P13CTFATestSuiteii @ 69 NONAME ; CTFTestCaseRepeater::CTFTestCaseRepeater(int, TDesC16 const &, CTFATestSuite *, int, int) + __19MTFATestCaseAdapter @ 70 NONAME R3UNUSED ; MTFATestCaseAdapter::MTFATestCaseAdapter(void) + __20CTFATestSuiteAdapterR13CTFATestSuiteP14CTFAEntryPoint @ 71 NONAME R3UNUSED ; CTFATestSuiteAdapter::CTFATestSuiteAdapter(CTFATestSuite &, CTFAEntryPoint *) + __20CTFStubTestCaseParam @ 72 NONAME R3UNUSED ; CTFStubTestCaseParam::CTFStubTestCaseParam(void) + __20MTFATestSuiteAdapter @ 73 NONAME R3UNUSED ; MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) + AddL__13CTFATestSuiteRC8CTFATest @ 74 NONAME R3UNUSED ; CTFATestSuite::AddL(CTFATest const &) + Flags__C12CTFATestCase @ 75 NONAME R3UNUSED ; CTFATestCase::Flags(void) const + SetFlags__12CTFATestCaseUl @ 76 NONAME R3UNUSED ; CTFATestCase::SetFlags(unsigned long) + SetEnvironment__12CTFATestCaseR19CTFATestEnvironment @ 77 NONAME R3UNUSED ; CTFATestCase::SetEnvironment(CTFATestEnvironment &) + SetTestCaseFlags__19CTFATestEnvironmentUl @ 78 NONAME R3UNUSED ; CTFATestEnvironment::SetTestCaseFlags(unsigned long) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BWINS/DSYTFCOREU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BWINS/DSYTFCOREU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/BWINS/DSYTFCOREU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,81 +1,81 @@ -EXPORTS - ??0CTFAActiveTest@@QAE@AAVMTFAActiveTest@@@Z @ 1 NONAME ; public: __thiscall CTFAActiveTest::CTFAActiveTest(class MTFAActiveTest &) - ??0CTFAEntryPoint@@IAE@XZ @ 2 NONAME ; protected: __thiscall CTFAEntryPoint::CTFAEntryPoint(void) - ??0CTFATestCase@@IAE@HABVTDesC16@@@Z @ 3 NONAME ; protected: __thiscall CTFATestCase::CTFATestCase(int,class TDesC16 const &) - ??0CTFATestCaseAdapter@@IAE@AAVCTFATestCase@@@Z @ 4 NONAME ; protected: __thiscall CTFATestCaseAdapter::CTFATestCaseAdapter(class CTFATestCase &) - ??0CTFATestEnvironment@@QAE@AAVCTFATestLog@@@Z @ 5 NONAME ; public: __thiscall CTFATestEnvironment::CTFATestEnvironment(class CTFATestLog &) - ??0CTFATestLog@@IAE@XZ @ 6 NONAME ; protected: __thiscall CTFATestLog::CTFATestLog(void) - ??0CTFATestSuite@@QAE@ABVTDesC16@@@Z @ 7 NONAME ; public: __thiscall CTFATestSuite::CTFATestSuite(class TDesC16 const &) - ??0CTFATestSuiteAdapter@@IAE@AAVCTFATestSuite@@PAVCTFAEntryPoint@@@Z @ 8 NONAME ; protected: __thiscall CTFATestSuiteAdapter::CTFATestSuiteAdapter(class CTFATestSuite &,class CTFAEntryPoint *) - ??0CTFRemoteStub@@QAE@H@Z @ 9 NONAME ; public: __thiscall CTFRemoteStub::CTFRemoteStub(int) - ??0CTFStub@@QAE@H@Z @ 10 NONAME ; public: __thiscall CTFStub::CTFStub(int) - ??0CTFStubTestCase@@QAE@H@Z @ 11 NONAME ; public: __thiscall CTFStubTestCase::CTFStubTestCase(int) - ??0CTFStubTestCaseParam@@QAE@XZ @ 12 NONAME ; public: __thiscall CTFStubTestCaseParam::CTFStubTestCaseParam(void) - ??0CTFTestCaseRepeater@@QAE@HABVTDesC16@@PAVCTFATestSuite@@HH@Z @ 13 NONAME ; public: __thiscall CTFTestCaseRepeater::CTFTestCaseRepeater(int,class TDesC16 const &,class CTFATestSuite *,int,int) - ??0CTFTestCaseWrapper@@QAE@HABVTDesC16@@@Z @ 14 NONAME ; public: __thiscall CTFTestCaseWrapper::CTFTestCaseWrapper(int,class TDesC16 const &) - ??0MTFAActiveTest@@QAE@XZ @ 15 NONAME ; public: __thiscall MTFAActiveTest::MTFAActiveTest(void) - ??0MTFATestAdapter@@IAE@XZ @ 16 NONAME ; protected: __thiscall MTFATestAdapter::MTFATestAdapter(void) - ??0MTFATestCaseAdapter@@IAE@XZ @ 17 NONAME ; protected: __thiscall MTFATestCaseAdapter::MTFATestCaseAdapter(void) - ??0MTFATestSuiteAdapter@@IAE@XZ @ 18 NONAME ; protected: __thiscall MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) - ??1CTFAActiveTest@@UAE@XZ @ 19 NONAME ; public: virtual __thiscall CTFAActiveTest::~CTFAActiveTest(void) - ??1CTFAEntryPoint@@UAE@XZ @ 20 NONAME ; public: virtual __thiscall CTFAEntryPoint::~CTFAEntryPoint(void) - ??1CTFATestCase@@MAE@XZ @ 21 NONAME ; protected: virtual __thiscall CTFATestCase::~CTFATestCase(void) - ??1CTFATestCaseAdapter@@UAE@XZ @ 22 NONAME ; public: virtual __thiscall CTFATestCaseAdapter::~CTFATestCaseAdapter(void) - ??1CTFATestEnvironment@@UAE@XZ @ 23 NONAME ; public: virtual __thiscall CTFATestEnvironment::~CTFATestEnvironment(void) - ??1CTFATestLog@@UAE@XZ @ 24 NONAME ; public: virtual __thiscall CTFATestLog::~CTFATestLog(void) - ??1CTFATestSuite@@UAE@XZ @ 25 NONAME ; public: virtual __thiscall CTFATestSuite::~CTFATestSuite(void) - ??1CTFATestSuiteAdapter@@UAE@XZ @ 26 NONAME ; public: virtual __thiscall CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) - ??1CTFATestTimer@@UAE@XZ @ 27 NONAME ; public: virtual __thiscall CTFATestTimer::~CTFATestTimer(void) - ??1CTFRemoteStub@@UAE@XZ @ 28 NONAME ; public: virtual __thiscall CTFRemoteStub::~CTFRemoteStub(void) - ??1CTFStub@@UAE@XZ @ 29 NONAME ; public: virtual __thiscall CTFStub::~CTFStub(void) - ??1CTFStubTestCase@@UAE@XZ @ 30 NONAME ; public: virtual __thiscall CTFStubTestCase::~CTFStubTestCase(void) - ??1CTFStubTestCaseParam@@UAE@XZ @ 31 NONAME ; public: virtual __thiscall CTFStubTestCaseParam::~CTFStubTestCaseParam(void) - ??1MTFAActiveTest@@UAE@XZ @ 32 NONAME ; public: virtual __thiscall MTFAActiveTest::~MTFAActiveTest(void) - ??1MTFATestAdapter@@UAE@XZ @ 33 NONAME ; public: virtual __thiscall MTFATestAdapter::~MTFATestAdapter(void) - ??1MTFATestCaseAdapter@@UAE@XZ @ 34 NONAME ; public: virtual __thiscall MTFATestCaseAdapter::~MTFATestCaseAdapter(void) - ??1MTFATestSuiteAdapter@@UAE@XZ @ 35 NONAME ; public: virtual __thiscall MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) - ?AddL@CTFATestSuite@@QAEXABVCTFATest@@@Z @ 36 NONAME ; public: void __thiscall CTFATestSuite::AddL(class CTFATest const &) - ?AddL@CTFATestSuiteAdapter@@UAEXAAVMTFATestAdapter@@@Z @ 37 NONAME ; public: virtual void __thiscall CTFATestSuiteAdapter::AddL(class MTFATestAdapter &) - ?AddStubTestCaseL@CTFTestCaseWrapper@@QAEXAAVMTFStubTestCase@@@Z @ 38 NONAME ; public: void __thiscall CTFTestCaseWrapper::AddStubTestCaseL(class MTFStubTestCase &) - ?At@CTFATestSuite@@QAEAAVCTFATest@@H@Z @ 39 NONAME ; public: class CTFATest & __thiscall CTFATestSuite::At(int) - ?CallLocalStubL@CTFFactory@@SAXHPAX000@Z @ 40 NONAME ; public: static void __cdecl CTFFactory::CallLocalStubL(int,void *,void *,void *,void *) - ?CallRemoteStubL@CTFFactory@@SAXHPAX000@Z @ 41 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *) - ?CallRemoteStubL@CTFFactory@@SAXHPAX000AAVTRequestStatus@@@Z @ 42 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *,class TRequestStatus &) - ?CompleteTest@CTFStubTestCase@@MAEXH@Z @ 43 NONAME ; protected: virtual void __thiscall CTFStubTestCase::CompleteTest(int) - ?ConstructL@CTFAEntryPoint@@MAEXXZ @ 44 NONAME ; protected: virtual void __thiscall CTFAEntryPoint::ConstructL(void) - ?Count@CTFATestSuite@@QBEHXZ @ 45 NONAME ; public: int __thiscall CTFATestSuite::Count(void)const - ?CurrentTestCase@CTFStub@@QAEPAVMTFStubTestCase@@XZ @ 46 NONAME ; public: class MTFStubTestCase * __thiscall CTFStub::CurrentTestCase(void) - ?CurrentTestCaseID@CTFStub@@QAEHXZ @ 47 NONAME ; public: int __thiscall CTFStub::CurrentTestCaseID(void) - ?DoSetActive@CTFAActiveTest@@QAEXXZ @ 48 NONAME ; public: void __thiscall CTFAActiveTest::DoSetActive(void) - ?Environment@CTFATest@@QAEAAVCTFATestEnvironment@@XZ @ 49 NONAME ; public: class CTFATestEnvironment & __thiscall CTFATest::Environment(void) - ?Factory@CTFATestEnvironment@@QAEPAVCTFFactory@@XZ @ 50 NONAME ; public: class CTFFactory * __thiscall CTFATestEnvironment::Factory(void) - ?Id@CTFATestCase@@QBEHXZ @ 51 NONAME ; public: int __thiscall CTFATestCase::Id(void)const - ?IsComplete@CTFStubTestCase@@UAEHXZ @ 52 NONAME ; public: virtual int __thiscall CTFStubTestCase::IsComplete(void) - ?Logger@CTFATestEnvironment@@QAEAAVCTFATestLog@@XZ @ 53 NONAME ; public: class CTFATestLog & __thiscall CTFATestEnvironment::Logger(void) - ?Logger@CTFStubTestCase@@MAEAAVCTFATestLog@@XZ @ 54 NONAME ; protected: virtual class CTFATestLog & __thiscall CTFStubTestCase::Logger(void) - ?Name@CTFATest@@QBEABVTDesC16@@XZ @ 55 NONAME ; public: class TDesC16 const & __thiscall CTFATest::Name(void)const - ?NewL@CTFATestTimer@@SAPAV1@AAVMTFAActiveTest@@@Z @ 56 NONAME ; public: static class CTFATestTimer * __cdecl CTFATestTimer::NewL(class MTFAActiveTest &) - ?RootSuiteAdapter@CTFAEntryPoint@@QAEPAVMTFATestSuiteAdapter@@XZ @ 57 NONAME ; public: class MTFATestSuiteAdapter * __thiscall CTFAEntryPoint::RootSuiteAdapter(void) - ?RunOnStartup@CTFATestCase@@QBEHXZ @ 58 NONAME ; public: int __thiscall CTFATestCase::RunOnStartup(void)const - ?SetCallback@CTFStubTestCase@@UAEXAAVMTFTestCaseInterface@@@Z @ 59 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetCallback(class MTFTestCaseInterface &) - ?SetEnvironment@CTFATest@@UAEXAAVCTFATestEnvironment@@@Z @ 60 NONAME ; public: virtual void __thiscall CTFATest::SetEnvironment(class CTFATestEnvironment &) - ?SetEnvironment@CTFTestCaseRepeater@@UAEXAAVCTFATestEnvironment@@@Z @ 61 NONAME ; public: virtual void __thiscall CTFTestCaseRepeater::SetEnvironment(class CTFATestEnvironment &) - ?SetEnvironment@CTFTestCaseWrapper@@UAEXAAVCTFATestEnvironment@@@Z @ 62 NONAME ; public: virtual void __thiscall CTFTestCaseWrapper::SetEnvironment(class CTFATestEnvironment &) - ?SetRunOnStartup@CTFATestCase@@QAEXH@Z @ 63 NONAME ; public: void __thiscall CTFATestCase::SetRunOnStartup(int) - ?SetStub@CTFStubTestCase@@UAEXAAVCTFStub@@@Z @ 64 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetStub(class CTFStub &) - ?SetTimeout@CTFATestCase@@QAEXH@Z @ 65 NONAME ; public: void __thiscall CTFATestCase::SetTimeout(int) - ?SetupL@CTFStubTestCase@@UAEXXZ @ 66 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetupL(void) - ?Status@CTFAActiveTest@@QAEAAVTRequestStatus@@XZ @ 67 NONAME ; public: class TRequestStatus & __thiscall CTFAActiveTest::Status(void) - ?Stub@CTFFactory@@SAPAVCTFStub@@H@Z @ 68 NONAME ; public: static class CTFStub * __cdecl CTFFactory::Stub(int) - ?StubControl@CTFFactory@@QAEPAVMTFStubControl@@XZ @ 69 NONAME ; public: class MTFStubControl * __thiscall CTFFactory::StubControl(void) - ?Timeout@CTFATestCase@@QBEHXZ @ 70 NONAME ; public: int __thiscall CTFATestCase::Timeout(void)const - ?Type@CTFATestCase@@UBE?AW4TTFATestType@@XZ @ 71 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCase::Type(void)const - ?Type@CTFATestCaseAdapter@@UBE?AW4TTFATestType@@XZ @ 72 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCaseAdapter::Type(void)const - ?Type@CTFATestSuite@@UBE?AW4TTFATestType@@XZ @ 73 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuite::Type(void)const - ?Type@CTFATestSuiteAdapter@@UBE?AW4TTFATestType@@XZ @ 74 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuiteAdapter::Type(void)const - ?Type@CTFStubTestCase@@UAEHXZ @ 75 NONAME ; public: virtual int __thiscall CTFStubTestCase::Type(void) - ?Flags@CTFATestCase@@QBEKXZ @ 76 NONAME ; public: unsigned long __thiscall CTFATestCase::Flags(void)const - ?SetFlags@CTFATestCase@@QAEXK@Z @ 77 NONAME ; public: void __thiscall CTFATestCase::SetFlags(unsigned long) - ?SetEnvironment@CTFATestCase@@UAEXAAVCTFATestEnvironment@@@Z @ 78 NONAME ; public: virtual void __thiscall CTFATestCase::SetEnvironment(class CTFATestEnvironment &) - ?SetTestCaseFlags@CTFATestEnvironment@@QAEXK@Z @ 79 NONAME ; public: void __thiscall CTFATestEnvironment::SetTestCaseFlags(unsigned long) - +EXPORTS + ??0CTFAActiveTest@@QAE@AAVMTFAActiveTest@@@Z @ 1 NONAME ; public: __thiscall CTFAActiveTest::CTFAActiveTest(class MTFAActiveTest &) + ??0CTFAEntryPoint@@IAE@XZ @ 2 NONAME ; protected: __thiscall CTFAEntryPoint::CTFAEntryPoint(void) + ??0CTFATestCase@@IAE@HABVTDesC16@@@Z @ 3 NONAME ; protected: __thiscall CTFATestCase::CTFATestCase(int,class TDesC16 const &) + ??0CTFATestCaseAdapter@@IAE@AAVCTFATestCase@@@Z @ 4 NONAME ; protected: __thiscall CTFATestCaseAdapter::CTFATestCaseAdapter(class CTFATestCase &) + ??0CTFATestEnvironment@@QAE@AAVCTFATestLog@@@Z @ 5 NONAME ; public: __thiscall CTFATestEnvironment::CTFATestEnvironment(class CTFATestLog &) + ??0CTFATestLog@@IAE@XZ @ 6 NONAME ; protected: __thiscall CTFATestLog::CTFATestLog(void) + ??0CTFATestSuite@@QAE@ABVTDesC16@@@Z @ 7 NONAME ; public: __thiscall CTFATestSuite::CTFATestSuite(class TDesC16 const &) + ??0CTFATestSuiteAdapter@@IAE@AAVCTFATestSuite@@PAVCTFAEntryPoint@@@Z @ 8 NONAME ; protected: __thiscall CTFATestSuiteAdapter::CTFATestSuiteAdapter(class CTFATestSuite &,class CTFAEntryPoint *) + ??0CTFRemoteStub@@QAE@H@Z @ 9 NONAME ; public: __thiscall CTFRemoteStub::CTFRemoteStub(int) + ??0CTFStub@@QAE@H@Z @ 10 NONAME ; public: __thiscall CTFStub::CTFStub(int) + ??0CTFStubTestCase@@QAE@H@Z @ 11 NONAME ; public: __thiscall CTFStubTestCase::CTFStubTestCase(int) + ??0CTFStubTestCaseParam@@QAE@XZ @ 12 NONAME ; public: __thiscall CTFStubTestCaseParam::CTFStubTestCaseParam(void) + ??0CTFTestCaseRepeater@@QAE@HABVTDesC16@@PAVCTFATestSuite@@HH@Z @ 13 NONAME ; public: __thiscall CTFTestCaseRepeater::CTFTestCaseRepeater(int,class TDesC16 const &,class CTFATestSuite *,int,int) + ??0CTFTestCaseWrapper@@QAE@HABVTDesC16@@@Z @ 14 NONAME ; public: __thiscall CTFTestCaseWrapper::CTFTestCaseWrapper(int,class TDesC16 const &) + ??0MTFAActiveTest@@QAE@XZ @ 15 NONAME ; public: __thiscall MTFAActiveTest::MTFAActiveTest(void) + ??0MTFATestAdapter@@IAE@XZ @ 16 NONAME ; protected: __thiscall MTFATestAdapter::MTFATestAdapter(void) + ??0MTFATestCaseAdapter@@IAE@XZ @ 17 NONAME ; protected: __thiscall MTFATestCaseAdapter::MTFATestCaseAdapter(void) + ??0MTFATestSuiteAdapter@@IAE@XZ @ 18 NONAME ; protected: __thiscall MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) + ??1CTFAActiveTest@@UAE@XZ @ 19 NONAME ; public: virtual __thiscall CTFAActiveTest::~CTFAActiveTest(void) + ??1CTFAEntryPoint@@UAE@XZ @ 20 NONAME ; public: virtual __thiscall CTFAEntryPoint::~CTFAEntryPoint(void) + ??1CTFATestCase@@MAE@XZ @ 21 NONAME ; protected: virtual __thiscall CTFATestCase::~CTFATestCase(void) + ??1CTFATestCaseAdapter@@UAE@XZ @ 22 NONAME ; public: virtual __thiscall CTFATestCaseAdapter::~CTFATestCaseAdapter(void) + ??1CTFATestEnvironment@@UAE@XZ @ 23 NONAME ; public: virtual __thiscall CTFATestEnvironment::~CTFATestEnvironment(void) + ??1CTFATestLog@@UAE@XZ @ 24 NONAME ; public: virtual __thiscall CTFATestLog::~CTFATestLog(void) + ??1CTFATestSuite@@UAE@XZ @ 25 NONAME ; public: virtual __thiscall CTFATestSuite::~CTFATestSuite(void) + ??1CTFATestSuiteAdapter@@UAE@XZ @ 26 NONAME ; public: virtual __thiscall CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) + ??1CTFATestTimer@@UAE@XZ @ 27 NONAME ; public: virtual __thiscall CTFATestTimer::~CTFATestTimer(void) + ??1CTFRemoteStub@@UAE@XZ @ 28 NONAME ; public: virtual __thiscall CTFRemoteStub::~CTFRemoteStub(void) + ??1CTFStub@@UAE@XZ @ 29 NONAME ; public: virtual __thiscall CTFStub::~CTFStub(void) + ??1CTFStubTestCase@@UAE@XZ @ 30 NONAME ; public: virtual __thiscall CTFStubTestCase::~CTFStubTestCase(void) + ??1CTFStubTestCaseParam@@UAE@XZ @ 31 NONAME ; public: virtual __thiscall CTFStubTestCaseParam::~CTFStubTestCaseParam(void) + ??1MTFAActiveTest@@UAE@XZ @ 32 NONAME ; public: virtual __thiscall MTFAActiveTest::~MTFAActiveTest(void) + ??1MTFATestAdapter@@UAE@XZ @ 33 NONAME ; public: virtual __thiscall MTFATestAdapter::~MTFATestAdapter(void) + ??1MTFATestCaseAdapter@@UAE@XZ @ 34 NONAME ; public: virtual __thiscall MTFATestCaseAdapter::~MTFATestCaseAdapter(void) + ??1MTFATestSuiteAdapter@@UAE@XZ @ 35 NONAME ; public: virtual __thiscall MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) + ?AddL@CTFATestSuite@@QAEXABVCTFATest@@@Z @ 36 NONAME ; public: void __thiscall CTFATestSuite::AddL(class CTFATest const &) + ?AddL@CTFATestSuiteAdapter@@UAEXAAVMTFATestAdapter@@@Z @ 37 NONAME ; public: virtual void __thiscall CTFATestSuiteAdapter::AddL(class MTFATestAdapter &) + ?AddStubTestCaseL@CTFTestCaseWrapper@@QAEXAAVMTFStubTestCase@@@Z @ 38 NONAME ; public: void __thiscall CTFTestCaseWrapper::AddStubTestCaseL(class MTFStubTestCase &) + ?At@CTFATestSuite@@QAEAAVCTFATest@@H@Z @ 39 NONAME ; public: class CTFATest & __thiscall CTFATestSuite::At(int) + ?CallLocalStubL@CTFFactory@@SAXHPAX000@Z @ 40 NONAME ; public: static void __cdecl CTFFactory::CallLocalStubL(int,void *,void *,void *,void *) + ?CallRemoteStubL@CTFFactory@@SAXHPAX000@Z @ 41 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *) + ?CallRemoteStubL@CTFFactory@@SAXHPAX000AAVTRequestStatus@@@Z @ 42 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *,class TRequestStatus &) + ?CompleteTest@CTFStubTestCase@@MAEXH@Z @ 43 NONAME ; protected: virtual void __thiscall CTFStubTestCase::CompleteTest(int) + ?ConstructL@CTFAEntryPoint@@MAEXXZ @ 44 NONAME ; protected: virtual void __thiscall CTFAEntryPoint::ConstructL(void) + ?Count@CTFATestSuite@@QBEHXZ @ 45 NONAME ; public: int __thiscall CTFATestSuite::Count(void)const + ?CurrentTestCase@CTFStub@@QAEPAVMTFStubTestCase@@XZ @ 46 NONAME ; public: class MTFStubTestCase * __thiscall CTFStub::CurrentTestCase(void) + ?CurrentTestCaseID@CTFStub@@QAEHXZ @ 47 NONAME ; public: int __thiscall CTFStub::CurrentTestCaseID(void) + ?DoSetActive@CTFAActiveTest@@QAEXXZ @ 48 NONAME ; public: void __thiscall CTFAActiveTest::DoSetActive(void) + ?Environment@CTFATest@@QAEAAVCTFATestEnvironment@@XZ @ 49 NONAME ; public: class CTFATestEnvironment & __thiscall CTFATest::Environment(void) + ?Factory@CTFATestEnvironment@@QAEPAVCTFFactory@@XZ @ 50 NONAME ; public: class CTFFactory * __thiscall CTFATestEnvironment::Factory(void) + ?Id@CTFATestCase@@QBEHXZ @ 51 NONAME ; public: int __thiscall CTFATestCase::Id(void)const + ?IsComplete@CTFStubTestCase@@UAEHXZ @ 52 NONAME ; public: virtual int __thiscall CTFStubTestCase::IsComplete(void) + ?Logger@CTFATestEnvironment@@QAEAAVCTFATestLog@@XZ @ 53 NONAME ; public: class CTFATestLog & __thiscall CTFATestEnvironment::Logger(void) + ?Logger@CTFStubTestCase@@MAEAAVCTFATestLog@@XZ @ 54 NONAME ; protected: virtual class CTFATestLog & __thiscall CTFStubTestCase::Logger(void) + ?Name@CTFATest@@QBEABVTDesC16@@XZ @ 55 NONAME ; public: class TDesC16 const & __thiscall CTFATest::Name(void)const + ?NewL@CTFATestTimer@@SAPAV1@AAVMTFAActiveTest@@@Z @ 56 NONAME ; public: static class CTFATestTimer * __cdecl CTFATestTimer::NewL(class MTFAActiveTest &) + ?RootSuiteAdapter@CTFAEntryPoint@@QAEPAVMTFATestSuiteAdapter@@XZ @ 57 NONAME ; public: class MTFATestSuiteAdapter * __thiscall CTFAEntryPoint::RootSuiteAdapter(void) + ?RunOnStartup@CTFATestCase@@QBEHXZ @ 58 NONAME ; public: int __thiscall CTFATestCase::RunOnStartup(void)const + ?SetCallback@CTFStubTestCase@@UAEXAAVMTFTestCaseInterface@@@Z @ 59 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetCallback(class MTFTestCaseInterface &) + ?SetEnvironment@CTFATest@@UAEXAAVCTFATestEnvironment@@@Z @ 60 NONAME ; public: virtual void __thiscall CTFATest::SetEnvironment(class CTFATestEnvironment &) + ?SetEnvironment@CTFTestCaseRepeater@@UAEXAAVCTFATestEnvironment@@@Z @ 61 NONAME ; public: virtual void __thiscall CTFTestCaseRepeater::SetEnvironment(class CTFATestEnvironment &) + ?SetEnvironment@CTFTestCaseWrapper@@UAEXAAVCTFATestEnvironment@@@Z @ 62 NONAME ; public: virtual void __thiscall CTFTestCaseWrapper::SetEnvironment(class CTFATestEnvironment &) + ?SetRunOnStartup@CTFATestCase@@QAEXH@Z @ 63 NONAME ; public: void __thiscall CTFATestCase::SetRunOnStartup(int) + ?SetStub@CTFStubTestCase@@UAEXAAVCTFStub@@@Z @ 64 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetStub(class CTFStub &) + ?SetTimeout@CTFATestCase@@QAEXH@Z @ 65 NONAME ; public: void __thiscall CTFATestCase::SetTimeout(int) + ?SetupL@CTFStubTestCase@@UAEXXZ @ 66 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetupL(void) + ?Status@CTFAActiveTest@@QAEAAVTRequestStatus@@XZ @ 67 NONAME ; public: class TRequestStatus & __thiscall CTFAActiveTest::Status(void) + ?Stub@CTFFactory@@SAPAVCTFStub@@H@Z @ 68 NONAME ; public: static class CTFStub * __cdecl CTFFactory::Stub(int) + ?StubControl@CTFFactory@@QAEPAVMTFStubControl@@XZ @ 69 NONAME ; public: class MTFStubControl * __thiscall CTFFactory::StubControl(void) + ?Timeout@CTFATestCase@@QBEHXZ @ 70 NONAME ; public: int __thiscall CTFATestCase::Timeout(void)const + ?Type@CTFATestCase@@UBE?AW4TTFATestType@@XZ @ 71 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCase::Type(void)const + ?Type@CTFATestCaseAdapter@@UBE?AW4TTFATestType@@XZ @ 72 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCaseAdapter::Type(void)const + ?Type@CTFATestSuite@@UBE?AW4TTFATestType@@XZ @ 73 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuite::Type(void)const + ?Type@CTFATestSuiteAdapter@@UBE?AW4TTFATestType@@XZ @ 74 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuiteAdapter::Type(void)const + ?Type@CTFStubTestCase@@UAEHXZ @ 75 NONAME ; public: virtual int __thiscall CTFStubTestCase::Type(void) + ?Flags@CTFATestCase@@QBEKXZ @ 76 NONAME ; public: unsigned long __thiscall CTFATestCase::Flags(void)const + ?SetFlags@CTFATestCase@@QAEXK@Z @ 77 NONAME ; public: void __thiscall CTFATestCase::SetFlags(unsigned long) + ?SetEnvironment@CTFATestCase@@UAEXAAVCTFATestEnvironment@@@Z @ 78 NONAME ; public: virtual void __thiscall CTFATestCase::SetEnvironment(class CTFATestEnvironment &) + ?SetTestCaseFlags@CTFATestEnvironment@@QAEXK@Z @ 79 NONAME ; public: void __thiscall CTFATestEnvironment::SetTestCaseFlags(unsigned long) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/EABI/dsytfcoreU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/EABI/dsytfcoreU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/EABI/dsytfcoreU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,178 +1,178 @@ -EXPORTS - _ZN10CTFFactory14CallLocalStubLEiPvS0_S0_S0_ @ 1 NONAME - _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_ @ 2 NONAME - _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_R14TRequestStatus @ 3 NONAME - _ZN10CTFFactory4StubEi @ 4 NONAME - _ZN11CTFATestLogC2Ev @ 5 NONAME - _ZN11CTFATestLogD0Ev @ 6 NONAME - _ZN11CTFATestLogD1Ev @ 7 NONAME - _ZN11CTFATestLogD2Ev @ 8 NONAME - _ZN12CTFATestCase10SetTimeoutEi @ 9 NONAME - _ZN12CTFATestCase14SetEnvironmentER19CTFATestEnvironment @ 10 NONAME - _ZN12CTFATestCase15SetRunOnStartupEi @ 11 NONAME - _ZN12CTFATestCase8SetFlagsEm @ 12 NONAME - _ZN12CTFATestCaseC2EiRK7TDesC16 @ 13 NONAME - _ZN12CTFATestCaseD0Ev @ 14 NONAME - _ZN12CTFATestCaseD1Ev @ 15 NONAME - _ZN12CTFATestCaseD2Ev @ 16 NONAME - _ZN13CTFATestSuite2AtEi @ 17 NONAME - _ZN13CTFATestSuite4AddLERK8CTFATest @ 18 NONAME - _ZN13CTFATestSuiteC1ERK7TDesC16 @ 19 NONAME - _ZN13CTFATestSuiteC2ERK7TDesC16 @ 20 NONAME - _ZN13CTFATestSuiteD0Ev @ 21 NONAME - _ZN13CTFATestSuiteD1Ev @ 22 NONAME - _ZN13CTFATestSuiteD2Ev @ 23 NONAME - _ZN13CTFATestTimer4NewLER14MTFAActiveTest @ 24 NONAME - _ZN13CTFATestTimerD0Ev @ 25 NONAME - _ZN13CTFATestTimerD1Ev @ 26 NONAME - _ZN13CTFATestTimerD2Ev @ 27 NONAME - _ZN13CTFRemoteStubC2Ei @ 28 NONAME - _ZN13CTFRemoteStubD0Ev @ 29 NONAME - _ZN13CTFRemoteStubD1Ev @ 30 NONAME - _ZN13CTFRemoteStubD2Ev @ 31 NONAME - _ZN14CTFAActiveTest11DoSetActiveEv @ 32 NONAME - _ZN14CTFAActiveTest6StatusEv @ 33 NONAME - _ZN14CTFAActiveTestC1ER14MTFAActiveTest @ 34 NONAME - _ZN14CTFAActiveTestC2ER14MTFAActiveTest @ 35 NONAME - _ZN14CTFAActiveTestD0Ev @ 36 NONAME - _ZN14CTFAActiveTestD1Ev @ 37 NONAME - _ZN14CTFAActiveTestD2Ev @ 38 NONAME - _ZN14CTFAEntryPoint10ConstructLEv @ 39 NONAME - _ZN14CTFAEntryPoint16RootSuiteAdapterEv @ 40 NONAME - _ZN14CTFAEntryPointC2Ev @ 41 NONAME - _ZN14CTFAEntryPointD0Ev @ 42 NONAME - _ZN14CTFAEntryPointD1Ev @ 43 NONAME - _ZN14CTFAEntryPointD2Ev @ 44 NONAME - _ZN14MTFAActiveTestC2Ev @ 45 NONAME - _ZN14MTFAActiveTestD0Ev @ 46 NONAME - _ZN14MTFAActiveTestD1Ev @ 47 NONAME - _ZN14MTFAActiveTestD2Ev @ 48 NONAME - _ZN15CTFStubTestCase10IsCompleteEv @ 49 NONAME - _ZN15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 50 NONAME - _ZN15CTFStubTestCase12CompleteTestEi @ 51 NONAME - _ZN15CTFStubTestCase4TypeEv @ 52 NONAME - _ZN15CTFStubTestCase6LoggerEv @ 53 NONAME - _ZN15CTFStubTestCase6SetupLEv @ 54 NONAME - _ZN15CTFStubTestCase7SetStubER7CTFStub @ 55 NONAME - _ZN15CTFStubTestCaseC2Ei @ 56 NONAME - _ZN15CTFStubTestCaseD0Ev @ 57 NONAME - _ZN15CTFStubTestCaseD1Ev @ 58 NONAME - _ZN15CTFStubTestCaseD2Ev @ 59 NONAME - _ZN15MTFATestAdapterC2Ev @ 60 NONAME - _ZN15MTFATestAdapterD0Ev @ 61 NONAME - _ZN15MTFATestAdapterD1Ev @ 62 NONAME - _ZN15MTFATestAdapterD2Ev @ 63 NONAME - _ZN18CTFTestCaseWrapper14SetEnvironmentER19CTFATestEnvironment @ 64 NONAME - _ZN18CTFTestCaseWrapper16AddStubTestCaseLER15MTFStubTestCase @ 65 NONAME - _ZN18CTFTestCaseWrapperC1EiRK7TDesC16 @ 66 NONAME - _ZN18CTFTestCaseWrapperC2EiRK7TDesC16 @ 67 NONAME - _ZN19CTFATestCaseAdapterC1ER12CTFATestCase @ 68 NONAME - _ZN19CTFATestCaseAdapterC2ER12CTFATestCase @ 69 NONAME - _ZN19CTFATestCaseAdapterD0Ev @ 70 NONAME - _ZN19CTFATestCaseAdapterD1Ev @ 71 NONAME - _ZN19CTFATestCaseAdapterD2Ev @ 72 NONAME - _ZN19CTFATestEnvironment16SetTestCaseFlagsEm @ 73 NONAME - _ZN19CTFATestEnvironment6LoggerEv @ 74 NONAME - _ZN19CTFATestEnvironment7FactoryEv @ 75 NONAME - _ZN19CTFATestEnvironmentC1ER11CTFATestLog @ 76 NONAME - _ZN19CTFATestEnvironmentC2ER11CTFATestLog @ 77 NONAME - _ZN19CTFATestEnvironmentD0Ev @ 78 NONAME - _ZN19CTFATestEnvironmentD1Ev @ 79 NONAME - _ZN19CTFATestEnvironmentD2Ev @ 80 NONAME - _ZN19CTFTestCaseRepeater14SetEnvironmentER19CTFATestEnvironment @ 81 NONAME - _ZN19CTFTestCaseRepeaterC1EiRK7TDesC16P13CTFATestSuiteii @ 82 NONAME - _ZN19CTFTestCaseRepeaterC2EiRK7TDesC16P13CTFATestSuiteii @ 83 NONAME - _ZN19MTFATestCaseAdapterC2Ev @ 84 NONAME - _ZN19MTFATestCaseAdapterD0Ev @ 85 NONAME - _ZN19MTFATestCaseAdapterD1Ev @ 86 NONAME - _ZN19MTFATestCaseAdapterD2Ev @ 87 NONAME - _ZN20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 88 NONAME - _ZN20CTFATestSuiteAdapterC1ER13CTFATestSuiteP14CTFAEntryPoint @ 89 NONAME - _ZN20CTFATestSuiteAdapterC2ER13CTFATestSuiteP14CTFAEntryPoint @ 90 NONAME - _ZN20CTFATestSuiteAdapterD0Ev @ 91 NONAME - _ZN20CTFATestSuiteAdapterD1Ev @ 92 NONAME - _ZN20CTFATestSuiteAdapterD2Ev @ 93 NONAME - _ZN20CTFStubTestCaseParamC1Ev @ 94 NONAME - _ZN20CTFStubTestCaseParamC2Ev @ 95 NONAME - _ZN20CTFStubTestCaseParamD0Ev @ 96 NONAME - _ZN20CTFStubTestCaseParamD1Ev @ 97 NONAME - _ZN20CTFStubTestCaseParamD2Ev @ 98 NONAME - _ZN20MTFATestSuiteAdapterC2Ev @ 99 NONAME - _ZN20MTFATestSuiteAdapterD0Ev @ 100 NONAME - _ZN20MTFATestSuiteAdapterD1Ev @ 101 NONAME - _ZN20MTFATestSuiteAdapterD2Ev @ 102 NONAME - _ZN7CTFStub15CurrentTestCaseEv @ 103 NONAME - _ZN7CTFStub17CurrentTestCaseIDEv @ 104 NONAME - _ZN7CTFStubC2Ei @ 105 NONAME - _ZN7CTFStubD0Ev @ 106 NONAME - _ZN7CTFStubD1Ev @ 107 NONAME - _ZN7CTFStubD2Ev @ 108 NONAME - _ZN8CTFATest11EnvironmentEv @ 109 NONAME - _ZN8CTFATest14SetEnvironmentER19CTFATestEnvironment @ 110 NONAME - _ZNK12CTFATestCase12RunOnStartupEv @ 111 NONAME - _ZNK12CTFATestCase2IdEv @ 112 NONAME - _ZNK12CTFATestCase4TypeEv @ 113 NONAME - _ZNK12CTFATestCase5FlagsEv @ 114 NONAME - _ZNK12CTFATestCase7TimeoutEv @ 115 NONAME - _ZNK13CTFATestSuite4TypeEv @ 116 NONAME - _ZNK13CTFATestSuite5CountEv @ 117 NONAME - _ZNK19CTFATestCaseAdapter4TypeEv @ 118 NONAME - _ZNK20CTFATestSuiteAdapter4TypeEv @ 119 NONAME - _ZNK8CTFATest4NameEv @ 120 NONAME - _ZTI10CTFFactory @ 121 NONAME ; ## - _ZTI11CTFATestLog @ 122 NONAME ; ## - _ZTI12CTFATestCase @ 123 NONAME ; ## - _ZTI13CTFATestSuite @ 124 NONAME ; ## - _ZTI13CTFATestTimer @ 125 NONAME ; ## - _ZTI13CTFRemoteStub @ 126 NONAME ; ## - _ZTI14CTFAActiveTest @ 127 NONAME ; ## - _ZTI14CTFAEntryPoint @ 128 NONAME ; ## - _ZTI14MTFAActiveTest @ 129 NONAME ; ## - _ZTI15CTFStubTestCase @ 130 NONAME ; ## - _ZTI15MTFATestAdapter @ 131 NONAME ; ## - _ZTI18CTFTestCaseWrapper @ 132 NONAME ; ## - _ZTI19CTFATestCaseAdapter @ 133 NONAME ; ## - _ZTI19CTFATestEnvironment @ 134 NONAME ; ## - _ZTI19CTFTestCaseRepeater @ 135 NONAME ; ## - _ZTI19MTFATestCaseAdapter @ 136 NONAME ; ## - _ZTI20CTFATestSuiteAdapter @ 137 NONAME ; ## - _ZTI20CTFStubTestCaseParam @ 138 NONAME ; ## - _ZTI20MTFATestSuiteAdapter @ 139 NONAME ; ## - _ZTI7CTFStub @ 140 NONAME ; ## - _ZTI8CTFATest @ 141 NONAME ; ## - _ZTV10CTFFactory @ 142 NONAME ; ## - _ZTV11CTFATestLog @ 143 NONAME ; ## - _ZTV12CTFATestCase @ 144 NONAME ; ## - _ZTV13CTFATestSuite @ 145 NONAME ; ## - _ZTV13CTFATestTimer @ 146 NONAME ; ## - _ZTV13CTFRemoteStub @ 147 NONAME ; ## - _ZTV14CTFAActiveTest @ 148 NONAME ; ## - _ZTV14CTFAEntryPoint @ 149 NONAME ; ## - _ZTV14MTFAActiveTest @ 150 NONAME ; ## - _ZTV15CTFStubTestCase @ 151 NONAME ; ## - _ZTV15MTFATestAdapter @ 152 NONAME ; ## - _ZTV18CTFTestCaseWrapper @ 153 NONAME ; ## - _ZTV19CTFATestCaseAdapter @ 154 NONAME ; ## - _ZTV19CTFATestEnvironment @ 155 NONAME ; ## - _ZTV19CTFTestCaseRepeater @ 156 NONAME ; ## - _ZTV19MTFATestCaseAdapter @ 157 NONAME ; ## - _ZTV20CTFATestSuiteAdapter @ 158 NONAME ; ## - _ZTV20CTFStubTestCaseParam @ 159 NONAME ; ## - _ZTV20MTFATestSuiteAdapter @ 160 NONAME ; ## - _ZTV7CTFStub @ 161 NONAME ; ## - _ZTV8CTFATest @ 162 NONAME ; ## - _ZThn4_N15CTFStubTestCase10IsCompleteEv @ 163 NONAME ; ## - _ZThn4_N15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 164 NONAME ; ## - _ZThn4_N15CTFStubTestCase4TypeEv @ 165 NONAME ; ## - _ZThn4_N15CTFStubTestCase6SetupLEv @ 166 NONAME ; ## - _ZThn4_N15CTFStubTestCase7SetStubER7CTFStub @ 167 NONAME ; ## - _ZThn4_N15CTFStubTestCaseD0Ev @ 168 NONAME ; ## - _ZThn4_N15CTFStubTestCaseD1Ev @ 169 NONAME ; ## - _ZThn4_N19CTFATestCaseAdapterD0Ev @ 170 NONAME ; ## - _ZThn4_N19CTFATestCaseAdapterD1Ev @ 171 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 172 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapterD0Ev @ 173 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapterD1Ev @ 174 NONAME ; ## - _ZThn4_NK19CTFATestCaseAdapter4TypeEv @ 175 NONAME ; ## - _ZThn4_NK20CTFATestSuiteAdapter4TypeEv @ 176 NONAME ; ## - +EXPORTS + _ZN10CTFFactory14CallLocalStubLEiPvS0_S0_S0_ @ 1 NONAME + _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_ @ 2 NONAME + _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_R14TRequestStatus @ 3 NONAME + _ZN10CTFFactory4StubEi @ 4 NONAME + _ZN11CTFATestLogC2Ev @ 5 NONAME + _ZN11CTFATestLogD0Ev @ 6 NONAME + _ZN11CTFATestLogD1Ev @ 7 NONAME + _ZN11CTFATestLogD2Ev @ 8 NONAME + _ZN12CTFATestCase10SetTimeoutEi @ 9 NONAME + _ZN12CTFATestCase14SetEnvironmentER19CTFATestEnvironment @ 10 NONAME + _ZN12CTFATestCase15SetRunOnStartupEi @ 11 NONAME + _ZN12CTFATestCase8SetFlagsEm @ 12 NONAME + _ZN12CTFATestCaseC2EiRK7TDesC16 @ 13 NONAME + _ZN12CTFATestCaseD0Ev @ 14 NONAME + _ZN12CTFATestCaseD1Ev @ 15 NONAME + _ZN12CTFATestCaseD2Ev @ 16 NONAME + _ZN13CTFATestSuite2AtEi @ 17 NONAME + _ZN13CTFATestSuite4AddLERK8CTFATest @ 18 NONAME + _ZN13CTFATestSuiteC1ERK7TDesC16 @ 19 NONAME + _ZN13CTFATestSuiteC2ERK7TDesC16 @ 20 NONAME + _ZN13CTFATestSuiteD0Ev @ 21 NONAME + _ZN13CTFATestSuiteD1Ev @ 22 NONAME + _ZN13CTFATestSuiteD2Ev @ 23 NONAME + _ZN13CTFATestTimer4NewLER14MTFAActiveTest @ 24 NONAME + _ZN13CTFATestTimerD0Ev @ 25 NONAME + _ZN13CTFATestTimerD1Ev @ 26 NONAME + _ZN13CTFATestTimerD2Ev @ 27 NONAME + _ZN13CTFRemoteStubC2Ei @ 28 NONAME + _ZN13CTFRemoteStubD0Ev @ 29 NONAME + _ZN13CTFRemoteStubD1Ev @ 30 NONAME + _ZN13CTFRemoteStubD2Ev @ 31 NONAME + _ZN14CTFAActiveTest11DoSetActiveEv @ 32 NONAME + _ZN14CTFAActiveTest6StatusEv @ 33 NONAME + _ZN14CTFAActiveTestC1ER14MTFAActiveTest @ 34 NONAME + _ZN14CTFAActiveTestC2ER14MTFAActiveTest @ 35 NONAME + _ZN14CTFAActiveTestD0Ev @ 36 NONAME + _ZN14CTFAActiveTestD1Ev @ 37 NONAME + _ZN14CTFAActiveTestD2Ev @ 38 NONAME + _ZN14CTFAEntryPoint10ConstructLEv @ 39 NONAME + _ZN14CTFAEntryPoint16RootSuiteAdapterEv @ 40 NONAME + _ZN14CTFAEntryPointC2Ev @ 41 NONAME + _ZN14CTFAEntryPointD0Ev @ 42 NONAME + _ZN14CTFAEntryPointD1Ev @ 43 NONAME + _ZN14CTFAEntryPointD2Ev @ 44 NONAME + _ZN14MTFAActiveTestC2Ev @ 45 NONAME + _ZN14MTFAActiveTestD0Ev @ 46 NONAME + _ZN14MTFAActiveTestD1Ev @ 47 NONAME + _ZN14MTFAActiveTestD2Ev @ 48 NONAME + _ZN15CTFStubTestCase10IsCompleteEv @ 49 NONAME + _ZN15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 50 NONAME + _ZN15CTFStubTestCase12CompleteTestEi @ 51 NONAME + _ZN15CTFStubTestCase4TypeEv @ 52 NONAME + _ZN15CTFStubTestCase6LoggerEv @ 53 NONAME + _ZN15CTFStubTestCase6SetupLEv @ 54 NONAME + _ZN15CTFStubTestCase7SetStubER7CTFStub @ 55 NONAME + _ZN15CTFStubTestCaseC2Ei @ 56 NONAME + _ZN15CTFStubTestCaseD0Ev @ 57 NONAME + _ZN15CTFStubTestCaseD1Ev @ 58 NONAME + _ZN15CTFStubTestCaseD2Ev @ 59 NONAME + _ZN15MTFATestAdapterC2Ev @ 60 NONAME + _ZN15MTFATestAdapterD0Ev @ 61 NONAME + _ZN15MTFATestAdapterD1Ev @ 62 NONAME + _ZN15MTFATestAdapterD2Ev @ 63 NONAME + _ZN18CTFTestCaseWrapper14SetEnvironmentER19CTFATestEnvironment @ 64 NONAME + _ZN18CTFTestCaseWrapper16AddStubTestCaseLER15MTFStubTestCase @ 65 NONAME + _ZN18CTFTestCaseWrapperC1EiRK7TDesC16 @ 66 NONAME + _ZN18CTFTestCaseWrapperC2EiRK7TDesC16 @ 67 NONAME + _ZN19CTFATestCaseAdapterC1ER12CTFATestCase @ 68 NONAME + _ZN19CTFATestCaseAdapterC2ER12CTFATestCase @ 69 NONAME + _ZN19CTFATestCaseAdapterD0Ev @ 70 NONAME + _ZN19CTFATestCaseAdapterD1Ev @ 71 NONAME + _ZN19CTFATestCaseAdapterD2Ev @ 72 NONAME + _ZN19CTFATestEnvironment16SetTestCaseFlagsEm @ 73 NONAME + _ZN19CTFATestEnvironment6LoggerEv @ 74 NONAME + _ZN19CTFATestEnvironment7FactoryEv @ 75 NONAME + _ZN19CTFATestEnvironmentC1ER11CTFATestLog @ 76 NONAME + _ZN19CTFATestEnvironmentC2ER11CTFATestLog @ 77 NONAME + _ZN19CTFATestEnvironmentD0Ev @ 78 NONAME + _ZN19CTFATestEnvironmentD1Ev @ 79 NONAME + _ZN19CTFATestEnvironmentD2Ev @ 80 NONAME + _ZN19CTFTestCaseRepeater14SetEnvironmentER19CTFATestEnvironment @ 81 NONAME + _ZN19CTFTestCaseRepeaterC1EiRK7TDesC16P13CTFATestSuiteii @ 82 NONAME + _ZN19CTFTestCaseRepeaterC2EiRK7TDesC16P13CTFATestSuiteii @ 83 NONAME + _ZN19MTFATestCaseAdapterC2Ev @ 84 NONAME + _ZN19MTFATestCaseAdapterD0Ev @ 85 NONAME + _ZN19MTFATestCaseAdapterD1Ev @ 86 NONAME + _ZN19MTFATestCaseAdapterD2Ev @ 87 NONAME + _ZN20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 88 NONAME + _ZN20CTFATestSuiteAdapterC1ER13CTFATestSuiteP14CTFAEntryPoint @ 89 NONAME + _ZN20CTFATestSuiteAdapterC2ER13CTFATestSuiteP14CTFAEntryPoint @ 90 NONAME + _ZN20CTFATestSuiteAdapterD0Ev @ 91 NONAME + _ZN20CTFATestSuiteAdapterD1Ev @ 92 NONAME + _ZN20CTFATestSuiteAdapterD2Ev @ 93 NONAME + _ZN20CTFStubTestCaseParamC1Ev @ 94 NONAME + _ZN20CTFStubTestCaseParamC2Ev @ 95 NONAME + _ZN20CTFStubTestCaseParamD0Ev @ 96 NONAME + _ZN20CTFStubTestCaseParamD1Ev @ 97 NONAME + _ZN20CTFStubTestCaseParamD2Ev @ 98 NONAME + _ZN20MTFATestSuiteAdapterC2Ev @ 99 NONAME + _ZN20MTFATestSuiteAdapterD0Ev @ 100 NONAME + _ZN20MTFATestSuiteAdapterD1Ev @ 101 NONAME + _ZN20MTFATestSuiteAdapterD2Ev @ 102 NONAME + _ZN7CTFStub15CurrentTestCaseEv @ 103 NONAME + _ZN7CTFStub17CurrentTestCaseIDEv @ 104 NONAME + _ZN7CTFStubC2Ei @ 105 NONAME + _ZN7CTFStubD0Ev @ 106 NONAME + _ZN7CTFStubD1Ev @ 107 NONAME + _ZN7CTFStubD2Ev @ 108 NONAME + _ZN8CTFATest11EnvironmentEv @ 109 NONAME + _ZN8CTFATest14SetEnvironmentER19CTFATestEnvironment @ 110 NONAME + _ZNK12CTFATestCase12RunOnStartupEv @ 111 NONAME + _ZNK12CTFATestCase2IdEv @ 112 NONAME + _ZNK12CTFATestCase4TypeEv @ 113 NONAME + _ZNK12CTFATestCase5FlagsEv @ 114 NONAME + _ZNK12CTFATestCase7TimeoutEv @ 115 NONAME + _ZNK13CTFATestSuite4TypeEv @ 116 NONAME + _ZNK13CTFATestSuite5CountEv @ 117 NONAME + _ZNK19CTFATestCaseAdapter4TypeEv @ 118 NONAME + _ZNK20CTFATestSuiteAdapter4TypeEv @ 119 NONAME + _ZNK8CTFATest4NameEv @ 120 NONAME + _ZTI10CTFFactory @ 121 NONAME ; ## + _ZTI11CTFATestLog @ 122 NONAME ; ## + _ZTI12CTFATestCase @ 123 NONAME ; ## + _ZTI13CTFATestSuite @ 124 NONAME ; ## + _ZTI13CTFATestTimer @ 125 NONAME ; ## + _ZTI13CTFRemoteStub @ 126 NONAME ; ## + _ZTI14CTFAActiveTest @ 127 NONAME ; ## + _ZTI14CTFAEntryPoint @ 128 NONAME ; ## + _ZTI14MTFAActiveTest @ 129 NONAME ; ## + _ZTI15CTFStubTestCase @ 130 NONAME ; ## + _ZTI15MTFATestAdapter @ 131 NONAME ; ## + _ZTI18CTFTestCaseWrapper @ 132 NONAME ; ## + _ZTI19CTFATestCaseAdapter @ 133 NONAME ; ## + _ZTI19CTFATestEnvironment @ 134 NONAME ; ## + _ZTI19CTFTestCaseRepeater @ 135 NONAME ; ## + _ZTI19MTFATestCaseAdapter @ 136 NONAME ; ## + _ZTI20CTFATestSuiteAdapter @ 137 NONAME ; ## + _ZTI20CTFStubTestCaseParam @ 138 NONAME ; ## + _ZTI20MTFATestSuiteAdapter @ 139 NONAME ; ## + _ZTI7CTFStub @ 140 NONAME ; ## + _ZTI8CTFATest @ 141 NONAME ; ## + _ZTV10CTFFactory @ 142 NONAME ; ## + _ZTV11CTFATestLog @ 143 NONAME ; ## + _ZTV12CTFATestCase @ 144 NONAME ; ## + _ZTV13CTFATestSuite @ 145 NONAME ; ## + _ZTV13CTFATestTimer @ 146 NONAME ; ## + _ZTV13CTFRemoteStub @ 147 NONAME ; ## + _ZTV14CTFAActiveTest @ 148 NONAME ; ## + _ZTV14CTFAEntryPoint @ 149 NONAME ; ## + _ZTV14MTFAActiveTest @ 150 NONAME ; ## + _ZTV15CTFStubTestCase @ 151 NONAME ; ## + _ZTV15MTFATestAdapter @ 152 NONAME ; ## + _ZTV18CTFTestCaseWrapper @ 153 NONAME ; ## + _ZTV19CTFATestCaseAdapter @ 154 NONAME ; ## + _ZTV19CTFATestEnvironment @ 155 NONAME ; ## + _ZTV19CTFTestCaseRepeater @ 156 NONAME ; ## + _ZTV19MTFATestCaseAdapter @ 157 NONAME ; ## + _ZTV20CTFATestSuiteAdapter @ 158 NONAME ; ## + _ZTV20CTFStubTestCaseParam @ 159 NONAME ; ## + _ZTV20MTFATestSuiteAdapter @ 160 NONAME ; ## + _ZTV7CTFStub @ 161 NONAME ; ## + _ZTV8CTFATest @ 162 NONAME ; ## + _ZThn4_N15CTFStubTestCase10IsCompleteEv @ 163 NONAME ; ## + _ZThn4_N15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 164 NONAME ; ## + _ZThn4_N15CTFStubTestCase4TypeEv @ 165 NONAME ; ## + _ZThn4_N15CTFStubTestCase6SetupLEv @ 166 NONAME ; ## + _ZThn4_N15CTFStubTestCase7SetStubER7CTFStub @ 167 NONAME ; ## + _ZThn4_N15CTFStubTestCaseD0Ev @ 168 NONAME ; ## + _ZThn4_N15CTFStubTestCaseD1Ev @ 169 NONAME ; ## + _ZThn4_N19CTFATestCaseAdapterD0Ev @ 170 NONAME ; ## + _ZThn4_N19CTFATestCaseAdapterD1Ev @ 171 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 172 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapterD0Ev @ 173 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapterD1Ev @ 174 NONAME ; ## + _ZThn4_NK19CTFATestCaseAdapter4TypeEv @ 175 NONAME ; ## + _ZThn4_NK20CTFATestSuiteAdapter4TypeEv @ 176 NONAME ; ## + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/bld.inf --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,21 +1,21 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dsytfcore -* -*/ - - -PRJ_MMPFILES -dsytfcore.mmp - +/* +* Copyright (c) 2002-2006 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: Build information file for project dsytfcore +* +*/ + + +PRJ_MMPFILES +dsytfcore.mmp + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/dsytfcore.mmp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/dsytfcore.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/group/dsytfcore.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,62 +1,62 @@ -/* -* Copyright (c) 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: Declaration of dsytfcore module -* -*/ - - -#include - -// INCLUDE FILES -// Build target -TARGET dsytfcore.dll -TARGETTYPE dll -UID 0x1000008D 0x101FB44A - -CAPABILITY CAP_GENERAL_DLL - -// Include paths -USERINCLUDE ../inc - -SOURCEPATH ../src -SOURCE tfaentrypoint.cpp -SOURCE tfatest.cpp -SOURCE tfatestcase.cpp -SOURCE tfatestenvironment.cpp -SOURCE tfatestsuite.cpp -SOURCE tfatesttimer.cpp -SOURCE tfaactivetest.cpp -SOURCE tfactivescheduler.cpp -SOURCE tfatestsuiteadapter.cpp -SOURCE tfatestcaseadapter.cpp -SOURCE tffactory.cpp -SOURCE tfstub.cpp -SOURCE tfremotestub.cpp -SOURCE tfstubcontrol.cpp -SOURCE tftestcasewrapper.cpp -SOURCE tfstubtestcase.cpp -SOURCE tftestcaserepeater.cpp -SOURCE tftestserver.cpp - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -// Dependencies to system components -LIBRARY euser.lib -LIBRARY ecom.lib - -//MACRO COMPONENT_TRACE_FLAG -MACRO TEST_NAME_TRACE_FLAG - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dsytfcore module +* +*/ + + +#include + +// INCLUDE FILES +// Build target +TARGET dsytfcore.dll +TARGETTYPE dll +UID 0x1000008D 0x101FB44A + +CAPABILITY CAP_GENERAL_DLL + +// Include paths +USERINCLUDE ../inc + +SOURCEPATH ../src +SOURCE tfaentrypoint.cpp +SOURCE tfatest.cpp +SOURCE tfatestcase.cpp +SOURCE tfatestenvironment.cpp +SOURCE tfatestsuite.cpp +SOURCE tfatesttimer.cpp +SOURCE tfaactivetest.cpp +SOURCE tfactivescheduler.cpp +SOURCE tfatestsuiteadapter.cpp +SOURCE tfatestcaseadapter.cpp +SOURCE tffactory.cpp +SOURCE tfstub.cpp +SOURCE tfremotestub.cpp +SOURCE tfstubcontrol.cpp +SOURCE tftestcasewrapper.cpp +SOURCE tfstubtestcase.cpp +SOURCE tftestcaserepeater.cpp +SOURCE tftestserver.cpp + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +// Dependencies to system components +LIBRARY euser.lib +LIBRARY ecom.lib + +//MACRO COMPONENT_TRACE_FLAG +MACRO TEST_NAME_TRACE_FLAG + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaactivetest.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaactivetest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaactivetest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,81 +1,81 @@ -/* -* 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: Declaration of CTFAActiveTest class -* -*/ - - -#ifndef __CTFAACTIVETEST_H__ -#define __CTFAACTIVETEST_H__ - -#include - -class MTFAActiveTest; - -/** -* Provides the Symbian active object functionality to classes -* that cannot inherit from CActive. -*/ -class CTFAActiveTest : public CActive - { - public: - /** - * Constructor - * @param aCallback ActiveTestRunL of the callback is called from RunL of this object - */ - IMPORT_C CTFAActiveTest( MTFAActiveTest& aCallback ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFAActiveTest( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAActiveTest( const CTFAActiveTest& aTimer ); - - /** - * Assignment operator is hidden - */ - CTFAActiveTest& operator=( const CTFAActiveTest& aTimer ); - - protected: - /** - * Calls ActiveTestRunL of callback interface - */ - void RunL( void ); - - /** - * Calls ActiveTestCancel of callback interface - */ - virtual void DoCancel( void ); - - public: - /** - * Returns the status of this object - */ - IMPORT_C TRequestStatus& Status( void ); - - /** - * Calls SetActive of this object - */ - IMPORT_C void DoSetActive( void ); - - private: - MTFAActiveTest& iCallback; - }; - -#endif +/* +* 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: Declaration of CTFAActiveTest class +* +*/ + + +#ifndef __CTFAACTIVETEST_H__ +#define __CTFAACTIVETEST_H__ + +#include + +class MTFAActiveTest; + +/** +* Provides the Symbian active object functionality to classes +* that cannot inherit from CActive. +*/ +class CTFAActiveTest : public CActive + { + public: + /** + * Constructor + * @param aCallback ActiveTestRunL of the callback is called from RunL of this object + */ + IMPORT_C CTFAActiveTest( MTFAActiveTest& aCallback ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFAActiveTest( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAActiveTest( const CTFAActiveTest& aTimer ); + + /** + * Assignment operator is hidden + */ + CTFAActiveTest& operator=( const CTFAActiveTest& aTimer ); + + protected: + /** + * Calls ActiveTestRunL of callback interface + */ + void RunL( void ); + + /** + * Calls ActiveTestCancel of callback interface + */ + virtual void DoCancel( void ); + + public: + /** + * Returns the status of this object + */ + IMPORT_C TRequestStatus& Status( void ); + + /** + * Calls SetActive of this object + */ + IMPORT_C void DoSetActive( void ); + + private: + MTFAActiveTest& iCallback; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfactivescheduler.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfactivescheduler.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfactivescheduler.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,58 +1,58 @@ -/* -* 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: Declaration of CTFActiveScheduler class -* -*/ - - -#ifndef __CTFACTIVESCHEDULER_H__ -#define __CTFACTIVESCHEDULER_H__ - -#include - -/** -* Active scheduler that does not panic when error occurs in RunL -*/ -NONSHARABLE_CLASS( CTFActiveScheduler ): public CActiveScheduler - { - public: - /** - * Constructor - */ - CTFActiveScheduler( void ); - - /** - * Destructor - */ - ~CTFActiveScheduler( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFActiveScheduler( const CTFActiveScheduler& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFActiveScheduler& operator=( const CTFActiveScheduler& aAdapter ); - - protected: - /** - * Called if RunL leaves - */ - void Error( TInt aError ) const; - }; - -#endif +/* +* 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: Declaration of CTFActiveScheduler class +* +*/ + + +#ifndef __CTFACTIVESCHEDULER_H__ +#define __CTFACTIVESCHEDULER_H__ + +#include + +/** +* Active scheduler that does not panic when error occurs in RunL +*/ +NONSHARABLE_CLASS( CTFActiveScheduler ): public CActiveScheduler + { + public: + /** + * Constructor + */ + CTFActiveScheduler( void ); + + /** + * Destructor + */ + ~CTFActiveScheduler( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFActiveScheduler( const CTFActiveScheduler& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFActiveScheduler& operator=( const CTFActiveScheduler& aAdapter ); + + protected: + /** + * Called if RunL leaves + */ + void Error( TInt aError ) const; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaentrypoint.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaentrypoint.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfaentrypoint.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,120 +1,120 @@ -/* -* 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: Declaration of CTFAEntryPoint class -* -*/ - - -#ifndef __CTFAENTRYPOINT_H__ -#define __CTFAENTRYPOINT_H__ - -#include - -class CTFATestSuite; -class CTFATestCase; -class CTFATestEnvironment; -class MTFATestSuiteAdapter; -class MTFATestCaseAdapter; -class MTFATestCaseInterface; - -/** -* Entry point is inherited in the adapter DLL. ConstructL builds the test suite -* and adapter suite. -*/ -//NONSHARABLE_CLASS( CTFAEntryPoint ): public CBase -class CTFAEntryPoint : public CBase - { - protected: - /** - * Default constructor - */ - IMPORT_C CTFAEntryPoint( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~CTFAEntryPoint( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAEntryPoint( const CTFAEntryPoint& aEntryPoint ); - - /** - * Assignment operator is hidden - */ - CTFAEntryPoint& operator=( const CTFAEntryPoint& aEntryPoint ); - - public: - /** - * Returns the root test suite adapter - */ - IMPORT_C MTFATestSuiteAdapter* RootSuiteAdapter( void ); - - protected: - /** - * Symbian constructor - */ - IMPORT_C virtual void ConstructL( void ); - - protected: - /** - * Creates a test suite adapter for the given test suite. - * The returned object is freed by the test framework - * @param CTFATestSuite& aSuite The test suite - * @param TBool aRoot A flag that determines if the test suite is the root suite - * @return The adapter object - */ - virtual MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) = 0; - - /** - * Creates a test case adapter for given test case. - * The returned object is freed by the test framework - * @param CTFATestCase& aCase The test case - * @return The adapter object - */ - virtual MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ) = 0; - - /** - * Creates the test environment object. - * The returned object is freed by the test framework - */ - virtual CTFATestEnvironment* CreateEnvironmentL( void ) = 0; - - private: - /** - * Creates adapter objects for the given test suite. This is called recursively for - * each test suite within the given test suite. - * @param CTFATestSuite& aSuite The test suite - * @param MTFATestSuiteAdapter& aAdapter The adapter suite - */ - void BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ); - - /** - * Called when the startup timer set in ConstructL fires - * @param aParameter Not used - * @return EFalse so that timer does not continue - */ - static TInt TimerCallback( TAny* aParameter ); - - private: - CTFATestSuite* iRootSuite; - MTFATestSuiteAdapter* iRootSuiteAdapter; - CTFATestEnvironment* iEnvironment; - TInt iDepth; - }; - -#endif +/* +* 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: Declaration of CTFAEntryPoint class +* +*/ + + +#ifndef __CTFAENTRYPOINT_H__ +#define __CTFAENTRYPOINT_H__ + +#include + +class CTFATestSuite; +class CTFATestCase; +class CTFATestEnvironment; +class MTFATestSuiteAdapter; +class MTFATestCaseAdapter; +class MTFATestCaseInterface; + +/** +* Entry point is inherited in the adapter DLL. ConstructL builds the test suite +* and adapter suite. +*/ +//NONSHARABLE_CLASS( CTFAEntryPoint ): public CBase +class CTFAEntryPoint : public CBase + { + protected: + /** + * Default constructor + */ + IMPORT_C CTFAEntryPoint( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~CTFAEntryPoint( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAEntryPoint( const CTFAEntryPoint& aEntryPoint ); + + /** + * Assignment operator is hidden + */ + CTFAEntryPoint& operator=( const CTFAEntryPoint& aEntryPoint ); + + public: + /** + * Returns the root test suite adapter + */ + IMPORT_C MTFATestSuiteAdapter* RootSuiteAdapter( void ); + + protected: + /** + * Symbian constructor + */ + IMPORT_C virtual void ConstructL( void ); + + protected: + /** + * Creates a test suite adapter for the given test suite. + * The returned object is freed by the test framework + * @param CTFATestSuite& aSuite The test suite + * @param TBool aRoot A flag that determines if the test suite is the root suite + * @return The adapter object + */ + virtual MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) = 0; + + /** + * Creates a test case adapter for given test case. + * The returned object is freed by the test framework + * @param CTFATestCase& aCase The test case + * @return The adapter object + */ + virtual MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ) = 0; + + /** + * Creates the test environment object. + * The returned object is freed by the test framework + */ + virtual CTFATestEnvironment* CreateEnvironmentL( void ) = 0; + + private: + /** + * Creates adapter objects for the given test suite. This is called recursively for + * each test suite within the given test suite. + * @param CTFATestSuite& aSuite The test suite + * @param MTFATestSuiteAdapter& aAdapter The adapter suite + */ + void BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ); + + /** + * Called when the startup timer set in ConstructL fires + * @param aParameter Not used + * @return EFalse so that timer does not continue + */ + static TInt TimerCallback( TAny* aParameter ); + + private: + CTFATestSuite* iRootSuite; + MTFATestSuiteAdapter* iRootSuiteAdapter; + CTFATestEnvironment* iEnvironment; + TInt iDepth; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatest.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,83 +1,83 @@ -/* -* 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: Declaration of CTFATest class -* -*/ - - -#ifndef __CTFATEST_H__ -#define __CTFATEST_H__ - -#include -#include "tftypes.h" - -class CTFATestEnvironment; - -/** -* Abstract base class for test cases and test suites -*/ -class CTFATest : public CBase - { - protected: - /** - * Constructor - * @param aName The name of the test object - */ - CTFATest( const TDesC& aName ); - - public: - /** - * Destructor - */ - virtual ~CTFATest( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATest( const CTFATest& aTest ); - - /** - * Assignment operator is hidden - */ - CTFATest& operator=( const CTFATest& aTest ); - - public: - /** - * Returns the name - */ - IMPORT_C const TDesC& Name( void ) const; - - /** - * Sets the test environment - */ - IMPORT_C virtual void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - /** - * Gets the test environment - */ - IMPORT_C CTFATestEnvironment &Environment( void ); - - public: - /** - * Returns the type of this test object - */ - virtual TTFATestType Type( void ) const = 0; - - private: - CTFATestEnvironment *iEnvironment ; - TBuf iName; - }; - -#endif +/* +* 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: Declaration of CTFATest class +* +*/ + + +#ifndef __CTFATEST_H__ +#define __CTFATEST_H__ + +#include +#include "tftypes.h" + +class CTFATestEnvironment; + +/** +* Abstract base class for test cases and test suites +*/ +class CTFATest : public CBase + { + protected: + /** + * Constructor + * @param aName The name of the test object + */ + CTFATest( const TDesC& aName ); + + public: + /** + * Destructor + */ + virtual ~CTFATest( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATest( const CTFATest& aTest ); + + /** + * Assignment operator is hidden + */ + CTFATest& operator=( const CTFATest& aTest ); + + public: + /** + * Returns the name + */ + IMPORT_C const TDesC& Name( void ) const; + + /** + * Sets the test environment + */ + IMPORT_C virtual void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + /** + * Gets the test environment + */ + IMPORT_C CTFATestEnvironment &Environment( void ); + + public: + /** + * Returns the type of this test object + */ + virtual TTFATestType Type( void ) const = 0; + + private: + CTFATestEnvironment *iEnvironment ; + TBuf iName; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcase.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,128 +1,128 @@ -/* -* 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: Declaration of CTFATestCase class -* -*/ - - -#ifndef __CTFATESTCASE_H__ -#define __CTFATESTCASE_H__ - -#include "ctfatest.h" - -/** -* Abstract base class for test cases -*/ -class CTFATestCase : public CTFATest - { - protected: - /** - * Constructor - * @param aCaseId The test case ID - * @param aName The name of the test case - */ - IMPORT_C CTFATestCase( TInt aCaseId, const TDesC& aName ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFATestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestCase( const CTFATestCase& aCase ); - - /** - * Assignment operator is hidden - */ - CTFATestCase& operator=( const CTFATestCase& aCase ); - - public: - /** - * Returns the test case ID - */ - IMPORT_C TInt Id( void ) const; - - /** - * Returns ETFATestTypeCase. Subclasses override this if needed. - */ - IMPORT_C TTFATestType Type( void ) const; - - /** - * Sets a new test timeout. Default timeout is 30 seconds. - */ - IMPORT_C void SetTimeout( TInt aTimeout ); - - /** - * Sets a autorun on startup flag. This adapter library runs - * the test case automatically on startup if this flag is set. - */ - IMPORT_C void SetRunOnStartup( TBool aFlag ); - - /** - * Returns the test timeout - */ - IMPORT_C TInt Timeout( void ) const; - - /** - * Returns the autorun flag - */ - IMPORT_C TBool RunOnStartup( void ) const; - - /** - * Sets the test case flags - */ - IMPORT_C void SetFlags( TUint32 aFlags ); - - /** - * Returns the test case flags - */ - IMPORT_C TUint32 Flags( void ) const; - - /** - * Sets the test environment - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Logs this test case - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Initializes this test case - */ - virtual void SetupL( void ) = 0; - - /** - * Runs this test case - */ - virtual void RunTestL( void ) = 0; - - /** - * Closes this test case - */ - virtual void Teardown( void ) = 0; - - private: - TInt iCaseId; - TInt iTimeout; - TBool iRunOnStartup; - TUint32 iFlags; - }; - -#endif +/* +* 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: Declaration of CTFATestCase class +* +*/ + + +#ifndef __CTFATESTCASE_H__ +#define __CTFATESTCASE_H__ + +#include "ctfatest.h" + +/** +* Abstract base class for test cases +*/ +class CTFATestCase : public CTFATest + { + protected: + /** + * Constructor + * @param aCaseId The test case ID + * @param aName The name of the test case + */ + IMPORT_C CTFATestCase( TInt aCaseId, const TDesC& aName ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFATestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestCase( const CTFATestCase& aCase ); + + /** + * Assignment operator is hidden + */ + CTFATestCase& operator=( const CTFATestCase& aCase ); + + public: + /** + * Returns the test case ID + */ + IMPORT_C TInt Id( void ) const; + + /** + * Returns ETFATestTypeCase. Subclasses override this if needed. + */ + IMPORT_C TTFATestType Type( void ) const; + + /** + * Sets a new test timeout. Default timeout is 30 seconds. + */ + IMPORT_C void SetTimeout( TInt aTimeout ); + + /** + * Sets a autorun on startup flag. This adapter library runs + * the test case automatically on startup if this flag is set. + */ + IMPORT_C void SetRunOnStartup( TBool aFlag ); + + /** + * Returns the test timeout + */ + IMPORT_C TInt Timeout( void ) const; + + /** + * Returns the autorun flag + */ + IMPORT_C TBool RunOnStartup( void ) const; + + /** + * Sets the test case flags + */ + IMPORT_C void SetFlags( TUint32 aFlags ); + + /** + * Returns the test case flags + */ + IMPORT_C TUint32 Flags( void ) const; + + /** + * Sets the test environment + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Logs this test case + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Initializes this test case + */ + virtual void SetupL( void ) = 0; + + /** + * Runs this test case + */ + virtual void RunTestL( void ) = 0; + + /** + * Closes this test case + */ + virtual void Teardown( void ) = 0; + + private: + TInt iCaseId; + TInt iTimeout; + TBool iRunOnStartup; + TUint32 iFlags; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcaseadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of CTFATestCaseAdapter class -* -*/ - - -#ifndef __CTFATESTCASEADAPTER_H__ -#define __CTFATESTCASEADAPTER_H__ - -#include -#include "mtfatestcaseadapter.h" - -class CTFATestCase; - -/** -* Base class for test case adapters. This is implemented in the adapter DLL. -*/ -//NONSHARABLE_CLASS( CTFATestCaseAdapter ): public CBase, public MTFATestCaseAdapter -class CTFATestCaseAdapter : public CBase, public MTFATestCaseAdapter - { - protected: - /** - * Constructor - * @param aTestCase The test case wrapped into this adapter - */ - IMPORT_C CTFATestCaseAdapter( CTFATestCase& aTestCase ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestCaseAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestCaseAdapter( const CTFATestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFATestCaseAdapter& operator=( const CTFATestCaseAdapter& aAdapter ); - - public: - /** - * Returns the type of test case wrapped into this adapter - */ - IMPORT_C TTFATestType Type( void ) const; - - protected: - /** - * The wrapped test case is available to subclasses - */ - CTFATestCase& iTestCase; - }; - -#endif +/* +* 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: Declaration of CTFATestCaseAdapter class +* +*/ + + +#ifndef __CTFATESTCASEADAPTER_H__ +#define __CTFATESTCASEADAPTER_H__ + +#include +#include "mtfatestcaseadapter.h" + +class CTFATestCase; + +/** +* Base class for test case adapters. This is implemented in the adapter DLL. +*/ +//NONSHARABLE_CLASS( CTFATestCaseAdapter ): public CBase, public MTFATestCaseAdapter +class CTFATestCaseAdapter : public CBase, public MTFATestCaseAdapter + { + protected: + /** + * Constructor + * @param aTestCase The test case wrapped into this adapter + */ + IMPORT_C CTFATestCaseAdapter( CTFATestCase& aTestCase ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestCaseAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestCaseAdapter( const CTFATestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFATestCaseAdapter& operator=( const CTFATestCaseAdapter& aAdapter ); + + public: + /** + * Returns the type of test case wrapped into this adapter + */ + IMPORT_C TTFATestType Type( void ) const; + + protected: + /** + * The wrapped test case is available to subclasses + */ + CTFATestCase& iTestCase; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestenvironment.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestenvironment.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestenvironment.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Declaration of CTFATestEnvironment class -* -*/ - - -#ifndef __CTFATESTENVIRONMENT_H__ -#define __CTFATESTENVIRONMENT_H__ - -#include - -class CTFATestLog; -class CTFFactory; -class CTFActiveScheduler; - -/** -* Test environment contains common data available to all test cases. This -* is an abstract base class and needs to be implemeted in the adapter DLL. -*/ -//NONSHARABLE_CLASS( CTFATestEnvironment ): public CBase -class CTFATestEnvironment : public CBase - { - public: - /** - * Constructor - * @param aLogger The test logger - */ - IMPORT_C CTFATestEnvironment( CTFATestLog& aLogger ); - - /** - * Destructor - */ - IMPORT_C ~CTFATestEnvironment( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestEnvironment( const CTFATestEnvironment& aCase ); - - /** - * Assignment operator is hidden - */ - CTFATestEnvironment& operator=( const CTFATestEnvironment& aCase ); - - public: - /** - * Returns the test logger - */ - IMPORT_C CTFATestLog& Logger( void ); - - /** - * Gets the factory object - */ - IMPORT_C CTFFactory* Factory( void ); - - /** - * Sets global test case flags. - * These can be overridden by test-specific flags. - */ - IMPORT_C void SetTestCaseFlags( TUint32 aTestCaseFlags ); - - public: - /** - * Sets the factory object - */ - void SetFactory( CTFFactory* aFactory ); - - /** - * Stores the active scheduler of the test framework. - */ - void SetScheduler( CTFActiveScheduler* aScheduler ); - - /** - * Gets the test case flags - */ - TUint32 TestCaseFlags( void ) const; - - private: - CTFFactory* iFactory; - CTFActiveScheduler* iScheduler; - CTFATestLog* iLogger; - TUint32 iTestCaseFlags; - }; - -#endif +/* +* 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: Declaration of CTFATestEnvironment class +* +*/ + + +#ifndef __CTFATESTENVIRONMENT_H__ +#define __CTFATESTENVIRONMENT_H__ + +#include + +class CTFATestLog; +class CTFFactory; +class CTFActiveScheduler; + +/** +* Test environment contains common data available to all test cases. This +* is an abstract base class and needs to be implemeted in the adapter DLL. +*/ +//NONSHARABLE_CLASS( CTFATestEnvironment ): public CBase +class CTFATestEnvironment : public CBase + { + public: + /** + * Constructor + * @param aLogger The test logger + */ + IMPORT_C CTFATestEnvironment( CTFATestLog& aLogger ); + + /** + * Destructor + */ + IMPORT_C ~CTFATestEnvironment( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestEnvironment( const CTFATestEnvironment& aCase ); + + /** + * Assignment operator is hidden + */ + CTFATestEnvironment& operator=( const CTFATestEnvironment& aCase ); + + public: + /** + * Returns the test logger + */ + IMPORT_C CTFATestLog& Logger( void ); + + /** + * Gets the factory object + */ + IMPORT_C CTFFactory* Factory( void ); + + /** + * Sets global test case flags. + * These can be overridden by test-specific flags. + */ + IMPORT_C void SetTestCaseFlags( TUint32 aTestCaseFlags ); + + public: + /** + * Sets the factory object + */ + void SetFactory( CTFFactory* aFactory ); + + /** + * Stores the active scheduler of the test framework. + */ + void SetScheduler( CTFActiveScheduler* aScheduler ); + + /** + * Gets the test case flags + */ + TUint32 TestCaseFlags( void ) const; + + private: + CTFFactory* iFactory; + CTFActiveScheduler* iScheduler; + CTFATestLog* iLogger; + TUint32 iTestCaseFlags; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestlog.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestlog.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestlog.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,136 +1,136 @@ -/* -* 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: Declaration of CTFATestLog class -* -*/ - - -#ifndef __CTFATESTLOG_H__ -#define __CTFATESTLOG_H__ - -#include - -/** -* Logger styles -*/ -enum TTFLogStyle - { - ETFLogStyleNormal = 0, - ETFLogStyleBold = 1, - ETFLogStyleItalic = 2 - }; - -/** -* Abstraction for test logger. The implementation is in the adapter DLL -*/ -class CTFATestLog : public CBase - { - protected: - /** - * Constructor - */ - IMPORT_C CTFATestLog( void ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestLog( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestLog( const CTFATestLog& aLog ); - - /** - * Assignment operator is hidden - */ - CTFATestLog& operator=( const CTFATestLog& aLog ); - - public: - /** - * Writes data to log - */ - virtual void Write( const TDesC& aDes ) = 0; - - /** - * Writes data to log - */ - virtual void Write( const TDesC8& aDes ) = 0; - - /** - * Writes formatted data to log - */ - virtual void Write( TRefByValue aDes, ... ) = 0; - - /** - * Writes formatted data to log - */ - virtual void Write( TRefByValue aDes, ... ) = 0; - - /** - * Writes a block of data to log. If HTML logging is used, this - * wraps the data into
- */ - virtual void WriteBlock( const TDesC& aDes ) = 0; - - /** - * Writes a block of data to log. If HTML logging is used, this - * wraps the data into
- */ - virtual void WriteBlock( const TDesC8& aDes ) = 0; - - /** - * Writes an end-of-line character into log. - */ - virtual void EndLine( void ) = 0; - - /** - * Starts a new chapter - */ - virtual void StartChapter( void ) = 0; - - /** - * Starts a list - */ - virtual void StartList( void ) = 0; - - /** - * Writes formatted data into a list at given depth - */ - virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; - - /** - * Writes formatted data into a list at given depth - */ - virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; - - /** - * Ends a list - */ - virtual void EndList( void ) = 0; - - /** - * Sets current logging style - */ - virtual void SetStyle( TTFLogStyle aStyle ) = 0; - - /** - * Sets current logging color - */ - virtual void SetColor( TUint32 aColor ) = 0; - }; - -#endif +/* +* 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: Declaration of CTFATestLog class +* +*/ + + +#ifndef __CTFATESTLOG_H__ +#define __CTFATESTLOG_H__ + +#include + +/** +* Logger styles +*/ +enum TTFLogStyle + { + ETFLogStyleNormal = 0, + ETFLogStyleBold = 1, + ETFLogStyleItalic = 2 + }; + +/** +* Abstraction for test logger. The implementation is in the adapter DLL +*/ +class CTFATestLog : public CBase + { + protected: + /** + * Constructor + */ + IMPORT_C CTFATestLog( void ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestLog( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestLog( const CTFATestLog& aLog ); + + /** + * Assignment operator is hidden + */ + CTFATestLog& operator=( const CTFATestLog& aLog ); + + public: + /** + * Writes data to log + */ + virtual void Write( const TDesC& aDes ) = 0; + + /** + * Writes data to log + */ + virtual void Write( const TDesC8& aDes ) = 0; + + /** + * Writes formatted data to log + */ + virtual void Write( TRefByValue aDes, ... ) = 0; + + /** + * Writes formatted data to log + */ + virtual void Write( TRefByValue aDes, ... ) = 0; + + /** + * Writes a block of data to log. If HTML logging is used, this + * wraps the data into
+ */ + virtual void WriteBlock( const TDesC& aDes ) = 0; + + /** + * Writes a block of data to log. If HTML logging is used, this + * wraps the data into
+ */ + virtual void WriteBlock( const TDesC8& aDes ) = 0; + + /** + * Writes an end-of-line character into log. + */ + virtual void EndLine( void ) = 0; + + /** + * Starts a new chapter + */ + virtual void StartChapter( void ) = 0; + + /** + * Starts a list + */ + virtual void StartList( void ) = 0; + + /** + * Writes formatted data into a list at given depth + */ + virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; + + /** + * Writes formatted data into a list at given depth + */ + virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; + + /** + * Ends a list + */ + virtual void EndList( void ) = 0; + + /** + * Sets current logging style + */ + virtual void SetStyle( TTFLogStyle aStyle ) = 0; + + /** + * Sets current logging color + */ + virtual void SetColor( TUint32 aColor ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuite.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuite.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuite.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,78 +1,78 @@ -/* -* 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: Declaration of CTFATestSuite class -* -*/ - - -#ifndef __CTFATESTSUITE_H__ -#define __CTFATESTSUITE_H__ - -#include "ctfatest.h" - -/** -* Test suite implementation. A test suite may contain other test suites -* and test cases. -*/ -class CTFATestSuite : public CTFATest - { - public: - /** - * Constructor - * @param aName The test suite name - */ - IMPORT_C CTFATestSuite( const TDesC& aName ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFATestSuite( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestSuite( const CTFATestSuite& aSuite ); - - /** - * Assignment operator is hidden - */ - CTFATestSuite& operator=( const CTFATestSuite& aSuite ); - - public: - /** - * Adds a test or sub-suite to this suite - */ - IMPORT_C void AddL( const CTFATest& aTest ); - - /** - * Returns ETFATestTypeSuite - */ - IMPORT_C TTFATestType Type( void ) const; - - /** - * Returns the number of test cases and sub-suites within this suite - */ - IMPORT_C TInt Count( void ) const; - - /** - * Returns the test case or sub-suite at given index - */ - IMPORT_C CTFATest& At( TInt aIndex ); - - private: - RPointerArray iTests; - }; - -#endif +/* +* 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: Declaration of CTFATestSuite class +* +*/ + + +#ifndef __CTFATESTSUITE_H__ +#define __CTFATESTSUITE_H__ + +#include "ctfatest.h" + +/** +* Test suite implementation. A test suite may contain other test suites +* and test cases. +*/ +class CTFATestSuite : public CTFATest + { + public: + /** + * Constructor + * @param aName The test suite name + */ + IMPORT_C CTFATestSuite( const TDesC& aName ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFATestSuite( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestSuite( const CTFATestSuite& aSuite ); + + /** + * Assignment operator is hidden + */ + CTFATestSuite& operator=( const CTFATestSuite& aSuite ); + + public: + /** + * Adds a test or sub-suite to this suite + */ + IMPORT_C void AddL( const CTFATest& aTest ); + + /** + * Returns ETFATestTypeSuite + */ + IMPORT_C TTFATestType Type( void ) const; + + /** + * Returns the number of test cases and sub-suites within this suite + */ + IMPORT_C TInt Count( void ) const; + + /** + * Returns the test case or sub-suite at given index + */ + IMPORT_C CTFATest& At( TInt aIndex ); + + private: + RPointerArray iTests; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuiteadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* 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: Declaration of CTFATestSuiteAdapter class -* -*/ - - -#ifndef __CTFATESTSUITEADAPTER_H__ -#define __CTFATESTSUITEADAPTER_H__ - -#include -#include "mtfatestsuiteadapter.h" - -class CTFATestSuite; -class CTFAEntryPoint; - -/** -* Base class for test suite adapter implementations -*/ -//NONSHARABLE_CLASS( CTFATestSuiteAdapter ): public CBase, public MTFATestSuiteAdapter -class CTFATestSuiteAdapter : public CBase, public MTFATestSuiteAdapter - { - protected: - /** - * Constructor - * @param aTestSuite The test suite to be wrapped into this adapter - * @param aEntryPoint The entry point object. The entry point is non-NULL - * if this adapter is the root adapter. The root adapter stores the entry - * point and deletes it in its destructor. - */ - IMPORT_C CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestSuiteAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestSuiteAdapter( const CTFATestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFATestSuiteAdapter& operator=( const CTFATestSuiteAdapter& aAdapter ); - - public: - /** - * Adds a test adapter to this suite. The adapter may be a sub-suite or a test case - */ - IMPORT_C virtual void AddL( MTFATestAdapter& aAdapter ); - - public: - /** - * Returns ETFATestTypeSuite - */ - IMPORT_C TTFATestType Type( void ) const; - - protected: - CTFATestSuite& iTestSuite; - RPointerArray iTests; - CTFAEntryPoint* iEntryPoint; - }; - -#endif +/* +* 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: Declaration of CTFATestSuiteAdapter class +* +*/ + + +#ifndef __CTFATESTSUITEADAPTER_H__ +#define __CTFATESTSUITEADAPTER_H__ + +#include +#include "mtfatestsuiteadapter.h" + +class CTFATestSuite; +class CTFAEntryPoint; + +/** +* Base class for test suite adapter implementations +*/ +//NONSHARABLE_CLASS( CTFATestSuiteAdapter ): public CBase, public MTFATestSuiteAdapter +class CTFATestSuiteAdapter : public CBase, public MTFATestSuiteAdapter + { + protected: + /** + * Constructor + * @param aTestSuite The test suite to be wrapped into this adapter + * @param aEntryPoint The entry point object. The entry point is non-NULL + * if this adapter is the root adapter. The root adapter stores the entry + * point and deletes it in its destructor. + */ + IMPORT_C CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestSuiteAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestSuiteAdapter( const CTFATestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFATestSuiteAdapter& operator=( const CTFATestSuiteAdapter& aAdapter ); + + public: + /** + * Adds a test adapter to this suite. The adapter may be a sub-suite or a test case + */ + IMPORT_C virtual void AddL( MTFATestAdapter& aAdapter ); + + public: + /** + * Returns ETFATestTypeSuite + */ + IMPORT_C TTFATestType Type( void ) const; + + protected: + CTFATestSuite& iTestSuite; + RPointerArray iTests; + CTFAEntryPoint* iEntryPoint; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatesttimer.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatesttimer.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfatesttimer.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,69 +1,69 @@ -/* -* 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: Declaration of CTFATestTimer class -* -*/ - - -#ifndef __CTFATESTTIMER_H__ -#define __CTFATESTTIMER_H__ - -#include - -class MTFAActiveTest; - -/** -* A timer utility class -*/ -class CTFATestTimer : public CTimer - { - public: - /** - * Creates a new timer. - * @param aCallback ActiveTestRunL of the callback interface is called when timer completes - */ - IMPORT_C static CTFATestTimer* NewL( MTFAActiveTest& aCallback ); - - /** - * Destructor - */ - IMPORT_C ~CTFATestTimer( void ); - - private: - /** - * Constructor - */ - CTFATestTimer( MTFAActiveTest& aCallback ); - - /** - * Copy constructor is hidden - */ - CTFATestTimer( const CTFATestTimer& aTimer ); - - /** - * Assignment operator is hidden - */ - CTFATestTimer& operator=( const CTFATestTimer& aTimer ); - - protected: - /** - * Called by active scheduler. Calls ActiveTestRunL of the callback interface. - */ - void RunL( void ); - - private: - MTFAActiveTest& iCallback; - }; - -#endif +/* +* 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: Declaration of CTFATestTimer class +* +*/ + + +#ifndef __CTFATESTTIMER_H__ +#define __CTFATESTTIMER_H__ + +#include + +class MTFAActiveTest; + +/** +* A timer utility class +*/ +class CTFATestTimer : public CTimer + { + public: + /** + * Creates a new timer. + * @param aCallback ActiveTestRunL of the callback interface is called when timer completes + */ + IMPORT_C static CTFATestTimer* NewL( MTFAActiveTest& aCallback ); + + /** + * Destructor + */ + IMPORT_C ~CTFATestTimer( void ); + + private: + /** + * Constructor + */ + CTFATestTimer( MTFAActiveTest& aCallback ); + + /** + * Copy constructor is hidden + */ + CTFATestTimer( const CTFATestTimer& aTimer ); + + /** + * Assignment operator is hidden + */ + CTFATestTimer& operator=( const CTFATestTimer& aTimer ); + + protected: + /** + * Called by active scheduler. Calls ActiveTestRunL of the callback interface. + */ + void RunL( void ); + + private: + MTFAActiveTest& iCallback; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctffactory.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctffactory.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctffactory.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,144 +1,144 @@ -/* -* 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: Declaration of CTFFactory class -* -*/ - - -#ifndef __CTFFACTORY_H__ -#define __CTFFACTORY_H__ - -#include -#include "ctfstubmoduleinterface.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFATestSuite; -class CTFStubControl; -class CTFStub; -class CTFTestServer; - -/** -* CTFFactory is a singleton class stored in thread-local storage of the test framework. -* The entry point calls BuildTestSuiteL when the test framework DLL is loaded. -* BuildTestSuiteL loads the plug-in modules and fetches the test cases from them. -*/ -class CTFFactory : public CBase - { - public: - /** - * Creates a new CTFFactory - */ - static CTFFactory* NewL( void ); - - /** - * Destructor - */ - ~CTFFactory( void ); - - private: - /** - * C++ constructor - */ - CTFFactory( void ); - - /** - * Symbian constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFFactory( const CTFFactory& aFactory ); - - /** - * Assignment operator is hidden - */ - CTFFactory& operator=( const CTFFactory& aFactory ); - - public: - /** - * Gets the stub that has the given plug-in module stub type identifier - */ - IMPORT_C static CTFStub* Stub( TInt aType ); - - /** - * Calls a stub in remote process asynchronously. - */ - IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); - - /** - * Calls a stub in remote process synchronously. - */ - IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - /** - * Calls a stub in local process. This can be used to generate a RMessage object to the stub. - */ - IMPORT_C static void CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - public: - /** - * Returns the stub controller interface. - */ - IMPORT_C MTFStubControl* StubControl( void ); - - /** - * Loads the plug-in modules and uses them to create test cases. - * @param aRootSuite The root test suite - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the stub that has the given plug-in module stub type identifier - */ - CTFStub* InternalStub( TInt aType ); - - private: - /** - * Loads the plug-in modules and uses them to create test cases. - */ - void BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ); - - /** - * Initializes the test cases of given test suite. This is called - * for each test suite obtained from plug-in modules. - */ - void InitializeTestCasesL( CTFATestSuite* aSuite ); - - /** - * Thread function for the test server - * @param aData Pointer to this factory - * @return Symbian error code - */ - static TInt ServerThreadFunction( TAny* aData ); - static void ServerThreadFunctionL( CTFFactory* aFactory ); - - /** - * Thread function for calls to the local the test server - * @param aData Pointer to this factory - * @return Symbian error code - */ - static TInt LocalThreadFunction( TAny* aData ); - static void LocalThreadFunctionL( struct TTFThreadParam* aData ); - - protected: - CTFStubControl* iStubControl; - RImplInfoPtrArray iPluginInfos ; - RPointerArray iPlugins; - CTFTestServer* iTestServer; - }; - -#endif +/* +* 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: Declaration of CTFFactory class +* +*/ + + +#ifndef __CTFFACTORY_H__ +#define __CTFFACTORY_H__ + +#include +#include "ctfstubmoduleinterface.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFATestSuite; +class CTFStubControl; +class CTFStub; +class CTFTestServer; + +/** +* CTFFactory is a singleton class stored in thread-local storage of the test framework. +* The entry point calls BuildTestSuiteL when the test framework DLL is loaded. +* BuildTestSuiteL loads the plug-in modules and fetches the test cases from them. +*/ +class CTFFactory : public CBase + { + public: + /** + * Creates a new CTFFactory + */ + static CTFFactory* NewL( void ); + + /** + * Destructor + */ + ~CTFFactory( void ); + + private: + /** + * C++ constructor + */ + CTFFactory( void ); + + /** + * Symbian constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFFactory( const CTFFactory& aFactory ); + + /** + * Assignment operator is hidden + */ + CTFFactory& operator=( const CTFFactory& aFactory ); + + public: + /** + * Gets the stub that has the given plug-in module stub type identifier + */ + IMPORT_C static CTFStub* Stub( TInt aType ); + + /** + * Calls a stub in remote process asynchronously. + */ + IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); + + /** + * Calls a stub in remote process synchronously. + */ + IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + /** + * Calls a stub in local process. This can be used to generate a RMessage object to the stub. + */ + IMPORT_C static void CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + public: + /** + * Returns the stub controller interface. + */ + IMPORT_C MTFStubControl* StubControl( void ); + + /** + * Loads the plug-in modules and uses them to create test cases. + * @param aRootSuite The root test suite + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the stub that has the given plug-in module stub type identifier + */ + CTFStub* InternalStub( TInt aType ); + + private: + /** + * Loads the plug-in modules and uses them to create test cases. + */ + void BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ); + + /** + * Initializes the test cases of given test suite. This is called + * for each test suite obtained from plug-in modules. + */ + void InitializeTestCasesL( CTFATestSuite* aSuite ); + + /** + * Thread function for the test server + * @param aData Pointer to this factory + * @return Symbian error code + */ + static TInt ServerThreadFunction( TAny* aData ); + static void ServerThreadFunctionL( CTFFactory* aFactory ); + + /** + * Thread function for calls to the local the test server + * @param aData Pointer to this factory + * @return Symbian error code + */ + static TInt LocalThreadFunction( TAny* aData ); + static void LocalThreadFunctionL( struct TTFThreadParam* aData ); + + protected: + CTFStubControl* iStubControl; + RImplInfoPtrArray iPluginInfos ; + RPointerArray iPlugins; + CTFTestServer* iTestServer; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfremotestub.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfremotestub.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfremotestub.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of CTFRemoteStub class -* -*/ - - -#ifndef __CTFREMOTESTUB_H__ -#define __CTFREMOTESTUB_H__ - -#include "ctfstub.h" - -class CTFRemoteStub : public CTFStub - { - public: - /** - * Constructor - * @param aStubType The plug-in module identifier - */ - IMPORT_C CTFRemoteStub( TInt aStubType ); - - /** - * Destructor - */ - IMPORT_C ~CTFRemoteStub( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFRemoteStub( const CTFStub& aStub ); - - /** - * Assignment operator is hidden - */ - CTFRemoteStub& operator=( const CTFStub& aStub ); - - public: - /** - * Return ETrue - */ - TBool IsRemoteStub( void ) { return ETrue; } - - /** - * Processes a message and completes it. It is not necessary to - * complete the message immediately. - */ - virtual void ProcessMessageAndCompleteL( const RMessage2& aMessage ) = 0; - - /** - * Notifies the stub that the asynchronous message passed to - * ProcessMessageAndCompleteL has been completed with given - * status. This can be used to complete the test case. - */ - virtual void MessageCompleteL( TInt aResult ) = 0; - }; - - -#endif +/* +* 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: Declaration of CTFRemoteStub class +* +*/ + + +#ifndef __CTFREMOTESTUB_H__ +#define __CTFREMOTESTUB_H__ + +#include "ctfstub.h" + +class CTFRemoteStub : public CTFStub + { + public: + /** + * Constructor + * @param aStubType The plug-in module identifier + */ + IMPORT_C CTFRemoteStub( TInt aStubType ); + + /** + * Destructor + */ + IMPORT_C ~CTFRemoteStub( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFRemoteStub( const CTFStub& aStub ); + + /** + * Assignment operator is hidden + */ + CTFRemoteStub& operator=( const CTFStub& aStub ); + + public: + /** + * Return ETrue + */ + TBool IsRemoteStub( void ) { return ETrue; } + + /** + * Processes a message and completes it. It is not necessary to + * complete the message immediately. + */ + virtual void ProcessMessageAndCompleteL( const RMessage2& aMessage ) = 0; + + /** + * Notifies the stub that the asynchronous message passed to + * ProcessMessageAndCompleteL has been completed with given + * status. This can be used to complete the test case. + */ + virtual void MessageCompleteL( TInt aResult ) = 0; + }; + + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstub.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstub.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstub.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,94 +1,94 @@ -/* -* 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: Declaration of CTFStub class -* -*/ - - -#ifndef __CTFSTUB_H__ -#define __CTFSTUB_H__ - -#include - -class MTFStubInterface; -class MTFStubTestCase; - -/** -* Base class that needs to be implemented in the plug-in modules -*/ -class CTFStub : public CBase - { - public: - /** - * Constructor - * @param aStubType The plug-in module identifier - */ - IMPORT_C CTFStub( TInt aStubType ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStub( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStub( const CTFStub& aStub ); - - /** - * Assignment operator is hidden - */ - CTFStub& operator=( const CTFStub& aStub ); - - public: - /** - * Called when this stub has been added to the controller. - */ - virtual void InitializeL( void ) = 0; - - /** - * Called by the factory to determine if this stub - * is an instance of CTFRemoteStub class. - */ - virtual TBool IsRemoteStub( void ) { return EFalse; } - - /** - * Returns the plug-in specific part from currently active test case - */ - IMPORT_C MTFStubTestCase* CurrentTestCase( void ); - - /** - * Returns the ID of the currently executing test case - */ - IMPORT_C TInt CurrentTestCaseID( void ); - - public: - /** - * Gets the type passed to constructor - */ - TInt Type( void ) const; - - /** - * Sets the controller callback interface. This is called by - * the framework after the stub has been obtained from the plug-in module. - */ - void SetStubControl( MTFStubInterface* aStubControl ); - - private: - TInt iStubType; - MTFStubInterface* iStubControl; - }; - -#endif +/* +* 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: Declaration of CTFStub class +* +*/ + + +#ifndef __CTFSTUB_H__ +#define __CTFSTUB_H__ + +#include + +class MTFStubInterface; +class MTFStubTestCase; + +/** +* Base class that needs to be implemented in the plug-in modules +*/ +class CTFStub : public CBase + { + public: + /** + * Constructor + * @param aStubType The plug-in module identifier + */ + IMPORT_C CTFStub( TInt aStubType ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStub( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStub( const CTFStub& aStub ); + + /** + * Assignment operator is hidden + */ + CTFStub& operator=( const CTFStub& aStub ); + + public: + /** + * Called when this stub has been added to the controller. + */ + virtual void InitializeL( void ) = 0; + + /** + * Called by the factory to determine if this stub + * is an instance of CTFRemoteStub class. + */ + virtual TBool IsRemoteStub( void ) { return EFalse; } + + /** + * Returns the plug-in specific part from currently active test case + */ + IMPORT_C MTFStubTestCase* CurrentTestCase( void ); + + /** + * Returns the ID of the currently executing test case + */ + IMPORT_C TInt CurrentTestCaseID( void ); + + public: + /** + * Gets the type passed to constructor + */ + TInt Type( void ) const; + + /** + * Sets the controller callback interface. This is called by + * the framework after the stub has been obtained from the plug-in module. + */ + void SetStubControl( MTFStubInterface* aStubControl ); + + private: + TInt iStubType; + MTFStubInterface* iStubControl; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubcontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,99 +1,99 @@ -/* -* 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: Declaration of CTFStubControl class -* -*/ - - -#ifndef __CTFSTUBCONTROL_H__ -#define __CTFSTUBCONTROL_H__ - -#include -#include "mtfstubinterface.h" -#include "mtfstubcontrol.h" - -/** -* Stub controller contains a list of CTFStub objects obtained from the plug-in modules -*/ -NONSHARABLE_CLASS( CTFStubControl ): public CBase, public MTFStubInterface, public MTFStubControl - { - public: - /** - * Creates a stub controller - */ - static CTFStubControl* NewL( void ); - - /** - * Destructor - */ - virtual ~CTFStubControl( void ); - - private: - /** - * Default constructor - */ - CTFStubControl( void ); - - /** - * Copy constructor is hidden - */ - CTFStubControl( const CTFStubControl& aControl ); - - /** - * Assignment operator is hidden - */ - CTFStubControl& operator=( const CTFStubControl& aControl ); - - public: - /** - * Sets the currently executing test case - */ - void SetCurrentTestCase( MTFTestCase* aTestCase ); - - /** - * Returns the stub object that has the given plug-in module identifier - */ - CTFStub* Stub( TInt aStubType ); - - /** - * Adds a stub to this controller - */ - void AddStubL( CTFStub& aStub ); - - /** - * Returns the stub count - */ - TInt Count( void ) const; - - /** - * Returns the stub object at the given index - */ - CTFStub* StubAt( TInt aIndex ); - - /** - * Returns the plug-in specific part from the currently executing test case - */ - MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ); - - /** - * Returns the ID of the currently executing test case - */ - TInt CurrentTestCaseID( void ); - - private: - RPointerArray iStubs; - MTFTestCase* iCurrentTestCase; - }; - -#endif +/* +* 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: Declaration of CTFStubControl class +* +*/ + + +#ifndef __CTFSTUBCONTROL_H__ +#define __CTFSTUBCONTROL_H__ + +#include +#include "mtfstubinterface.h" +#include "mtfstubcontrol.h" + +/** +* Stub controller contains a list of CTFStub objects obtained from the plug-in modules +*/ +NONSHARABLE_CLASS( CTFStubControl ): public CBase, public MTFStubInterface, public MTFStubControl + { + public: + /** + * Creates a stub controller + */ + static CTFStubControl* NewL( void ); + + /** + * Destructor + */ + virtual ~CTFStubControl( void ); + + private: + /** + * Default constructor + */ + CTFStubControl( void ); + + /** + * Copy constructor is hidden + */ + CTFStubControl( const CTFStubControl& aControl ); + + /** + * Assignment operator is hidden + */ + CTFStubControl& operator=( const CTFStubControl& aControl ); + + public: + /** + * Sets the currently executing test case + */ + void SetCurrentTestCase( MTFTestCase* aTestCase ); + + /** + * Returns the stub object that has the given plug-in module identifier + */ + CTFStub* Stub( TInt aStubType ); + + /** + * Adds a stub to this controller + */ + void AddStubL( CTFStub& aStub ); + + /** + * Returns the stub count + */ + TInt Count( void ) const; + + /** + * Returns the stub object at the given index + */ + CTFStub* StubAt( TInt aIndex ); + + /** + * Returns the plug-in specific part from the currently executing test case + */ + MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ); + + /** + * Returns the ID of the currently executing test case + */ + TInt CurrentTestCaseID( void ); + + private: + RPointerArray iStubs; + MTFTestCase* iCurrentTestCase; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,106 +1,106 @@ -/* -* 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: Declaration of CTFStubModuleInterface class -* -*/ - - -#ifndef __CTFSTUBMODULEINTERFACE_H__ -#define __CTFSTUBMODULEINTERFACE_H__ - -// INCLUDES -#include -#include -#include -#include "ctfstub.h" -#include "ctfatestsuite.h" - -// MACROS - -// CONSTANTS -const TUid KCTFStubModuleInterfaceUid = { 0x10200c7d }; - -// CLASS DECLARATION - -/** -* An abstract base class being representative of the concrete class which -* the client wishes to use. -*/ -NONSHARABLE_CLASS( CTFStubModuleInterface ): public CBase - { - public: // Data types - /** - * For passing initialisation parameters to the derived class - * constructor. - */ - struct TInterfaceInitParams - { - TInt integer; - const TDesC* descriptor; - }; - - public: // Constructors and destructor - /** - * Two-phased constructor. - * @param aMatchString Resolver parameters. - * @return The created object. - */ - static CTFStubModuleInterface* NewL( const TDesC8& aMatchString ); - - /** - * Destructor - */ - virtual ~CTFStubModuleInterface(); - - public: // New functions - /** - * Request a list of all available implementations which satisfy - * this given interface. - * @param aImplInfoArray A pointer to the available implementations. - */ - static void ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ); - - public: // Virtual functions to be implemented - /** - * Gets the stub implementation of this plug-in module - */ - virtual CTFStub* GetStubL( void ) = 0; - - /** - * Builds the test suite of this plug-in module. - */ - virtual void BuildTestSuiteL( CTFATestSuite* aRootSuite ) = 0; - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - virtual MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ) = 0; - - protected: // Constructor - /** - * C++ default constructor. - */ - inline CTFStubModuleInterface( void ); - - private: // Data - TUid iDtor_ID_Key; - - }; - -// INLINE FUNCTIONS -#include "ctfstubmoduleinterface.inl" - -#endif // __CTFSTUBMODULEINTERFACE_H__ - -// End of File +/* +* 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: Declaration of CTFStubModuleInterface class +* +*/ + + +#ifndef __CTFSTUBMODULEINTERFACE_H__ +#define __CTFSTUBMODULEINTERFACE_H__ + +// INCLUDES +#include +#include +#include +#include "ctfstub.h" +#include "ctfatestsuite.h" + +// MACROS + +// CONSTANTS +const TUid KCTFStubModuleInterfaceUid = { 0x10200c7d }; + +// CLASS DECLARATION + +/** +* An abstract base class being representative of the concrete class which +* the client wishes to use. +*/ +NONSHARABLE_CLASS( CTFStubModuleInterface ): public CBase + { + public: // Data types + /** + * For passing initialisation parameters to the derived class + * constructor. + */ + struct TInterfaceInitParams + { + TInt integer; + const TDesC* descriptor; + }; + + public: // Constructors and destructor + /** + * Two-phased constructor. + * @param aMatchString Resolver parameters. + * @return The created object. + */ + static CTFStubModuleInterface* NewL( const TDesC8& aMatchString ); + + /** + * Destructor + */ + virtual ~CTFStubModuleInterface(); + + public: // New functions + /** + * Request a list of all available implementations which satisfy + * this given interface. + * @param aImplInfoArray A pointer to the available implementations. + */ + static void ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ); + + public: // Virtual functions to be implemented + /** + * Gets the stub implementation of this plug-in module + */ + virtual CTFStub* GetStubL( void ) = 0; + + /** + * Builds the test suite of this plug-in module. + */ + virtual void BuildTestSuiteL( CTFATestSuite* aRootSuite ) = 0; + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + virtual MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ) = 0; + + protected: // Constructor + /** + * C++ default constructor. + */ + inline CTFStubModuleInterface( void ); + + private: // Data + TUid iDtor_ID_Key; + + }; + +// INLINE FUNCTIONS +#include "ctfstubmoduleinterface.inl" + +#endif // __CTFSTUBMODULEINTERFACE_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.inl --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.inl Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubmoduleinterface.inl Thu Jul 01 11:20:10 2010 +0300 @@ -1,67 +1,67 @@ -/* -* Copyright (c) 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: Declaration of CTFStubModuleInterface inline functions -* -*/ - - -// ================= MEMBER FUNCTIONS ======================= - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::CTFStubModuleInterface -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface::CTFStubModuleInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::NewL -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface* CTFStubModuleInterface::NewL( const TDesC8& aMatchString ) - { - TEComResolverParams resolverParams; - resolverParams.SetDataType( aMatchString ); - resolverParams.SetWildcardMatch( ETrue ); - - TInterfaceInitParams initParams; - initParams.integer = 0; - initParams.descriptor = NULL; - - return REINTERPRET_CAST( CTFStubModuleInterface*, - REComSession::CreateImplementationL( - KCTFStubModuleInterfaceUid, _FOFF( CTFStubModuleInterface, iDtor_ID_Key ), - &initParams, - resolverParams ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::~CTFStubModuleInterface -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface::~CTFStubModuleInterface( void ) - { - REComSession::DestroyedImplementation( iDtor_ID_Key ); - } - - -// --------------------------------------------------------- -// CTFStubModuleInterface::ListAllImplementationsL -// --------------------------------------------------------- -inline void CTFStubModuleInterface::ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ) - { - REComSession::ListImplementationsL( KCTFStubModuleInterfaceUid, aImplInfoArray ); - } - -// End of File +/* +* Copyright (c) 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: Declaration of CTFStubModuleInterface inline functions +* +*/ + + +// ================= MEMBER FUNCTIONS ======================= + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::CTFStubModuleInterface +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface::CTFStubModuleInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::NewL +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface* CTFStubModuleInterface::NewL( const TDesC8& aMatchString ) + { + TEComResolverParams resolverParams; + resolverParams.SetDataType( aMatchString ); + resolverParams.SetWildcardMatch( ETrue ); + + TInterfaceInitParams initParams; + initParams.integer = 0; + initParams.descriptor = NULL; + + return REINTERPRET_CAST( CTFStubModuleInterface*, + REComSession::CreateImplementationL( + KCTFStubModuleInterfaceUid, _FOFF( CTFStubModuleInterface, iDtor_ID_Key ), + &initParams, + resolverParams ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::~CTFStubModuleInterface +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface::~CTFStubModuleInterface( void ) + { + REComSession::DestroyedImplementation( iDtor_ID_Key ); + } + + +// --------------------------------------------------------- +// CTFStubModuleInterface::ListAllImplementationsL +// --------------------------------------------------------- +inline void CTFStubModuleInterface::ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ) + { + REComSession::ListImplementationsL( KCTFStubModuleInterfaceUid, aImplInfoArray ); + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcase.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,126 +1,126 @@ -/* -* 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: Declaration of CTFStubTestCase class -* -*/ - - -#ifndef __CTFSTUBTESTCASE_H__ -#define __CTFSTUBTESTCASE_H__ - -#include -#include "mtfstubtestcase.h" - -class CTFATestLog; - -/** -* Base class for plug-in specific test case implementations -*/ -class CTFStubTestCase : public CBase, public MTFStubTestCase - { - public: - /** - * Constructor - * @param aTestCaseType The plug-in module identifier - */ - IMPORT_C CTFStubTestCase( TInt aTestCaseType ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStubTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStubTestCase( const CTFStubTestCase& aCase ); - - /** - * Assignment operator is hidden - */ - CTFStubTestCase& operator=( const CTFStubTestCase& aCase ); - - public: - /** - * Sets the callback interface that is used to complete the plug-in specific test case - */ - IMPORT_C virtual void SetCallback( MTFTestCaseInterface& aCallback ); - - /** - * Returns the type passed into constructor - */ - IMPORT_C virtual TInt Type( void ); - - /** - * Initializes this test case. The subclass can add initialization - * code into the InitL method, which is called from this method. - */ - IMPORT_C virtual void SetupL( void ); - - /** - * Returns ETrue if CompleteTest has been called. EFalse otherwise - */ - IMPORT_C virtual TBool IsComplete( void ); - - /** - * Stores the stub into iStub variable accessible to subclasses - */ - IMPORT_C virtual void SetStub( CTFStub& aStub ); - - protected: - /** - * Called by subclasses to complete the test - */ - IMPORT_C virtual void CompleteTest( TInt aTestResult ); - - /** - * Returns the test case logger - */ - IMPORT_C virtual CTFATestLog& Logger( void ); - - protected: - /** - * Logs this test case - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Subclass initialization code - */ - virtual void InitL( void ) = 0; - - /** - * Runs the test case - */ - virtual void RunL( void ) = 0; - - /** - * Closes this test case - */ - virtual void Teardown( void ) = 0; - - protected: - /** - * Stub object is accessible to subclasses - */ - CTFStub* iStub; - - private: - MTFTestCaseInterface* iCallback; - TInt iTestCaseType; - TBool iComplete; - }; - -#endif +/* +* 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: Declaration of CTFStubTestCase class +* +*/ + + +#ifndef __CTFSTUBTESTCASE_H__ +#define __CTFSTUBTESTCASE_H__ + +#include +#include "mtfstubtestcase.h" + +class CTFATestLog; + +/** +* Base class for plug-in specific test case implementations +*/ +class CTFStubTestCase : public CBase, public MTFStubTestCase + { + public: + /** + * Constructor + * @param aTestCaseType The plug-in module identifier + */ + IMPORT_C CTFStubTestCase( TInt aTestCaseType ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStubTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStubTestCase( const CTFStubTestCase& aCase ); + + /** + * Assignment operator is hidden + */ + CTFStubTestCase& operator=( const CTFStubTestCase& aCase ); + + public: + /** + * Sets the callback interface that is used to complete the plug-in specific test case + */ + IMPORT_C virtual void SetCallback( MTFTestCaseInterface& aCallback ); + + /** + * Returns the type passed into constructor + */ + IMPORT_C virtual TInt Type( void ); + + /** + * Initializes this test case. The subclass can add initialization + * code into the InitL method, which is called from this method. + */ + IMPORT_C virtual void SetupL( void ); + + /** + * Returns ETrue if CompleteTest has been called. EFalse otherwise + */ + IMPORT_C virtual TBool IsComplete( void ); + + /** + * Stores the stub into iStub variable accessible to subclasses + */ + IMPORT_C virtual void SetStub( CTFStub& aStub ); + + protected: + /** + * Called by subclasses to complete the test + */ + IMPORT_C virtual void CompleteTest( TInt aTestResult ); + + /** + * Returns the test case logger + */ + IMPORT_C virtual CTFATestLog& Logger( void ); + + protected: + /** + * Logs this test case + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Subclass initialization code + */ + virtual void InitL( void ) = 0; + + /** + * Runs the test case + */ + virtual void RunL( void ) = 0; + + /** + * Closes this test case + */ + virtual void Teardown( void ) = 0; + + protected: + /** + * Stub object is accessible to subclasses + */ + CTFStub* iStub; + + private: + MTFTestCaseInterface* iCallback; + TInt iTestCaseType; + TBool iComplete; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcaseparam.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcaseparam.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctfstubtestcaseparam.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,52 +1,52 @@ -/* -* 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: Declaration of CTFStubTestCaseParam class -* -*/ - - -#ifndef __CTFSTUBTESTCASEPARAM_H__ -#define __CTFSTUBTESTCASEPARAM_H__ - -#include - -/** -* Root class for plug-in specific test case parameters -*/ -class CTFStubTestCaseParam : public CBase - { - public: - /** - * Default constructor - */ - IMPORT_C CTFStubTestCaseParam( void ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStubTestCaseParam( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStubTestCaseParam( const CTFStubTestCaseParam& aParam ); - - /** - * Assignment operator is hidden - */ - CTFStubTestCaseParam& operator=( const CTFStubTestCaseParam& aParam ); - }; - -#endif +/* +* 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: Declaration of CTFStubTestCaseParam class +* +*/ + + +#ifndef __CTFSTUBTESTCASEPARAM_H__ +#define __CTFSTUBTESTCASEPARAM_H__ + +#include + +/** +* Root class for plug-in specific test case parameters +*/ +class CTFStubTestCaseParam : public CBase + { + public: + /** + * Default constructor + */ + IMPORT_C CTFStubTestCaseParam( void ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStubTestCaseParam( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStubTestCaseParam( const CTFStubTestCaseParam& aParam ); + + /** + * Assignment operator is hidden + */ + CTFStubTestCaseParam& operator=( const CTFStubTestCaseParam& aParam ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcaserepeater.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcaserepeater.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcaserepeater.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,105 +1,105 @@ -/* -* 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: Declaration of CTFTestCaseRepeater classes -* -*/ - - -#ifndef __CTFTESTCASEREPEATER_H__ -#define __CTFTESTCASEREPEATER_H__ - -#include "ctfatestcase.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFATestSuite; -class CTFATestLog; - -/** -* Implementation of repeater and randomizer test cases. -*/ -class CTFTestCaseRepeater : public CTFATestCase - { - public: - /** - * Constructor - * @param aCaseId The test case ID - * @param aName The test case name - * @param aSuite The test suite which contains the tests to be run with this repeater - * @param aRepeatCount Number of times to run tests - * @param aRandomRepeat If ETrue, tests are run in random order - */ - IMPORT_C CTFTestCaseRepeater( TInt aCaseId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ); - - /** - * Destructor - */ - virtual ~CTFTestCaseRepeater( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFTestCaseRepeater( const CTFTestCaseRepeater& aCase ); - - /** - * Assignment operator is hidden - */ - CTFTestCaseRepeater& operator=( const CTFTestCaseRepeater& aCase ); - - public: - /** - * Sets the test environment to this test case - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Returns ETFTestTypeStubRepeater - */ - TTFATestType Type( void ) const; - - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Prepares each test case within the test suite - */ - void SetupL( void ); - - /** - * Runs the test cases - */ - void RunTestL( void ); - - /** - * Closes each test case within the test suite - */ - void Teardown( void ); - - private: - /** - * Returns the test logger - */ - CTFATestLog& Logger( void ); - - private: - CTFATestSuite* iSuite; - TInt iRepeatCount; - TBool iRandomRepeat; - }; - -#endif +/* +* 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: Declaration of CTFTestCaseRepeater classes +* +*/ + + +#ifndef __CTFTESTCASEREPEATER_H__ +#define __CTFTESTCASEREPEATER_H__ + +#include "ctfatestcase.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFATestSuite; +class CTFATestLog; + +/** +* Implementation of repeater and randomizer test cases. +*/ +class CTFTestCaseRepeater : public CTFATestCase + { + public: + /** + * Constructor + * @param aCaseId The test case ID + * @param aName The test case name + * @param aSuite The test suite which contains the tests to be run with this repeater + * @param aRepeatCount Number of times to run tests + * @param aRandomRepeat If ETrue, tests are run in random order + */ + IMPORT_C CTFTestCaseRepeater( TInt aCaseId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ); + + /** + * Destructor + */ + virtual ~CTFTestCaseRepeater( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFTestCaseRepeater( const CTFTestCaseRepeater& aCase ); + + /** + * Assignment operator is hidden + */ + CTFTestCaseRepeater& operator=( const CTFTestCaseRepeater& aCase ); + + public: + /** + * Sets the test environment to this test case + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Returns ETFTestTypeStubRepeater + */ + TTFATestType Type( void ) const; + + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Prepares each test case within the test suite + */ + void SetupL( void ); + + /** + * Runs the test cases + */ + void RunTestL( void ); + + /** + * Closes each test case within the test suite + */ + void Teardown( void ); + + private: + /** + * Returns the test logger + */ + CTFATestLog& Logger( void ); + + private: + CTFATestSuite* iSuite; + TInt iRepeatCount; + TBool iRandomRepeat; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcasewrapper.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcasewrapper.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestcasewrapper.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,132 +1,132 @@ -/* -* 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: Declaration of CTFTestCaseWrapper classes -* -*/ - - -#ifndef __CTFTESTCASEWRAPPER_H__ -#define __CTFTESTCASEWRAPPER_H__ - -#include "ctfatestcase.h" -#include "mtftestcase.h" -#include "mtftestcaseinterface.h" -#include "mtfaactivetest.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFFactory; -class CTFATestTimer; - -/** -* Implementation of a test case that contains plug-in specific parts. -*/ -class CTFTestCaseWrapper : public CTFATestCase, public MTFTestCase, public MTFTestCaseInterface, public MTFAActiveTest - { - public: - /** - * Constructor. - * @param aCaseId The test case identifier - * @param aName The name of the test case - */ - IMPORT_C CTFTestCaseWrapper( TInt aCaseId, const TDesC& aName ); - - /** - * Destructor - */ - virtual ~CTFTestCaseWrapper( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFTestCaseWrapper( const CTFTestCaseWrapper& aCase ); - - /** - * Assignment operator is hidden - */ - CTFTestCaseWrapper& operator=( const CTFTestCaseWrapper& aCase ); - - public: - /** - * Adds a plug-in specific part to this test case - */ - IMPORT_C void AddStubTestCaseL( MTFStubTestCase& aTestCase ); - - /** - * Sets the test environment to this test case - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Returns the plug-in specific part that has the given plug-in identifier - */ - MTFStubTestCase* TestCase( TInt aTestCaseType ); - - /** - * Returns the ID of this test case - */ - TInt TestCaseID( void ) const; - - /** - * Called by the plug-in specific parts when they complete - */ - void TestComplete( TInt aTestResult ); - - /** - * Returns the test case logger - */ - CTFATestLog& Logger( void ); - - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Initializes this test case - */ - void SetupL( void ); - - /** - * Runs this test case - */ - void RunTestL( void ); - - /** - * Closes this test case - */ - void Teardown( void ); - - /** - * Returns ETFTestTypeStubWrapper - */ - TTFATestType Type( void ) const; - - /** - * Timeout handler - */ - void ActiveTestRunL( void ); - - private: - MTFStubControl* iStubControl; - CTFFactory* iFactory; - CTFATestTimer* iTimer; - RPointerArray iTestCases; - TBool iWaitStarted; - TInt iTestResult; - }; - -#endif +/* +* 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: Declaration of CTFTestCaseWrapper classes +* +*/ + + +#ifndef __CTFTESTCASEWRAPPER_H__ +#define __CTFTESTCASEWRAPPER_H__ + +#include "ctfatestcase.h" +#include "mtftestcase.h" +#include "mtftestcaseinterface.h" +#include "mtfaactivetest.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFFactory; +class CTFATestTimer; + +/** +* Implementation of a test case that contains plug-in specific parts. +*/ +class CTFTestCaseWrapper : public CTFATestCase, public MTFTestCase, public MTFTestCaseInterface, public MTFAActiveTest + { + public: + /** + * Constructor. + * @param aCaseId The test case identifier + * @param aName The name of the test case + */ + IMPORT_C CTFTestCaseWrapper( TInt aCaseId, const TDesC& aName ); + + /** + * Destructor + */ + virtual ~CTFTestCaseWrapper( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFTestCaseWrapper( const CTFTestCaseWrapper& aCase ); + + /** + * Assignment operator is hidden + */ + CTFTestCaseWrapper& operator=( const CTFTestCaseWrapper& aCase ); + + public: + /** + * Adds a plug-in specific part to this test case + */ + IMPORT_C void AddStubTestCaseL( MTFStubTestCase& aTestCase ); + + /** + * Sets the test environment to this test case + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Returns the plug-in specific part that has the given plug-in identifier + */ + MTFStubTestCase* TestCase( TInt aTestCaseType ); + + /** + * Returns the ID of this test case + */ + TInt TestCaseID( void ) const; + + /** + * Called by the plug-in specific parts when they complete + */ + void TestComplete( TInt aTestResult ); + + /** + * Returns the test case logger + */ + CTFATestLog& Logger( void ); + + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Initializes this test case + */ + void SetupL( void ); + + /** + * Runs this test case + */ + void RunTestL( void ); + + /** + * Closes this test case + */ + void Teardown( void ); + + /** + * Returns ETFTestTypeStubWrapper + */ + TTFATestType Type( void ) const; + + /** + * Timeout handler + */ + void ActiveTestRunL( void ); + + private: + MTFStubControl* iStubControl; + CTFFactory* iFactory; + CTFATestTimer* iTimer; + RPointerArray iTestCases; + TBool iWaitStarted; + TInt iTestResult; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestserver.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/ctftestserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,142 +1,142 @@ -/* -* 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: Declaration of test server classes -* -*/ - - -#ifndef __CTFTESTSERVER_H__ -#define __CTFTESTSERVER_H__ - -#include - -class CTFFactory; - - -_LIT( KTFRemoteTestServerName, "TESTFRAMEWORK_REMOTESERVER" ); -_LIT( KTFLocalTestServerName, "TESTFRAMEWORK_LOCALSERVER" ); - -NONSHARABLE_CLASS( RTFTestServer ): public RSessionBase - { - public: - /** - * Connects to the test server - * @param aLocal If ETrue, connects to local server. Otherwise to remote server - * @return TInt - */ - TInt Connect( TBool aLocal ); - - /** - * Posts a RMessage asynchronously to test server with the given parameters - */ - void PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const; - - /** - * Posts a RMessage synchronously to test server with the given parameters - */ - TInt PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const; - - /** - * Posts a completion message to the test server - */ - void PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const; - - /** - * Posts a shutdown message to the test server - */ - void PostShutdownMessage() const; - }; - - -NONSHARABLE_CLASS( CTFTestServerWrapper ): public CActive - { - public: - /** - * Constructor - */ - CTFTestServerWrapper( void ); - - /** - * Destructor - */ - ~CTFTestServerWrapper( void ); - - /** - * Posts a remote message to the test server and completes the status when response is received. - * This object is deleted when the server responds. - */ - void PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); - - /** - * Posts a local message to the test server and completes the status when response is received. - * This object is deleted when the server responds. - */ - void PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - protected: - /** - * Called when test server completes the message - */ - void RunL( void ); - - /** - * Called to cancel the message passed to test server - */ - void DoCancel( void ); - - private: - TRequestStatus* iCallerStatus; - TInt iStubType; - RTFTestServer iClient; - TInt iState; - }; - - -NONSHARABLE_CLASS( CTFTestSession ): public CSession2 - { - public: - /** - * Constructor - */ - CTFTestSession( CTFFactory* aFactory ); - - /** - * Called by server to process the given message - */ - void ServiceL( const RMessage2& aMessage ); - - private: - CTFFactory* iFactory; - }; - - -NONSHARABLE_CLASS( CTFTestServer ): public CServer2 - { - public: - /** - * Constructor - */ - CTFTestServer( CTFFactory* aFactory ); - - /** - * Creates a new server session - */ - CSession2* NewSessionL( const TVersion& aVersion, const RMessage2& aMessage ) const; - - private: - CTFFactory* iFactory; - }; - - -#endif +/* +* 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: Declaration of test server classes +* +*/ + + +#ifndef __CTFTESTSERVER_H__ +#define __CTFTESTSERVER_H__ + +#include + +class CTFFactory; + + +_LIT( KTFRemoteTestServerName, "TESTFRAMEWORK_REMOTESERVER" ); +_LIT( KTFLocalTestServerName, "TESTFRAMEWORK_LOCALSERVER" ); + +NONSHARABLE_CLASS( RTFTestServer ): public RSessionBase + { + public: + /** + * Connects to the test server + * @param aLocal If ETrue, connects to local server. Otherwise to remote server + * @return TInt + */ + TInt Connect( TBool aLocal ); + + /** + * Posts a RMessage asynchronously to test server with the given parameters + */ + void PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const; + + /** + * Posts a RMessage synchronously to test server with the given parameters + */ + TInt PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const; + + /** + * Posts a completion message to the test server + */ + void PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const; + + /** + * Posts a shutdown message to the test server + */ + void PostShutdownMessage() const; + }; + + +NONSHARABLE_CLASS( CTFTestServerWrapper ): public CActive + { + public: + /** + * Constructor + */ + CTFTestServerWrapper( void ); + + /** + * Destructor + */ + ~CTFTestServerWrapper( void ); + + /** + * Posts a remote message to the test server and completes the status when response is received. + * This object is deleted when the server responds. + */ + void PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); + + /** + * Posts a local message to the test server and completes the status when response is received. + * This object is deleted when the server responds. + */ + void PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + protected: + /** + * Called when test server completes the message + */ + void RunL( void ); + + /** + * Called to cancel the message passed to test server + */ + void DoCancel( void ); + + private: + TRequestStatus* iCallerStatus; + TInt iStubType; + RTFTestServer iClient; + TInt iState; + }; + + +NONSHARABLE_CLASS( CTFTestSession ): public CSession2 + { + public: + /** + * Constructor + */ + CTFTestSession( CTFFactory* aFactory ); + + /** + * Called by server to process the given message + */ + void ServiceL( const RMessage2& aMessage ); + + private: + CTFFactory* iFactory; + }; + + +NONSHARABLE_CLASS( CTFTestServer ): public CServer2 + { + public: + /** + * Constructor + */ + CTFTestServer( CTFFactory* aFactory ); + + /** + * Creates a new server session + */ + CSession2* NewSessionL( const TVersion& aVersion, const RMessage2& aMessage ) const; + + private: + CTFFactory* iFactory; + }; + + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,85 +1,85 @@ -/* -* 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: Declaration of test tool trace macros -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of test tool trace macros +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfaactivetest.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfaactivetest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfaactivetest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,63 +1,63 @@ -/* -* 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: Declaration of MTFAActiveTest class -* -*/ - - -#ifndef __MTFAACTIVETEST_H__ -#define __MTFAACTIVETEST_H__ - -#include - -/** -* Callback interface for test cases that contain active objects. -*/ -class MTFAActiveTest - { - public: - /** - * Default constructor - */ - IMPORT_C MTFAActiveTest(); - - /** - * Destructor - */ - IMPORT_C virtual ~MTFAActiveTest( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFAActiveTest( const MTFAActiveTest& aTest ); - - /** - * Assignment operator is hidden - */ - MTFAActiveTest& operator=( const MTFAActiveTest& aTest ); - - public: - /** - * Called from CActive::RunL - */ - virtual void ActiveTestRunL( void ) = 0; - - /** - * Called from CActive::DoCancel - */ - virtual void ActiveTestCancel( void ) {} - }; - -#endif +/* +* 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: Declaration of MTFAActiveTest class +* +*/ + + +#ifndef __MTFAACTIVETEST_H__ +#define __MTFAACTIVETEST_H__ + +#include + +/** +* Callback interface for test cases that contain active objects. +*/ +class MTFAActiveTest + { + public: + /** + * Default constructor + */ + IMPORT_C MTFAActiveTest(); + + /** + * Destructor + */ + IMPORT_C virtual ~MTFAActiveTest( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFAActiveTest( const MTFAActiveTest& aTest ); + + /** + * Assignment operator is hidden + */ + MTFAActiveTest& operator=( const MTFAActiveTest& aTest ); + + public: + /** + * Called from CActive::RunL + */ + virtual void ActiveTestRunL( void ) = 0; + + /** + * Called from CActive::DoCancel + */ + virtual void ActiveTestCancel( void ) {} + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,59 +1,59 @@ -/* -* 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: Declaration of MTFATestAdapter class -* -*/ - - -#ifndef __MTFATESTADAPTER_H__ -#define __MTFATESTADAPTER_H__ - -#include "tftypes.h" - -/** -* Root interface for test adapter implementations -*/ -class MTFATestAdapter - { - protected: - /** - * Default constructor - */ - IMPORT_C MTFATestAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestAdapter( const MTFATestAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestAdapter& operator=( const MTFATestAdapter& aAdapter ); - - public: - /** - * Returns the type of the test case wrapped into this adapter - */ - virtual TTFATestType Type( void ) const = 0; - }; - -#endif +/* +* 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: Declaration of MTFATestAdapter class +* +*/ + + +#ifndef __MTFATESTADAPTER_H__ +#define __MTFATESTADAPTER_H__ + +#include "tftypes.h" + +/** +* Root interface for test adapter implementations +*/ +class MTFATestAdapter + { + protected: + /** + * Default constructor + */ + IMPORT_C MTFATestAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestAdapter( const MTFATestAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestAdapter& operator=( const MTFATestAdapter& aAdapter ); + + public: + /** + * Returns the type of the test case wrapped into this adapter + */ + virtual TTFATestType Type( void ) const = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestcaseadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,53 +1,53 @@ -/* -* 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: Declaration of MTFATestCaseAdapter class -* -*/ - - -#ifndef __MTFATESTCASEADAPTER_H__ -#define __MTFATESTCASEADAPTER_H__ - -#include "mtfatestadapter.h" - -/** -* Test case adapter is implemented by the adapter libraries. -*/ -class MTFATestCaseAdapter : public MTFATestAdapter - { - protected: - /** - * Constructor - */ - IMPORT_C MTFATestCaseAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestCaseAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestCaseAdapter( const MTFATestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestCaseAdapter& operator=( const MTFATestCaseAdapter& aAdapter ); - }; - -#endif +/* +* 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: Declaration of MTFATestCaseAdapter class +* +*/ + + +#ifndef __MTFATESTCASEADAPTER_H__ +#define __MTFATESTCASEADAPTER_H__ + +#include "mtfatestadapter.h" + +/** +* Test case adapter is implemented by the adapter libraries. +*/ +class MTFATestCaseAdapter : public MTFATestAdapter + { + protected: + /** + * Constructor + */ + IMPORT_C MTFATestCaseAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestCaseAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestCaseAdapter( const MTFATestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestCaseAdapter& operator=( const MTFATestCaseAdapter& aAdapter ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestsuiteadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfatestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,60 +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 "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: Declaration of MTFATestSuiteAdapter class -* -*/ - - -#ifndef __MTFATESTSUITEADAPTER_H__ -#define __MTFATESTSUITEADAPTER_H__ - -#include "mtfatestadapter.h" - -/** -* Test suite adapter interface is implemented by the adapter libraries -*/ -//NONSHARABLE_CLASS( MTFATestSuiteAdapter ): public MTFATestAdapter -class MTFATestSuiteAdapter : public MTFATestAdapter - { - protected: - /** - * Constructor - */ - IMPORT_C MTFATestSuiteAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestSuiteAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestSuiteAdapter( const MTFATestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestSuiteAdapter& operator=( const MTFATestSuiteAdapter& aAdapter ); - - public: - /** - * Adds a test case adapter to this suite - */ - virtual void AddL( MTFATestAdapter& aAdapter ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFATestSuiteAdapter class +* +*/ + + +#ifndef __MTFATESTSUITEADAPTER_H__ +#define __MTFATESTSUITEADAPTER_H__ + +#include "mtfatestadapter.h" + +/** +* Test suite adapter interface is implemented by the adapter libraries +*/ +//NONSHARABLE_CLASS( MTFATestSuiteAdapter ): public MTFATestAdapter +class MTFATestSuiteAdapter : public MTFATestAdapter + { + protected: + /** + * Constructor + */ + IMPORT_C MTFATestSuiteAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestSuiteAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestSuiteAdapter( const MTFATestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestSuiteAdapter& operator=( const MTFATestSuiteAdapter& aAdapter ); + + public: + /** + * Adds a test case adapter to this suite + */ + virtual void AddL( MTFATestAdapter& aAdapter ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubcontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,65 +1,65 @@ -/* -* 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: Declaration of MTFStubControl class -* -*/ - - -#ifndef __MTFSTUBCONTROL_H__ -#define __MTFSTUBCONTROL_H__ - -class MTFTestCase; -class CTFStub; - -/** -* Interface to the stub controller implementation -*/ -NONSHARABLE_CLASS( MTFStubControl ) - { - protected: - /** - * Default constructor - */ - MTFStubControl( void ); - - public: - /** - * Destructor - */ - virtual ~MTFStubControl( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubControl( const MTFStubControl& aControl ); - - /** - * Assignment operator is hidden - */ - MTFStubControl& operator=( const MTFStubControl& aControl ); - - public: - /** - * Sets the currently executing test case - */ - virtual void SetCurrentTestCase( MTFTestCase* aTestCase ) = 0; - - /** - * Gets the stub which has the given plug-in module identifier - */ - virtual CTFStub* Stub( TInt aStubType ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubControl class +* +*/ + + +#ifndef __MTFSTUBCONTROL_H__ +#define __MTFSTUBCONTROL_H__ + +class MTFTestCase; +class CTFStub; + +/** +* Interface to the stub controller implementation +*/ +NONSHARABLE_CLASS( MTFStubControl ) + { + protected: + /** + * Default constructor + */ + MTFStubControl( void ); + + public: + /** + * Destructor + */ + virtual ~MTFStubControl( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubControl( const MTFStubControl& aControl ); + + /** + * Assignment operator is hidden + */ + MTFStubControl& operator=( const MTFStubControl& aControl ); + + public: + /** + * Sets the currently executing test case + */ + virtual void SetCurrentTestCase( MTFTestCase* aTestCase ) = 0; + + /** + * Gets the stub which has the given plug-in module identifier + */ + virtual CTFStub* Stub( TInt aStubType ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubinterface.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,66 +1,66 @@ -/* -* 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: Declaration of MTFStubInterface class -* -*/ - - -#ifndef __MTFSTUBINTERFACE_H__ -#define __MTFSTUBINTERFACE_H__ - -class MTFStubTestCase; - -/** -* Interface to obtain the current plug-in specific test case from -* the test case controller. -*/ -NONSHARABLE_CLASS( MTFStubInterface ) - { - protected: - /** - * Constructor - */ - MTFStubInterface( void ); - - public: - /** - * Destructor - */ - virtual ~MTFStubInterface( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubInterface( const MTFStubInterface& aInterface ); - - /** - * Assignment operator is hidden - */ - MTFStubInterface& operator=( const MTFStubInterface& aInterface ); - - public: - /** - * Returns a plug-in specific part of the currently executing test case. - * @param aTestCaseType The identifier of the plug-in module - */ - virtual MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ) = 0; - - /** - * Returns the ID of currently executing test case - */ - virtual TInt CurrentTestCaseID( void ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubInterface class +* +*/ + + +#ifndef __MTFSTUBINTERFACE_H__ +#define __MTFSTUBINTERFACE_H__ + +class MTFStubTestCase; + +/** +* Interface to obtain the current plug-in specific test case from +* the test case controller. +*/ +NONSHARABLE_CLASS( MTFStubInterface ) + { + protected: + /** + * Constructor + */ + MTFStubInterface( void ); + + public: + /** + * Destructor + */ + virtual ~MTFStubInterface( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubInterface( const MTFStubInterface& aInterface ); + + /** + * Assignment operator is hidden + */ + MTFStubInterface& operator=( const MTFStubInterface& aInterface ); + + public: + /** + * Returns a plug-in specific part of the currently executing test case. + * @param aTestCaseType The identifier of the plug-in module + */ + virtual MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ) = 0; + + /** + * Returns the ID of currently executing test case + */ + virtual TInt CurrentTestCaseID( void ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubtestcase.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubtestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtfstubtestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Declaration of MTFStubTestCase class -* -*/ - - -#ifndef __MTFSTUBTESTCASE_H__ -#define __MTFSTUBTESTCASE_H__ - -class MTFTestCaseInterface; -class CTFStub; - -/** -* Interface that is implemented to add plug-in specific parts to test cases. -*/ -NONSHARABLE_CLASS( MTFStubTestCase ) - { - protected: - /** - * Default constructor - */ - MTFStubTestCase( void ); - - public: - /** - * Destructor is virtual so that framework can delete this object - */ - virtual ~MTFStubTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubTestCase( const MTFStubTestCase& aCase ); - - /** - * Assignment operator is hidden - */ - MTFStubTestCase& operator=( const MTFStubTestCase& aCase ); - - public: - /** - * Sets the callback interface. This is called by the framework - * when an instance of MTFStubTestCase is returned via the plug-in - * interface - */ - virtual void SetCallback( MTFTestCaseInterface& aCallback ) = 0; - - /** - * Returns the test case type. This must return the same type as the - * CTFStub implementation within a plug-in module. - */ - virtual TInt Type( void ) = 0; - - /** - * Writes this object to log at given logger depth. - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Initializes this test case - */ - virtual void SetupL( void ) = 0; - - /** - * Runs this test case - */ - virtual void RunL( void ) = 0; - - /** - * Releases resources allocated to this test case - */ - virtual void Teardown( void ) = 0; - - /** - * Determines if this test case has completed - */ - virtual TBool IsComplete( void ) = 0; - - /** - * Sets the stub object of the plug-in module to this test case - */ - virtual void SetStub( CTFStub& aStub ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubTestCase class +* +*/ + + +#ifndef __MTFSTUBTESTCASE_H__ +#define __MTFSTUBTESTCASE_H__ + +class MTFTestCaseInterface; +class CTFStub; + +/** +* Interface that is implemented to add plug-in specific parts to test cases. +*/ +NONSHARABLE_CLASS( MTFStubTestCase ) + { + protected: + /** + * Default constructor + */ + MTFStubTestCase( void ); + + public: + /** + * Destructor is virtual so that framework can delete this object + */ + virtual ~MTFStubTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubTestCase( const MTFStubTestCase& aCase ); + + /** + * Assignment operator is hidden + */ + MTFStubTestCase& operator=( const MTFStubTestCase& aCase ); + + public: + /** + * Sets the callback interface. This is called by the framework + * when an instance of MTFStubTestCase is returned via the plug-in + * interface + */ + virtual void SetCallback( MTFTestCaseInterface& aCallback ) = 0; + + /** + * Returns the test case type. This must return the same type as the + * CTFStub implementation within a plug-in module. + */ + virtual TInt Type( void ) = 0; + + /** + * Writes this object to log at given logger depth. + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Initializes this test case + */ + virtual void SetupL( void ) = 0; + + /** + * Runs this test case + */ + virtual void RunL( void ) = 0; + + /** + * Releases resources allocated to this test case + */ + virtual void Teardown( void ) = 0; + + /** + * Determines if this test case has completed + */ + virtual TBool IsComplete( void ) = 0; + + /** + * Sets the stub object of the plug-in module to this test case + */ + virtual void SetStub( CTFStub& aStub ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcase.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,73 +1,73 @@ -/* -* 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: Declaration of MTFTestCase class -* -*/ - - -#ifndef __MTFTESTCASE_H__ -#define __MTFTESTCASE_H__ - -#include "tftypes.h" - -class MTFStubTestCase; - -/** -* Interface for test cases that are divided into different plug-in modules. -*/ -NONSHARABLE_CLASS( MTFTestCase ) - { - protected: - /** - * Default constructor - */ - MTFTestCase( void ); - - public: - /** - * Destructor - */ - virtual ~MTFTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFTestCase( const MTFTestCase& aCase ); - - /** - * Assignement operator is hidden - */ - MTFTestCase& operator=( const MTFTestCase& aCase ); - - public: - /** - * Returns the plug-in specific part that has the given type - * @param aTestCaseType The type - */ - virtual MTFStubTestCase* TestCase( TInt aTestCaseType ) = 0; - - /** - * Returns the test type. This is the same function - * as in CTFATest abstract base class. - */ - virtual TTFATestType Type( void ) const = 0; - - /** - * Returns the test case ID of this test case - */ - virtual TInt TestCaseID( void ) const = 0; - }; - -#endif +/* +* 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: Declaration of MTFTestCase class +* +*/ + + +#ifndef __MTFTESTCASE_H__ +#define __MTFTESTCASE_H__ + +#include "tftypes.h" + +class MTFStubTestCase; + +/** +* Interface for test cases that are divided into different plug-in modules. +*/ +NONSHARABLE_CLASS( MTFTestCase ) + { + protected: + /** + * Default constructor + */ + MTFTestCase( void ); + + public: + /** + * Destructor + */ + virtual ~MTFTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFTestCase( const MTFTestCase& aCase ); + + /** + * Assignement operator is hidden + */ + MTFTestCase& operator=( const MTFTestCase& aCase ); + + public: + /** + * Returns the plug-in specific part that has the given type + * @param aTestCaseType The type + */ + virtual MTFStubTestCase* TestCase( TInt aTestCaseType ) = 0; + + /** + * Returns the test type. This is the same function + * as in CTFATest abstract base class. + */ + virtual TTFATestType Type( void ) const = 0; + + /** + * Returns the test case ID of this test case + */ + virtual TInt TestCaseID( void ) const = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcaseinterface.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcaseinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/mtftestcaseinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of MTFTestCaseInterface class -* -*/ - - -#ifndef __MTFTESTCASEINTERFACE_H__ -#define __MTFTESTCASEINTERFACE_H__ - -#include - -class CTFATestLog; - -/** -* MTFTestCaseInterface is a callback interface that is given to stub test case implementations -* when they are initialized. -*/ -NONSHARABLE_CLASS( MTFTestCaseInterface) - { - protected: - /** - * Default constructor - */ - MTFTestCaseInterface( void ); - - public: - /** - * Destructor - */ - virtual ~MTFTestCaseInterface( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFTestCaseInterface( const MTFTestCaseInterface& aInterface ); - - /** - * Assignment operator is hidden - */ - MTFTestCaseInterface& operator=( const MTFTestCaseInterface& aInterface ); - - public: - /** - * Called by the stub test case implementation to notify that the test is complete. - * This can be called multiple times, but the first error result will become the test - * result. - * @param aTestResult The test result - */ - virtual void TestComplete( TInt aTestResult ) = 0; - - /** - * Returns the test case logger. - */ - virtual CTFATestLog& Logger( void ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFTestCaseInterface class +* +*/ + + +#ifndef __MTFTESTCASEINTERFACE_H__ +#define __MTFTESTCASEINTERFACE_H__ + +#include + +class CTFATestLog; + +/** +* MTFTestCaseInterface is a callback interface that is given to stub test case implementations +* when they are initialized. +*/ +NONSHARABLE_CLASS( MTFTestCaseInterface) + { + protected: + /** + * Default constructor + */ + MTFTestCaseInterface( void ); + + public: + /** + * Destructor + */ + virtual ~MTFTestCaseInterface( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFTestCaseInterface( const MTFTestCaseInterface& aInterface ); + + /** + * Assignment operator is hidden + */ + MTFTestCaseInterface& operator=( const MTFTestCaseInterface& aInterface ); + + public: + /** + * Called by the stub test case implementation to notify that the test is complete. + * This can be called multiple times, but the first error result will become the test + * result. + * @param aTestResult The test result + */ + virtual void TestComplete( TInt aTestResult ) = 0; + + /** + * Returns the test case logger. + */ + virtual CTFATestLog& Logger( void ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/tftypes.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/tftypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/inc/tftypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,80 +1,80 @@ -/* -* 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: Declaration of test tool constants -* -*/ - - -#ifndef __TFTYPES_H__ -#define __TFTYPES_H__ - -#include - -/** -* Test framework test case types -*/ -enum TTFATestType - { - ETFATestTypeCase = 1, - ETFATestTypeSuite = 2, - ETFTestTypeStubWrapper = 3, - ETFTestTypeStubRepeater = 4 - }; - -/** -* Test framework panic codes -*/ -enum TTFPanic - { - ETFPanicInvalidTestName = 1, - ETFPanicInvalidTestCaseNumber = 2, - ETFPanicTlsExists = 3, - ETFPanicTlsMissing = 4, - ETFPanicFactory = 5, - ETFPanicDuplicateCase = 6, - ETFPanicStubMissing = 7, - ETFPanicDuplicateStub = 8, - ETFPanicComponentMissing = 9, - ETFPanicInvalidStubType = 10 - }; - -/** -* Test case flags -*/ -enum TTFTestCaseFlags - { - ETFMayLeakMemory = 1, - ETFMayLeakRequests = 2, - ETFMayLeakHandles = 4 - }; - -/** -* Panic category -*/ -_LIT( KTFName, "Test Framework" ); - -/** -* Maximum test case name length -*/ -const TInt KTFAMaxTestNameLength = 128; - -/** -* Test case error codes -*/ -const TInt KTFErrIgnore = -10000; -const TInt KTFErrTestNotActive = -10001; -const TInt KTFErrNoTestCase = -10002; -const TInt KTFErrNoStub = -10003; - -#endif +/* +* 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: Declaration of test tool constants +* +*/ + + +#ifndef __TFTYPES_H__ +#define __TFTYPES_H__ + +#include + +/** +* Test framework test case types +*/ +enum TTFATestType + { + ETFATestTypeCase = 1, + ETFATestTypeSuite = 2, + ETFTestTypeStubWrapper = 3, + ETFTestTypeStubRepeater = 4 + }; + +/** +* Test framework panic codes +*/ +enum TTFPanic + { + ETFPanicInvalidTestName = 1, + ETFPanicInvalidTestCaseNumber = 2, + ETFPanicTlsExists = 3, + ETFPanicTlsMissing = 4, + ETFPanicFactory = 5, + ETFPanicDuplicateCase = 6, + ETFPanicStubMissing = 7, + ETFPanicDuplicateStub = 8, + ETFPanicComponentMissing = 9, + ETFPanicInvalidStubType = 10 + }; + +/** +* Test case flags +*/ +enum TTFTestCaseFlags + { + ETFMayLeakMemory = 1, + ETFMayLeakRequests = 2, + ETFMayLeakHandles = 4 + }; + +/** +* Panic category +*/ +_LIT( KTFName, "Test Framework" ); + +/** +* Maximum test case name length +*/ +const TInt KTFAMaxTestNameLength = 128; + +/** +* Test case error codes +*/ +const TInt KTFErrIgnore = -10000; +const TInt KTFErrTestNotActive = -10001; +const TInt KTFErrNoTestCase = -10002; +const TInt KTFErrNoStub = -10003; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaactivetest.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaactivetest.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaactivetest.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Implementation of CTFAActiveTest class -* -*/ - - -// INCLUDE FILES -#include "ctfaactivetest.h" -#include "mtfaactivetest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// MTFAActiveTest::MTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C MTFAActiveTest::MTFAActiveTest( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFAActiveTest::~MTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C MTFAActiveTest::~MTFAActiveTest( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::CTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C CTFAActiveTest::CTFAActiveTest( MTFAActiveTest& aCallback ) -: CActive( EPriorityNormal ) -, iCallback( aCallback ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::~CTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C CTFAActiveTest::~CTFAActiveTest( void ) - { - Cancel(); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::RunL -// ----------------------------------------------------------------------------- -void CTFAActiveTest::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL()" ) ) ); - iCallback.ActiveTestRunL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::DoCancel -// ----------------------------------------------------------------------------- -void CTFAActiveTest::DoCancel( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel()" ) ) ); - iCallback.ActiveTestCancel(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::Status -// ----------------------------------------------------------------------------- -EXPORT_C TRequestStatus& CTFAActiveTest::Status( void ) - { - return iStatus; - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::DoSetActive -// ----------------------------------------------------------------------------- -EXPORT_C void CTFAActiveTest::DoSetActive( void ) - { - CActive::SetActive(); - } - +/* +* 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: Implementation of CTFAActiveTest class +* +*/ + + +// INCLUDE FILES +#include "ctfaactivetest.h" +#include "mtfaactivetest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// MTFAActiveTest::MTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C MTFAActiveTest::MTFAActiveTest( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFAActiveTest::~MTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C MTFAActiveTest::~MTFAActiveTest( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::CTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C CTFAActiveTest::CTFAActiveTest( MTFAActiveTest& aCallback ) +: CActive( EPriorityNormal ) +, iCallback( aCallback ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::~CTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C CTFAActiveTest::~CTFAActiveTest( void ) + { + Cancel(); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::RunL +// ----------------------------------------------------------------------------- +void CTFAActiveTest::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL()" ) ) ); + iCallback.ActiveTestRunL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::DoCancel +// ----------------------------------------------------------------------------- +void CTFAActiveTest::DoCancel( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel()" ) ) ); + iCallback.ActiveTestCancel(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::Status +// ----------------------------------------------------------------------------- +EXPORT_C TRequestStatus& CTFAActiveTest::Status( void ) + { + return iStatus; + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::DoSetActive +// ----------------------------------------------------------------------------- +EXPORT_C void CTFAActiveTest::DoSetActive( void ) + { + CActive::SetActive(); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfactivescheduler.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfactivescheduler.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfactivescheduler.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,55 +1,55 @@ -/* -* 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: Implementation of CTFActiveScheduler class -* -*/ - - -// INCLUDE FILES -#include "ctfactivescheduler.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::CTFActiveScheduler -// ----------------------------------------------------------------------------- -CTFActiveScheduler::CTFActiveScheduler( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::~CTFActiveScheduler -// ----------------------------------------------------------------------------- -CTFActiveScheduler::~CTFActiveScheduler( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::Error -// ----------------------------------------------------------------------------- -#if defined ( COMPONENT_TRACE_FLAG ) && defined ( _DEBUG ) -void CTFActiveScheduler::Error( TInt aError ) const - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFActiveScheduler::Error(0x%x)" ), aError ) ); - TRACE_ASSERT_ALWAYS; - } -#else -void CTFActiveScheduler::Error( TInt /*aError*/ ) const - { - TRACE_ASSERT_ALWAYS; - } -#endif - - +/* +* 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: Implementation of CTFActiveScheduler class +* +*/ + + +// INCLUDE FILES +#include "ctfactivescheduler.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::CTFActiveScheduler +// ----------------------------------------------------------------------------- +CTFActiveScheduler::CTFActiveScheduler( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::~CTFActiveScheduler +// ----------------------------------------------------------------------------- +CTFActiveScheduler::~CTFActiveScheduler( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::Error +// ----------------------------------------------------------------------------- +#if defined ( COMPONENT_TRACE_FLAG ) && defined ( _DEBUG ) +void CTFActiveScheduler::Error( TInt aError ) const + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFActiveScheduler::Error(0x%x)" ), aError ) ); + TRACE_ASSERT_ALWAYS; + } +#else +void CTFActiveScheduler::Error( TInt /*aError*/ ) const + { + TRACE_ASSERT_ALWAYS; + } +#endif + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaentrypoint.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaentrypoint.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfaentrypoint.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,184 +1,184 @@ -/* -* 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: Implementation of CTFAEntryPoint class -* -*/ - - -// INCLUDE FILES -#include "ctfatestenvironment.h" -#include "ctfatestlog.h" -#include "ctfatestsuite.h" -#include "ctfatestcase.h" -#include "ctffactory.h" -#include "ctfaentrypoint.h" -#include "ctfatestcaseadapter.h" -#include "ctfatestsuiteadapter.h" -#include "dsytesttooltrace.h" -#include "ctfactivescheduler.h" - -// 2-second timer is used to wait for asynchronous startup tasks -// performed by tested components. -const TInt KTFStartupWait = 2000000; - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), - buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::CTFAEntryPoint -// ----------------------------------------------------------------------------- -EXPORT_C CTFAEntryPoint::CTFAEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::~CTFAEntryPoint -// ----------------------------------------------------------------------------- -EXPORT_C CTFAEntryPoint::~CTFAEntryPoint( void ) - { - delete iRootSuite; - delete iEnvironment; - // The root suite adapter is deleted by the test framework. - // This object is deleted by the root suite adapter. - iRootSuiteAdapter = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::RootSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter* CTFAEntryPoint::RootSuiteAdapter( void ) - { - return iRootSuiteAdapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::TimerCallback -// ----------------------------------------------------------------------------- -TInt CTFAEntryPoint::TimerCallback( TAny* ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback()" ) ) ); - CActiveScheduler::Stop(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback - return 0x%x" ), EFalse ) ); - return EFalse; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::ConstructL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFAEntryPoint::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL()" ) ) ); - iRootSuite = new ( ELeave ) CTFATestSuite( _L( "Root" ) ); - iRootSuiteAdapter = CreateSuiteAdapterLC( *iRootSuite, ETrue ); - CleanupStack::Pop(); - iEnvironment = CreateEnvironmentL(); - if ( CActiveScheduler::Current() == NULL ) - { - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CActiveScheduler::Install( scheduler ); - iEnvironment->SetScheduler( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler installed" ) ) ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler was already installed" ) ) ); - } - CTFFactory* factory = CTFFactory::NewL(); - iEnvironment->SetFactory( factory ); - iRootSuite->SetEnvironment( *iEnvironment ); - factory->BuildTestSuiteL( iRootSuite ); - iEnvironment->Logger().Write( _L( "Test suite built:" ) ); - iEnvironment->Logger().StartList(); - BuildAdapterSuiteL( *iRootSuite, *iRootSuiteAdapter ); - iEnvironment->Logger().EndList(); - CPeriodic* timer = CPeriodic::NewL( EPriorityNormal ); - // Waits for the tested modules to perform asynchronous startup tasks - timer->Start( TTimeIntervalMicroSeconds32( KTFStartupWait ), - TTimeIntervalMicroSeconds32( KTFStartupWait ), TCallBack( TimerCallback, NULL ) ); - CActiveScheduler::Start(); - delete timer; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::BuildAdapterSuiteL -// ----------------------------------------------------------------------------- -void CTFAEntryPoint::BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL(0x%x, 0x%x)" ), &aSuite, &aAdapter ) ); - _LIT( KRoot, "%S" ); - iEnvironment->Logger().WriteList( iDepth++, KRoot, &aSuite.Name() ); - for ( TInt i = 0; i < aSuite.Count(); i++ ) - { - CTFATest* test = &aSuite.At( i ); - if ( test->Type() == ETFATestTypeSuite ) - { - //lint -e826 Suspicious pointer-to-pointer conversion - CTFATestSuite* suite = STATIC_CAST( CTFATestSuite*, test ); - //lint +e826 - MTFATestSuiteAdapter* adapter = CreateSuiteAdapterLC( *suite, EFalse ); - aAdapter.AddL( *adapter ); - BuildAdapterSuiteL( *suite, *adapter ); - CleanupStack::Pop(); - } - else - { - //lint -e826 Suspicious pointer-to-pointer conversion - CTFATestCase* testCase = STATIC_CAST( CTFATestCase*, test ); - //lint +e826 - testCase->Log( iDepth ); - MTFATestCaseAdapter* adapter = CreateTestAdapterLC( *testCase ); - aAdapter.AddL( *adapter ); - CleanupStack::Pop(); - } - } - iDepth--; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL - return void" ) ) ); - } - +/* +* 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: Implementation of CTFAEntryPoint class +* +*/ + + +// INCLUDE FILES +#include "ctfatestenvironment.h" +#include "ctfatestlog.h" +#include "ctfatestsuite.h" +#include "ctfatestcase.h" +#include "ctffactory.h" +#include "ctfaentrypoint.h" +#include "ctfatestcaseadapter.h" +#include "ctfatestsuiteadapter.h" +#include "dsytesttooltrace.h" +#include "ctfactivescheduler.h" + +// 2-second timer is used to wait for asynchronous startup tasks +// performed by tested components. +const TInt KTFStartupWait = 2000000; + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), + buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::CTFAEntryPoint +// ----------------------------------------------------------------------------- +EXPORT_C CTFAEntryPoint::CTFAEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::~CTFAEntryPoint +// ----------------------------------------------------------------------------- +EXPORT_C CTFAEntryPoint::~CTFAEntryPoint( void ) + { + delete iRootSuite; + delete iEnvironment; + // The root suite adapter is deleted by the test framework. + // This object is deleted by the root suite adapter. + iRootSuiteAdapter = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::RootSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter* CTFAEntryPoint::RootSuiteAdapter( void ) + { + return iRootSuiteAdapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::TimerCallback +// ----------------------------------------------------------------------------- +TInt CTFAEntryPoint::TimerCallback( TAny* ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback()" ) ) ); + CActiveScheduler::Stop(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback - return 0x%x" ), EFalse ) ); + return EFalse; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::ConstructL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFAEntryPoint::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL()" ) ) ); + iRootSuite = new ( ELeave ) CTFATestSuite( _L( "Root" ) ); + iRootSuiteAdapter = CreateSuiteAdapterLC( *iRootSuite, ETrue ); + CleanupStack::Pop(); + iEnvironment = CreateEnvironmentL(); + if ( CActiveScheduler::Current() == NULL ) + { + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CActiveScheduler::Install( scheduler ); + iEnvironment->SetScheduler( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler installed" ) ) ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler was already installed" ) ) ); + } + CTFFactory* factory = CTFFactory::NewL(); + iEnvironment->SetFactory( factory ); + iRootSuite->SetEnvironment( *iEnvironment ); + factory->BuildTestSuiteL( iRootSuite ); + iEnvironment->Logger().Write( _L( "Test suite built:" ) ); + iEnvironment->Logger().StartList(); + BuildAdapterSuiteL( *iRootSuite, *iRootSuiteAdapter ); + iEnvironment->Logger().EndList(); + CPeriodic* timer = CPeriodic::NewL( EPriorityNormal ); + // Waits for the tested modules to perform asynchronous startup tasks + timer->Start( TTimeIntervalMicroSeconds32( KTFStartupWait ), + TTimeIntervalMicroSeconds32( KTFStartupWait ), TCallBack( TimerCallback, NULL ) ); + CActiveScheduler::Start(); + delete timer; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::BuildAdapterSuiteL +// ----------------------------------------------------------------------------- +void CTFAEntryPoint::BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL(0x%x, 0x%x)" ), &aSuite, &aAdapter ) ); + _LIT( KRoot, "%S" ); + iEnvironment->Logger().WriteList( iDepth++, KRoot, &aSuite.Name() ); + for ( TInt i = 0; i < aSuite.Count(); i++ ) + { + CTFATest* test = &aSuite.At( i ); + if ( test->Type() == ETFATestTypeSuite ) + { + //lint -e826 Suspicious pointer-to-pointer conversion + CTFATestSuite* suite = STATIC_CAST( CTFATestSuite*, test ); + //lint +e826 + MTFATestSuiteAdapter* adapter = CreateSuiteAdapterLC( *suite, EFalse ); + aAdapter.AddL( *adapter ); + BuildAdapterSuiteL( *suite, *adapter ); + CleanupStack::Pop(); + } + else + { + //lint -e826 Suspicious pointer-to-pointer conversion + CTFATestCase* testCase = STATIC_CAST( CTFATestCase*, test ); + //lint +e826 + testCase->Log( iDepth ); + MTFATestCaseAdapter* adapter = CreateTestAdapterLC( *testCase ); + aAdapter.AddL( *adapter ); + CleanupStack::Pop(); + } + } + iDepth--; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL - return void" ) ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatest.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatest.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatest.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,69 +1,69 @@ -/* -* 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: Implementation of CTFATest class -* -*/ - - -// INCLUDE FILES -#include "ctfatest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATest::CTFATest -// ----------------------------------------------------------------------------- -CTFATest::CTFATest( const TDesC& aName ) - { - TRACE_ASSERT( aName.Length() > 0 && aName.Length() < KTFAMaxTestNameLength ); - __ASSERT_ALWAYS( aName.Length() > 0, User::Panic( KTFName, ETFPanicInvalidTestName ) ); - __ASSERT_ALWAYS( aName.Length() < KTFAMaxTestNameLength, User::Panic( KTFName, ETFPanicInvalidTestName ) ); - iName.Copy( aName ); - } - - -// ----------------------------------------------------------------------------- -// CTFATest::~CTFATest -// ----------------------------------------------------------------------------- -CTFATest::~CTFATest( void ) - { - iEnvironment = NULL; - } - - -// ----------------------------------------------------------------------------- -// TDesC& CTFATest::Name -// ----------------------------------------------------------------------------- -EXPORT_C const TDesC& CTFATest::Name( void ) const - { - return iName; - } - - -// ----------------------------------------------------------------------------- -// CTFATest::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATest::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - iEnvironment = &aEnvironment; - } - - -// ----------------------------------------------------------------------------- -// CTFATest::Environment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment& CTFATest::Environment( void ) - { - return *iEnvironment; - } - +/* +* 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: Implementation of CTFATest class +* +*/ + + +// INCLUDE FILES +#include "ctfatest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATest::CTFATest +// ----------------------------------------------------------------------------- +CTFATest::CTFATest( const TDesC& aName ) + { + TRACE_ASSERT( aName.Length() > 0 && aName.Length() < KTFAMaxTestNameLength ); + __ASSERT_ALWAYS( aName.Length() > 0, User::Panic( KTFName, ETFPanicInvalidTestName ) ); + __ASSERT_ALWAYS( aName.Length() < KTFAMaxTestNameLength, User::Panic( KTFName, ETFPanicInvalidTestName ) ); + iName.Copy( aName ); + } + + +// ----------------------------------------------------------------------------- +// CTFATest::~CTFATest +// ----------------------------------------------------------------------------- +CTFATest::~CTFATest( void ) + { + iEnvironment = NULL; + } + + +// ----------------------------------------------------------------------------- +// TDesC& CTFATest::Name +// ----------------------------------------------------------------------------- +EXPORT_C const TDesC& CTFATest::Name( void ) const + { + return iName; + } + + +// ----------------------------------------------------------------------------- +// CTFATest::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATest::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + iEnvironment = &aEnvironment; + } + + +// ----------------------------------------------------------------------------- +// CTFATest::Environment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment& CTFATest::Environment( void ) + { + return *iEnvironment; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcase.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,128 +1,128 @@ -/* -* 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: Implementation of CTFATestCase class -* -*/ - - -// INCLUDE FILES -#include "ctfatestcase.h" -#include "ctfatestenvironment.h" -#include "dsytesttooltrace.h" - -const TInt KDefaultTestTimeout = 30; - -// ----------------------------------------------------------------------------- -// CTFATestCase::CTFATestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCase::CTFATestCase( TInt aCaseId, const TDesC& aName ) -: CTFATest( aName ) -, iCaseId( aCaseId ) -, iTimeout( KDefaultTestTimeout ) - { - TRACE_ASSERT( aCaseId > 0 ); - __ASSERT_ALWAYS( aCaseId > 0, User::Panic( KTFName, ETFPanicInvalidTestCaseNumber ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::~CTFATestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCase::~CTFATestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestCase::Type( void ) const - { - return ETFATestTypeCase; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Id -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestCase::Id( void ) const - { - return iCaseId; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetTimeout -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetTimeout( TInt aTimeout ) - { - iTimeout = aTimeout; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetRunOnStartup -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetRunOnStartup( TBool aFlag ) - { - iRunOnStartup = aFlag; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Timeout -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestCase::Timeout( void ) const - { - return iTimeout; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::RunOnStartup -// ----------------------------------------------------------------------------- -EXPORT_C TBool CTFATestCase::RunOnStartup( void ) const - { - return iRunOnStartup; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetFlags -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetFlags( TUint32 aFlags ) - { - iFlags = aFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Flags -// ----------------------------------------------------------------------------- -EXPORT_C TUint32 CTFATestCase::Flags( void ) const - { - return iFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATest::SetEnvironment( aEnvironment ); - iFlags = aEnvironment.TestCaseFlags(); - } - - +/* +* 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: Implementation of CTFATestCase class +* +*/ + + +// INCLUDE FILES +#include "ctfatestcase.h" +#include "ctfatestenvironment.h" +#include "dsytesttooltrace.h" + +const TInt KDefaultTestTimeout = 30; + +// ----------------------------------------------------------------------------- +// CTFATestCase::CTFATestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCase::CTFATestCase( TInt aCaseId, const TDesC& aName ) +: CTFATest( aName ) +, iCaseId( aCaseId ) +, iTimeout( KDefaultTestTimeout ) + { + TRACE_ASSERT( aCaseId > 0 ); + __ASSERT_ALWAYS( aCaseId > 0, User::Panic( KTFName, ETFPanicInvalidTestCaseNumber ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::~CTFATestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCase::~CTFATestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestCase::Type( void ) const + { + return ETFATestTypeCase; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Id +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestCase::Id( void ) const + { + return iCaseId; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetTimeout +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetTimeout( TInt aTimeout ) + { + iTimeout = aTimeout; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetRunOnStartup +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetRunOnStartup( TBool aFlag ) + { + iRunOnStartup = aFlag; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Timeout +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestCase::Timeout( void ) const + { + return iTimeout; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::RunOnStartup +// ----------------------------------------------------------------------------- +EXPORT_C TBool CTFATestCase::RunOnStartup( void ) const + { + return iRunOnStartup; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetFlags +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetFlags( TUint32 aFlags ) + { + iFlags = aFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Flags +// ----------------------------------------------------------------------------- +EXPORT_C TUint32 CTFATestCase::Flags( void ) const + { + return iFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATest::SetEnvironment( aEnvironment ); + iFlags = aEnvironment.TestCaseFlags(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcaseadapter.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcaseadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestcaseadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* 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: Implementation of CTFATestCaseAdapter class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "ctfatestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// MTFATestAdapter::MTFATestAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestAdapter::MTFATestAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestAdapter::~MTFATestAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestAdapter::~MTFATestAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestCaseAdapter::MTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestCaseAdapter::MTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestCaseAdapter::~MTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestCaseAdapter::~MTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::CTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCaseAdapter::CTFATestCaseAdapter( CTFATestCase& aTestCase ) -: iTestCase( aTestCase ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::~CTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCaseAdapter::~CTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestCaseAdapter::Type( void ) const - { - return ETFATestTypeCase; - } - +/* +* 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: Implementation of CTFATestCaseAdapter class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "ctfatestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// MTFATestAdapter::MTFATestAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestAdapter::MTFATestAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestAdapter::~MTFATestAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestAdapter::~MTFATestAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestCaseAdapter::MTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestCaseAdapter::MTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestCaseAdapter::~MTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestCaseAdapter::~MTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::CTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCaseAdapter::CTFATestCaseAdapter( CTFATestCase& aTestCase ) +: iTestCase( aTestCase ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::~CTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCaseAdapter::~CTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestCaseAdapter::Type( void ) const + { + return ETFATestTypeCase; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestenvironment.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestenvironment.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestenvironment.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,119 +1,119 @@ -/* -* 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: Implementation of CTFATestEnvironment class -* -*/ - - -// INCLUDE FILES -#include "ctfatestlog.h" -#include "ctfatestenvironment.h" -#include "ctffactory.h" -#include "ctfactivescheduler.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestLog::CTFATestLog -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog::CTFATestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestLog::~CTFATestLog -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog::~CTFATestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::CTFATestEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment::CTFATestEnvironment( CTFATestLog& aLogger ) -: iLogger( &aLogger ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::~CTFATestEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment::~CTFATestEnvironment( void ) - { - delete iFactory; - if ( iScheduler ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestEnvironment::~CTFATestEnvironment() - Deleting active scheduler" ) ) ); - CActiveScheduler::Install( NULL ); - delete iScheduler; - } - delete iLogger; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetFactory -// ----------------------------------------------------------------------------- -void CTFATestEnvironment::SetFactory( CTFFactory* aFactory ) - { - iFactory = aFactory; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::Factory -// ----------------------------------------------------------------------------- -EXPORT_C CTFFactory* CTFATestEnvironment::Factory( void ) - { - return iFactory; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetScheduler -// ----------------------------------------------------------------------------- -void CTFATestEnvironment::SetScheduler( CTFActiveScheduler* aScheduler ) - { - iScheduler = aScheduler; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::Logger -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog& CTFATestEnvironment::Logger( void ) - { - return *iLogger; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetTestCaseFlags -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestEnvironment::SetTestCaseFlags( TUint32 aTestCaseFlags ) - { - iTestCaseFlags = aTestCaseFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::TestCaseFlags -// ----------------------------------------------------------------------------- -TUint32 CTFATestEnvironment::TestCaseFlags( void ) const - { - return iTestCaseFlags; - } - +/* +* 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: Implementation of CTFATestEnvironment class +* +*/ + + +// INCLUDE FILES +#include "ctfatestlog.h" +#include "ctfatestenvironment.h" +#include "ctffactory.h" +#include "ctfactivescheduler.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestLog::CTFATestLog +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog::CTFATestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestLog::~CTFATestLog +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog::~CTFATestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::CTFATestEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment::CTFATestEnvironment( CTFATestLog& aLogger ) +: iLogger( &aLogger ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::~CTFATestEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment::~CTFATestEnvironment( void ) + { + delete iFactory; + if ( iScheduler ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestEnvironment::~CTFATestEnvironment() - Deleting active scheduler" ) ) ); + CActiveScheduler::Install( NULL ); + delete iScheduler; + } + delete iLogger; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetFactory +// ----------------------------------------------------------------------------- +void CTFATestEnvironment::SetFactory( CTFFactory* aFactory ) + { + iFactory = aFactory; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::Factory +// ----------------------------------------------------------------------------- +EXPORT_C CTFFactory* CTFATestEnvironment::Factory( void ) + { + return iFactory; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetScheduler +// ----------------------------------------------------------------------------- +void CTFATestEnvironment::SetScheduler( CTFActiveScheduler* aScheduler ) + { + iScheduler = aScheduler; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::Logger +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog& CTFATestEnvironment::Logger( void ) + { + return *iLogger; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetTestCaseFlags +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestEnvironment::SetTestCaseFlags( TUint32 aTestCaseFlags ) + { + iTestCaseFlags = aTestCaseFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::TestCaseFlags +// ----------------------------------------------------------------------------- +TUint32 CTFATestEnvironment::TestCaseFlags( void ) const + { + return iTestCaseFlags; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuite.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuite.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuite.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of CTFATestSuite class -* -*/ - - -// INCLUDE FILES -#include "ctfatestsuite.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestSuite::CTFATestSuite -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuite::CTFATestSuite( const TDesC& aName ) -: CTFATest( aName ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::~CTFATestSuite -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuite::~CTFATestSuite( void ) - { - // Deletes all test cases and sub-suites - iTests.ResetAndDestroy(); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestSuite::Type( void ) const - { - return ETFATestTypeSuite; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::Count -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestSuite::Count( void ) const - { - return iTests.Count(); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::At -// ----------------------------------------------------------------------------- -EXPORT_C CTFATest& CTFATestSuite::At( TInt aIndex ) - { - TRACE_ASSERT( aIndex >= 0 && aIndex < iTests.Count() ); - return *(iTests[aIndex]); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::AddL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestSuite::AddL( const CTFATest& aTest ) - { - User::LeaveIfError( iTests.Append( &aTest ) ); - } - +/* +* 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: Implementation of CTFATestSuite class +* +*/ + + +// INCLUDE FILES +#include "ctfatestsuite.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestSuite::CTFATestSuite +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuite::CTFATestSuite( const TDesC& aName ) +: CTFATest( aName ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::~CTFATestSuite +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuite::~CTFATestSuite( void ) + { + // Deletes all test cases and sub-suites + iTests.ResetAndDestroy(); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestSuite::Type( void ) const + { + return ETFATestTypeSuite; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::Count +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestSuite::Count( void ) const + { + return iTests.Count(); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::At +// ----------------------------------------------------------------------------- +EXPORT_C CTFATest& CTFATestSuite::At( TInt aIndex ) + { + TRACE_ASSERT( aIndex >= 0 && aIndex < iTests.Count() ); + return *(iTests[aIndex]); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::AddL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestSuite::AddL( const CTFATest& aTest ) + { + User::LeaveIfError( iTests.Append( &aTest ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuiteadapter.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuiteadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatestsuiteadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of CTFATestSuiteAdapter class -* -*/ - - -// INCLUDE FILES -#include "ctfatestsuite.h" -#include "dsytesttooltrace.h" -#include "ctfatestsuiteadapter.h" -#include "ctfaentrypoint.h" - -// ----------------------------------------------------------------------------- -// MTFATestSuiteAdapter::MTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter::MTFATestSuiteAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestSuiteAdapter::~MTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter::~MTFATestSuiteAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::CTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuiteAdapter::CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) -: iTestSuite( aTestSuite ) -, iEntryPoint( aEntryPoint ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::~CTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuiteAdapter::~CTFATestSuiteAdapter( void ) - { - iTests.ResetAndDestroy(); - // The entry point is non-NULL if this is the root suite - delete iEntryPoint; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestSuiteAdapter::Type( void ) const - { - return ETFATestTypeSuite; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::AddL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestSuiteAdapter::AddL( MTFATestAdapter& aAdapter ) - { - User::LeaveIfError( iTests.Append( &aAdapter ) ); - } +/* +* 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: Implementation of CTFATestSuiteAdapter class +* +*/ + + +// INCLUDE FILES +#include "ctfatestsuite.h" +#include "dsytesttooltrace.h" +#include "ctfatestsuiteadapter.h" +#include "ctfaentrypoint.h" + +// ----------------------------------------------------------------------------- +// MTFATestSuiteAdapter::MTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter::MTFATestSuiteAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestSuiteAdapter::~MTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter::~MTFATestSuiteAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::CTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuiteAdapter::CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) +: iTestSuite( aTestSuite ) +, iEntryPoint( aEntryPoint ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::~CTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuiteAdapter::~CTFATestSuiteAdapter( void ) + { + iTests.ResetAndDestroy(); + // The entry point is non-NULL if this is the root suite + delete iEntryPoint; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestSuiteAdapter::Type( void ) const + { + return ETFATestTypeSuite; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::AddL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestSuiteAdapter::AddL( MTFATestAdapter& aAdapter ) + { + User::LeaveIfError( iTests.Append( &aAdapter ) ); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatesttimer.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatesttimer.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfatesttimer.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,66 +1,66 @@ -/* -* 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: Implementation of CTFATestTimer class -* -*/ - - -// INCLUDE FILES -#include "ctfatesttimer.h" -#include "mtfaactivetest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestTimer::NewL -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestTimer* CTFATestTimer::NewL( MTFAActiveTest& aCallback ) - { - CTFATestTimer* timer = new ( ELeave ) CTFATestTimer( aCallback ); - CleanupStack::PushL( timer ); - timer->ConstructL(); - CleanupStack::Pop( timer ); - return timer; - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::CTFATestTimer -// ----------------------------------------------------------------------------- -CTFATestTimer::CTFATestTimer( MTFAActiveTest& aCallback ) -: CTimer( EPriorityNormal ) -, iCallback( aCallback ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::~CTFATestTimer -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestTimer::~CTFATestTimer( void ) - { - // CTimer calls Cancel - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::RunL -// ----------------------------------------------------------------------------- -void CTFATestTimer::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL()" ) ) ); - iCallback.ActiveTestRunL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL - return void" ) ) ); - } - +/* +* 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: Implementation of CTFATestTimer class +* +*/ + + +// INCLUDE FILES +#include "ctfatesttimer.h" +#include "mtfaactivetest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestTimer::NewL +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestTimer* CTFATestTimer::NewL( MTFAActiveTest& aCallback ) + { + CTFATestTimer* timer = new ( ELeave ) CTFATestTimer( aCallback ); + CleanupStack::PushL( timer ); + timer->ConstructL(); + CleanupStack::Pop( timer ); + return timer; + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::CTFATestTimer +// ----------------------------------------------------------------------------- +CTFATestTimer::CTFATestTimer( MTFAActiveTest& aCallback ) +: CTimer( EPriorityNormal ) +, iCallback( aCallback ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::~CTFATestTimer +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestTimer::~CTFATestTimer( void ) + { + // CTimer calls Cancel + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::RunL +// ----------------------------------------------------------------------------- +void CTFATestTimer::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL()" ) ) ); + iCallback.ActiveTestRunL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL - return void" ) ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tffactory.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tffactory.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tffactory.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,407 +1,407 @@ -/* -* 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: Implementation of CTFFactory class -* -*/ - - -// INCLUDE FILES -#include "tftypes.h" -#include "ctffactory.h" -#include "ctfstub.h" -#include "ctfatestenvironment.h" -#include "ctftestcasewrapper.h" -#include "ctfremotestub.h" -#include "ctftestserver.h" -#include "dsytesttooltrace.h" -#include "ctfstubcontrol.h" -#include "ctfactivescheduler.h" - -struct TTFThreadParam - { - RSemaphore* iSemaphore; - TInt iStubType; - TAny* iMessageData1; - TAny* iMessageData2; - TAny* iMessageData3; - TAny* iMessageData4; - }; - -// ----------------------------------------------------------------------------- -// CTFFactory::NewL -// ----------------------------------------------------------------------------- -CTFFactory* CTFFactory::NewL( void ) - { - CTFFactory* factory = new ( ELeave ) CTFFactory(); - CleanupStack::PushL( factory ); - factory->ConstructL(); - CleanupStack::Pop( factory ); - return factory; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CTFFactory -// ----------------------------------------------------------------------------- -CTFFactory::CTFFactory( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ServerThreadFunctionL -// ----------------------------------------------------------------------------- -void CTFFactory::ServerThreadFunctionL( CTFFactory* aFactory ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL(0x%x)" ), aFactory ) ); - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CleanupStack::PushL( scheduler ); - CActiveScheduler::Install( scheduler ); - CTFTestServer* testServer = new ( ELeave ) CTFTestServer( aFactory ); - CleanupStack::PushL( testServer ); - testServer->StartL( KTFRemoteTestServerName ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - Entering scheduler" ) ) ); - CActiveScheduler::Start(); - CleanupStack::PopAndDestroy( testServer ); - CleanupStack::PopAndDestroy( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ServerThreadFunction -// ----------------------------------------------------------------------------- -TInt CTFFactory::ServerThreadFunction( TAny* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction(0x%x)" ), aData ) ); - CTrapCleanup* cleanup = CTrapCleanup::New(); - if ( cleanup != NULL ) - { - TRAPD( err, ServerThreadFunctionL( ( CTFFactory* )aData ) ); - TRACE_ASSERT( err == KErrNone ); - if( err != KErrNone ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - error" ) ) ); - } - delete cleanup; - } - else - { - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - return 0" ) ) ); - return KErrNone; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ConstructL -// ----------------------------------------------------------------------------- -void CTFFactory::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL()" ) ) ); - TAny* nullPtr = Dll::Tls(); - TRACE_ASSERT( nullPtr == NULL ); - __ASSERT_ALWAYS( nullPtr == NULL, User::Panic( KTFName, ETFPanicTlsExists ) ); - iStubControl = CTFStubControl::NewL(); - Dll::SetTls( this ); - // Starts the local test server - iTestServer = new ( ELeave ) CTFTestServer( this ); - iTestServer->StartL( KTFLocalTestServerName ); - // Starts the remote test server - RThread thread; - User::LeaveIfError( thread.Create( _L( "SERVERTHREAD" ), - ServerThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, this ) ); - thread.Resume(); - thread.Close(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL - return" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::~CTFFactory -// ----------------------------------------------------------------------------- -CTFFactory::~CTFFactory( void ) - { - // Stub control deletes the stubs. Stub destructors - // may access this object, so this is not removed - // from tls before stubs are deleted. - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory()" ) ) ); - delete iStubControl; - Dll::SetTls( NULL ); - iPlugins.ResetAndDestroy(); - iPluginInfos.ResetAndDestroy(); - // Close local server - delete iTestServer; - // Close remote server - RTFTestServer server; - if ( server.Connect( EFalse ) == KErrNone ) - { - server.PostShutdownMessage(); - server.Close(); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::Stub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub* CTFFactory::Stub( TInt aType ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub(0x%x)" ), aType ) ); - CTFStub* stub = NULL; - CTFFactory* factory = STATIC_CAST( CTFFactory*, Dll::Tls() ); - if ( factory != NULL ) - { - CTFStubControl* control = factory->iStubControl; - stub = control->Stub( aType ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub - return 0x%x" ), stub ) ); - return stub; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::InternalStub -// ----------------------------------------------------------------------------- -CTFStub* CTFFactory::InternalStub( TInt aType ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub(0x%x)" ), aType ) ); - CTFStub* stub = iStubControl->Stub( aType ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub - return 0x%x" ), stub ) ); - return stub; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallRemoteStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, &aStatus ) ); - CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); - CleanupStack::PushL( wrapper ); - wrapper->PostMessageLD( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, aStatus ); - CleanupStack::Pop( wrapper ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallRemoteStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - RTFTestServer server; - User::LeaveIfError( server.Connect( EFalse ) ); - TInt result = server.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ); - server.Close(); - User::LeaveIfError( result ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::LocalThreadFunctionL -// ----------------------------------------------------------------------------- -void CTFFactory::LocalThreadFunctionL( TTFThreadParam* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL(0x%x)" ), aData ) ); - // These need to be copied before the semaphore is signalled, since the calling thread - // deletes the TTFThreadParameter structure after it exits RSemaphore.Wait() - TInt stubType = aData->iStubType; - TAny* data1 = aData->iMessageData1; - TAny* data2 = aData->iMessageData2; - TAny* data3 = aData->iMessageData3; - TAny* data4 = aData->iMessageData4; - aData->iSemaphore->Signal(); - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CleanupStack::PushL( scheduler ); - CActiveScheduler::Install( scheduler ); - CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); - CleanupStack::PushL( wrapper ); - wrapper->PostLocalMessageL( stubType, data1, data2, data3, data4 ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - Entering scheduler" ) ) ); - CActiveScheduler::Start(); - CleanupStack::PopAndDestroy( wrapper ); - CleanupStack::PopAndDestroy( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::LocalThreadFunction -// ----------------------------------------------------------------------------- -TInt CTFFactory::LocalThreadFunction( TAny* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction(0x%x)" ), aData ) ); - TRACE_ASSERT( aData ); - CTrapCleanup* cleanup = CTrapCleanup::New(); - if ( cleanup != NULL ) - { - TRAPD( err, LocalThreadFunctionL( ( TTFThreadParam* )aData ) ); - TRACE_ASSERT( err == KErrNone ); - if( err != KErrNone ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - error" ) ) ); - } - delete cleanup; - } - else - { - // Semaphore must be signalled anyway - ( ( TTFThreadParam* )aData )->iSemaphore->Signal(); - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - return 0x%x" ), KErrNone ) ); - return KErrNone; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallLocalStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - TTFThreadParam param; - RSemaphore semaphore; - User::LeaveIfError( semaphore.CreateLocal( 0 ) ); - CleanupClosePushL( semaphore ); - RThread thread; - param.iSemaphore = &semaphore; - param.iStubType = aStubType; - param.iMessageData1 = aMessageData1; - param.iMessageData2 = aMessageData2; - param.iMessageData3 = aMessageData3; - param.iMessageData4 = aMessageData4; - User::LeaveIfError( thread.Create( _L( "DUMMYTHREAD" ), LocalThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, ¶m ) ); - thread.Resume(); - semaphore.Wait(); - CleanupStack::PopAndDestroy( &semaphore ); - thread.Close(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::StubControl -// ----------------------------------------------------------------------------- -MTFStubControl* CTFFactory::StubControl( void ) - { - return iStubControl; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::BuildTestSuiteL -// ----------------------------------------------------------------------------- -void CTFFactory::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL(0x%x)" ), aRootSuite ) ); - CTFStubModuleInterface::ListAllImplementationsL( iPluginInfos ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - Found %d plug-ins" ), iPluginInfos.Count() ) ); - for ( TInt i = 0; i < iPluginInfos.Count(); i++ ) - { - CTFStubModuleInterface *stubIF = CTFStubModuleInterface::NewL( iPluginInfos[i]->DataType() ); - CleanupStack::PushL( stubIF ); - User::LeaveIfError( iPlugins.Append( stubIF ) ); - CleanupStack::Pop( stubIF ); - } - BuildSuiteFromModulesL( aRootSuite ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::BuildSuiteFromModulesL -// ----------------------------------------------------------------------------- -void CTFFactory::BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL(0x%x)" ), aRootSuite ) ); - TInt index; - // Adds stubs from every module - for ( index = 0; index < iPlugins.Count(); index++ ) - { - CTFStub* stub = iPlugins[index]->GetStubL(); - if ( stub != NULL ) - { - CleanupStack::PushL( stub ); - iStubControl->AddStubL( *stub ); - CleanupStack::Pop( stub ); - } - } - // Initializes the stubs - for ( index = 0; index < iStubControl->Count(); index++ ) - { - CTFStub* stub = iStubControl->StubAt( index ); - stub->InitializeL(); - } - // Adds test cases from every module - for ( index = 0; index < iPlugins.Count(); index++ ) - { - iPlugins[index]->BuildTestSuiteL( aRootSuite ); - } - // Initializes test cases - InitializeTestCasesL( aRootSuite ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::InitializeTestCasesL -// ----------------------------------------------------------------------------- -void CTFFactory::InitializeTestCasesL( CTFATestSuite* aSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL(0x%x)" ), aSuite ) ); - for ( TInt i = 0; i < aSuite->Count(); i++ ) - { - CTFATest* test = &aSuite->At( i ); - if ( test->Type() == ETFATestTypeSuite ) - { - //lint -e826 Suspicious pointer-to-pointer conversion - InitializeTestCasesL( STATIC_CAST( CTFATestSuite*, test ) ); - //lint +e826 - } - else if ( test->Type() == ETFTestTypeStubWrapper ) - { - for ( TInt j = 0; j < iPlugins.Count(); j++ ) - { - MTFStubTestCase* stubCase = iPlugins[j]->GetStubTestCaseL( - STATIC_CAST( CTFATestCase*, test )->Id() ); - if ( stubCase != NULL ) - { - CleanupStack::PushL( stubCase ); - STATIC_CAST( CTFTestCaseWrapper*, test )->AddStubTestCaseL( *stubCase ); - CleanupStack::Pop( stubCase ); - } - } - } - else if ( test->Type() == ETFTestTypeStubRepeater ) - { - // Repeaters do not contain stub-specific parts - } - else - { - // Unrecognized test types are not handled - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL - return void" ) ) ); - } - - - - +/* +* 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: Implementation of CTFFactory class +* +*/ + + +// INCLUDE FILES +#include "tftypes.h" +#include "ctffactory.h" +#include "ctfstub.h" +#include "ctfatestenvironment.h" +#include "ctftestcasewrapper.h" +#include "ctfremotestub.h" +#include "ctftestserver.h" +#include "dsytesttooltrace.h" +#include "ctfstubcontrol.h" +#include "ctfactivescheduler.h" + +struct TTFThreadParam + { + RSemaphore* iSemaphore; + TInt iStubType; + TAny* iMessageData1; + TAny* iMessageData2; + TAny* iMessageData3; + TAny* iMessageData4; + }; + +// ----------------------------------------------------------------------------- +// CTFFactory::NewL +// ----------------------------------------------------------------------------- +CTFFactory* CTFFactory::NewL( void ) + { + CTFFactory* factory = new ( ELeave ) CTFFactory(); + CleanupStack::PushL( factory ); + factory->ConstructL(); + CleanupStack::Pop( factory ); + return factory; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CTFFactory +// ----------------------------------------------------------------------------- +CTFFactory::CTFFactory( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ServerThreadFunctionL +// ----------------------------------------------------------------------------- +void CTFFactory::ServerThreadFunctionL( CTFFactory* aFactory ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL(0x%x)" ), aFactory ) ); + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CleanupStack::PushL( scheduler ); + CActiveScheduler::Install( scheduler ); + CTFTestServer* testServer = new ( ELeave ) CTFTestServer( aFactory ); + CleanupStack::PushL( testServer ); + testServer->StartL( KTFRemoteTestServerName ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - Entering scheduler" ) ) ); + CActiveScheduler::Start(); + CleanupStack::PopAndDestroy( testServer ); + CleanupStack::PopAndDestroy( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ServerThreadFunction +// ----------------------------------------------------------------------------- +TInt CTFFactory::ServerThreadFunction( TAny* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction(0x%x)" ), aData ) ); + CTrapCleanup* cleanup = CTrapCleanup::New(); + if ( cleanup != NULL ) + { + TRAPD( err, ServerThreadFunctionL( ( CTFFactory* )aData ) ); + TRACE_ASSERT( err == KErrNone ); + if( err != KErrNone ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - error" ) ) ); + } + delete cleanup; + } + else + { + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - return 0" ) ) ); + return KErrNone; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ConstructL +// ----------------------------------------------------------------------------- +void CTFFactory::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL()" ) ) ); + TAny* nullPtr = Dll::Tls(); + TRACE_ASSERT( nullPtr == NULL ); + __ASSERT_ALWAYS( nullPtr == NULL, User::Panic( KTFName, ETFPanicTlsExists ) ); + iStubControl = CTFStubControl::NewL(); + Dll::SetTls( this ); + // Starts the local test server + iTestServer = new ( ELeave ) CTFTestServer( this ); + iTestServer->StartL( KTFLocalTestServerName ); + // Starts the remote test server + RThread thread; + User::LeaveIfError( thread.Create( _L( "SERVERTHREAD" ), + ServerThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, this ) ); + thread.Resume(); + thread.Close(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL - return" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::~CTFFactory +// ----------------------------------------------------------------------------- +CTFFactory::~CTFFactory( void ) + { + // Stub control deletes the stubs. Stub destructors + // may access this object, so this is not removed + // from tls before stubs are deleted. + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory()" ) ) ); + delete iStubControl; + Dll::SetTls( NULL ); + iPlugins.ResetAndDestroy(); + iPluginInfos.ResetAndDestroy(); + // Close local server + delete iTestServer; + // Close remote server + RTFTestServer server; + if ( server.Connect( EFalse ) == KErrNone ) + { + server.PostShutdownMessage(); + server.Close(); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::Stub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub* CTFFactory::Stub( TInt aType ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub(0x%x)" ), aType ) ); + CTFStub* stub = NULL; + CTFFactory* factory = STATIC_CAST( CTFFactory*, Dll::Tls() ); + if ( factory != NULL ) + { + CTFStubControl* control = factory->iStubControl; + stub = control->Stub( aType ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub - return 0x%x" ), stub ) ); + return stub; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::InternalStub +// ----------------------------------------------------------------------------- +CTFStub* CTFFactory::InternalStub( TInt aType ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub(0x%x)" ), aType ) ); + CTFStub* stub = iStubControl->Stub( aType ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub - return 0x%x" ), stub ) ); + return stub; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallRemoteStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, &aStatus ) ); + CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); + CleanupStack::PushL( wrapper ); + wrapper->PostMessageLD( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, aStatus ); + CleanupStack::Pop( wrapper ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallRemoteStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + RTFTestServer server; + User::LeaveIfError( server.Connect( EFalse ) ); + TInt result = server.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ); + server.Close(); + User::LeaveIfError( result ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::LocalThreadFunctionL +// ----------------------------------------------------------------------------- +void CTFFactory::LocalThreadFunctionL( TTFThreadParam* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL(0x%x)" ), aData ) ); + // These need to be copied before the semaphore is signalled, since the calling thread + // deletes the TTFThreadParameter structure after it exits RSemaphore.Wait() + TInt stubType = aData->iStubType; + TAny* data1 = aData->iMessageData1; + TAny* data2 = aData->iMessageData2; + TAny* data3 = aData->iMessageData3; + TAny* data4 = aData->iMessageData4; + aData->iSemaphore->Signal(); + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CleanupStack::PushL( scheduler ); + CActiveScheduler::Install( scheduler ); + CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); + CleanupStack::PushL( wrapper ); + wrapper->PostLocalMessageL( stubType, data1, data2, data3, data4 ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - Entering scheduler" ) ) ); + CActiveScheduler::Start(); + CleanupStack::PopAndDestroy( wrapper ); + CleanupStack::PopAndDestroy( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::LocalThreadFunction +// ----------------------------------------------------------------------------- +TInt CTFFactory::LocalThreadFunction( TAny* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction(0x%x)" ), aData ) ); + TRACE_ASSERT( aData ); + CTrapCleanup* cleanup = CTrapCleanup::New(); + if ( cleanup != NULL ) + { + TRAPD( err, LocalThreadFunctionL( ( TTFThreadParam* )aData ) ); + TRACE_ASSERT( err == KErrNone ); + if( err != KErrNone ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - error" ) ) ); + } + delete cleanup; + } + else + { + // Semaphore must be signalled anyway + ( ( TTFThreadParam* )aData )->iSemaphore->Signal(); + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - return 0x%x" ), KErrNone ) ); + return KErrNone; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallLocalStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + TTFThreadParam param; + RSemaphore semaphore; + User::LeaveIfError( semaphore.CreateLocal( 0 ) ); + CleanupClosePushL( semaphore ); + RThread thread; + param.iSemaphore = &semaphore; + param.iStubType = aStubType; + param.iMessageData1 = aMessageData1; + param.iMessageData2 = aMessageData2; + param.iMessageData3 = aMessageData3; + param.iMessageData4 = aMessageData4; + User::LeaveIfError( thread.Create( _L( "DUMMYTHREAD" ), LocalThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, ¶m ) ); + thread.Resume(); + semaphore.Wait(); + CleanupStack::PopAndDestroy( &semaphore ); + thread.Close(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::StubControl +// ----------------------------------------------------------------------------- +MTFStubControl* CTFFactory::StubControl( void ) + { + return iStubControl; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::BuildTestSuiteL +// ----------------------------------------------------------------------------- +void CTFFactory::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL(0x%x)" ), aRootSuite ) ); + CTFStubModuleInterface::ListAllImplementationsL( iPluginInfos ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - Found %d plug-ins" ), iPluginInfos.Count() ) ); + for ( TInt i = 0; i < iPluginInfos.Count(); i++ ) + { + CTFStubModuleInterface *stubIF = CTFStubModuleInterface::NewL( iPluginInfos[i]->DataType() ); + CleanupStack::PushL( stubIF ); + User::LeaveIfError( iPlugins.Append( stubIF ) ); + CleanupStack::Pop( stubIF ); + } + BuildSuiteFromModulesL( aRootSuite ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::BuildSuiteFromModulesL +// ----------------------------------------------------------------------------- +void CTFFactory::BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL(0x%x)" ), aRootSuite ) ); + TInt index; + // Adds stubs from every module + for ( index = 0; index < iPlugins.Count(); index++ ) + { + CTFStub* stub = iPlugins[index]->GetStubL(); + if ( stub != NULL ) + { + CleanupStack::PushL( stub ); + iStubControl->AddStubL( *stub ); + CleanupStack::Pop( stub ); + } + } + // Initializes the stubs + for ( index = 0; index < iStubControl->Count(); index++ ) + { + CTFStub* stub = iStubControl->StubAt( index ); + stub->InitializeL(); + } + // Adds test cases from every module + for ( index = 0; index < iPlugins.Count(); index++ ) + { + iPlugins[index]->BuildTestSuiteL( aRootSuite ); + } + // Initializes test cases + InitializeTestCasesL( aRootSuite ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::InitializeTestCasesL +// ----------------------------------------------------------------------------- +void CTFFactory::InitializeTestCasesL( CTFATestSuite* aSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL(0x%x)" ), aSuite ) ); + for ( TInt i = 0; i < aSuite->Count(); i++ ) + { + CTFATest* test = &aSuite->At( i ); + if ( test->Type() == ETFATestTypeSuite ) + { + //lint -e826 Suspicious pointer-to-pointer conversion + InitializeTestCasesL( STATIC_CAST( CTFATestSuite*, test ) ); + //lint +e826 + } + else if ( test->Type() == ETFTestTypeStubWrapper ) + { + for ( TInt j = 0; j < iPlugins.Count(); j++ ) + { + MTFStubTestCase* stubCase = iPlugins[j]->GetStubTestCaseL( + STATIC_CAST( CTFATestCase*, test )->Id() ); + if ( stubCase != NULL ) + { + CleanupStack::PushL( stubCase ); + STATIC_CAST( CTFTestCaseWrapper*, test )->AddStubTestCaseL( *stubCase ); + CleanupStack::Pop( stubCase ); + } + } + } + else if ( test->Type() == ETFTestTypeStubRepeater ) + { + // Repeaters do not contain stub-specific parts + } + else + { + // Unrecognized test types are not handled + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL - return void" ) ) ); + } + + + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfremotestub.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfremotestub.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfremotestub.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,40 +1,40 @@ -/* -* 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: Implementation of CTFRemoteStub class -* -*/ - - -// INCLUDE FILES -#include "ctfremotestub.h" -#include "tftypes.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFRemoteStub::CTFRemoteStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFRemoteStub::CTFRemoteStub( TInt aStubType ) -: CTFStub( aStubType ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFRemoteStub::~CTFRemoteStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFRemoteStub::~CTFRemoteStub( void ) - { - } - - +/* +* 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: Implementation of CTFRemoteStub class +* +*/ + + +// INCLUDE FILES +#include "ctfremotestub.h" +#include "tftypes.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFRemoteStub::CTFRemoteStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFRemoteStub::CTFRemoteStub( TInt aStubType ) +: CTFStub( aStubType ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFRemoteStub::~CTFRemoteStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFRemoteStub::~CTFRemoteStub( void ) + { + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstub.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstub.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstub.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,82 +1,82 @@ -/* -* 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: Implementation of CTFStub class -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "tftypes.h" -#include "mtfstubinterface.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFStub::CTFStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub::CTFStub( TInt aStubType ) -: iStubType( aStubType ) - { - TRACE_ASSERT( iStubType > 0 ); - __ASSERT_ALWAYS( iStubType > 0, User::Panic( KTFName, ETFPanicInvalidStubType ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStub::~CTFStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub::~CTFStub( void ) - { - iStubControl = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::Type -// ----------------------------------------------------------------------------- -TInt CTFStub::Type( void ) const - { - return iStubType; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::SetStubControl -// ----------------------------------------------------------------------------- -void CTFStub::SetStubControl( MTFStubInterface* aStubControl ) - { - iStubControl = aStubControl; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::CurrentTestCase -// ----------------------------------------------------------------------------- -EXPORT_C MTFStubTestCase* CTFStub::CurrentTestCase( void ) - { - TRACE_ASSERT( iStubControl != NULL ); - return iStubControl->CurrentTestCase( iStubType ); - } - - -// ----------------------------------------------------------------------------- -// CTFStub::CurrentTestCaseID -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFStub::CurrentTestCaseID( void ) - { - TRACE_ASSERT( iStubControl != NULL ); - return iStubControl->CurrentTestCaseID(); - } - - +/* +* 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: Implementation of CTFStub class +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "tftypes.h" +#include "mtfstubinterface.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFStub::CTFStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub::CTFStub( TInt aStubType ) +: iStubType( aStubType ) + { + TRACE_ASSERT( iStubType > 0 ); + __ASSERT_ALWAYS( iStubType > 0, User::Panic( KTFName, ETFPanicInvalidStubType ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStub::~CTFStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub::~CTFStub( void ) + { + iStubControl = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::Type +// ----------------------------------------------------------------------------- +TInt CTFStub::Type( void ) const + { + return iStubType; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::SetStubControl +// ----------------------------------------------------------------------------- +void CTFStub::SetStubControl( MTFStubInterface* aStubControl ) + { + iStubControl = aStubControl; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::CurrentTestCase +// ----------------------------------------------------------------------------- +EXPORT_C MTFStubTestCase* CTFStub::CurrentTestCase( void ) + { + TRACE_ASSERT( iStubControl != NULL ); + return iStubControl->CurrentTestCase( iStubType ); + } + + +// ----------------------------------------------------------------------------- +// CTFStub::CurrentTestCaseID +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFStub::CurrentTestCaseID( void ) + { + TRACE_ASSERT( iStubControl != NULL ); + return iStubControl->CurrentTestCaseID(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubcontrol.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubcontrol.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubcontrol.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,202 +1,202 @@ -/* -* 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: Implementation of CTFStubControl class -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "tftypes.h" -#include "mtftestcase.h" -#include "dsytesttooltrace.h" -#include "ctfstubcontrol.h" - -// ----------------------------------------------------------------------------- -// MTFStubInterface::MTFStubInterface -// ----------------------------------------------------------------------------- -MTFStubInterface::MTFStubInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubInterface::~MTFStubInterface -// ----------------------------------------------------------------------------- -MTFStubInterface::~MTFStubInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubControl::MTFStubControl -// ----------------------------------------------------------------------------- -MTFStubControl::MTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubControl::~MTFStubControl -// ----------------------------------------------------------------------------- -MTFStubControl::~MTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::NewL -// ----------------------------------------------------------------------------- -CTFStubControl* CTFStubControl::NewL( void ) - { - CTFStubControl* control = new ( ELeave ) CTFStubControl(); - return control; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CTFStubControl -// ----------------------------------------------------------------------------- -CTFStubControl::CTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::~CTFStubControl -// ----------------------------------------------------------------------------- -CTFStubControl::~CTFStubControl( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl()" ) ) ); - // Stubs are deleted in reverse order they were added. - // The stub needs to be removed from the array before deletion, - // since the stub destructor may call the Stub method that - // accesses the array. - TInt i( iStubs.Count() - 1 ); - while ( i >= 0 ) - { - CTFStub* stub = iStubs[i]; - iStubs.Remove( i ); - delete stub; - i--; - } - iStubs.Reset(); - iCurrentTestCase = NULL; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CurrentTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase* CTFStubControl::CurrentTestCase( TInt aTestCaseId ) - { - MTFStubTestCase* retval; - if ( iCurrentTestCase != NULL ) - { - retval = iCurrentTestCase->TestCase( aTestCaseId ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCase - No test case available" ) ) ); - retval = NULL; - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CurrentTestCaseID -// ----------------------------------------------------------------------------- -TInt CTFStubControl::CurrentTestCaseID( void ) - { - TInt retval; - if ( iCurrentTestCase != NULL ) - { - retval = iCurrentTestCase->TestCaseID(); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCaseID - No test case available" ) ) ); - retval = -1; - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::SetCurrentTestCase -// ----------------------------------------------------------------------------- -void CTFStubControl::SetCurrentTestCase( MTFTestCase* aTestCase ) - { - iCurrentTestCase = aTestCase; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::AddStubL -// ----------------------------------------------------------------------------- -void CTFStubControl::AddStubL( CTFStub& aStub ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL(0x%x)" ), &aStub ) ); - for ( TInt i = 0; i < iStubs.Count(); i++ ) - { - if ( iStubs[i]->Type() == aStub.Type() ) - { - TRACE_ASSERT_ALWAYS; - User::Panic( KTFName, ETFPanicDuplicateStub ); - } - } - User::LeaveIfError( iStubs.Append( &aStub ) ); - aStub.SetStubControl( this ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::Stub -// ----------------------------------------------------------------------------- -CTFStub* CTFStubControl::Stub( TInt aStubType ) - { - CTFStub* retval = NULL; - for ( TInt i = 0; i < iStubs.Count(); i++ ) - { - if ( iStubs[i]->Type() == aStubType ) - { - retval = iStubs[i]; - i = iStubs.Count(); - } - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::Count -// ----------------------------------------------------------------------------- -TInt CTFStubControl::Count( void ) const - { - return iStubs.Count(); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::StubAt -// ----------------------------------------------------------------------------- -CTFStub* CTFStubControl::StubAt( TInt aIndex ) - { - TRACE_ASSERT( aIndex >= 0 && aIndex < iStubs.Count() ); - return iStubs[aIndex]; - } - +/* +* 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: Implementation of CTFStubControl class +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "tftypes.h" +#include "mtftestcase.h" +#include "dsytesttooltrace.h" +#include "ctfstubcontrol.h" + +// ----------------------------------------------------------------------------- +// MTFStubInterface::MTFStubInterface +// ----------------------------------------------------------------------------- +MTFStubInterface::MTFStubInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubInterface::~MTFStubInterface +// ----------------------------------------------------------------------------- +MTFStubInterface::~MTFStubInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubControl::MTFStubControl +// ----------------------------------------------------------------------------- +MTFStubControl::MTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubControl::~MTFStubControl +// ----------------------------------------------------------------------------- +MTFStubControl::~MTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::NewL +// ----------------------------------------------------------------------------- +CTFStubControl* CTFStubControl::NewL( void ) + { + CTFStubControl* control = new ( ELeave ) CTFStubControl(); + return control; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CTFStubControl +// ----------------------------------------------------------------------------- +CTFStubControl::CTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::~CTFStubControl +// ----------------------------------------------------------------------------- +CTFStubControl::~CTFStubControl( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl()" ) ) ); + // Stubs are deleted in reverse order they were added. + // The stub needs to be removed from the array before deletion, + // since the stub destructor may call the Stub method that + // accesses the array. + TInt i( iStubs.Count() - 1 ); + while ( i >= 0 ) + { + CTFStub* stub = iStubs[i]; + iStubs.Remove( i ); + delete stub; + i--; + } + iStubs.Reset(); + iCurrentTestCase = NULL; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CurrentTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase* CTFStubControl::CurrentTestCase( TInt aTestCaseId ) + { + MTFStubTestCase* retval; + if ( iCurrentTestCase != NULL ) + { + retval = iCurrentTestCase->TestCase( aTestCaseId ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCase - No test case available" ) ) ); + retval = NULL; + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CurrentTestCaseID +// ----------------------------------------------------------------------------- +TInt CTFStubControl::CurrentTestCaseID( void ) + { + TInt retval; + if ( iCurrentTestCase != NULL ) + { + retval = iCurrentTestCase->TestCaseID(); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCaseID - No test case available" ) ) ); + retval = -1; + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::SetCurrentTestCase +// ----------------------------------------------------------------------------- +void CTFStubControl::SetCurrentTestCase( MTFTestCase* aTestCase ) + { + iCurrentTestCase = aTestCase; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::AddStubL +// ----------------------------------------------------------------------------- +void CTFStubControl::AddStubL( CTFStub& aStub ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL(0x%x)" ), &aStub ) ); + for ( TInt i = 0; i < iStubs.Count(); i++ ) + { + if ( iStubs[i]->Type() == aStub.Type() ) + { + TRACE_ASSERT_ALWAYS; + User::Panic( KTFName, ETFPanicDuplicateStub ); + } + } + User::LeaveIfError( iStubs.Append( &aStub ) ); + aStub.SetStubControl( this ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::Stub +// ----------------------------------------------------------------------------- +CTFStub* CTFStubControl::Stub( TInt aStubType ) + { + CTFStub* retval = NULL; + for ( TInt i = 0; i < iStubs.Count(); i++ ) + { + if ( iStubs[i]->Type() == aStubType ) + { + retval = iStubs[i]; + i = iStubs.Count(); + } + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::Count +// ----------------------------------------------------------------------------- +TInt CTFStubControl::Count( void ) const + { + return iStubs.Count(); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::StubAt +// ----------------------------------------------------------------------------- +CTFStub* CTFStubControl::StubAt( TInt aIndex ) + { + TRACE_ASSERT( aIndex >= 0 && aIndex < iStubs.Count() ); + return iStubs[aIndex]; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubtestcase.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubtestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tfstubtestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,145 +1,145 @@ -/* -* 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: Implementation of CTFStubTestCase and CTFStubTestCaseParam classes -* -*/ - - -// INCLUDE FILES -#include "mtftestcaseinterface.h" -#include "ctfstubtestcase.h" -#include "ctfstubtestcaseparam.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFStubTestCaseParam::CTFStubTestCaseParam -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCaseParam::CTFStubTestCaseParam( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCaseParam::~CTFStubTestCaseParam -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCaseParam::~CTFStubTestCaseParam( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubTestCase::MTFStubTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase::MTFStubTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubTestCase::~MTFStubTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase::~MTFStubTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::CTFStubTestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCase::CTFStubTestCase( TInt aTestCaseType ) -: iTestCaseType( aTestCaseType ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::~CTFStubTestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCase::~CTFStubTestCase( void ) - { - iStub = NULL; - iCallback = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetCallback -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetCallback( MTFTestCaseInterface& aCallback ) - { - iCallback = &aCallback; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::Type -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFStubTestCase::Type( void ) - { - return iTestCaseType; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetupL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL()" ) ) ); - iComplete = EFalse; - InitL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::IsComplete -// ----------------------------------------------------------------------------- -EXPORT_C TBool CTFStubTestCase::IsComplete( void ) - { - return iComplete; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::CompleteTest -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::CompleteTest( TInt aTestResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::CompleteTest(%d)" ), aTestResult ) ); - if ( !iComplete || aTestResult != KErrNone ) - { - iComplete = ETrue; - iCallback->TestComplete( aTestResult ); - } - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::Logger -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog& CTFStubTestCase::Logger( void ) - { - return iCallback->Logger(); - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetStub -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetStub( CTFStub& aStub ) - { - iStub = &aStub; - } - +/* +* 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: Implementation of CTFStubTestCase and CTFStubTestCaseParam classes +* +*/ + + +// INCLUDE FILES +#include "mtftestcaseinterface.h" +#include "ctfstubtestcase.h" +#include "ctfstubtestcaseparam.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFStubTestCaseParam::CTFStubTestCaseParam +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCaseParam::CTFStubTestCaseParam( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCaseParam::~CTFStubTestCaseParam +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCaseParam::~CTFStubTestCaseParam( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubTestCase::MTFStubTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase::MTFStubTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubTestCase::~MTFStubTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase::~MTFStubTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::CTFStubTestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCase::CTFStubTestCase( TInt aTestCaseType ) +: iTestCaseType( aTestCaseType ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::~CTFStubTestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCase::~CTFStubTestCase( void ) + { + iStub = NULL; + iCallback = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetCallback +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetCallback( MTFTestCaseInterface& aCallback ) + { + iCallback = &aCallback; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::Type +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFStubTestCase::Type( void ) + { + return iTestCaseType; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetupL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL()" ) ) ); + iComplete = EFalse; + InitL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::IsComplete +// ----------------------------------------------------------------------------- +EXPORT_C TBool CTFStubTestCase::IsComplete( void ) + { + return iComplete; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::CompleteTest +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::CompleteTest( TInt aTestResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::CompleteTest(%d)" ), aTestResult ) ); + if ( !iComplete || aTestResult != KErrNone ) + { + iComplete = ETrue; + iCallback->TestComplete( aTestResult ); + } + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::Logger +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog& CTFStubTestCase::Logger( void ) + { + return iCallback->Logger(); + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetStub +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetStub( CTFStub& aStub ) + { + iStub = &aStub; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcaserepeater.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcaserepeater.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcaserepeater.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,232 +1,232 @@ -/* -* 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: Implementation of CTFATestCaseRepeater class -* -*/ - - -// INCLUDE FILES -#include -#include "tftypes.h" -#include "ctfatestenvironment.h" -#include "ctfatestlog.h" -#include "ctfatestsuite.h" -#include "ctftestcasewrapper.h" -#include "ctftestcaserepeater.h" -#include "dsytesttooltrace.h" - -// Default 30-s timeout is expected for each test case -const TInt KTFDefaultTimeout = 30; - -// Each test case is run 3 * aRepeatCount times. The default 30-s timer -// is expected for each test case. -const TInt KTFLoopCount = 3; - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::CTFTestCaseRepeater -// ----------------------------------------------------------------------------- -EXPORT_C CTFTestCaseRepeater::CTFTestCaseRepeater( TInt aId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ) -: CTFATestCase( aId, aName ) -, iSuite( aSuite ) -, iRepeatCount( aRepeatCount ) -, iRandomRepeat( aRandomRepeat ) - { - if ( aSuite != NULL ) - { - if ( iRandomRepeat ) - { - SetTimeout( aRepeatCount * aSuite->Count() * KTFDefaultTimeout ); - } - else - { - SetTimeout( aRepeatCount * aSuite->Count() * KTFLoopCount * KTFDefaultTimeout ); - } - } - else - { - TRACE_ASSERT_ALWAYS; - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::~CTFTestCaseRepeater -// ----------------------------------------------------------------------------- -CTFTestCaseRepeater::~CTFTestCaseRepeater( void ) - { - iSuite = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseRepeater::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATestCase::SetEnvironment( aEnvironment ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Log -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::Log( TInt aDepth ) - { - _LIT ( KCaseDesc, "Case %d: %S" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::SetupL -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL()" ) ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::RunTestL -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::RunTestL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL()" ) ) ); - if ( iSuite != NULL ) - { - RHeap& heap = User::Heap(); - TInt heapSizeStart = 0; - TInt heapCountStart = 0; - TInt err; - heapCountStart = heap.AllocSize( heapSizeStart ); - if ( iRandomRepeat ) - { - TTime time; - time.HomeTime(); - TInt64 seed = time.Int64(); - for ( TInt i = 0; i < iRepeatCount; i++ ) - { - TInt index = Math::Rand( seed ) % iSuite->Count(); - CTFATest& test = iSuite->At( index ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - else - { - i--; - } - } - } - else - { - TInt i; - TInt j; - // Run each test repeat count times. - for ( i = 0; i < iSuite->Count(); i++ ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - for ( j = 0; j < iRepeatCount; j++ ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - // Run the entire test suite repeat count times starting from the last test. - for ( j = 0; j < iRepeatCount; j++ ) - { - for ( i = iSuite->Count() - 1; i >= 0; i-- ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - // Run the entire test suite repeat count times starting from the first test. - for ( j = 0; j < iRepeatCount; j++ ) - { - for ( i = 0; i < iSuite->Count(); i++ ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - } - TInt heapSizeEnd; - TInt heapCountEnd = heap.AllocSize( heapSizeEnd ); - if ( heapCountEnd != heapCountStart ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Allocated memory %d times: Total %d bytes\r\n" ), heapCountEnd - heapCountStart, heapSizeEnd - heapSizeStart ) ); - } - } - else - { - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Teardown -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::Teardown( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown()" ) ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFTestCaseRepeater::Type( void ) const - { - return ( TTFATestType )ETFTestTypeStubRepeater; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Logger -// ----------------------------------------------------------------------------- -CTFATestLog& CTFTestCaseRepeater::Logger( void ) - { - return Environment().Logger(); - } - - +/* +* 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: Implementation of CTFATestCaseRepeater class +* +*/ + + +// INCLUDE FILES +#include +#include "tftypes.h" +#include "ctfatestenvironment.h" +#include "ctfatestlog.h" +#include "ctfatestsuite.h" +#include "ctftestcasewrapper.h" +#include "ctftestcaserepeater.h" +#include "dsytesttooltrace.h" + +// Default 30-s timeout is expected for each test case +const TInt KTFDefaultTimeout = 30; + +// Each test case is run 3 * aRepeatCount times. The default 30-s timer +// is expected for each test case. +const TInt KTFLoopCount = 3; + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::CTFTestCaseRepeater +// ----------------------------------------------------------------------------- +EXPORT_C CTFTestCaseRepeater::CTFTestCaseRepeater( TInt aId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ) +: CTFATestCase( aId, aName ) +, iSuite( aSuite ) +, iRepeatCount( aRepeatCount ) +, iRandomRepeat( aRandomRepeat ) + { + if ( aSuite != NULL ) + { + if ( iRandomRepeat ) + { + SetTimeout( aRepeatCount * aSuite->Count() * KTFDefaultTimeout ); + } + else + { + SetTimeout( aRepeatCount * aSuite->Count() * KTFLoopCount * KTFDefaultTimeout ); + } + } + else + { + TRACE_ASSERT_ALWAYS; + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::~CTFTestCaseRepeater +// ----------------------------------------------------------------------------- +CTFTestCaseRepeater::~CTFTestCaseRepeater( void ) + { + iSuite = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseRepeater::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATestCase::SetEnvironment( aEnvironment ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Log +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::Log( TInt aDepth ) + { + _LIT ( KCaseDesc, "Case %d: %S" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::SetupL +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL()" ) ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::RunTestL +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::RunTestL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL()" ) ) ); + if ( iSuite != NULL ) + { + RHeap& heap = User::Heap(); + TInt heapSizeStart = 0; + TInt heapCountStart = 0; + TInt err; + heapCountStart = heap.AllocSize( heapSizeStart ); + if ( iRandomRepeat ) + { + TTime time; + time.HomeTime(); + TInt64 seed = time.Int64(); + for ( TInt i = 0; i < iRepeatCount; i++ ) + { + TInt index = Math::Rand( seed ) % iSuite->Count(); + CTFATest& test = iSuite->At( index ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + else + { + i--; + } + } + } + else + { + TInt i; + TInt j; + // Run each test repeat count times. + for ( i = 0; i < iSuite->Count(); i++ ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + for ( j = 0; j < iRepeatCount; j++ ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + // Run the entire test suite repeat count times starting from the last test. + for ( j = 0; j < iRepeatCount; j++ ) + { + for ( i = iSuite->Count() - 1; i >= 0; i-- ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + // Run the entire test suite repeat count times starting from the first test. + for ( j = 0; j < iRepeatCount; j++ ) + { + for ( i = 0; i < iSuite->Count(); i++ ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + } + TInt heapSizeEnd; + TInt heapCountEnd = heap.AllocSize( heapSizeEnd ); + if ( heapCountEnd != heapCountStart ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Allocated memory %d times: Total %d bytes\r\n" ), heapCountEnd - heapCountStart, heapSizeEnd - heapSizeStart ) ); + } + } + else + { + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Teardown +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::Teardown( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown()" ) ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFTestCaseRepeater::Type( void ) const + { + return ( TTFATestType )ETFTestTypeStubRepeater; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Logger +// ----------------------------------------------------------------------------- +CTFATestLog& CTFTestCaseRepeater::Logger( void ) + { + return Environment().Logger(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcasewrapper.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcasewrapper.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestcasewrapper.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,321 +1,321 @@ -/* -* 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: Implementation of CTFATestCaseWrapper class -* -*/ - - -// INCLUDE FILES -#include "ctfatestlog.h" -#include "mtfstubtestcase.h" -#include "ctffactory.h" -#include "ctfatestenvironment.h" -#include "tftypes.h" -#include "ctftestcasewrapper.h" -#include "ctfatesttimer.h" -#include "dsytesttooltrace.h" -#include "mtfstubcontrol.h" - -// ----------------------------------------------------------------------------- -// MTFTestCaseInterface::MTFTestCaseInterface -// ----------------------------------------------------------------------------- -MTFTestCaseInterface::MTFTestCaseInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCaseInterface::~MTFTestCaseInterface -// ----------------------------------------------------------------------------- -MTFTestCaseInterface::~MTFTestCaseInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCase::MTFTestCase -// ----------------------------------------------------------------------------- -MTFTestCase::MTFTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCase::~MTFTestCase -// ----------------------------------------------------------------------------- -MTFTestCase::~MTFTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::CTFTestCaseWrapper -// ----------------------------------------------------------------------------- -EXPORT_C CTFTestCaseWrapper::CTFTestCaseWrapper( TInt aId, const TDesC& aName ) -: CTFATestCase( aId, aName ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::~CTFTestCaseWrapper -// ----------------------------------------------------------------------------- -CTFTestCaseWrapper::~CTFTestCaseWrapper( void ) - { - // Deletes the stub test cases - delete iTimer; - iTestCases.ResetAndDestroy(); - iStubControl = NULL; - iFactory = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseWrapper::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATestCase::SetEnvironment( aEnvironment ); - iFactory = aEnvironment.Factory(); - TRACE_ASSERT( iFactory != NULL ); - __ASSERT_ALWAYS( iFactory != NULL, User::Panic( KTFName, ETFPanicFactory ) ); - iStubControl = iFactory->StubControl(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestCaseID -// ----------------------------------------------------------------------------- -TInt CTFTestCaseWrapper::TestCaseID( void ) const - { - return Id(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase* CTFTestCaseWrapper::TestCase( TInt aTestCaseType ) - { - MTFStubTestCase* retval = NULL; - for ( TInt i = 0; i < iTestCases.Count() && retval == NULL; i++ ) - { - MTFStubTestCase* testcase = iTestCases[i]; - if ( testcase->Type() == aTestCaseType ) - { - retval = testcase; - } - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::AddStubTestCaseL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseWrapper::AddStubTestCaseL( MTFStubTestCase& aTestCase ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL(0x%x)" ), &aTestCase ) ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( iTestCases[i]->Type() == aTestCase.Type() ) - { - TRACE_ASSERT_ALWAYS; - User::Panic( KTFName, ETFPanicDuplicateCase ); - } - } - if ( iTimer == NULL ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - User::LeaveIfError( iTestCases.Append( &aTestCase ) ); - aTestCase.SetCallback( *this ); - CTFStub* stub = iStubControl->Stub( aTestCase.Type () ); - TRACE_ASSERT( stub != NULL ); - __ASSERT_ALWAYS( stub != NULL, User::Panic( KTFName, ETFPanicStubMissing ) ); - aTestCase.SetStub( *stub ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Log -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::Log( TInt aDepth ) - { - if ( iTestCases.Count() > 0 ) - { - _LIT ( KCaseDesc, "Case %d: %S, %d components" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name(), iTestCases.Count() ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->Log( aDepth + 1 ); - } - } - else - { - _LIT( KCaseDesc, "Case %d: %S, no components" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::SetupL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL()" ) ) ); - iTestResult = KErrNone; - iStubControl->SetCurrentTestCase( this ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - TRAPD( err, iTestCases[i]->SetupL() ); - if ( err != KErrNone ) - { - // If one setup leaves, the previous ones need to be torn down - for ( TInt j = 0; j < i; j++ ) - { - iTestCases[j]->Teardown(); - } - i = iTestCases.Count(); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::RunTestL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::RunTestL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL()" ) ) ); -#ifdef _DEBUG -#ifdef TEST_NAME_TRACE_FLAG - RDebug::Print( _L( " DSYTESTTOOL - Running test case [%S]" ), &Name() ); -#endif -#endif - TBool needsToWait = EFalse; - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->RunL(); - if ( !iTestCases[i]->IsComplete() ) - { - needsToWait = ETrue; - } - } - if ( iTestResult == KErrNone && needsToWait ) - { - iWaitStarted = ETrue; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Test case [%S] in active wait" ), &Name() ) ); - iTimer->After( TTimeIntervalMicroSeconds32( Timeout() * 1000000L ) ); - CActiveScheduler::Start(); - } -#ifdef _DEBUG -#ifdef TEST_NAME_TRACE_FLAG - RDebug::Print( _L( " DSYTESTTOOL - Test case [%S] finished with %d" ), &Name(), iTestResult ); -#endif -#endif - User::LeaveIfError( iTestResult ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::ActiveTestRunL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::ActiveTestRunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL()" ) ) ); - TestComplete( KErrTimedOut ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Teardown -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::Teardown( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown()" ) ) ); - iTimer->Cancel(); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->Teardown(); - } - iStubControl->SetCurrentTestCase( NULL ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestComplete -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::TestComplete( TInt aTestResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete(%d)" ), aTestResult ) ); - if ( aTestResult != KErrNone ) - { - if ( iTestResult == KErrNone ) - { - iTestResult = aTestResult; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - Multiple errors, new error ignored. Current = %d, new = %d" ), iTestResult, aTestResult ) ); - } - } - if ( iWaitStarted ) - { - TBool canStop = ETrue; - // If the test fails, it can be terminated. - if ( iTestResult == KErrNone ) - { - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( !iTestCases[i]->IsComplete() ) - { - canStop = EFalse; - } - } - } - if ( canStop ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - End active wait" ) ) ); - CActiveScheduler::Stop(); - iWaitStarted = EFalse; - } - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Logger -// ----------------------------------------------------------------------------- -CTFATestLog& CTFTestCaseWrapper::Logger( void ) - { - return Environment().Logger(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFTestCaseWrapper::Type( void ) const - { - return ( TTFATestType )ETFTestTypeStubWrapper; - } - - +/* +* 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: Implementation of CTFATestCaseWrapper class +* +*/ + + +// INCLUDE FILES +#include "ctfatestlog.h" +#include "mtfstubtestcase.h" +#include "ctffactory.h" +#include "ctfatestenvironment.h" +#include "tftypes.h" +#include "ctftestcasewrapper.h" +#include "ctfatesttimer.h" +#include "dsytesttooltrace.h" +#include "mtfstubcontrol.h" + +// ----------------------------------------------------------------------------- +// MTFTestCaseInterface::MTFTestCaseInterface +// ----------------------------------------------------------------------------- +MTFTestCaseInterface::MTFTestCaseInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCaseInterface::~MTFTestCaseInterface +// ----------------------------------------------------------------------------- +MTFTestCaseInterface::~MTFTestCaseInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCase::MTFTestCase +// ----------------------------------------------------------------------------- +MTFTestCase::MTFTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCase::~MTFTestCase +// ----------------------------------------------------------------------------- +MTFTestCase::~MTFTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::CTFTestCaseWrapper +// ----------------------------------------------------------------------------- +EXPORT_C CTFTestCaseWrapper::CTFTestCaseWrapper( TInt aId, const TDesC& aName ) +: CTFATestCase( aId, aName ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::~CTFTestCaseWrapper +// ----------------------------------------------------------------------------- +CTFTestCaseWrapper::~CTFTestCaseWrapper( void ) + { + // Deletes the stub test cases + delete iTimer; + iTestCases.ResetAndDestroy(); + iStubControl = NULL; + iFactory = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseWrapper::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATestCase::SetEnvironment( aEnvironment ); + iFactory = aEnvironment.Factory(); + TRACE_ASSERT( iFactory != NULL ); + __ASSERT_ALWAYS( iFactory != NULL, User::Panic( KTFName, ETFPanicFactory ) ); + iStubControl = iFactory->StubControl(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestCaseID +// ----------------------------------------------------------------------------- +TInt CTFTestCaseWrapper::TestCaseID( void ) const + { + return Id(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase* CTFTestCaseWrapper::TestCase( TInt aTestCaseType ) + { + MTFStubTestCase* retval = NULL; + for ( TInt i = 0; i < iTestCases.Count() && retval == NULL; i++ ) + { + MTFStubTestCase* testcase = iTestCases[i]; + if ( testcase->Type() == aTestCaseType ) + { + retval = testcase; + } + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::AddStubTestCaseL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseWrapper::AddStubTestCaseL( MTFStubTestCase& aTestCase ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL(0x%x)" ), &aTestCase ) ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( iTestCases[i]->Type() == aTestCase.Type() ) + { + TRACE_ASSERT_ALWAYS; + User::Panic( KTFName, ETFPanicDuplicateCase ); + } + } + if ( iTimer == NULL ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + User::LeaveIfError( iTestCases.Append( &aTestCase ) ); + aTestCase.SetCallback( *this ); + CTFStub* stub = iStubControl->Stub( aTestCase.Type () ); + TRACE_ASSERT( stub != NULL ); + __ASSERT_ALWAYS( stub != NULL, User::Panic( KTFName, ETFPanicStubMissing ) ); + aTestCase.SetStub( *stub ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Log +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::Log( TInt aDepth ) + { + if ( iTestCases.Count() > 0 ) + { + _LIT ( KCaseDesc, "Case %d: %S, %d components" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name(), iTestCases.Count() ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->Log( aDepth + 1 ); + } + } + else + { + _LIT( KCaseDesc, "Case %d: %S, no components" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::SetupL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL()" ) ) ); + iTestResult = KErrNone; + iStubControl->SetCurrentTestCase( this ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + TRAPD( err, iTestCases[i]->SetupL() ); + if ( err != KErrNone ) + { + // If one setup leaves, the previous ones need to be torn down + for ( TInt j = 0; j < i; j++ ) + { + iTestCases[j]->Teardown(); + } + i = iTestCases.Count(); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::RunTestL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::RunTestL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL()" ) ) ); +#ifdef _DEBUG +#ifdef TEST_NAME_TRACE_FLAG + RDebug::Print( _L( " DSYTESTTOOL - Running test case [%S]" ), &Name() ); +#endif +#endif + TBool needsToWait = EFalse; + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->RunL(); + if ( !iTestCases[i]->IsComplete() ) + { + needsToWait = ETrue; + } + } + if ( iTestResult == KErrNone && needsToWait ) + { + iWaitStarted = ETrue; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Test case [%S] in active wait" ), &Name() ) ); + iTimer->After( TTimeIntervalMicroSeconds32( Timeout() * 1000000L ) ); + CActiveScheduler::Start(); + } +#ifdef _DEBUG +#ifdef TEST_NAME_TRACE_FLAG + RDebug::Print( _L( " DSYTESTTOOL - Test case [%S] finished with %d" ), &Name(), iTestResult ); +#endif +#endif + User::LeaveIfError( iTestResult ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::ActiveTestRunL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::ActiveTestRunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL()" ) ) ); + TestComplete( KErrTimedOut ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Teardown +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::Teardown( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown()" ) ) ); + iTimer->Cancel(); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->Teardown(); + } + iStubControl->SetCurrentTestCase( NULL ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestComplete +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::TestComplete( TInt aTestResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete(%d)" ), aTestResult ) ); + if ( aTestResult != KErrNone ) + { + if ( iTestResult == KErrNone ) + { + iTestResult = aTestResult; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - Multiple errors, new error ignored. Current = %d, new = %d" ), iTestResult, aTestResult ) ); + } + } + if ( iWaitStarted ) + { + TBool canStop = ETrue; + // If the test fails, it can be terminated. + if ( iTestResult == KErrNone ) + { + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( !iTestCases[i]->IsComplete() ) + { + canStop = EFalse; + } + } + } + if ( canStop ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - End active wait" ) ) ); + CActiveScheduler::Stop(); + iWaitStarted = EFalse; + } + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Logger +// ----------------------------------------------------------------------------- +CTFATestLog& CTFTestCaseWrapper::Logger( void ) + { + return Environment().Logger(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFTestCaseWrapper::Type( void ) const + { + return ( TTFATestType )ETFTestTypeStubWrapper; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestserver.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfcore/src/tftestserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,248 +1,248 @@ -/* -* 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: Implementation of test server classes -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "ctfremotestub.h" -#include "ctffactory.h" -#include "dsytesttooltrace.h" -#include "ctftestserver.h" - -const TInt KTFStateRunning = 1; -const TInt KTFStateCompleting = 2; - -// ----------------------------------------------------------------------------- -// RTFTestServer::Connect -// ----------------------------------------------------------------------------- -TInt RTFTestServer::Connect( TBool aLocal ) - { - TInt retval; - if ( aLocal ) - { - retval = CreateSession( KTFLocalTestServerName, TVersion( 1, 0, 0 ) ); - } - else - { - retval = CreateSession( KTFRemoteTestServerName, TVersion( 1, 0, 0 ) ); - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const - { - SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ), aStatus ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostMessage -// ----------------------------------------------------------------------------- -TInt RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const - { - return SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostCompletionMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const - { - SendReceive( 0, TIpcArgs( aStubType, aResult ), aStatus ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostShutdownMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostShutdownMessage() const - { - SendReceive( 0, TIpcArgs( -1 ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::CTFTestServerWrapper -// ----------------------------------------------------------------------------- -CTFTestServerWrapper::CTFTestServerWrapper( void ) - : CActive( EPriorityNormal ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::~CTFTestServerWrapper -// ----------------------------------------------------------------------------- -CTFTestServerWrapper::~CTFTestServerWrapper( void ) - { - iClient.Close(); - iCallerStatus = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::PostMessageLD -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, &aStatus ) ); - iStubType = aStubType; - aStatus = KRequestPending; - iCallerStatus = &aStatus; - User::LeaveIfError( iClient.Connect( EFalse ) ); - iState = KTFStateCompleting; - iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); - SetActive(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::PostLocalMessageL -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostLocalMessageL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - iStubType = aStubType; - User::LeaveIfError( iClient.Connect( ETrue ) ); - iState = KTFStateRunning; - iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); - SetActive(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::RunL -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL()" ) ) ); - if ( iState == KTFStateRunning ) - { - iState = KTFStateCompleting; - iClient.PostCompletionMessage( iStubType, iStatus.Int(), iStatus ); - SetActive(); - } - else - { - if ( iCallerStatus != NULL ) - { - User::RequestComplete( iCallerStatus, iStatus.Int() ); - delete this; - } - else - { - CActiveScheduler::Stop(); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::DoCancel -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::DoCancel( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestSession::CTFTestSession -// ----------------------------------------------------------------------------- -CTFTestSession::CTFTestSession( CTFFactory* aFactory ) - : iFactory( aFactory ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestSession::ServiceL -// ----------------------------------------------------------------------------- -void CTFTestSession::ServiceL( const RMessage2& aMessage ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL(0x%x)" ), &aMessage ) ); - if ( aMessage.Function() != 0 ) - { - CTFStub* stub = iFactory->InternalStub( aMessage.Function() ); - if ( stub != NULL && stub->IsRemoteStub() ) - { - TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->ProcessMessageAndCompleteL( aMessage ) ); - if ( err != KErrNone ) - { - aMessage.Complete( err ); - } - } - else - { - aMessage.Complete( KErrNotSupported ); - } - } - else - { - if ( aMessage.Int0() == -1 ) - { - CActiveScheduler::Stop(); - aMessage.Complete( KErrNone ); - } - else - { - CTFStub* stub = iFactory->InternalStub( aMessage.Int0() ); - if ( stub && stub->IsRemoteStub() ) - { - TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->MessageCompleteL( aMessage.Int1() ) ); - aMessage.Complete( err ); - } - else - { - aMessage.Complete( KErrNotSupported ); - } - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServer::CTFTestServer -// ----------------------------------------------------------------------------- -CTFTestServer::CTFTestServer( CTFFactory* aFactory ) - : CServer2( EPriorityNormal ) - , iFactory( aFactory ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestServer::NewSessionL -// ----------------------------------------------------------------------------- -CSession2* CTFTestServer::NewSessionL( const TVersion& /*aVersion*/, const RMessage2& /*aMessage*/ ) const - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL()" ) ) ); - CSession2* retval = new ( ELeave ) CTFTestSession( iFactory ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL - return 0x%x" ), retval ) ); - return retval; - } - - +/* +* 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: Implementation of test server classes +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "ctfremotestub.h" +#include "ctffactory.h" +#include "dsytesttooltrace.h" +#include "ctftestserver.h" + +const TInt KTFStateRunning = 1; +const TInt KTFStateCompleting = 2; + +// ----------------------------------------------------------------------------- +// RTFTestServer::Connect +// ----------------------------------------------------------------------------- +TInt RTFTestServer::Connect( TBool aLocal ) + { + TInt retval; + if ( aLocal ) + { + retval = CreateSession( KTFLocalTestServerName, TVersion( 1, 0, 0 ) ); + } + else + { + retval = CreateSession( KTFRemoteTestServerName, TVersion( 1, 0, 0 ) ); + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const + { + SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ), aStatus ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostMessage +// ----------------------------------------------------------------------------- +TInt RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const + { + return SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostCompletionMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const + { + SendReceive( 0, TIpcArgs( aStubType, aResult ), aStatus ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostShutdownMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostShutdownMessage() const + { + SendReceive( 0, TIpcArgs( -1 ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::CTFTestServerWrapper +// ----------------------------------------------------------------------------- +CTFTestServerWrapper::CTFTestServerWrapper( void ) + : CActive( EPriorityNormal ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::~CTFTestServerWrapper +// ----------------------------------------------------------------------------- +CTFTestServerWrapper::~CTFTestServerWrapper( void ) + { + iClient.Close(); + iCallerStatus = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::PostMessageLD +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, &aStatus ) ); + iStubType = aStubType; + aStatus = KRequestPending; + iCallerStatus = &aStatus; + User::LeaveIfError( iClient.Connect( EFalse ) ); + iState = KTFStateCompleting; + iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); + SetActive(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::PostLocalMessageL +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostLocalMessageL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + iStubType = aStubType; + User::LeaveIfError( iClient.Connect( ETrue ) ); + iState = KTFStateRunning; + iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); + SetActive(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::RunL +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL()" ) ) ); + if ( iState == KTFStateRunning ) + { + iState = KTFStateCompleting; + iClient.PostCompletionMessage( iStubType, iStatus.Int(), iStatus ); + SetActive(); + } + else + { + if ( iCallerStatus != NULL ) + { + User::RequestComplete( iCallerStatus, iStatus.Int() ); + delete this; + } + else + { + CActiveScheduler::Stop(); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::DoCancel +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::DoCancel( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestSession::CTFTestSession +// ----------------------------------------------------------------------------- +CTFTestSession::CTFTestSession( CTFFactory* aFactory ) + : iFactory( aFactory ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestSession::ServiceL +// ----------------------------------------------------------------------------- +void CTFTestSession::ServiceL( const RMessage2& aMessage ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL(0x%x)" ), &aMessage ) ); + if ( aMessage.Function() != 0 ) + { + CTFStub* stub = iFactory->InternalStub( aMessage.Function() ); + if ( stub != NULL && stub->IsRemoteStub() ) + { + TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->ProcessMessageAndCompleteL( aMessage ) ); + if ( err != KErrNone ) + { + aMessage.Complete( err ); + } + } + else + { + aMessage.Complete( KErrNotSupported ); + } + } + else + { + if ( aMessage.Int0() == -1 ) + { + CActiveScheduler::Stop(); + aMessage.Complete( KErrNone ); + } + else + { + CTFStub* stub = iFactory->InternalStub( aMessage.Int0() ); + if ( stub && stub->IsRemoteStub() ) + { + TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->MessageCompleteL( aMessage.Int1() ) ); + aMessage.Complete( err ); + } + else + { + aMessage.Complete( KErrNotSupported ); + } + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServer::CTFTestServer +// ----------------------------------------------------------------------------- +CTFTestServer::CTFTestServer( CTFFactory* aFactory ) + : CServer2( EPriorityNormal ) + , iFactory( aFactory ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestServer::NewSessionL +// ----------------------------------------------------------------------------- +CSession2* CTFTestServer::NewSessionL( const TVersion& /*aVersion*/, const RMessage2& /*aMessage*/ ) const + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL()" ) ) ); + CSession2* retval = new ( ELeave ) CTFTestSession( iFactory ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL - return 0x%x" ), retval ) ); + return retval; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - LibEntryL__Fv @ 1 NONAME R3UNUSED ; LibEntryL(void) - +EXPORTS + LibEntryL__Fv @ 1 NONAME R3UNUSED ; LibEntryL(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - ?LibEntryL@@YAPAVCTestModuleBase@@XZ @ 1 NONAME ; class CTestModuleBase * __cdecl LibEntryL(void) - +EXPORTS + ?LibEntryL@@YAPAVCTestModuleBase@@XZ @ 1 NONAME ; class CTestModuleBase * __cdecl LibEntryL(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/EABI/dsytfstifadapterU.DEF --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - _Z9LibEntryLv @ 1 NONAME - +EXPORTS + _Z9LibEntryLv @ 1 NONAME + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/conf/remcontestcontrol.cfg --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/conf/remcontestcontrol.cfg Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/conf/remcontestcontrol.cfg Thu Jul 01 11:20:10 2010 +0300 @@ -1,10 +1,10 @@ -[Define] -// Add general definitions here -ETrue 1 -EFalse 0 -[Enddefine] - -[StifSettings] -// Add stif settings here -CheckHeapBalance= on -[EndStifSettings] +[Define] +// Add general definitions here +ETrue 1 +EFalse 0 +[Enddefine] + +[StifSettings] +// Add stif settings here +CheckHeapBalance= on +[EndStifSettings] diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/bld.inf --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,26 +1,26 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dsystifadapter -* -*/ - -PRJ_TESTEXPORTS -../conf/remcontestcontrol.cfg /epoc32/winscw/c/TestFramework/remcontestcontrol.cfg -../init/remcontestcontrol.ini /epoc32/winscw/c/TestFramework/remcontestcontrol.ini - - -PRJ_TESTMMPFILES -../../dsytfcore/group/dsytfcore.mmp -dsytfstifadapter.mmp +/* +* Copyright (c) 2002-2006 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: Build information file for project dsystifadapter +* +*/ + +PRJ_TESTEXPORTS +../conf/remcontestcontrol.cfg /epoc32/winscw/c/TestFramework/remcontestcontrol.cfg +../init/remcontestcontrol.ini /epoc32/winscw/c/TestFramework/remcontestcontrol.ini + + +PRJ_TESTMMPFILES +../../dsytfcore/group/dsytfcore.mmp +dsytfstifadapter.mmp ../../remcontestcontrolplugin/group/remcontestcontrol.mmp \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.mmp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,54 +1,54 @@ -/* -* Copyright (c) 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: Declaration of dsytfstifadapter module -* -*/ - - -#include - -// INCLUDE FILES -// Build target -TARGET dsytfstifadapter.dll -TARGETTYPE dll -TARGETPATH SHARED_LIB_DIR - -UID 0x1000008D 0x101FB3E7 - -CAPABILITY CAP_GENERAL_DLL - -// Source files -SOURCEPATH ../src -SOURCE tfastifentrypoint.cpp -SOURCE tfastiftestcaseadapter.cpp -SOURCE tfastiftestsuiteadapter.cpp -SOURCE tfastiftestsuiteadapterroot.cpp -SOURCE tfastiftestenvironment.cpp -SOURCE tfastiftestlog.cpp - -// Include paths -USERINCLUDE ../inc -USERINCLUDE ../../dsytfcore/inc - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -// Dependencies to system components -LIBRARY euser.lib -LIBRARY dsytfcore.lib -LIBRARY stiftestinterface.lib - -//MACRO COMPONENT_TRACE_FLAG - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dsytfstifadapter module +* +*/ + + +#include + +// INCLUDE FILES +// Build target +TARGET dsytfstifadapter.dll +TARGETTYPE dll +TARGETPATH SHARED_LIB_DIR + +UID 0x1000008D 0x101FB3E7 + +CAPABILITY CAP_GENERAL_DLL + +// Source files +SOURCEPATH ../src +SOURCE tfastifentrypoint.cpp +SOURCE tfastiftestcaseadapter.cpp +SOURCE tfastiftestsuiteadapter.cpp +SOURCE tfastiftestsuiteadapterroot.cpp +SOURCE tfastiftestenvironment.cpp +SOURCE tfastiftestlog.cpp + +// Include paths +USERINCLUDE ../inc +USERINCLUDE ../../dsytfcore/inc + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +// Dependencies to system components +LIBRARY euser.lib +LIBRARY dsytfcore.lib +LIBRARY stiftestinterface.lib + +//MACRO COMPONENT_TRACE_FLAG + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.pkg --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.pkg Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/dsytfstifadapter.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -1,35 +1,35 @@ -; -; 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: -; - - -;Languages -&EN - -#{"remcontestcontrol"},(0x101FB3E7),1,0,0,TYPE=SA - -;Localised Vendor name -%{"remcontestcontrol EN"} - -; Vendor name -: "remcontestcontrol" - -"\epoc32\release\armv5\urel\dsytfcore.dll"-"c:\sys\bin\dsytfcore.dll" -"\epoc32\release\armv5\urel\dsytfstifadapter.dll"-"c:\sys\bin\dsytfstifadapter.dll" - -"\epoc32\release\armv5\urel\remcontestcontrol.dll"-"c:\sys\bin\remcontestcontrol.dll" -"\epoc32\data\z\resource\plugins\remcontestcontrol.rsc"-"!:\resource\plugins\remcontestcontrol.rsc" -"..\init\remcontestcontrol.ini"-"c:\testframework\remcontestcontrol.ini" -"..\conf\remcontestcontrol.cfg"-"c:\testframework\remcontestcontrol.cfg" +; +; 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: +; + + +;Languages +&EN + +#{"remcontestcontrol"},(0x101FB3E7),1,0,0,TYPE=SA + +;Localised Vendor name +%{"remcontestcontrol EN"} + +; Vendor name +: "remcontestcontrol" + +"\epoc32\release\armv5\urel\dsytfcore.dll"-"c:\sys\bin\dsytfcore.dll" +"\epoc32\release\armv5\urel\dsytfstifadapter.dll"-"c:\sys\bin\dsytfstifadapter.dll" + +"\epoc32\release\armv5\urel\remcontestcontrol.dll"-"c:\sys\bin\remcontestcontrol.dll" +"\epoc32\data\z\resource\plugins\remcontestcontrol.rsc"-"!:\resource\plugins\remcontestcontrol.rsc" +"..\init\remcontestcontrol.ini"-"c:\testframework\remcontestcontrol.ini" +"..\conf\remcontestcontrol.cfg"-"c:\testframework\remcontestcontrol.cfg" diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envrecall.cmd --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envrecall.cmd Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envrecall.cmd Thu Jul 01 11:20:10 2010 +0300 @@ -1,55 +1,55 @@ -@echo off -REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -REM All rights reserved. -REM This component and the accompanying materials are made available -REM under the terms of "Eclipse Public License v1.0" -REM which accompanies this distribution, and is available -REM at the URL "http://www.eclipse.org/legal/epl-v10.html". -REM -REM Initial Contributors: -REM Nokia Corporation - initial contribution. -REM -REM Contributors: -REM -REM Description: ?Description -REM -REM -@echo on - - -@echo Cleaning stubs -pushd ..\..\..\stub\group\ -REM call bldmake bldfiles -REM call abld test reallyclean -call sbs -c armv5.test REALLYCLEAN -call sbs -c winscw.test REALLYCLEAN -popd -@echo Cleaning stubs done - -@echo build remconadaptation... -pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ -REM call bldmake bldfiles -REM call abld build remconadaptation -call sbs -p remconadaptation -popd -@echo build remconadaptation... Finished - -@echo build phoneclient... -pushd \sf\mw\phonesrv\phoneclientserver\phoneclient\group -REM call bldmake bldfiles -REM call abld build -call sbs -popd -@echo build phoneclient... Finished - -@echo build phonecmdhandler -pushd \sf\mw\phonesrv\phonecmdhandler\group\ -REM call bldmake bldfiles -REM call abld makefile -REM call abld reallyclean -call sbs -c armv5 REALLYCLEAN -call sbs -c winscw REALLYCLEAN -REM call abld build -call sbs -popd -@echo build phonecmdhandler done +@echo off +REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +REM All rights reserved. +REM This component and the accompanying materials are made available +REM under the terms of "Eclipse Public License v1.0" +REM which accompanies this distribution, and is available +REM at the URL "http://www.eclipse.org/legal/epl-v10.html". +REM +REM Initial Contributors: +REM Nokia Corporation - initial contribution. +REM +REM Contributors: +REM +REM Description: ?Description +REM +REM +@echo on + + +@echo Cleaning stubs +pushd ..\..\..\stub\group\ +REM call bldmake bldfiles +REM call abld test reallyclean +call sbs -c armv5.test REALLYCLEAN +call sbs -c winscw.test REALLYCLEAN +popd +@echo Cleaning stubs done + +@echo build remconadaptation... +pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ +REM call bldmake bldfiles +REM call abld build remconadaptation +call sbs -p remconadaptation +popd +@echo build remconadaptation... Finished + +@echo build phoneclient... +pushd \sf\mw\phonesrv\phoneclientserver\phoneclient\group +REM call bldmake bldfiles +REM call abld build +call sbs +popd +@echo build phoneclient... Finished + +@echo build phonecmdhandler +pushd \sf\mw\phonesrv\phonecmdhandler\group\ +REM call bldmake bldfiles +REM call abld makefile +REM call abld reallyclean +call sbs -c armv5 REALLYCLEAN +call sbs -c winscw REALLYCLEAN +REM call abld build +call sbs +popd +@echo build phonecmdhandler done diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envsetup.cmd --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envsetup.cmd Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/group/envsetup.cmd Thu Jul 01 11:20:10 2010 +0300 @@ -1,40 +1,40 @@ -@echo off -REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -REM All rights reserved. -REM This component and the accompanying materials are made available -REM under the terms of "Eclipse Public License v1.0" -REM which accompanies this distribution, and is available -REM at the URL "http://www.eclipse.org/legal/epl-v10.html". -REM -REM Initial Contributors: -REM Nokia Corporation - initial contribution. -REM -REM Contributors: -REM -REM Description: ?Description -REM -REM -@echo on - - -@echo Cleaning remconadaptation... -pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ -REM call bldmake bldfiles -REM call abld makefile remconadaptation -REM call abld reallyclean remconadaptation -call sbs -p remconadaptation -c armv5 REALLYCLEAN -call sbs -p remconadaptation -c winscw REALLYCLEAN -popd -@echo Cleaning remconadaptation... Finished - -@echo build/instr stubs -pushd ..\..\..\stub\group\ -REM call bldmake bldfiles -REM call abld test reallyclean -call sbs -c armv5.test REALLYCLEAN -call sbs -c winscw.test REALLYCLEAN -REM call abld test build -call sbs -c armv5.test -call sbs -c winscw.test -popd -@echo build/instr stubs done +@echo off +REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +REM All rights reserved. +REM This component and the accompanying materials are made available +REM under the terms of "Eclipse Public License v1.0" +REM which accompanies this distribution, and is available +REM at the URL "http://www.eclipse.org/legal/epl-v10.html". +REM +REM Initial Contributors: +REM Nokia Corporation - initial contribution. +REM +REM Contributors: +REM +REM Description: ?Description +REM +REM +@echo on + + +@echo Cleaning remconadaptation... +pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ +REM call bldmake bldfiles +REM call abld makefile remconadaptation +REM call abld reallyclean remconadaptation +call sbs -p remconadaptation -c armv5 REALLYCLEAN +call sbs -p remconadaptation -c winscw REALLYCLEAN +popd +@echo Cleaning remconadaptation... Finished + +@echo build/instr stubs +pushd ..\..\..\stub\group\ +REM call bldmake bldfiles +REM call abld test reallyclean +call sbs -c armv5.test REALLYCLEAN +call sbs -c winscw.test REALLYCLEAN +REM call abld test build +call sbs -c armv5.test +call sbs -c winscw.test +popd +@echo build/instr stubs done diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,89 +1,89 @@ -/* -* 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: Declaration of DSY test tool traces -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Variable number of arguments -//lint -esym(960, 69) - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of DSY test tool traces +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Variable number of arguments +//lint -esym(960, 69) + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastifentrypoint.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastifentrypoint.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastifentrypoint.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,75 +1,75 @@ -/* -* 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: Declaration of CTFAStifEntryPoint class -* -*/ - - -#ifndef __TFASTIFENTRYPOINT_H__ -#define __TFASTIFENTRYPOINT_H__ - -#include "ctfaentrypoint.h" - -NONSHARABLE_CLASS( CTFAStifEntryPoint ): public CTFAEntryPoint - { - public: - /** - * Creates a new entry point. Called from LibEntry - */ - static CTFAStifEntryPoint* NewL( void ); - - /** - * Destructor - */ - virtual ~CTFAStifEntryPoint( void ); - - private: - /** - * Constructor - */ - CTFAStifEntryPoint( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifEntryPoint( const CTFAStifEntryPoint& aEntry ); - - /** - * Assignment operator is hidden - */ - CTFAStifEntryPoint& operator=( const CTFAStifEntryPoint& aEntry ); - - public: - /** - * Creates a STIF test suite adapter. - */ - MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ); - - /** - * Creates a STIF test case adapter. - */ - MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ); - - /** - * Creates STIF test environment. - */ - CTFATestEnvironment* CreateEnvironmentL( void ); - }; - -#endif +/* +* 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: Declaration of CTFAStifEntryPoint class +* +*/ + + +#ifndef __TFASTIFENTRYPOINT_H__ +#define __TFASTIFENTRYPOINT_H__ + +#include "ctfaentrypoint.h" + +NONSHARABLE_CLASS( CTFAStifEntryPoint ): public CTFAEntryPoint + { + public: + /** + * Creates a new entry point. Called from LibEntry + */ + static CTFAStifEntryPoint* NewL( void ); + + /** + * Destructor + */ + virtual ~CTFAStifEntryPoint( void ); + + private: + /** + * Constructor + */ + CTFAStifEntryPoint( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifEntryPoint( const CTFAStifEntryPoint& aEntry ); + + /** + * Assignment operator is hidden + */ + CTFAStifEntryPoint& operator=( const CTFAStifEntryPoint& aEntry ); + + public: + /** + * Creates a STIF test suite adapter. + */ + MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ); + + /** + * Creates a STIF test case adapter. + */ + MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ); + + /** + * Creates STIF test environment. + */ + CTFATestEnvironment* CreateEnvironmentL( void ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestcaseadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,82 +1,82 @@ -/* -* 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: Declaration of CTFAStifTestCaseAdapter class -* -*/ - - -#ifndef __TFASTIFTESTCASEADAPTER_H__ -#define __TFASTIFTESTCASEADAPTER_H__ - -#include -#include "ctfatestcaseadapter.h" - -class CTFATestCase; - -NONSHARABLE_CLASS( CTFAStifTestCaseAdapter ): public CTFATestCaseAdapter - { - public: - /** - * Creates a new test case adapter - */ - static CTFAStifTestCaseAdapter* NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); - - /** - * Destructor - */ - virtual ~CTFAStifTestCaseAdapter( void ); - - private: - /** - * Constructor - */ - CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestCaseAdapter( const CTFAStifTestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestCaseAdapter& operator=( const CTFAStifTestCaseAdapter& aAdapter ); - - public: - /** - * Determines if the case is run on startup - */ - TBool RunOnStartup( void ) const; - - /** - * Returns the STIF-TF test info - */ - TTestCaseInfo TestInfo( void ) const; - - /** - * Runs this test - */ - void RunTestL( TTestResult& aResult ); - - private: - TTestCaseInfo iTestInfo; - CTestModuleBase* iTestModule; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestCaseAdapter class +* +*/ + + +#ifndef __TFASTIFTESTCASEADAPTER_H__ +#define __TFASTIFTESTCASEADAPTER_H__ + +#include +#include "ctfatestcaseadapter.h" + +class CTFATestCase; + +NONSHARABLE_CLASS( CTFAStifTestCaseAdapter ): public CTFATestCaseAdapter + { + public: + /** + * Creates a new test case adapter + */ + static CTFAStifTestCaseAdapter* NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); + + /** + * Destructor + */ + virtual ~CTFAStifTestCaseAdapter( void ); + + private: + /** + * Constructor + */ + CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestCaseAdapter( const CTFAStifTestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestCaseAdapter& operator=( const CTFAStifTestCaseAdapter& aAdapter ); + + public: + /** + * Determines if the case is run on startup + */ + TBool RunOnStartup( void ) const; + + /** + * Returns the STIF-TF test info + */ + TTestCaseInfo TestInfo( void ) const; + + /** + * Runs this test + */ + void RunTestL( TTestResult& aResult ); + + private: + TTestCaseInfo iTestInfo; + CTestModuleBase* iTestModule; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestenvironment.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestenvironment.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestenvironment.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,49 +1,49 @@ -/* -* 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: Declaration of CTFAStifTestEnviroment class -* -*/ - - -#ifndef __TFASTIFTESTENVIRONMENT_H__ -#define __TFASTIFTESTENVIRONMENT_H__ - -#include "ctfatestenvironment.h" - -NONSHARABLE_CLASS( CTFAStifTestEnvironment ): public CTFATestEnvironment - { - public: - /** - * Constructo - */ - CTFAStifTestEnvironment( CTFATestLog& aLogger ); - - /** - * Destructor - */ - virtual ~CTFAStifTestEnvironment( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAStifTestEnvironment( const CTFAStifTestEnvironment& aEnv ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestEnvironment& operator=( const CTFAStifTestEnvironment& aEnv ); - }; - -#endif +/* +* 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: Declaration of CTFAStifTestEnviroment class +* +*/ + + +#ifndef __TFASTIFTESTENVIRONMENT_H__ +#define __TFASTIFTESTENVIRONMENT_H__ + +#include "ctfatestenvironment.h" + +NONSHARABLE_CLASS( CTFAStifTestEnvironment ): public CTFATestEnvironment + { + public: + /** + * Constructo + */ + CTFAStifTestEnvironment( CTFATestLog& aLogger ); + + /** + * Destructor + */ + virtual ~CTFAStifTestEnvironment( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAStifTestEnvironment( const CTFAStifTestEnvironment& aEnv ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestEnvironment& operator=( const CTFAStifTestEnvironment& aEnv ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestlog.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestlog.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestlog.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,152 +1,152 @@ -/* -* 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: Declaration of CTFAStifTestLog class -* -*/ - - -#ifndef __TFASTIFTESTLOG_H__ -#define __TFASTIFTESTLOG_H__ - -#include "ctfatestlog.h" - -class CStifLogger; -class TTFAOverflowHandler; -const TInt KMaxLogLength = 254; // From STIF - -/** -* Implements the abstract logger interface to delegate logging to STIF-TF logger. -*/ -NONSHARABLE_CLASS( CTFAStifTestLog ): public CTFATestLog - { - public: - /** - * Creates a new logger - */ - static CTFAStifTestLog* NewLC( void ); - - /** - * Destructor - */ - virtual ~CTFAStifTestLog( void ); - - private: - /** - * Constructor - */ - CTFAStifTestLog( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestLog( const CTFAStifTestLog& aLog ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestLog& operator=( const CTFAStifTestLog& aLog ); - - public: - /** - * Writes data to log - */ - void Write( const TDesC& aDes ); - - /** - * Writes data to log - */ - void Write( const TDesC8& aDes ); - - /** - * Writes formatted to log - */ - void Write( TRefByValue aDes, ... ); - - /** - * Writes formatted to log - */ - void Write( TRefByValue aDes, ... ); - - /** - * Writes a block of data to log. If logging HTML, this wraps the block into
- */ - void WriteBlock( const TDesC& aDes ); - - /** - * Writes a block of data to log. If logging HTML, this wraps the block into
- */ - void WriteBlock( const TDesC8& aDes ); - - /** - * Writes an end-of-line character to log - */ - void EndLine( void ); - - /** - * Starts a new chapter - */ - void StartChapter( void ); - - /** - * Starts a bulleted list - */ - void StartList( void ); - - /** - * Writes formatted data into bulleted list at given depth - */ - void WriteList( TInt aDepth, TRefByValue aDes, ... ); - - /** - * Writes formatted data into bulleted list at given depth - */ - void WriteList( TInt aDepth, TRefByValue aDes, ... ); - - /** - * Ends a bulleted list - */ - void EndList( void ); - - /** - * Sets logging style - */ - void SetStyle( TTFLogStyle aStyle ); - - /** - * Sets logging color - */ - void SetColor( TUint32 aColor ); - - private: - /** - * Writes start of list entry - */ - void WriteListEntryStart( TInt aDepth ); - - private: - CStifLogger* iLogger; - TBuf iLogBuffer; - TBuf8 iLogBuffer8; - TTFAOverflowHandler* iOverflowHandler; - TInt iCurrentDepth; - TTFLogStyle iStyle; - TInt iColor; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestLog class +* +*/ + + +#ifndef __TFASTIFTESTLOG_H__ +#define __TFASTIFTESTLOG_H__ + +#include "ctfatestlog.h" + +class CStifLogger; +class TTFAOverflowHandler; +const TInt KMaxLogLength = 254; // From STIF + +/** +* Implements the abstract logger interface to delegate logging to STIF-TF logger. +*/ +NONSHARABLE_CLASS( CTFAStifTestLog ): public CTFATestLog + { + public: + /** + * Creates a new logger + */ + static CTFAStifTestLog* NewLC( void ); + + /** + * Destructor + */ + virtual ~CTFAStifTestLog( void ); + + private: + /** + * Constructor + */ + CTFAStifTestLog( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestLog( const CTFAStifTestLog& aLog ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestLog& operator=( const CTFAStifTestLog& aLog ); + + public: + /** + * Writes data to log + */ + void Write( const TDesC& aDes ); + + /** + * Writes data to log + */ + void Write( const TDesC8& aDes ); + + /** + * Writes formatted to log + */ + void Write( TRefByValue aDes, ... ); + + /** + * Writes formatted to log + */ + void Write( TRefByValue aDes, ... ); + + /** + * Writes a block of data to log. If logging HTML, this wraps the block into
+ */ + void WriteBlock( const TDesC& aDes ); + + /** + * Writes a block of data to log. If logging HTML, this wraps the block into
+ */ + void WriteBlock( const TDesC8& aDes ); + + /** + * Writes an end-of-line character to log + */ + void EndLine( void ); + + /** + * Starts a new chapter + */ + void StartChapter( void ); + + /** + * Starts a bulleted list + */ + void StartList( void ); + + /** + * Writes formatted data into bulleted list at given depth + */ + void WriteList( TInt aDepth, TRefByValue aDes, ... ); + + /** + * Writes formatted data into bulleted list at given depth + */ + void WriteList( TInt aDepth, TRefByValue aDes, ... ); + + /** + * Ends a bulleted list + */ + void EndList( void ); + + /** + * Sets logging style + */ + void SetStyle( TTFLogStyle aStyle ); + + /** + * Sets logging color + */ + void SetColor( TUint32 aColor ); + + private: + /** + * Writes start of list entry + */ + void WriteListEntryStart( TInt aDepth ); + + private: + CStifLogger* iLogger; + TBuf iLogBuffer; + TBuf8 iLogBuffer8; + TTFAOverflowHandler* iOverflowHandler; + TInt iCurrentDepth; + TTFLogStyle iStyle; + TInt iColor; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapter.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,57 +1,57 @@ -/* -* 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: Declaration of CTFAStifTestSuiteAdapter class -* -*/ - - -#ifndef __TFASTIFTESTSUITEADAPTER_H__ -#define __TFASTIFTESTSUITEADAPTER_H__ - -#include "ctfatestsuiteadapter.h" - -class CTFATestSuite; - -NONSHARABLE_CLASS( CTFAStifTestSuiteAdapter ): public CTFATestSuiteAdapter - { - public: - /** - * Creates a new suite adapter - */ - static CTFAStifTestSuiteAdapter* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Destructor - */ - virtual ~CTFAStifTestSuiteAdapter( void ); - - protected: - /** - * Constructor - */ - CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - private: - /** - * Copy constructor is hidden - */ - CTFAStifTestSuiteAdapter( const CTFAStifTestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestSuiteAdapter& operator=( const CTFAStifTestSuiteAdapter& aAdapter ); - }; - -#endif +/* +* 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: Declaration of CTFAStifTestSuiteAdapter class +* +*/ + + +#ifndef __TFASTIFTESTSUITEADAPTER_H__ +#define __TFASTIFTESTSUITEADAPTER_H__ + +#include "ctfatestsuiteadapter.h" + +class CTFATestSuite; + +NONSHARABLE_CLASS( CTFAStifTestSuiteAdapter ): public CTFATestSuiteAdapter + { + public: + /** + * Creates a new suite adapter + */ + static CTFAStifTestSuiteAdapter* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Destructor + */ + virtual ~CTFAStifTestSuiteAdapter( void ); + + protected: + /** + * Constructor + */ + CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + private: + /** + * Copy constructor is hidden + */ + CTFAStifTestSuiteAdapter( const CTFAStifTestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestSuiteAdapter& operator=( const CTFAStifTestSuiteAdapter& aAdapter ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,101 +1,101 @@ -/* -* 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: Declaration of CTFAStifTestSuiteAdapterRoot class -* -*/ - - -#ifndef __TFASTIFTESTSUITEADAPTERROOT_H__ -#define __TFASTIFTESTSUITEADAPTERROOT_H__ - -#include "stiftestinterface.h" -#include "mtfatestsuiteadapter.h" - -class CTFAStifTestCaseAdapter; -class CTFAStifTestSuiteAdapter; -class CTFATestSuite; -class CTFAEntryPoint; - -/** -* This cannot inherit from CTFATestSuiteAdapter, since that would -* result in multiple paths to CBase root class. Thus this needs -* to reimplement the MTFATestSuiteAdapter interface. -*/ -NONSHARABLE_CLASS( CTFAStifTestSuiteAdapterRoot ): public CTestModuleBase, public MTFATestSuiteAdapter - { - public: - /** - * Creates a new test suite adapter root that wraps the given test suite - */ - static CTFAStifTestSuiteAdapterRoot* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Destructor - */ - virtual ~CTFAStifTestSuiteAdapterRoot( void ); - - private: - /** - * Constructor - */ - CTFAStifTestSuiteAdapterRoot( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestSuiteAdapterRoot( const CTFAStifTestSuiteAdapterRoot& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestSuiteAdapterRoot& operator=( const CTFAStifTestSuiteAdapterRoot& aAdapter ); - - public: - /** - * Returns test suite type - */ - TTFATestType Type( void ) const; - - /** - * Adds a sub-suite / test case - */ - void AddL( MTFATestAdapter& aAdapter ); - - /** - * Adds a test case to this suite - */ - void AddTestL( const CTFAStifTestCaseAdapter& aAdapter ); - - /** - * Gets the test cases. STIF-TF calls this - */ - TInt GetTestCasesL( const TFileName& aIniFile, RPointerArray &aCases ); - - /** - * Runs a test case. STIF-TF calls this - */ - TInt RunTestCaseL( const TInt aCaseNumber, const TFileName& aIniFile, TTestResult& aResult ); - - private: - CTFAStifTestSuiteAdapter* iWrappedAdapter; - RPointerArray iTestCases; - TBool iFirstTest; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestSuiteAdapterRoot class +* +*/ + + +#ifndef __TFASTIFTESTSUITEADAPTERROOT_H__ +#define __TFASTIFTESTSUITEADAPTERROOT_H__ + +#include "stiftestinterface.h" +#include "mtfatestsuiteadapter.h" + +class CTFAStifTestCaseAdapter; +class CTFAStifTestSuiteAdapter; +class CTFATestSuite; +class CTFAEntryPoint; + +/** +* This cannot inherit from CTFATestSuiteAdapter, since that would +* result in multiple paths to CBase root class. Thus this needs +* to reimplement the MTFATestSuiteAdapter interface. +*/ +NONSHARABLE_CLASS( CTFAStifTestSuiteAdapterRoot ): public CTestModuleBase, public MTFATestSuiteAdapter + { + public: + /** + * Creates a new test suite adapter root that wraps the given test suite + */ + static CTFAStifTestSuiteAdapterRoot* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Destructor + */ + virtual ~CTFAStifTestSuiteAdapterRoot( void ); + + private: + /** + * Constructor + */ + CTFAStifTestSuiteAdapterRoot( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestSuiteAdapterRoot( const CTFAStifTestSuiteAdapterRoot& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestSuiteAdapterRoot& operator=( const CTFAStifTestSuiteAdapterRoot& aAdapter ); + + public: + /** + * Returns test suite type + */ + TTFATestType Type( void ) const; + + /** + * Adds a sub-suite / test case + */ + void AddL( MTFATestAdapter& aAdapter ); + + /** + * Adds a test case to this suite + */ + void AddTestL( const CTFAStifTestCaseAdapter& aAdapter ); + + /** + * Gets the test cases. STIF-TF calls this + */ + TInt GetTestCasesL( const TFileName& aIniFile, RPointerArray &aCases ); + + /** + * Runs a test case. STIF-TF calls this + */ + TInt RunTestCaseL( const TInt aCaseNumber, const TFileName& aIniFile, TTestResult& aResult ); + + private: + CTFAStifTestSuiteAdapter* iWrappedAdapter; + RPointerArray iTestCases; + TBool iFirstTest; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/init/remcontestcontrol.ini --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/init/remcontestcontrol.ini Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/init/remcontestcontrol.ini Thu Jul 01 11:20:10 2010 +0300 @@ -1,197 +1,197 @@ -# -# This is STIF initialization file -# Comment lines start with '#'-character. -# See STIF TestFramework users guide.doc for instructions - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set following test engine settings: -# - Set Test Reporting mode. TestReportMode's possible values are: -# + 'Summary': Summary of the tested test cases. -# + 'Environment': Hardware and software info. -# + 'TestCases': Test case report. -# + 'FullReport': Set of all above ones. -# + Example 'TestReportMode= Summary TestCases' -# -# - CreateTestReport setting controls report creation mode -# + YES, Test report will created. -# + NO, No Test report. -# -# - File path indicates the base path of the test report. -# - File name indicates the name of the test report. -# -# - File format indicates the type of the test report. -# + TXT, Test report file will be txt type, for example 'TestReport.txt'. -# + HTML, Test report will be html type, for example 'TestReport.html'. -# -# - File output indicates output source of the test report. -# + FILE, Test report logging to file. -# + RDEBUG, Test report logging to using rdebug. -# -# - File Creation Mode indicates test report overwriting if file exist. -# + OVERWRITE, Overwrites if the Test report file exist. -# + APPEND, Continue logging after the old Test report information if -# report exist. -# - Sets a device reset module's dll name(Reboot). -# + If Nokia specific reset module is not available or it is not correct one -# StifHWResetStub module may use as a template for user specific reset -# module. -# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation -# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 -# - -[Engine_Defaults] - -TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', - 'TestCases' or 'FullReport' - -CreateTestReport= YES # Possible values: YES or NO - -TestReportFilePath= C:\LOGS\TestFramework\ -TestReportFileName= TestReport - -TestReportFormat= TXT # Possible values: TXT or HTML -TestReportOutput= FILE # Possible values: FILE or RDEBUG -TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting - -DisableMeasurement= stifmeasurementdisablenone # Possible values are: - # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' - # 'stifmeasurementplugin01', 'stifmeasurementplugin02', - # 'stifmeasurementplugin03', 'stifmeasurementplugin04', - # 'stifmeasurementplugin05' or 'stifbappeaprofiler' - -Timeout= 0 # Default timeout value for each test case. In milliseconds - -[End_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Module configurations start -# Modules are added between module tags -# tags. Module name is specified after ModuleName= tag, like -# ModuleName= XXXXXXXXX -# Modules might have initialisation file, specified as -# IniFile= c:\testframework\YYYYYY -# Modules might have several configuration files, like -# TestCaseFile= c:\testframework\NormalCases.txt -# TestCaseFile= c:\testframework\SmokeCases.txt -# TestCaseFile= c:\testframework\ManualCases.txt - -# (TestCaseFile is synonym for old term ConfigFile) - -# Following case specifies demo module settings. Demo module -# does not read any settings from file, so tags -# IniFile and TestCaseFile are not used. -# In the simplest case it is enough to specify only the -# name of the test module when adding new test module - -[New_Module] -ModuleName= dsytfstifadapter -TestCaseFile= c:\testframework\remcontestcontrol.cfg -[End_Module] - - -# Load testmoduleXXX, optionally with initialization file and/or test case files -#[New_Module] -#ModuleName= testmodulexxx - -#TestModuleXXX used initialization file -#IniFile= c:\testframework\init.txt - -#TestModuleXXX used configuration file(s) -#TestCaseFile= c:\testframework\testcases1.cfg -#TestCaseFile= c:\testframework\testcases2.cfg -#TestCaseFile= c:\testframework\manualtestcases.cfg - -#[End_Module] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set STIF logging overwrite parameters for Logger. -# Hardware and emulator environment logging path and styles can -# be configured from here to overwrite the Logger's implemented values. -# -# Settings description: -# - Indicates option for creation log directory/directories. If log directory/directories -# is/are not created by user they will make by software. -# + YES, Create log directory/directories if not allready exist. -# + NO, Log directory/directories not created. Only created one is used. -# -# - Overwrite emulator path setting. -# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined -# Logger's path 'D:\\LOGS\\Module\\' with those definition the path -# will be 'C:\LOGS\TestFramework\LOGS\Module\' -# -# - Overwrite emulator's logging format. -# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. -# + HTML, Log file(s) will be html type(s), for example 'Module.html'. -# -# - Overwrited emulator logging output source. -# + FILE, Logging to file(s). -# + RDEBUG, Logging to using rdebug(s). -# -# - Overwrite hardware path setting (Same description as above in emulator path). -# - Overwrite hardware's logging format(Same description as above in emulator format). -# - Overwrite hardware's logging output source(Same description as above in emulator output). -# -# - File Creation Mode indicates file overwriting if file exist. -# + OVERWRITE, Overwrites if file(s) exist. -# + APPEND, Continue logging after the old logging information if file(s) exist. -# -# - Will thread id include to the log filename. -# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. -# + NO, No thread id to log file(s), Example filename 'Module.txt'. -# -# - Will time stamps include the to log file. -# + YES, Time stamp added to each line in log file(s). Time stamp is -# for example'12.Nov.2003 115958 LOGGING INFO' -# + NO, No time stamp(s). -# -# - Will line breaks include to the log file. -# + YES, Each logging event includes line break and next log event is in own line. -# + NO, No line break(s). -# -# - Will event ranking include to the log file. -# + YES, Event ranking number added to each line in log file(s). Ranking number -# depends on environment's tics, for example(includes time stamp also) -# '012 12.Nov.2003 115958 LOGGING INFO' -# + NO, No event ranking. -# -# - Will write log file in unicode format. -# + YES, Log file will be written in unicode format -# + NO, Log will be written as normal, not unicode, file. -# - -[Logger_Defaults] - -#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' -#NOTE: TestEngine and TestServer logging settings cannot change here - -#CreateLogDirectories= YES # Possible values: YES or NO - -#EmulatorBasePath= C:\LOGS\TestFramework\ -#EmulatorFormat= HTML # Possible values: TXT or HTML -#EmulatorOutput= FILE # Possible values: FILE or RDEBUG - -#HardwareBasePath= D:\LOGS\TestFramework\ -#HardwareFormat= HTML # Possible values: TXT or HTML -#HardwareOutput= FILE # Possible values: FILE or RDEBUG - -#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -#ThreadIdToLogFile= YES # Possible values: YES or NO -#WithTimeStamp= YES # Possible values: YES or NO -#WithLineBreak= YES # Possible values: YES or NO -#WithEventRanking= YES # Possible values: YES or NO - -#FileUnicode= YES # Possible values: YES or NO - -[End_Logger_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - +# +# This is STIF initialization file +# Comment lines start with '#'-character. +# See STIF TestFramework users guide.doc for instructions + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set following test engine settings: +# - Set Test Reporting mode. TestReportMode's possible values are: +# + 'Summary': Summary of the tested test cases. +# + 'Environment': Hardware and software info. +# + 'TestCases': Test case report. +# + 'FullReport': Set of all above ones. +# + Example 'TestReportMode= Summary TestCases' +# +# - CreateTestReport setting controls report creation mode +# + YES, Test report will created. +# + NO, No Test report. +# +# - File path indicates the base path of the test report. +# - File name indicates the name of the test report. +# +# - File format indicates the type of the test report. +# + TXT, Test report file will be txt type, for example 'TestReport.txt'. +# + HTML, Test report will be html type, for example 'TestReport.html'. +# +# - File output indicates output source of the test report. +# + FILE, Test report logging to file. +# + RDEBUG, Test report logging to using rdebug. +# +# - File Creation Mode indicates test report overwriting if file exist. +# + OVERWRITE, Overwrites if the Test report file exist. +# + APPEND, Continue logging after the old Test report information if +# report exist. +# - Sets a device reset module's dll name(Reboot). +# + If Nokia specific reset module is not available or it is not correct one +# StifHWResetStub module may use as a template for user specific reset +# module. +# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation +# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 +# + +[Engine_Defaults] + +TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', + 'TestCases' or 'FullReport' + +CreateTestReport= YES # Possible values: YES or NO + +TestReportFilePath= C:\LOGS\TestFramework\ +TestReportFileName= TestReport + +TestReportFormat= TXT # Possible values: TXT or HTML +TestReportOutput= FILE # Possible values: FILE or RDEBUG +TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting + +DisableMeasurement= stifmeasurementdisablenone # Possible values are: + # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' + # 'stifmeasurementplugin01', 'stifmeasurementplugin02', + # 'stifmeasurementplugin03', 'stifmeasurementplugin04', + # 'stifmeasurementplugin05' or 'stifbappeaprofiler' + +Timeout= 0 # Default timeout value for each test case. In milliseconds + +[End_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Module configurations start +# Modules are added between module tags +# tags. Module name is specified after ModuleName= tag, like +# ModuleName= XXXXXXXXX +# Modules might have initialisation file, specified as +# IniFile= c:\testframework\YYYYYY +# Modules might have several configuration files, like +# TestCaseFile= c:\testframework\NormalCases.txt +# TestCaseFile= c:\testframework\SmokeCases.txt +# TestCaseFile= c:\testframework\ManualCases.txt + +# (TestCaseFile is synonym for old term ConfigFile) + +# Following case specifies demo module settings. Demo module +# does not read any settings from file, so tags +# IniFile and TestCaseFile are not used. +# In the simplest case it is enough to specify only the +# name of the test module when adding new test module + +[New_Module] +ModuleName= dsytfstifadapter +TestCaseFile= c:\testframework\remcontestcontrol.cfg +[End_Module] + + +# Load testmoduleXXX, optionally with initialization file and/or test case files +#[New_Module] +#ModuleName= testmodulexxx + +#TestModuleXXX used initialization file +#IniFile= c:\testframework\init.txt + +#TestModuleXXX used configuration file(s) +#TestCaseFile= c:\testframework\testcases1.cfg +#TestCaseFile= c:\testframework\testcases2.cfg +#TestCaseFile= c:\testframework\manualtestcases.cfg + +#[End_Module] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set STIF logging overwrite parameters for Logger. +# Hardware and emulator environment logging path and styles can +# be configured from here to overwrite the Logger's implemented values. +# +# Settings description: +# - Indicates option for creation log directory/directories. If log directory/directories +# is/are not created by user they will make by software. +# + YES, Create log directory/directories if not allready exist. +# + NO, Log directory/directories not created. Only created one is used. +# +# - Overwrite emulator path setting. +# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined +# Logger's path 'D:\\LOGS\\Module\\' with those definition the path +# will be 'C:\LOGS\TestFramework\LOGS\Module\' +# +# - Overwrite emulator's logging format. +# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. +# + HTML, Log file(s) will be html type(s), for example 'Module.html'. +# +# - Overwrited emulator logging output source. +# + FILE, Logging to file(s). +# + RDEBUG, Logging to using rdebug(s). +# +# - Overwrite hardware path setting (Same description as above in emulator path). +# - Overwrite hardware's logging format(Same description as above in emulator format). +# - Overwrite hardware's logging output source(Same description as above in emulator output). +# +# - File Creation Mode indicates file overwriting if file exist. +# + OVERWRITE, Overwrites if file(s) exist. +# + APPEND, Continue logging after the old logging information if file(s) exist. +# +# - Will thread id include to the log filename. +# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. +# + NO, No thread id to log file(s), Example filename 'Module.txt'. +# +# - Will time stamps include the to log file. +# + YES, Time stamp added to each line in log file(s). Time stamp is +# for example'12.Nov.2003 115958 LOGGING INFO' +# + NO, No time stamp(s). +# +# - Will line breaks include to the log file. +# + YES, Each logging event includes line break and next log event is in own line. +# + NO, No line break(s). +# +# - Will event ranking include to the log file. +# + YES, Event ranking number added to each line in log file(s). Ranking number +# depends on environment's tics, for example(includes time stamp also) +# '012 12.Nov.2003 115958 LOGGING INFO' +# + NO, No event ranking. +# +# - Will write log file in unicode format. +# + YES, Log file will be written in unicode format +# + NO, Log will be written as normal, not unicode, file. +# + +[Logger_Defaults] + +#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' +#NOTE: TestEngine and TestServer logging settings cannot change here + +#CreateLogDirectories= YES # Possible values: YES or NO + +#EmulatorBasePath= C:\LOGS\TestFramework\ +#EmulatorFormat= HTML # Possible values: TXT or HTML +#EmulatorOutput= FILE # Possible values: FILE or RDEBUG + +#HardwareBasePath= D:\LOGS\TestFramework\ +#HardwareFormat= HTML # Possible values: TXT or HTML +#HardwareOutput= FILE # Possible values: FILE or RDEBUG + +#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +#ThreadIdToLogFile= YES # Possible values: YES or NO +#WithTimeStamp= YES # Possible values: YES or NO +#WithLineBreak= YES # Possible values: YES or NO +#WithEventRanking= YES # Possible values: YES or NO + +#FileUnicode= YES # Possible values: YES or NO + +[End_Logger_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + # End of file \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastifentrypoint.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastifentrypoint.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastifentrypoint.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,162 +1,162 @@ -/* -* 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: Implementation of CTFAStifEntryPoint class -* -*/ - - -// INCLUDE FILES -#include -#include "dsytesttooltrace.h" -#include "tfastifentrypoint.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestsuiteadapterroot.h" -#include "tfastiftestcaseadapter.h" -#include "tfastiftestenvironment.h" -#include "tfastiftestlog.h" - - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - -// ----------------------------------------------------------------------------- -// LibEntryL -// ----------------------------------------------------------------------------- -EXPORT_C CTestModuleBase* LibEntryL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); - CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); - // Stif framework deletes the CTestModuleBase-derived object - // which deletes the entry point object. - CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::NewL -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) - { - CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); - CleanupStack::PushL( entry ); - entry->ConstructL(); - CleanupStack::Pop( entry ); - return entry; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::~CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifEntryPoint::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); - CTFAEntryPoint::ConstructL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateSuiteAdapterLC -// ----------------------------------------------------------------------------- -MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); - MTFATestSuiteAdapter* adapter; - if ( aRoot ) - { - adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); - } - else - { - adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateTestAdapterLC -// ----------------------------------------------------------------------------- -MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); - CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateEnvironmentL -// ----------------------------------------------------------------------------- -CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); - CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); - CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); - CleanupStack::Pop( log ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); - return env; - } - +/* +* 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: Implementation of CTFAStifEntryPoint class +* +*/ + + +// INCLUDE FILES +#include +#include "dsytesttooltrace.h" +#include "tfastifentrypoint.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestsuiteadapterroot.h" +#include "tfastiftestcaseadapter.h" +#include "tfastiftestenvironment.h" +#include "tfastiftestlog.h" + + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + +// ----------------------------------------------------------------------------- +// LibEntryL +// ----------------------------------------------------------------------------- +EXPORT_C CTestModuleBase* LibEntryL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); + CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); + // Stif framework deletes the CTestModuleBase-derived object + // which deletes the entry point object. + CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::NewL +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) + { + CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); + CleanupStack::PushL( entry ); + entry->ConstructL(); + CleanupStack::Pop( entry ); + return entry; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::~CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifEntryPoint::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); + CTFAEntryPoint::ConstructL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateSuiteAdapterLC +// ----------------------------------------------------------------------------- +MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); + MTFATestSuiteAdapter* adapter; + if ( aRoot ) + { + adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); + } + else + { + adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateTestAdapterLC +// ----------------------------------------------------------------------------- +MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); + CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateEnvironmentL +// ----------------------------------------------------------------------------- +CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); + CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); + CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); + CleanupStack::Pop( log ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); + return env; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestcaseadapter.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestcaseadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestcaseadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,133 +1,133 @@ -/* -* 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: Implementation of CTFAStifTestCaseAdapter class -* -*/ - - -// INCLUDE FILES -#include "ctfatestcase.h" -#include "dsytesttooltrace.h" -#include "tfastiftestcaseadapter.h" - -const TInt KTFUsecMultiplier = 1000000L; -const TInt KTFTestKillMargin = 5000000L; - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter* CTFAStifTestCaseAdapter::NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) - { - CTFAStifTestCaseAdapter* adapter = new ( ELeave ) CTFAStifTestCaseAdapter( aTestCase, aTestModule ); - CleanupStack::PushL( adapter ); - adapter->ConstructL(); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) -: CTFATestCaseAdapter( aTestCase ) -, iTestModule( aTestModule ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter( void ) - { - iTestModule = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestCaseAdapter::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL()" ) ) ); - if ( iTestCase.Name().Length() <= iTestInfo.iTitle.MaxLength() ) - { - iTestInfo.iTitle.Copy( iTestCase.Name() ); - } - else - { - TRACE_ASSERT_ALWAYS; - iTestInfo.iTitle.Copy( iTestCase.Name().Left( iTestInfo.iTitle.MaxLength() ) ); - } - iTestInfo.iCaseNumber = iTestCase.Id(); - /* Leaves a 5-second margin for the test case to cancel - itself without the need to kill the test suite */ - TInt timeout = iTestCase.Timeout() * KTFUsecMultiplier + KTFTestKillMargin; - TTimeIntervalMicroSeconds interval( timeout ); - iTestInfo.iTimeout = interval; - iTestInfo.iPriority = TTestCaseInfo::EPriorityNormal; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::TestInfo -// ----------------------------------------------------------------------------- -TTestCaseInfo CTFAStifTestCaseAdapter::TestInfo( void ) const - { - return iTestInfo; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::RunTestL -// ----------------------------------------------------------------------------- -void CTFAStifTestCaseAdapter::RunTestL( TTestResult& aResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL(0x%x)" ), &aResult ) ); - - // Test module behavior is set according to flags of current test case. - TUint32 behavior( 0 ); - if ( iTestCase.Flags() & ETFMayLeakMemory ) - { - behavior |= CTestModuleIf::ETestLeaksMem; - } - if ( iTestCase.Flags() & ETFMayLeakRequests ) - { - behavior |= CTestModuleIf::ETestLeaksRequests; - } - if ( iTestCase.Flags() & ETFMayLeakHandles ) - { - behavior |= CTestModuleIf::ETestLeaksHandles; - } - iTestModule->TestModuleIf().SetBehavior( ( CTestModuleIf::TTestBehavior )behavior ); - - iTestCase.SetupL(); - TRAPD( err, iTestCase.RunTestL() ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - Result: %d" ), err ) ); - aResult.iResult = err; - iTestCase.Teardown(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::RunOnStartup -// ----------------------------------------------------------------------------- -TBool CTFAStifTestCaseAdapter::RunOnStartup( void ) const - { - return iTestCase.RunOnStartup(); - } - +/* +* 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: Implementation of CTFAStifTestCaseAdapter class +* +*/ + + +// INCLUDE FILES +#include "ctfatestcase.h" +#include "dsytesttooltrace.h" +#include "tfastiftestcaseadapter.h" + +const TInt KTFUsecMultiplier = 1000000L; +const TInt KTFTestKillMargin = 5000000L; + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter* CTFAStifTestCaseAdapter::NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) + { + CTFAStifTestCaseAdapter* adapter = new ( ELeave ) CTFAStifTestCaseAdapter( aTestCase, aTestModule ); + CleanupStack::PushL( adapter ); + adapter->ConstructL(); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) +: CTFATestCaseAdapter( aTestCase ) +, iTestModule( aTestModule ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter( void ) + { + iTestModule = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestCaseAdapter::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL()" ) ) ); + if ( iTestCase.Name().Length() <= iTestInfo.iTitle.MaxLength() ) + { + iTestInfo.iTitle.Copy( iTestCase.Name() ); + } + else + { + TRACE_ASSERT_ALWAYS; + iTestInfo.iTitle.Copy( iTestCase.Name().Left( iTestInfo.iTitle.MaxLength() ) ); + } + iTestInfo.iCaseNumber = iTestCase.Id(); + /* Leaves a 5-second margin for the test case to cancel + itself without the need to kill the test suite */ + TInt timeout = iTestCase.Timeout() * KTFUsecMultiplier + KTFTestKillMargin; + TTimeIntervalMicroSeconds interval( timeout ); + iTestInfo.iTimeout = interval; + iTestInfo.iPriority = TTestCaseInfo::EPriorityNormal; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::TestInfo +// ----------------------------------------------------------------------------- +TTestCaseInfo CTFAStifTestCaseAdapter::TestInfo( void ) const + { + return iTestInfo; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::RunTestL +// ----------------------------------------------------------------------------- +void CTFAStifTestCaseAdapter::RunTestL( TTestResult& aResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL(0x%x)" ), &aResult ) ); + + // Test module behavior is set according to flags of current test case. + TUint32 behavior( 0 ); + if ( iTestCase.Flags() & ETFMayLeakMemory ) + { + behavior |= CTestModuleIf::ETestLeaksMem; + } + if ( iTestCase.Flags() & ETFMayLeakRequests ) + { + behavior |= CTestModuleIf::ETestLeaksRequests; + } + if ( iTestCase.Flags() & ETFMayLeakHandles ) + { + behavior |= CTestModuleIf::ETestLeaksHandles; + } + iTestModule->TestModuleIf().SetBehavior( ( CTestModuleIf::TTestBehavior )behavior ); + + iTestCase.SetupL(); + TRAPD( err, iTestCase.RunTestL() ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - Result: %d" ), err ) ); + aResult.iResult = err; + iTestCase.Teardown(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::RunOnStartup +// ----------------------------------------------------------------------------- +TBool CTFAStifTestCaseAdapter::RunOnStartup( void ) const + { + return iTestCase.RunOnStartup(); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestenvironment.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestenvironment.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestenvironment.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,38 +1,38 @@ -/* -* 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: Implementation of CTFAStifTestEnvironment class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestenvironment.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestEnvironment::CTFAStifTestEnvironment -// ----------------------------------------------------------------------------- -CTFAStifTestEnvironment::CTFAStifTestEnvironment( CTFATestLog& aLogger ) -: CTFATestEnvironment( aLogger ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestEnvironment::~CTFAStifTestEnvironment -// ----------------------------------------------------------------------------- -CTFAStifTestEnvironment::~CTFAStifTestEnvironment( void ) - { - } - +/* +* 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: Implementation of CTFAStifTestEnvironment class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestenvironment.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestEnvironment::CTFAStifTestEnvironment +// ----------------------------------------------------------------------------- +CTFAStifTestEnvironment::CTFAStifTestEnvironment( CTFATestLog& aLogger ) +: CTFATestEnvironment( aLogger ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestEnvironment::~CTFAStifTestEnvironment +// ----------------------------------------------------------------------------- +CTFAStifTestEnvironment::~CTFAStifTestEnvironment( void ) + { + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestlog.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestlog.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestlog.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,382 +1,382 @@ -/* -* 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: Implementation of CTFAStifTestLog class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestlog.h" -#include - -#define __LOG_HTML__ - -class TTFAOverflowHandler : public TDes16Overflow, public TDes8Overflow - { -public: - void Overflow( TDes16& /*aDes*/ ) - { - TRACE_ASSERT_ALWAYS; - } - - void Overflow( TDes8& /*aDes*/ ) - { - TRACE_ASSERT_ALWAYS; - } - }; - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestLog* CTFAStifTestLog::NewLC( void ) - { - CTFAStifTestLog* log = new ( ELeave ) CTFAStifTestLog(); - CleanupStack::PushL( log ); - log->ConstructL(); - return log; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::CTFAStifTestLog -// ----------------------------------------------------------------------------- -CTFAStifTestLog::CTFAStifTestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::ConstructL( void ) - { - TFileName fileName; - TTime time; - time.HomeTime(); - TDateTime dateTime = time.DateTime(); - RThread thread; -#ifdef __LOG_HTML__ - _LIT( KSuffix, "html" ); -#else - _LIT( KSuffix, "txt" ); -#endif - fileName.Format( _L( "%02d%02d%02d_%02d%02d%02d_%x.%S" ), - dateTime.Year() - 2000, dateTime.Month() + 1, dateTime.Day() + 1, - dateTime.Hour(), dateTime.Minute(), dateTime.Second(), - (TUint)thread.Id(), &KSuffix ); - iLogger = CStifLogger::NewL( _L( "c:\\logs\\testframework\\" ), fileName, - CStifLogger::ETxt, CStifLogger::EFile, ETrue, EFalse, EFalse, EFalse, EFalse ); - iOverflowHandler = new ( ELeave ) TTFAOverflowHandler; -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "TFA Log\r\n\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::~CTFAStifTestLog -// ----------------------------------------------------------------------------- -CTFAStifTestLog::~CTFAStifTestLog( void ) - { -#ifdef __LOG_HTML__ - if ( iLogger != NULL ) - { - iLogger->Log( _L8( "\r\n" ) ); - } -#endif - delete iLogger; - delete iOverflowHandler; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::SetStyle -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::SetStyle( TTFLogStyle aStyle ) - { -#ifdef __LOG_HTML__ - switch ( iStyle ) - { - case ETFLogStyleBold: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleItalic: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleNormal: - default: - break; - } - iStyle = aStyle; - switch ( iStyle ) - { - case ETFLogStyleBold: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleItalic: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleNormal: - default: - break; - } -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::SetColor -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::SetColor( TUint32 aColor ) - { -#ifdef __LOG_HTML__ - if ( iColor != 0 ) - { - iLogBuffer8.Format( _L8( "" ) ); - } - iColor = aColor; - if ( iColor != 0 ) - { - iLogBuffer8.Format( _L8( "" ), aColor ); - } -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( const TDesC& aDes ) - { - iLogger->Log( aDes ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( const TDesC8& aDes ) - { - iLogger->Log( aDes ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( TRefByValue aDes, ... ) - { - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) - iLogBuffer.SetLength( 0 ); - iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( TRefByValue aDes, ... ) - { - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) - iLogBuffer8.SetLength( 0 ); - iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer8 ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteBlock -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteBlock( const TDesC& aDes ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
" ) ); - iLogger->Log( aDes ); - iLogger->Log( _L8( "
" ) ); -#else - iLogger->Log( aDes ); - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteBlock -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteBlock( const TDesC8& aDes ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
" ) ); - iLogger->Log( aDes ); - iLogger->Log( _L8( "
" ) ); -#else - iLogger->Log( aDes ); - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::EndLine -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::EndLine( void ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
\r\n" ) ); -#else - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::StartChapter -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::StartChapter( void ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "

" ) ); -#else - iLogger->Log( _L8( "\r\n\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::StartList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::StartList( void ) - { - iCurrentDepth = 0; -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "

    " ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteListEntryStart -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteListEntryStart( TInt aDepth ) - { -#ifdef __LOG_HTML__ - if ( iCurrentDepth > aDepth ) - { - while ( iCurrentDepth > aDepth ) - { - iLogger->Log( _L8( "
\r\n" ) ); - iCurrentDepth--; - } - } - else if ( iCurrentDepth < aDepth ) - { - while ( iCurrentDepth < aDepth ) - { - iLogger->Log( _L8( "
    " ) ); - iCurrentDepth++; - } - } - else - { - } -#else - if ( aDepth > iCurrentDepth ) - { - iLogger->Log( _L8( ":\r\n" ) ); - } - else - { - iLogger->Log( _L8( "\r\n" ) ); - } - for ( TInt i = 0; i <= aDepth; i++ ) - { - iLogger->Log( _L8( " " ) ); - } - iLogger->Log( _L8( "- " ) ); - iCurrentDepth = aDepth; -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) - { - WriteListEntryStart( aDepth ); - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) -#ifdef __LOG_HTML__ - iLogBuffer.Copy( _L( "
  • " ) ); -#else - iLogBuffer.SetLength( 0 ); -#endif - iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer ); -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
  • \r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) - { - WriteListEntryStart( aDepth ); - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) -#ifdef __LOG_HTML__ - iLogBuffer8.Copy( _L8( "
  • " ) ); -#else - iLogBuffer8.SetLength( 0 ); -#endif - iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer8 ); -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
  • \r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::EndList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::EndList( void ) - { -#ifdef __LOG_HTML__ - while ( iCurrentDepth >= 0 ) - { - iLogger->Log( _L8( "
\r\n" ) ); - iCurrentDepth--; - } -#else - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - +/* +* 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: Implementation of CTFAStifTestLog class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestlog.h" +#include + +#define __LOG_HTML__ + +class TTFAOverflowHandler : public TDes16Overflow, public TDes8Overflow + { +public: + void Overflow( TDes16& /*aDes*/ ) + { + TRACE_ASSERT_ALWAYS; + } + + void Overflow( TDes8& /*aDes*/ ) + { + TRACE_ASSERT_ALWAYS; + } + }; + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestLog* CTFAStifTestLog::NewLC( void ) + { + CTFAStifTestLog* log = new ( ELeave ) CTFAStifTestLog(); + CleanupStack::PushL( log ); + log->ConstructL(); + return log; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::CTFAStifTestLog +// ----------------------------------------------------------------------------- +CTFAStifTestLog::CTFAStifTestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::ConstructL( void ) + { + TFileName fileName; + TTime time; + time.HomeTime(); + TDateTime dateTime = time.DateTime(); + RThread thread; +#ifdef __LOG_HTML__ + _LIT( KSuffix, "html" ); +#else + _LIT( KSuffix, "txt" ); +#endif + fileName.Format( _L( "%02d%02d%02d_%02d%02d%02d_%x.%S" ), + dateTime.Year() - 2000, dateTime.Month() + 1, dateTime.Day() + 1, + dateTime.Hour(), dateTime.Minute(), dateTime.Second(), + (TUint)thread.Id(), &KSuffix ); + iLogger = CStifLogger::NewL( _L( "c:\\logs\\testframework\\" ), fileName, + CStifLogger::ETxt, CStifLogger::EFile, ETrue, EFalse, EFalse, EFalse, EFalse ); + iOverflowHandler = new ( ELeave ) TTFAOverflowHandler; +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "TFA Log\r\n\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::~CTFAStifTestLog +// ----------------------------------------------------------------------------- +CTFAStifTestLog::~CTFAStifTestLog( void ) + { +#ifdef __LOG_HTML__ + if ( iLogger != NULL ) + { + iLogger->Log( _L8( "\r\n" ) ); + } +#endif + delete iLogger; + delete iOverflowHandler; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::SetStyle +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::SetStyle( TTFLogStyle aStyle ) + { +#ifdef __LOG_HTML__ + switch ( iStyle ) + { + case ETFLogStyleBold: + iLogger->Log( _L8( "
" ) ); + break; + case ETFLogStyleItalic: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleNormal: + default: + break; + } + iStyle = aStyle; + switch ( iStyle ) + { + case ETFLogStyleBold: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleItalic: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleNormal: + default: + break; + } +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::SetColor +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::SetColor( TUint32 aColor ) + { +#ifdef __LOG_HTML__ + if ( iColor != 0 ) + { + iLogBuffer8.Format( _L8( "" ) ); + } + iColor = aColor; + if ( iColor != 0 ) + { + iLogBuffer8.Format( _L8( "" ), aColor ); + } +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( const TDesC& aDes ) + { + iLogger->Log( aDes ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( const TDesC8& aDes ) + { + iLogger->Log( aDes ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( TRefByValue aDes, ... ) + { + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) + iLogBuffer.SetLength( 0 ); + iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( TRefByValue aDes, ... ) + { + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) + iLogBuffer8.SetLength( 0 ); + iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer8 ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteBlock +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteBlock( const TDesC& aDes ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
" ) ); + iLogger->Log( aDes ); + iLogger->Log( _L8( "
" ) ); +#else + iLogger->Log( aDes ); + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteBlock +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteBlock( const TDesC8& aDes ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
" ) ); + iLogger->Log( aDes ); + iLogger->Log( _L8( "
" ) ); +#else + iLogger->Log( aDes ); + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::EndLine +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::EndLine( void ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
\r\n" ) ); +#else + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::StartChapter +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::StartChapter( void ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "

" ) ); +#else + iLogger->Log( _L8( "\r\n\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::StartList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::StartList( void ) + { + iCurrentDepth = 0; +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "

    " ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteListEntryStart +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteListEntryStart( TInt aDepth ) + { +#ifdef __LOG_HTML__ + if ( iCurrentDepth > aDepth ) + { + while ( iCurrentDepth > aDepth ) + { + iLogger->Log( _L8( "
\r\n" ) ); + iCurrentDepth--; + } + } + else if ( iCurrentDepth < aDepth ) + { + while ( iCurrentDepth < aDepth ) + { + iLogger->Log( _L8( "
    " ) ); + iCurrentDepth++; + } + } + else + { + } +#else + if ( aDepth > iCurrentDepth ) + { + iLogger->Log( _L8( ":\r\n" ) ); + } + else + { + iLogger->Log( _L8( "\r\n" ) ); + } + for ( TInt i = 0; i <= aDepth; i++ ) + { + iLogger->Log( _L8( " " ) ); + } + iLogger->Log( _L8( "- " ) ); + iCurrentDepth = aDepth; +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) + { + WriteListEntryStart( aDepth ); + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) +#ifdef __LOG_HTML__ + iLogBuffer.Copy( _L( "
  • " ) ); +#else + iLogBuffer.SetLength( 0 ); +#endif + iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer ); +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
  • \r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) + { + WriteListEntryStart( aDepth ); + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) +#ifdef __LOG_HTML__ + iLogBuffer8.Copy( _L8( "
  • " ) ); +#else + iLogBuffer8.SetLength( 0 ); +#endif + iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer8 ); +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
  • \r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::EndList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::EndList( void ) + { +#ifdef __LOG_HTML__ + while ( iCurrentDepth >= 0 ) + { + iLogger->Log( _L8( "
\r\n" ) ); + iCurrentDepth--; + } +#else + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,50 +1,50 @@ -/* -* 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: Implementation of CTFAStifTestSuiteAdapter class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter* CTFAStifTestSuiteAdapter::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - CTFAStifTestSuiteAdapter* suite = new ( ELeave ) CTFAStifTestSuiteAdapter( aTestSuite, aEntryPoint ); - CleanupStack::PushL( suite ); - return suite; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) -: CTFATestSuiteAdapter( aTestSuite, aEntryPoint ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter( void ) - { - } - +/* +* 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: Implementation of CTFAStifTestSuiteAdapter class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter* CTFAStifTestSuiteAdapter::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + CTFAStifTestSuiteAdapter* suite = new ( ELeave ) CTFAStifTestSuiteAdapter( aTestSuite, aEntryPoint ); + CleanupStack::PushL( suite ); + return suite; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) +: CTFATestSuiteAdapter( aTestSuite, aEntryPoint ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter( void ) + { + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,164 +1,164 @@ -/* -* 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: Implementation of CTFAStifTestSuiteAdapterRoot class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestsuiteadapterroot.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot* CTFAStifTestSuiteAdapterRoot::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - CTFAStifTestSuiteAdapterRoot* suite = new ( ELeave ) CTFAStifTestSuiteAdapterRoot(); - CleanupStack::PushL( suite ); - suite->ConstructL( aTestSuite, aEntryPoint ); - return suite; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot( void ) -: iFirstTest( ETrue ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL(0x%x, 0x%x)" ), &aTestSuite, aEntryPoint ) ); - iWrappedAdapter = CTFAStifTestSuiteAdapter::NewLC( aTestSuite, aEntryPoint ); - CleanupStack::Pop( iWrappedAdapter ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL - return" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot( void ) - { - // iWrappedAdapter deletes the test objects - // stored in iTestCases array. - iTestCases.Reset(); - delete iWrappedAdapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::AddL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::AddL( MTFATestAdapter& aAdapter ) - { - iWrappedAdapter->AddL( aAdapter ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::AddTestL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::AddTestL( const CTFAStifTestCaseAdapter& aAdapter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL(0x%x)" ), &aAdapter ) ); - User::LeaveIfError( iTestCases.Append( &aAdapter ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFAStifTestSuiteAdapterRoot::Type( void ) const - { - return ETFATestTypeSuite; - } - - -//lint -e429 Pointer has not been freed or returned -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::GetTestCasesL -// ----------------------------------------------------------------------------- -TInt CTFAStifTestSuiteAdapterRoot::GetTestCasesL( const TFileName& /*aIniFile*/, RPointerArray &aCases ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL(0x%x)" ), &aCases ) ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - // Stif takes ownership of the test case objects, - // so new ones must be allocated. - TTestCaseInfo* copy = new ( ELeave ) TTestCaseInfo(); - *copy = iTestCases[i]->TestInfo(); - TInt val = aCases.Append( copy ); - if ( val != KErrNone ) - { - delete copy; - User::Leave( val ); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL - return 0x%x" ), KErrNone ) ); - return KErrNone; - } -//lint +e429 - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::RunTestCaseL -// ----------------------------------------------------------------------------- -TInt CTFAStifTestSuiteAdapterRoot::RunTestCaseL( TInt aCaseId, const TFileName& /*aIniFile*/, TTestResult& aResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL(0x%x, 0x%x)" ), aCaseId, aResult ) ); - // All tests marked as auto-run are run. - if ( iFirstTest ) - { - iFirstTest = EFalse; - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( iTestCases[i]->RunOnStartup() ) - { - iTestCases[i]->RunTestL( aResult ); - } - } - } - - TInt found( -1 ); - for ( TInt i = 0; i < iTestCases.Count() && found == -1; i++ ) - { - if ( iTestCases[i]->TestInfo().iCaseNumber == aCaseId ) - { - found = i; - } - } - if ( found != -1 ) - { - iTestCases[found]->RunTestL( aResult ); - } - else - { - TRACE_ASSERT_ALWAYS; - User::Leave( KErrNotFound ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL - return 0x%x" ), KErrNone ) ); - return KErrNone; - } - +/* +* 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: Implementation of CTFAStifTestSuiteAdapterRoot class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestsuiteadapterroot.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot* CTFAStifTestSuiteAdapterRoot::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + CTFAStifTestSuiteAdapterRoot* suite = new ( ELeave ) CTFAStifTestSuiteAdapterRoot(); + CleanupStack::PushL( suite ); + suite->ConstructL( aTestSuite, aEntryPoint ); + return suite; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot( void ) +: iFirstTest( ETrue ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL(0x%x, 0x%x)" ), &aTestSuite, aEntryPoint ) ); + iWrappedAdapter = CTFAStifTestSuiteAdapter::NewLC( aTestSuite, aEntryPoint ); + CleanupStack::Pop( iWrappedAdapter ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL - return" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot( void ) + { + // iWrappedAdapter deletes the test objects + // stored in iTestCases array. + iTestCases.Reset(); + delete iWrappedAdapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::AddL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::AddL( MTFATestAdapter& aAdapter ) + { + iWrappedAdapter->AddL( aAdapter ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::AddTestL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::AddTestL( const CTFAStifTestCaseAdapter& aAdapter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL(0x%x)" ), &aAdapter ) ); + User::LeaveIfError( iTestCases.Append( &aAdapter ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFAStifTestSuiteAdapterRoot::Type( void ) const + { + return ETFATestTypeSuite; + } + + +//lint -e429 Pointer has not been freed or returned +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::GetTestCasesL +// ----------------------------------------------------------------------------- +TInt CTFAStifTestSuiteAdapterRoot::GetTestCasesL( const TFileName& /*aIniFile*/, RPointerArray &aCases ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL(0x%x)" ), &aCases ) ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + // Stif takes ownership of the test case objects, + // so new ones must be allocated. + TTestCaseInfo* copy = new ( ELeave ) TTestCaseInfo(); + *copy = iTestCases[i]->TestInfo(); + TInt val = aCases.Append( copy ); + if ( val != KErrNone ) + { + delete copy; + User::Leave( val ); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL - return 0x%x" ), KErrNone ) ); + return KErrNone; + } +//lint +e429 + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::RunTestCaseL +// ----------------------------------------------------------------------------- +TInt CTFAStifTestSuiteAdapterRoot::RunTestCaseL( TInt aCaseId, const TFileName& /*aIniFile*/, TTestResult& aResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL(0x%x, 0x%x)" ), aCaseId, aResult ) ); + // All tests marked as auto-run are run. + if ( iFirstTest ) + { + iFirstTest = EFalse; + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( iTestCases[i]->RunOnStartup() ) + { + iTestCases[i]->RunTestL( aResult ); + } + } + } + + TInt found( -1 ); + for ( TInt i = 0; i < iTestCases.Count() && found == -1; i++ ) + { + if ( iTestCases[i]->TestInfo().iCaseNumber == aCaseId ) + { + found = i; + } + } + if ( found != -1 ) + { + iTestCases[found]->RunTestL( aResult ); + } + else + { + TRACE_ASSERT_ALWAYS; + User::Leave( KErrNotFound ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL - return 0x%x" ), KErrNone ) ); + return KErrNone; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/data/10200c6f.rss --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/data/10200c6f.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/data/10200c6f.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,54 +1,54 @@ -/* -* 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: -* -*/ - - -// INCLUDE FILES -#include - -// RESOURCE DEFINITIONS -// --------------------------------------------------------- -// -// RemconTestControl -// -// --------------------------------------------------------- -// -RESOURCE REGISTRY_INFO RemconTestControl - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10200c6f; // This has to be UID3 of your stub - interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x10200c7d; // Defined by CTFStubModuleInterface in SAA test framework - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0x10200c77; - version_no = 1; - display_name = "REMCONTESTCONTROL"; // Might be useful to rename to ease degugginging - default_data = "REMCONTESTCONTROL"; // Might be useful to rename to ease degugging - opaque_data = ""; - rom_only = 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: +* +*/ + + +// INCLUDE FILES +#include + +// RESOURCE DEFINITIONS +// --------------------------------------------------------- +// +// RemconTestControl +// +// --------------------------------------------------------- +// +RESOURCE REGISTRY_INFO RemconTestControl + { + resource_format_version = RESOURCE_FORMAT_VERSION_2; + dll_uid = 0x10200c6f; // This has to be UID3 of your stub + interfaces = + { + INTERFACE_INFO + { + interface_uid = 0x10200c7d; // Defined by CTFStubModuleInterface in SAA test framework + implementations = + { + IMPLEMENTATION_INFO + { + implementation_uid = 0x10200c77; + version_no = 1; + display_name = "REMCONTESTCONTROL"; // Might be useful to rename to ease degugginging + default_data = "REMCONTESTCONTROL"; // Might be useful to rename to ease degugging + opaque_data = ""; + rom_only = 0; + } + }; + } + }; + } + // End of File \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/bld.inf --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,26 +1,26 @@ -/* -* Copyright (c) 2004 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: -* -*/ - - -PRJ_PLATFORMS -DEFAULT - - -PRJ_TESTMMPFILES -remcontestcontrol.mmp - -// End of file +/* +* Copyright (c) 2004 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: +* +*/ + + +PRJ_PLATFORMS +DEFAULT + + +PRJ_TESTMMPFILES +remcontestcontrol.mmp + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/remcontestcontrol.mmp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/remcontestcontrol.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/group/remcontestcontrol.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,66 +1,66 @@ -/* -* 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: -* -*/ - - -#include - -TARGET remcontestcontrol.dll -CAPABILITY CAP_ECOM_PLUGIN -TARGETTYPE PLUGIN -TARGETPATH ECOM_RESOURCE_DIR - -UID 0x10009D8D 0x10200C6F // Don't modify UID2 (= 0x10009D8D) since it identifies ECOM plugin -VENDORID VID_DEFAULT - -SOURCEPATH ../src -SOURCE remconcontrol.cpp -SOURCE remconplugin.cpp -SOURCE remconproxy.cpp -SOURCE remconcontroltestcase.cpp -SOURCE remcontestcaseparam.cpp -SOURCE remconactive.cpp -SOURCE remconpoc.cpp -SOURCE remconcore.cpp -SOURCE remconsync.cpp -SOURCE remconpspchobserver.cpp -SOURCE remconcall.cpp - -START RESOURCE ../data/10200c6f.rss -TARGET remcontestcontrol.rsc -END - -USERINCLUDE ../inc -USERINCLUDE ../../dsytfcore/inc -USERINCLUDE ../../../stub/remcon/inc - -OS_LAYER_SYSTEMINCLUDE - -LIBRARY euser.lib // Some general services -LIBRARY ecom.lib // Stub is a ECOM plugin -LIBRARY dsytfcore.lib // This is a part of SAA test framework -LIBRARY RemConExtensionApi.lib -LIBRARY remconinterfacebase.lib -LIBRARY remconcoreapi.lib -LIBRARY remcontypes.lib - - -MACRO COMPONENT_TRACE_FLAG -//MACRO TEST_CASE_TRACE_FLAG - -NOEXPORTLIBRARY - +/* +* 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: +* +*/ + + +#include + +TARGET remcontestcontrol.dll +CAPABILITY CAP_ECOM_PLUGIN +TARGETTYPE PLUGIN +TARGETPATH ECOM_RESOURCE_DIR + +UID 0x10009D8D 0x10200C6F // Don't modify UID2 (= 0x10009D8D) since it identifies ECOM plugin +VENDORID VID_DEFAULT + +SOURCEPATH ../src +SOURCE remconcontrol.cpp +SOURCE remconplugin.cpp +SOURCE remconproxy.cpp +SOURCE remconcontroltestcase.cpp +SOURCE remcontestcaseparam.cpp +SOURCE remconactive.cpp +SOURCE remconpoc.cpp +SOURCE remconcore.cpp +SOURCE remconsync.cpp +SOURCE remconpspchobserver.cpp +SOURCE remconcall.cpp + +START RESOURCE ../data/10200c6f.rss +TARGET remcontestcontrol.rsc +END + +USERINCLUDE ../inc +USERINCLUDE ../../dsytfcore/inc +USERINCLUDE ../../../stub/remcon/inc + +OS_LAYER_SYSTEMINCLUDE + +LIBRARY euser.lib // Some general services +LIBRARY ecom.lib // Stub is a ECOM plugin +LIBRARY dsytfcore.lib // This is a part of SAA test framework +LIBRARY RemConExtensionApi.lib +LIBRARY remconinterfacebase.lib +LIBRARY remconcoreapi.lib +LIBRARY remcontypes.lib + + +MACRO COMPONENT_TRACE_FLAG +//MACRO TEST_CASE_TRACE_FLAG + +NOEXPORTLIBRARY + SMPSAFE \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconcontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,45 +1,45 @@ -/* -* 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: -* -*/ - - -#ifndef __MREMCONCONTROL_H__ -#define __MREMCONCONTROL_H__ - -#include -#include "remcontypes.h" - -class MRemConControl - { -public: - MRemConControl( void ); - virtual ~MRemConControl( void ); - -private: - MRemConControl( const MRemConControl& aStub ); - MRemConControl& operator=( const MRemConControl& aStub ); - -public: - - virtual void NotifyKeyEvent( TInt aEvent, TInt aParameter ) = 0; - - virtual void CompleteKeyEventResponse ( TInt aEvent, TInt aParam, TInt aError) = 0; - - }; - -MRemConControl* GetRemConControl( void ); - -#endif //__MREMCONCONTROL_H__ +/* +* 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: +* +*/ + + +#ifndef __MREMCONCONTROL_H__ +#define __MREMCONCONTROL_H__ + +#include +#include "remcontypes.h" + +class MRemConControl + { +public: + MRemConControl( void ); + virtual ~MRemConControl( void ); + +private: + MRemConControl( const MRemConControl& aStub ); + MRemConControl& operator=( const MRemConControl& aStub ); + +public: + + virtual void NotifyKeyEvent( TInt aEvent, TInt aParameter ) = 0; + + virtual void CompleteKeyEventResponse ( TInt aEvent, TInt aParam, TInt aError) = 0; + + }; + +MRemConControl* GetRemConControl( void ); + +#endif //__MREMCONCONTROL_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconobserver.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconobserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/mremconobserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,93 +1,93 @@ -/* -* Copyright (c) 2004 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: This file contains the header file of the -* -* -*/ - - -#ifndef MREMCONOBSERVER_H -#define MREMCONOBSERVER_H - -// INCLUDES -// - -// CONSTANTS -// None - -// MACROS -// None - -// DATA TYPES -// - -// FUNCTION PROTOTYPES -// None - -// FORWARD DECLARATIONS -// None - -// CLASS DECLARATION - -/** -* -* -* -* @lib -* @since Series 60 3.0 -*/ -class MRemConObserver - { - public: // Constructors and destructor - - - public: // New functions - - /** - * Server request has been completed. - * @since Series 60 3.0 - * @param aResult Result code of a request processing. - * @return void - */ - virtual void CompleteResponse( const TInt aError ) = 0; - - public: // Functions from base classes - - - protected: // New functions - - - protected: // Functions from base classes - - - private: - - - public: // Data - - protected: // Data - - private: // Data - - public: // Friend classes - - protected: // Friend classes - - private: // Friend classes - - }; - -#endif //MREMCONOBSERVER_H - -// End of File +/* +* Copyright (c) 2004 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: This file contains the header file of the +* +* +*/ + + +#ifndef MREMCONOBSERVER_H +#define MREMCONOBSERVER_H + +// INCLUDES +// + +// CONSTANTS +// None + +// MACROS +// None + +// DATA TYPES +// + +// FUNCTION PROTOTYPES +// None + +// FORWARD DECLARATIONS +// None + +// CLASS DECLARATION + +/** +* +* +* +* @lib +* @since Series 60 3.0 +*/ +class MRemConObserver + { + public: // Constructors and destructor + + + public: // New functions + + /** + * Server request has been completed. + * @since Series 60 3.0 + * @param aResult Result code of a request processing. + * @return void + */ + virtual void CompleteResponse( const TInt aError ) = 0; + + public: // Functions from base classes + + + protected: // New functions + + + protected: // Functions from base classes + + + private: + + + public: // Data + + protected: // Data + + private: // Data + + public: // Friend classes + + protected: // Friend classes + + private: // Friend classes + + }; + +#endif //MREMCONOBSERVER_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconactive.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconactive.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconactive.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,47 +1,47 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -#ifndef CREMCONACTIVE_H -#define CREMCONACTIVE_H - -#include - -class MRemConObserver; - -class CRemConActive : public CActive - { -public: - static CRemConActive* NewL( MRemConObserver& aObserver ); - ~CRemConActive(); - -public: - void SetActive(); - -private: // from CActive - void RunL(); - void DoCancel(); - -private: - CRemConActive( MRemConObserver& aObserver ); - void ConstructL(); - -private: // unowned - MRemConObserver& iObserver; - }; - -#endif // CREMCONACTIVE_H +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +#ifndef CREMCONACTIVE_H +#define CREMCONACTIVE_H + +#include + +class MRemConObserver; + +class CRemConActive : public CActive + { +public: + static CRemConActive* NewL( MRemConObserver& aObserver ); + ~CRemConActive(); + +public: + void SetActive(); + +private: // from CActive + void RunL(); + void DoCancel(); + +private: + CRemConActive( MRemConObserver& aObserver ); + void ConstructL(); + +private: // unowned + MRemConObserver& iObserver; + }; + +#endif // CREMCONACTIVE_H diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcall.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcall.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcall.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,157 +1,157 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - -#ifndef CREMCONCALL_H -#define CREMCONCALL_H - -// INCLUDES -#include -#include -#include -#include - -#include "mremconcontrol.h" -#include "mremconobserver.h" -#include "remconactive.h" -#include "remcontypes.h" -#include "remconcontrol.h" - -class MRemConObserver; - -class CRemConCall : public MRemConObserver, public MRemConCallHandlingTargetObserver - - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CRemConCall* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - /** - * Destructor. - */ - virtual ~CRemConCall(); - - public: // New functions - - //void RequestResponse(TXXXTestClientFunction aSync); - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - public: // Functions from base classes - - - void CompleteResponse( const TInt aError ); - void GetCommandSourceInfo(TRemConExtCmdSource& aSource); - - protected: // New functions - - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - protected: // Functions from base classes - - /** - * Answer an incoming phone call. - */ - void AnswerCall(); - - /** - * End an incoming/ongoing phone call. - */ - void EndCall(); - - /** - * End an incoming/ongoing phone call. - */ - void AnswerEndCall(); - - /** - * Make a voice call. - */ - void VoiceDial( const TBool aActivate ); - - /** - * Redial last phone call. - */ - void LastNumberRedial(); - - /** - * Dial a phone call. - */ - void DialCall( const TDesC8& aTelNumber ); - - /** - * Make multiparty call. - */ - void MultipartyCalling( const TDesC8& aData ); - - /** - * Generates DTMF signal. - */ - void GenerateDTMF( const TChar aChar ); - - /** - * Make a speed dial call. - */ - void SpeedDial( const TInt aIndex ); - - private: - - /** - * C++ default constructor. - */ - CRemConCall(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - public: - - protected: - - private: - CRemConActive* iActive; - CRemConCallHandlingTarget* iCall; - TInt iError; - TInt iEvent; - TInt iParameter; - - public: - - protected: - - private: - - }; - -#endif //CREMCONCALL_H - -// End of File +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + +#ifndef CREMCONCALL_H +#define CREMCONCALL_H + +// INCLUDES +#include +#include +#include +#include + +#include "mremconcontrol.h" +#include "mremconobserver.h" +#include "remconactive.h" +#include "remcontypes.h" +#include "remconcontrol.h" + +class MRemConObserver; + +class CRemConCall : public MRemConObserver, public MRemConCallHandlingTargetObserver + + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CRemConCall* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + /** + * Destructor. + */ + virtual ~CRemConCall(); + + public: // New functions + + //void RequestResponse(TXXXTestClientFunction aSync); + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + public: // Functions from base classes + + + void CompleteResponse( const TInt aError ); + void GetCommandSourceInfo(TRemConExtCmdSource& aSource); + + protected: // New functions + + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + protected: // Functions from base classes + + /** + * Answer an incoming phone call. + */ + void AnswerCall(); + + /** + * End an incoming/ongoing phone call. + */ + void EndCall(); + + /** + * End an incoming/ongoing phone call. + */ + void AnswerEndCall(); + + /** + * Make a voice call. + */ + void VoiceDial( const TBool aActivate ); + + /** + * Redial last phone call. + */ + void LastNumberRedial(); + + /** + * Dial a phone call. + */ + void DialCall( const TDesC8& aTelNumber ); + + /** + * Make multiparty call. + */ + void MultipartyCalling( const TDesC8& aData ); + + /** + * Generates DTMF signal. + */ + void GenerateDTMF( const TChar aChar ); + + /** + * Make a speed dial call. + */ + void SpeedDial( const TInt aIndex ); + + private: + + /** + * C++ default constructor. + */ + CRemConCall(); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + public: + + protected: + + private: + CRemConActive* iActive; + CRemConCallHandlingTarget* iCall; + TInt iError; + TInt iEvent; + TInt iParameter; + + public: + + protected: + + private: + + }; + +#endif //CREMCONCALL_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontrol.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,124 +1,124 @@ -/* -* Copyright (c) 2004 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: This file contains the header file of the CXXXStub class. -* -*/ - - -#ifndef __CREMCONCONTROL_H__ -#define __CREMCONCONTROL_H__ - -#include -#include -#include -#include -#include - -#include -#include - -#include -#include -#include - - -#include "ctfstub.h" -#include "ctfremotestub.h" - -#include "remcontypes.h" -#include -#include "mremconcontrol.h" -#include "remconpoc.h" -#include "remconsync.h" -#include "remconcall.h" -#include "remconcore.h" -#include "remconpspchobserver.h" - -struct TRemConControlTestCaseState; -class MRemConControl; - -const TInt KTFStubTypeRemConControl = 570; - -class CRemConControl : public MRemConControl, public CTFRemoteStub - { -public: - CRemConControl( void ); - - virtual ~CRemConControl( void ); - -private: - CRemConControl( const CRemConControl& aStub ); - CRemConControl& operator=( const CRemConControl& aStub ); - -public: - void InitializeL( void ); - -public: - void CallApiFunctionL( TRemConControlTestCaseState& aParameter ); - - void DeleteInstances(); - - void SwapToNormalHandlerL(); - - /** - * From CTFRemoteStub - * - * Processes a message and completes it. It is not necessary to - * complete the message immediately. - */ - void ProcessMessageAndCompleteL( const RMessage2& aMessage ); - - /** - * From CTFRemoteStub - * - * Notifies the stub that the asynchronous message passed to - * ProcessMessageAndCompleteL has been completed with given - * status. This can be used to complete the test case. - */ - void MessageCompleteL( TInt aResult ); - - void NotifyKeyEvent( TInt aEvent, TInt aParameter ) ; - - void CompleteKeyEventResponse ( TInt aEvent, TInt aParam, TInt aError); - - void ResetEventResult(); - -private: - void Finalize( void ); - -private: - - CRemConPoc* iPocTarget; - CRemConCore* iCoreTarget; - CRemConSync* iSyncTarget; - CRemConCall* iCallTarget; - - TInt iKeyEvent; - TInt iParameter; - TInt iError; - - - CRemConPSPCHObserver* iCmdReceiverFromStub; - - RProperty iSubscribe; - TBool iEventReceived; - TBool iCompleteResponseReceived; - - CRemConInterfaceSelector* iTargetInterfaceSelector; - - RProcess iAudioClientProc; - - }; - -#endif // __CXXXSTUB_H__ +/* +* Copyright (c) 2004 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: This file contains the header file of the CXXXStub class. +* +*/ + + +#ifndef __CREMCONCONTROL_H__ +#define __CREMCONCONTROL_H__ + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include + + +#include "ctfstub.h" +#include "ctfremotestub.h" + +#include "remcontypes.h" +#include +#include "mremconcontrol.h" +#include "remconpoc.h" +#include "remconsync.h" +#include "remconcall.h" +#include "remconcore.h" +#include "remconpspchobserver.h" + +struct TRemConControlTestCaseState; +class MRemConControl; + +const TInt KTFStubTypeRemConControl = 570; + +class CRemConControl : public MRemConControl, public CTFRemoteStub + { +public: + CRemConControl( void ); + + virtual ~CRemConControl( void ); + +private: + CRemConControl( const CRemConControl& aStub ); + CRemConControl& operator=( const CRemConControl& aStub ); + +public: + void InitializeL( void ); + +public: + void CallApiFunctionL( TRemConControlTestCaseState& aParameter ); + + void DeleteInstances(); + + void SwapToNormalHandlerL(); + + /** + * From CTFRemoteStub + * + * Processes a message and completes it. It is not necessary to + * complete the message immediately. + */ + void ProcessMessageAndCompleteL( const RMessage2& aMessage ); + + /** + * From CTFRemoteStub + * + * Notifies the stub that the asynchronous message passed to + * ProcessMessageAndCompleteL has been completed with given + * status. This can be used to complete the test case. + */ + void MessageCompleteL( TInt aResult ); + + void NotifyKeyEvent( TInt aEvent, TInt aParameter ) ; + + void CompleteKeyEventResponse ( TInt aEvent, TInt aParam, TInt aError); + + void ResetEventResult(); + +private: + void Finalize( void ); + +private: + + CRemConPoc* iPocTarget; + CRemConCore* iCoreTarget; + CRemConSync* iSyncTarget; + CRemConCall* iCallTarget; + + TInt iKeyEvent; + TInt iParameter; + TInt iError; + + + CRemConPSPCHObserver* iCmdReceiverFromStub; + + RProperty iSubscribe; + TBool iEventReceived; + TBool iCompleteResponseReceived; + + CRemConInterfaceSelector* iTargetInterfaceSelector; + + RProcess iAudioClientProc; + + }; + +#endif // __CXXXSTUB_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontroltestcaseparam.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontroltestcaseparam.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcontroltestcaseparam.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,46 +1,46 @@ -/* -* 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: -* -*/ - - -#ifndef __CREMCONCONTROLTESTCASEPARAM_H__ -#define __CREMCONCONTROLTESTCASEPARAM_H__ - -#include -#include "ctfstubtestcaseparam.h" -#include "remcontypes.h" - -class CRemConControlTestCaseParam : public CTFStubTestCaseParam - { -public: - CRemConControlTestCaseParam( void ); - void ConstructL( const TRemConControlTestCaseState* aStates, TInt aStateCount ); - virtual ~CRemConControlTestCaseParam( void ); - -private: - CRemConControlTestCaseParam( const CRemConControlTestCaseParam& aParam ); - CRemConControlTestCaseParam& operator=( const CRemConControlTestCaseParam& aParam ); - -public: - const TRemConControlTestCaseState* States( void ) const; - TInt StateCount( void ) const; - -private: - TRemConControlTestCaseState* iStates; - TInt iStateCount; - }; - -#endif +/* +* 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: +* +*/ + + +#ifndef __CREMCONCONTROLTESTCASEPARAM_H__ +#define __CREMCONCONTROLTESTCASEPARAM_H__ + +#include +#include "ctfstubtestcaseparam.h" +#include "remcontypes.h" + +class CRemConControlTestCaseParam : public CTFStubTestCaseParam + { +public: + CRemConControlTestCaseParam( void ); + void ConstructL( const TRemConControlTestCaseState* aStates, TInt aStateCount ); + virtual ~CRemConControlTestCaseParam( void ); + +private: + CRemConControlTestCaseParam( const CRemConControlTestCaseParam& aParam ); + CRemConControlTestCaseParam& operator=( const CRemConControlTestCaseParam& aParam ); + +public: + const TRemConControlTestCaseState* States( void ) const; + TInt StateCount( void ) const; + +private: + TRemConControlTestCaseState* iStates; + TInt iStateCount; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcore.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcore.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconcore.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,183 +1,183 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - -#ifndef CREMCONCORE_H -#define CREMCONCORE_H - -// INCLUDES -#include -#include -#include -#include -#include - -#include "mremconcontrol.h" -#include "mremconobserver.h" -#include "remconactive.h" -#include "remcontypes.h" -#include "remconcontrol.h" - -class MRemConObserver; - -class CRemConCore : public MRemConObserver, public MRemConCoreApiTargetObserver, public MRemConCoreApiControllerObserver - - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CRemConCore* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - /** - * Destructor. - */ - virtual ~CRemConCore(); - - void Play(); - - void Stop(); - - void Cancel(); - - public: // New functions - - //void RequestResponse(TXXXTestClientFunction aPoc); - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - public: // Functions from base classes - - - void CompleteResponse( const TInt aError ); - - protected: // New functions - - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - protected: // Functions from base classes - - - private: - - /** - * C++ default constructor. - */ - CRemConCore(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - public: - - protected: - - private: - - CRemConActive* iActive; - CRemConCoreApiTarget* iCore; - CRemConCoreApiController* iCoreController; - CRemConInterfaceSelector* iTargetInterfaceSelector; - - TInt iEvent; - TInt iParameter; - - public: - - protected: - - private: - - /** - A command has been received. - @param aOperationId The operation ID of the command. - @param aButtonAct The button action associated with the command. - */ - void MrccatoCommand(TRemConCoreApiOperationId aOperationId, - TRemConCoreApiButtonAction aButtonAct); - - /** - A 'play' command has been received. - @param aSpeed The playback speed. - @param aButtonAct The button action associated with the command. - */ - void MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed, - TRemConCoreApiButtonAction aButtonAct); - - /** - A 'tune function' command has been received. - @param aTwoPart If EFalse, only aMajorChannel is to be used. Otherwise, - both aMajorChannel and aMinorChannel are to be used. - @param aMajorChannel The major channel number. - @param aMinorChannel The minor channel number. - @param aButtonAct The button action associated with the command. - */ - void MrccatoTuneFunction(TBool aTwoPart, - TUint aMajorChannel, - TUint aMinorChannel, - TRemConCoreApiButtonAction aButtonAct); - - /** - A 'select disk function' has been received. - @param aDisk The disk. - @param aButtonAct The button action associated with the command. - */ - void MrccatoSelectDiskFunction(TUint aDisk, - TRemConCoreApiButtonAction aButtonAct); - - /** - A 'select AV input function' has been received. - @param aAvInputSignalNumber The AV input. - @param aButtonAct The button action associated with the command. - */ - void MrccatoSelectAvInputFunction(TUint8 aAvInputSignalNumber, - TRemConCoreApiButtonAction aButtonAct); - - /** - A 'select audio input function' has been received. - @param aAudioInputSignalNumber The audio input. - @param aButtonAct The button action associated with the command. - */ - void MrccatoSelectAudioInputFunction(TUint8 aAudioInputSignalNumber, - TRemConCoreApiButtonAction aButtonAct); - - - void Response(TRemConCoreApiOperationId aOperationId, TInt aError); - /** - * From ?base_class ?member_description - */ - //?type ?member_function(); - - - }; - -#endif //CREMCONCORE_H - -// End of File +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + +#ifndef CREMCONCORE_H +#define CREMCONCORE_H + +// INCLUDES +#include +#include +#include +#include +#include + +#include "mremconcontrol.h" +#include "mremconobserver.h" +#include "remconactive.h" +#include "remcontypes.h" +#include "remconcontrol.h" + +class MRemConObserver; + +class CRemConCore : public MRemConObserver, public MRemConCoreApiTargetObserver, public MRemConCoreApiControllerObserver + + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CRemConCore* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + /** + * Destructor. + */ + virtual ~CRemConCore(); + + void Play(); + + void Stop(); + + void Cancel(); + + public: // New functions + + //void RequestResponse(TXXXTestClientFunction aPoc); + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + public: // Functions from base classes + + + void CompleteResponse( const TInt aError ); + + protected: // New functions + + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + protected: // Functions from base classes + + + private: + + /** + * C++ default constructor. + */ + CRemConCore(); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + public: + + protected: + + private: + + CRemConActive* iActive; + CRemConCoreApiTarget* iCore; + CRemConCoreApiController* iCoreController; + CRemConInterfaceSelector* iTargetInterfaceSelector; + + TInt iEvent; + TInt iParameter; + + public: + + protected: + + private: + + /** + A command has been received. + @param aOperationId The operation ID of the command. + @param aButtonAct The button action associated with the command. + */ + void MrccatoCommand(TRemConCoreApiOperationId aOperationId, + TRemConCoreApiButtonAction aButtonAct); + + /** + A 'play' command has been received. + @param aSpeed The playback speed. + @param aButtonAct The button action associated with the command. + */ + void MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed, + TRemConCoreApiButtonAction aButtonAct); + + /** + A 'tune function' command has been received. + @param aTwoPart If EFalse, only aMajorChannel is to be used. Otherwise, + both aMajorChannel and aMinorChannel are to be used. + @param aMajorChannel The major channel number. + @param aMinorChannel The minor channel number. + @param aButtonAct The button action associated with the command. + */ + void MrccatoTuneFunction(TBool aTwoPart, + TUint aMajorChannel, + TUint aMinorChannel, + TRemConCoreApiButtonAction aButtonAct); + + /** + A 'select disk function' has been received. + @param aDisk The disk. + @param aButtonAct The button action associated with the command. + */ + void MrccatoSelectDiskFunction(TUint aDisk, + TRemConCoreApiButtonAction aButtonAct); + + /** + A 'select AV input function' has been received. + @param aAvInputSignalNumber The AV input. + @param aButtonAct The button action associated with the command. + */ + void MrccatoSelectAvInputFunction(TUint8 aAvInputSignalNumber, + TRemConCoreApiButtonAction aButtonAct); + + /** + A 'select audio input function' has been received. + @param aAudioInputSignalNumber The audio input. + @param aButtonAct The button action associated with the command. + */ + void MrccatoSelectAudioInputFunction(TUint8 aAudioInputSignalNumber, + TRemConCoreApiButtonAction aButtonAct); + + + void Response(TRemConCoreApiOperationId aOperationId, TInt aError); + /** + * From ?base_class ?member_description + */ + //?type ?member_function(); + + + }; + +#endif //CREMCONCORE_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconplugin.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconplugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconplugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* Copyright (c) 2004 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: This file contains the header file of the CXXXPlugin class. -* -*/ - - -#ifndef __CREMCONPLUGIN_H__ -#define __CREMCONPLUGIN_H__ - -// INCLUDE FILES -#include "ctfstubmoduleinterface.h" - -// CLASS DECLARATION - -/** -* An implementation of CTFStubModuleInterface. -*/ -class CRemConPlugin : public CTFStubModuleInterface - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @param aInitParams Initialisation parameters. - * @return The created object. - */ - static CRemConPlugin* NewL( TAny* aInitParams ); - - /** - * Destructor. - */ - ~CRemConPlugin( void ); - - public: // Functions from base classes - - /** - * Gets the stub implementation of this plug-in module - */ - CTFStub* GetStubL( void ); - - /** - * Builds the test suite of this plug-in module. - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); - - private: // Functions - - /** - * C++ default constructor. - * @param aParams Initialisation parameters. - */ - CRemConPlugin( TAny* aParams ); - - private: // Data - - CTFStubModuleInterface::TInterfaceInitParams* iInitParams; - - }; - -#endif //__CREMCONPLUGIN_H__ - +/* +* Copyright (c) 2004 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: This file contains the header file of the CXXXPlugin class. +* +*/ + + +#ifndef __CREMCONPLUGIN_H__ +#define __CREMCONPLUGIN_H__ + +// INCLUDE FILES +#include "ctfstubmoduleinterface.h" + +// CLASS DECLARATION + +/** +* An implementation of CTFStubModuleInterface. +*/ +class CRemConPlugin : public CTFStubModuleInterface + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + * @param aInitParams Initialisation parameters. + * @return The created object. + */ + static CRemConPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CRemConPlugin( void ); + + public: // Functions from base classes + + /** + * Gets the stub implementation of this plug-in module + */ + CTFStub* GetStubL( void ); + + /** + * Builds the test suite of this plug-in module. + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); + + private: // Functions + + /** + * C++ default constructor. + * @param aParams Initialisation parameters. + */ + CRemConPlugin( TAny* aParams ); + + private: // Data + + CTFStubModuleInterface::TInterfaceInitParams* iInitParams; + + }; + +#endif //__CREMCONPLUGIN_H__ + // End of File \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpoc.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpoc.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpoc.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,127 +1,127 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - -#ifndef CREMCONPOC_H -#define CREMCONPOC_H - -// INCLUDES -#include -#include -#include - -#include "mremconcontrol.h" -#include "mremconobserver.h" -#include "remconactive.h" -#include "remcontypes.h" -#include "remconcontrol.h" - -class MRemConObserver; - -class CRemConPoc : public MRemConObserver, public MRemConPocTargetObserver - - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CRemConPoc* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - /** - * Destructor. - */ - virtual ~CRemConPoc(); - - - void APOCButtonDownResponse(); - - void APOCButtonUpResponse(); - - void GetCommandSourceInfo(TRemConExtCmdSource& aSource); - - public: // New functions - - //void RequestResponse(TXXXTestClientFunction aPoc); - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - public: // Functions from base classes - - - void CompleteResponse( const TInt aError ); - - protected: // New functions - - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - protected: // Functions from base classes - - /* POC button*/ - void APOCButtonDown(); - void APOCButtonUp(); - /** - * From ?base_class ?member_description - */ - //?type ?member_function(); - - private: - - /** - * C++ default constructor. - */ - CRemConPoc(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - public: - - protected: - - private: - - CRemConActive* iActive; - CRemConPocTarget* iPoc; - //MRemConControl* iControl; - TInt iError; - TInt iEvent; - TInt iParameter; - - public: - - protected: - - private: - - }; - -#endif //CREMCONPOC_H - -// End of File +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + +#ifndef CREMCONPOC_H +#define CREMCONPOC_H + +// INCLUDES +#include +#include +#include + +#include "mremconcontrol.h" +#include "mremconobserver.h" +#include "remconactive.h" +#include "remcontypes.h" +#include "remconcontrol.h" + +class MRemConObserver; + +class CRemConPoc : public MRemConObserver, public MRemConPocTargetObserver + + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CRemConPoc* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + /** + * Destructor. + */ + virtual ~CRemConPoc(); + + + void APOCButtonDownResponse(); + + void APOCButtonUpResponse(); + + void GetCommandSourceInfo(TRemConExtCmdSource& aSource); + + public: // New functions + + //void RequestResponse(TXXXTestClientFunction aPoc); + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + public: // Functions from base classes + + + void CompleteResponse( const TInt aError ); + + protected: // New functions + + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + protected: // Functions from base classes + + /* POC button*/ + void APOCButtonDown(); + void APOCButtonUp(); + /** + * From ?base_class ?member_description + */ + //?type ?member_function(); + + private: + + /** + * C++ default constructor. + */ + CRemConPoc(); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + public: + + protected: + + private: + + CRemConActive* iActive; + CRemConPocTarget* iPoc; + //MRemConControl* iControl; + TInt iError; + TInt iEvent; + TInt iParameter; + + public: + + protected: + + private: + + }; + +#endif //CREMCONPOC_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpspchobserver.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpspchobserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconpspchobserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,59 +1,59 @@ -/* -* 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: -* -*/ - -#ifndef __CREMCONPSPCHOBSERVER_H__ -#define __CREMCONPSPCHOBSERVER_H__ - -#include - -#include -#include "mremconcontrol.h" - -class MRemConPCHObserver; - -class CRemConPSPCHObserver : public CActive - { - public: - - static CRemConPSPCHObserver* NewL(); - - CRemConPSPCHObserver(); - - ~CRemConPSPCHObserver(); - - void Start(); - - public: - - protected: - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - private: - - RProperty iSubscribe; - - //MRemConPCHObserver& iPCHObserver; - - MRemConControl* iControl; - - TInt iEvent; - }; - - - -#endif //__CREMCONPSPCHOBSERVER_H__ +/* +* 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: +* +*/ + +#ifndef __CREMCONPSPCHOBSERVER_H__ +#define __CREMCONPSPCHOBSERVER_H__ + +#include + +#include +#include "mremconcontrol.h" + +class MRemConPCHObserver; + +class CRemConPSPCHObserver : public CActive + { + public: + + static CRemConPSPCHObserver* NewL(); + + CRemConPSPCHObserver(); + + ~CRemConPSPCHObserver(); + + void Start(); + + public: + + protected: + void DoCancel(); + void RunL(); + TInt RunError( TInt aError ); + private: + + RProperty iSubscribe; + + //MRemConPCHObserver& iPCHObserver; + + MRemConControl* iControl; + + TInt iEvent; + }; + + + +#endif //__CREMCONPSPCHOBSERVER_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconsync.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconsync.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remconsync.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,118 +1,118 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - -#ifndef CREMCONSYNC_H -#define CREMCONSYNC_H - -// INCLUDES -#include -#include -#include -#include - -#include "mremconcontrol.h" -#include "mremconobserver.h" -#include "remconactive.h" -#include "remcontypes.h" -#include "remconcontrol.h" - -class MRemConObserver; - -class CRemConSync : public MRemConObserver, public MRemConSynchronizationTargetObserver - - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CRemConSync* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - /** - * Destructor. - */ - virtual ~CRemConSync(); - - - void SynchronizeResponse(); - - public: // New functions - - //void RequestResponse(TXXXTestClientFunction aSync); - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - public: // Functions from base classes - - - void CompleteResponse( const TInt aError ); - void GetCommandSourceInfo(TRemConExtCmdSource& aSource); - - protected: // New functions - - /** - * ?member_description. - * @since Series ?XX ?SeriesXX_version - * @param ?arg1 ?description - * @return ?description - */ - //?type ?member_function( ?type ?arg1 ); - - protected: // Functions from base classes - - /* Sync button*/ - void Synchronize(); - - private: - - /** - * C++ default constructor. - */ - CRemConSync(); - - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); - - public: - - protected: - - private: - CRemConActive* iActive; - CRemConSynchronizationTarget* iSync; - TInt iError; - TInt iEvent; - TInt iParameter; - - public: - - protected: - - private: - - }; - -#endif //CREMCONSYNC_H - -// End of File +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + +#ifndef CREMCONSYNC_H +#define CREMCONSYNC_H + +// INCLUDES +#include +#include +#include +#include + +#include "mremconcontrol.h" +#include "mremconobserver.h" +#include "remconactive.h" +#include "remcontypes.h" +#include "remconcontrol.h" + +class MRemConObserver; + +class CRemConSync : public MRemConObserver, public MRemConSynchronizationTargetObserver + + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CRemConSync* NewL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + /** + * Destructor. + */ + virtual ~CRemConSync(); + + + void SynchronizeResponse(); + + public: // New functions + + //void RequestResponse(TXXXTestClientFunction aSync); + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + public: // Functions from base classes + + + void CompleteResponse( const TInt aError ); + void GetCommandSourceInfo(TRemConExtCmdSource& aSource); + + protected: // New functions + + /** + * ?member_description. + * @since Series ?XX ?SeriesXX_version + * @param ?arg1 ?description + * @return ?description + */ + //?type ?member_function( ?type ?arg1 ); + + protected: // Functions from base classes + + /* Sync button*/ + void Synchronize(); + + private: + + /** + * C++ default constructor. + */ + CRemConSync(); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(CRemConInterfaceSelector* aTargetInterfaceSelector); + + public: + + protected: + + private: + CRemConActive* iActive; + CRemConSynchronizationTarget* iSync; + TInt iError; + TInt iEvent; + TInt iParameter; + + public: + + protected: + + private: + + }; + +#endif //CREMCONSYNC_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontestcases.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontestcases.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontestcases.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,520 +1,520 @@ -/* -* Copyright (c) 2004 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: This file contains the header file of the ?classname class. -* -*/ - -#include "remcontypes.h" -#include - -/**************************POC*******************************************************/ -// -// ACCREMCON [Poc Press Event] -// - - -const TRemConControlTestCaseState KPocPressStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - }; - -// -// ACCREMCON [Poc Release Event] -// -const TRemConControlTestCaseState KPocReleaseStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocUp }, - { ETFRemCon_PocButtonUpResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocUp }, - }; - -// -// ACCREMCON [Poc Invalid Event] -// -const TRemConControlTestCaseState KInvalidPocStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue,ETFRemConEvent_None }, - }; - -/**************************Synchronize**************************************************/ -// -// ACCREMCON [Synchronize Click Event] -// -const TRemConControlTestCaseState KSynchronizeClickStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSync, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_Sync }, - { ETFRemCon_SyncButtonResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_Sync }, - }; - -// -// ACCREMCON [Synchronize Invalid Event] -// -const TRemConControlTestCaseState KInvalidSyncStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSync, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - }; - -/**************************Volume*******************************************************/ - -// -// ACCREMCON [Volume Up Press Event] -// -const TRemConControlTestCaseState KVolumeUpPressStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {}, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventNone },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp}, - { ETFRemCon_CloseAudioClient, {}, 0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Up Release Short Event] -// -const TRemConControlTestCaseState KVolumeUpReleaseShortStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Up Release Long Event] -// -const TRemConControlTestCaseState KVolumeUpReleaseLongStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Down Press Event] -// -const TRemConControlTestCaseState KVolumeDownPressStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventNone },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Down Release Short Event] -// -const TRemConControlTestCaseState KVolumeDownReleaseShortStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Down Release Long Event] -// -const TRemConControlTestCaseState KVolumeDownReleaseLongStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Volume Invalid Event] -// -const TRemConControlTestCaseState KInvalidVolumeStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - - -/**************************Media*******************************************************/ - -// -// ACCREMCON [Media Play And Pause Event] -// -const TRemConControlTestCaseState KMediaPlayAndPauseStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePlayPause, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CoreApiPlaybackSpeedX1}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Stop Event] -// -const TRemConControlTestCaseState KMediaStopStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeStop, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeStop }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Forward Press Event] -// -const TRemConControlTestCaseState KMediaForwardPressStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Forward Release Event] -// -const TRemConControlTestCaseState KMediaForwardReleaseStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Rewind Press Event] -// -const TRemConControlTestCaseState KMediaRewindPressStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Rewind Release Event] -// -const TRemConControlTestCaseState KMediaRewindReleaseStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack}, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Next Track Event] -// -const TRemConControlTestCaseState KMediaNextTrackStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; -// -// ACCREMCON [Media Previous Track Event] -// -const TRemConControlTestCaseState KMediaPreviousTrackStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -// -// ACCREMCON [Media Invalid Button Event] -// -const TRemConControlTestCaseState KInvalidMediaStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePlayPause, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -/**************************MUTE******************************************************/ - -// -// ACCREMCON [Mute] -// -const TRemConControlTestCaseState KMuteStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeMute, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_Mute }, - { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } - }; - -/**************************TSP*******************************************************/ - -// -// ACCREMCON [Command Address Outgoing] -// -const TRemConControlTestCaseState KAddressOutgoingCommandStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_AddressOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckOutgoingCommandResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Command Permit Outgoing] -// -const TRemConControlTestCaseState KPermitOutgoingCommandStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_PermitOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Command Cancel Outgoing] -// -const TRemConControlTestCaseState KCancelOutgoingCommandStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_CancelOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Response Permit Outgoing] -// -const TRemConControlTestCaseState KPermitOutgoingResponseStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - }; - -// -// ACCREMCON [Notify Address Incoming] -// -const TRemConControlTestCaseState KAddressIncomingNotifyStates[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_NotifyCommandSubscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue,ETFRemConEvent_None }, - }; - -/************************** CALL HANDLING *******************************************************/ - -// -// ACCREMCON [BT Dial Call] -// -const TRemConControlTestCaseState KDialCallStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,0, EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtDialCall, (TText8*) L"3391413", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0,(TText8*) L"", EFalse, ETFRemConEvent_DialCall }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [BT Answer Call] -// -const TRemConControlTestCaseState KAnswerCallStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerCall, (TText8*) L"2", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerCall }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [BT End Call] -// -const TRemConControlTestCaseState KEndCallShortPressStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateConnected,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtEndCall, (TText8*) L"2", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Answer Call or End Call] -// -// send/end key pressed, depending on call state: answer call or end call -// Applies to wired and BT -const TRemConControlTestCaseState KAnswerEndCallStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - // test answer call - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, - // test end call - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateConnected,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, - // command sent when call in idle state - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, - - }; - -// -// ACCREMCON [End Call Long Press: Reject wired call] -// -// send/end key LONG pressed, an incoming voice call (=ringing); reject wired call -const TRemConControlTestCaseState KRejectWiredCall[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventLongPress }, ERemConExtEndCall, (TText8*) L"1", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [End Call Long Press: Voice Dial for Wired] -// -// send/end key LONG pressed, phone in an idle state; voice dial for wired -const TRemConControlTestCaseState KVoiceDialWired[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventLongPress }, ERemConExtEndCall, (TText8*) L"1", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Voice Dial] -// -// send/end key has been long time down = voice dial -const TRemConControlTestCaseState KVoiceDialStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateDown, ERemConKeyEventLongPress },ERemConExtVoiceDial, (TText8*) L"1", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"",EFalse, ETFRemConEvent_VoiceDial }, - }; - -// -// ACCREMCON [Last Number Redial] -// -const TRemConControlTestCaseState KLastNumberRedialStates[] = - { - { ETFRemConEvent_CmdHandler, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, {}, ERemConExtLastNumberRedial, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_LastNumberRedial }, - }; - -// -// ACCREMCON [Multiparty call] -// -const TRemConControlTestCaseState KMultiPartyCallingStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"1", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"12", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"21", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"1x", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"x1", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, - }; - -// -// ACCREMCON [DTMF] -// -const TRemConControlTestCaseState KDTMFStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, {}, ERemConExtGenerateDTMF, (TText8*) L"10", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_GenerateDTMF }, - }; - -// -// ACCREMCON [BT Speed Dial] -// -const TRemConControlTestCaseState KSpeedDialStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, {}, ERemConExtSpeedDial, (TText8*) L"1", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {}, 0,(TText8*) L"", EFalse, ETFRemConEvent_SpeedDial }, - }; - -// -// ACCREMCON [Not supported] -// -const TRemConControlTestCaseState KSupportedStates[] = - { - { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCode4, ERemConKeyModifierNone, ERemConKeyStateDown, ERemConKeyEventRepeat }, ERemConExtGenerateDTMF, (TText8*) L"2", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, - }; - -// -// ACCREMCON [Poc Press Event - GetCommandSourceInfo] -// -const TRemConControlTestCaseState KGetSourceCommandInfoStates_Wired[] = - { - { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, - { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - { ETFRemConEvent_CheckCmdSource, {}, ERemConExtCmdSourceUnKnown, (TText8*) L"", EFalse, ETFRemConEvent_None }, - { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, - { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, - }; +/* +* Copyright (c) 2004 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: This file contains the header file of the ?classname class. +* +*/ + +#include "remcontypes.h" +#include + +/**************************POC*******************************************************/ +// +// ACCREMCON [Poc Press Event] +// + + +const TRemConControlTestCaseState KPocPressStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + }; + +// +// ACCREMCON [Poc Release Event] +// +const TRemConControlTestCaseState KPocReleaseStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocUp }, + { ETFRemCon_PocButtonUpResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocUp }, + }; + +// +// ACCREMCON [Poc Invalid Event] +// +const TRemConControlTestCaseState KInvalidPocStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue,ETFRemConEvent_None }, + }; + +/**************************Synchronize**************************************************/ +// +// ACCREMCON [Synchronize Click Event] +// +const TRemConControlTestCaseState KSynchronizeClickStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSync, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_Sync }, + { ETFRemCon_SyncButtonResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_Sync }, + }; + +// +// ACCREMCON [Synchronize Invalid Event] +// +const TRemConControlTestCaseState KInvalidSyncStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSync, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + }; + +/**************************Volume*******************************************************/ + +// +// ACCREMCON [Volume Up Press Event] +// +const TRemConControlTestCaseState KVolumeUpPressStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {}, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventNone },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp}, + { ETFRemCon_CloseAudioClient, {}, 0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Up Release Short Event] +// +const TRemConControlTestCaseState KVolumeUpReleaseShortStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Up Release Long Event] +// +const TRemConControlTestCaseState KVolumeUpReleaseLongStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeUp, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeUp }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Down Press Event] +// +const TRemConControlTestCaseState KVolumeDownPressStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventNone },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Down Release Short Event] +// +const TRemConControlTestCaseState KVolumeDownReleaseShortStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Down Release Long Event] +// +const TRemConControlTestCaseState KVolumeDownReleaseLongStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_VolumeDown}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Volume Invalid Event] +// +const TRemConControlTestCaseState KInvalidVolumeStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeVolumeDown, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + + +/**************************Media*******************************************************/ + +// +// ACCREMCON [Media Play And Pause Event] +// +const TRemConControlTestCaseState KMediaPlayAndPauseStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePlayPause, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CoreApiPlaybackSpeedX1}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Stop Event] +// +const TRemConControlTestCaseState KMediaStopStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeStop, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeStop }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Forward Press Event] +// +const TRemConControlTestCaseState KMediaForwardPressStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Forward Release Event] +// +const TRemConControlTestCaseState KMediaForwardReleaseStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Rewind Press Event] +// +const TRemConControlTestCaseState KMediaRewindPressStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Rewind Release Event] +// +const TRemConControlTestCaseState KMediaRewindReleaseStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventLongPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},1, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack}, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Next Track Event] +// +const TRemConControlTestCaseState KMediaNextTrackStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeForward, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeForward }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; +// +// ACCREMCON [Media Previous Track Event] +// +const TRemConControlTestCaseState KMediaPreviousTrackStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeBack, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_CodeBack }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +// +// ACCREMCON [Media Invalid Button Event] +// +const TRemConControlTestCaseState KInvalidMediaStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePlayPause, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +/**************************MUTE******************************************************/ + +// +// ACCREMCON [Mute] +// +const TRemConControlTestCaseState KMuteStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_LaunchAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeMute, ERemConKeyModifierNone,ERemConKeyStateUp, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CheckClientKey, {},2, (TText8*) L"", ETrue, ETFRemConEvent_Mute }, + { ETFRemCon_CloseAudioClient, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None } + }; + +/**************************TSP*******************************************************/ + +// +// ACCREMCON [Command Address Outgoing] +// +const TRemConControlTestCaseState KAddressOutgoingCommandStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_AddressOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckOutgoingCommandResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Command Permit Outgoing] +// +const TRemConControlTestCaseState KPermitOutgoingCommandStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_PermitOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Command Cancel Outgoing] +// +const TRemConControlTestCaseState KCancelOutgoingCommandStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_CancelOutgoingCommand, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Response Permit Outgoing] +// +const TRemConControlTestCaseState KPermitOutgoingResponseStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + }; + +// +// ACCREMCON [Notify Address Incoming] +// +const TRemConControlTestCaseState KAddressIncomingNotifyStates[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_NotifyCommandSubscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventShortPress },0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue,ETFRemConEvent_None }, + }; + +/************************** CALL HANDLING *******************************************************/ + +// +// ACCREMCON [BT Dial Call] +// +const TRemConControlTestCaseState KDialCallStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,0, EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtDialCall, (TText8*) L"3391413", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0,(TText8*) L"", EFalse, ETFRemConEvent_DialCall }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [BT Answer Call] +// +const TRemConControlTestCaseState KAnswerCallStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerCall, (TText8*) L"2", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerCall }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [BT End Call] +// +const TRemConControlTestCaseState KEndCallShortPressStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateConnected,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtEndCall, (TText8*) L"2", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Answer Call or End Call] +// +// send/end key pressed, depending on call state: answer call or end call +// Applies to wired and BT +const TRemConControlTestCaseState KAnswerEndCallStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + // test answer call + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, + // test end call + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateConnected,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, + // command sent when call in idle state + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventShortPress }, ERemConExtAnswerEnd, (TText8*) L"2", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_AnswerEnd }, + + }; + +// +// ACCREMCON [End Call Long Press: Reject wired call] +// +// send/end key LONG pressed, an incoming voice call (=ringing); reject wired call +const TRemConControlTestCaseState KRejectWiredCall[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateRinging,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventLongPress }, ERemConExtEndCall, (TText8*) L"1", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [End Call Long Press: Voice Dial for Wired] +// +// send/end key LONG pressed, phone in an idle state; voice dial for wired +const TRemConControlTestCaseState KVoiceDialWired[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateUp, ERemConKeyEventLongPress }, ERemConExtEndCall, (TText8*) L"1", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_EndCall }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Voice Dial] +// +// send/end key has been long time down = voice dial +const TRemConControlTestCaseState KVoiceDialStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {},EPSCTsyCallStateNone,(TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodeSendEnd, ERemConKeyModifierNone, ERemConKeyStateDown, ERemConKeyEventLongPress },ERemConExtVoiceDial, (TText8*) L"1", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"",EFalse, ETFRemConEvent_VoiceDial }, + }; + +// +// ACCREMCON [Last Number Redial] +// +const TRemConControlTestCaseState KLastNumberRedialStates[] = + { + { ETFRemConEvent_CmdHandler, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, {}, ERemConExtLastNumberRedial, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {}, 0, (TText8*) L"", EFalse, ETFRemConEvent_LastNumberRedial }, + }; + +// +// ACCREMCON [Multiparty call] +// +const TRemConControlTestCaseState KMultiPartyCallingStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"1", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"12", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"21", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"1x", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + { ETFRemCon_Subscribe, {}, ERemConExt3WaysCalling, (TText8*) L"x1", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_MultiPartyCalling }, + }; + +// +// ACCREMCON [DTMF] +// +const TRemConControlTestCaseState KDTMFStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, {}, ERemConExtGenerateDTMF, (TText8*) L"10", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_GenerateDTMF }, + }; + +// +// ACCREMCON [BT Speed Dial] +// +const TRemConControlTestCaseState KSpeedDialStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, {}, ERemConExtSpeedDial, (TText8*) L"1", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {}, 0,(TText8*) L"", EFalse, ETFRemConEvent_SpeedDial }, + }; + +// +// ACCREMCON [Not supported] +// +const TRemConControlTestCaseState KSupportedStates[] = + { + { ETFRemConEvent_CmdHandler, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemConEvent_SetCallState, {}, EPSCTsyCallStateNone, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCode4, ERemConKeyModifierNone, ERemConKeyStateDown, ERemConKeyEventRepeat }, ERemConExtGenerateDTMF, (TText8*) L"2", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", EFalse, ETFRemConEvent_None }, + }; + +// +// ACCREMCON [Poc Press Event - GetCommandSourceInfo] +// +const TRemConControlTestCaseState KGetSourceCommandInfoStates_Wired[] = + { + { ETFRemConEvent_NormalHandler, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemCon_Subscribe, { ERemConKeyCodePOC, ERemConKeyModifierNone,ERemConKeyStateDown, ERemConKeyEventRepeat }, 0, (TText8*) L"", ETrue, ETFRemConEvent_None }, + { ETFRemConEvent_CheckEvent, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + { ETFRemConEvent_CheckCmdSource, {}, ERemConExtCmdSourceUnKnown, (TText8*) L"", EFalse, ETFRemConEvent_None }, + { ETFRemCon_PocButtonDownResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_None}, + { ETFRemConEvent_CheckResponse, {},0, (TText8*) L"", ETrue, ETFRemConEvent_PocDown }, + }; diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontypes.h --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/inc/remcontypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,108 +1,108 @@ -/* -* Copyright (c) 2004 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: This file contains the header file of the ?classname class. -* -*/ - - -#ifndef __TFREMCONTYPES_H__ -#define __TFREMCONTYPES_H__ - -#include -#include -#include -#include -#include - -enum TTFRemConFunction - { - ETFRemCon_Subscribe = 1, - ETFRemCon_PocButtonDownResponse = 4, - ETFRemCon_PocButtonUpResponse = 5, - ETFRemCon_SyncButtonResponse = 6, - ETFRemCon_AddressOutgoingCommand = 7, - ETFRemCon_PermitOutgoingCommand = 8, - ETFRemCon_CancelOutgoingCommand = 9, - ETFRemConEvent_AnswerCallResponse = 10, - ETFRemConEvent_EndCallResponse = 11, - ETFRemConEvent_LastNumberRedialResponse = 12, - ETFRemConEvent_VoiceDialResponse = 13, - ETFRemConEvent_DialCallResponse = 14, - //ETFRemConEvent_DisableNRECFromTerminalResponse = 15, - ETFRemConEvent_MultipartyCallingResponse = 16, - ETFRemConEvent_GenerateDTMFResponse = 17, - ETFRemConEvent_SpeedDialResponse = 18, - ETFRemConEvent_CheckEvent = 19, - ETFRemConEvent_CheckResponse = 20, - ETFRemConEvent_SetCallState = 21, - ETFRemConEvent_CmdHandler = 22, - ETFRemConEvent_NormalHandler = 23, - ETFRemConEvent_DeleteInstances = 24, - ETFRemConEvent_LoadPCH_NoAccFW = 25, - ETFRemConEvent_DeletePCH_NoAccFW = 26, - ETFRemConEvent_CheckOutgoingCommandResponse = 27, - ETFRemCon_NotifyCommandSubscribe = 28, - ETFRemCon_AddressIncomingNotify = 29, - ETFRemCon_LaunchAudioClient = 30, - ETFRemCon_CloseAudioClient = 31, - ETFRemCon_CheckClientKey = 32, - ETFRemConEvent_CheckCmdSource = 33 - }; - -enum TTFRemConkeyEvent - { - ETFRemConEvent_None = 0, - ERemConEvent_CodeSendEnd, - ETFRemConEvent_VolumeUp, - ETFRemConEvent_VolumeDown, - ETFRemConEvent_CodePlayPause, - ETFRemConEvent_CodeStop, - ETFRemConEvent_CodeBack, - ETFRemConEvent_CodeForward, - ETFRemConEvent_PocUp, - ETFRemConEvent_PocDown, - ETFRemConEvent_Sync, - ETFRemConEvent_CoreApiPlaybackSpeedX1, - ETFRemConEvent_AnswerCall, - ETFRemConEvent_EndCall, - ETFRemConEvent_AnswerEnd, - ETFRemConEvent_VoiceDial, - ETFRemConEvent_LastNumberRedial, - ETFRemConEvent_DialCall, - ETFRemConEvent_DisableNRECFromTerminal, - ETFRemConEvent_MultiPartyCalling, - ETFRemConEvent_GenerateDTMF, - ETFRemConEvent_SpeedDial, - ETFRemConEvent_Mute - }; - - -// Defines test case state for stub -struct TRemConControlTestCaseState - { - TTFRemConFunction iFunction; - TRemConKeyEventData iKeyEvents; - TInt iArg1; - TText8* iArg2; - TBool iUseConverter; - TTFRemConkeyEvent iExpectedKeyEvent; - }; - -const TInt KTFErrRemConServiceMissing = -4001; -const TInt KTFErrRemConEventMissing = -5000; -const TInt KTFErrRemConUnexpectedEvent = -6000; -const TInt KTFErrRemConUnexpectedEventParameter = -7000; -const TInt KTFErrRemConUnexpectedResult = -8000; - -#endif //__TFREMCONTYPES_H__ +/* +* Copyright (c) 2004 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: This file contains the header file of the ?classname class. +* +*/ + + +#ifndef __TFREMCONTYPES_H__ +#define __TFREMCONTYPES_H__ + +#include +#include +#include +#include +#include + +enum TTFRemConFunction + { + ETFRemCon_Subscribe = 1, + ETFRemCon_PocButtonDownResponse = 4, + ETFRemCon_PocButtonUpResponse = 5, + ETFRemCon_SyncButtonResponse = 6, + ETFRemCon_AddressOutgoingCommand = 7, + ETFRemCon_PermitOutgoingCommand = 8, + ETFRemCon_CancelOutgoingCommand = 9, + ETFRemConEvent_AnswerCallResponse = 10, + ETFRemConEvent_EndCallResponse = 11, + ETFRemConEvent_LastNumberRedialResponse = 12, + ETFRemConEvent_VoiceDialResponse = 13, + ETFRemConEvent_DialCallResponse = 14, + //ETFRemConEvent_DisableNRECFromTerminalResponse = 15, + ETFRemConEvent_MultipartyCallingResponse = 16, + ETFRemConEvent_GenerateDTMFResponse = 17, + ETFRemConEvent_SpeedDialResponse = 18, + ETFRemConEvent_CheckEvent = 19, + ETFRemConEvent_CheckResponse = 20, + ETFRemConEvent_SetCallState = 21, + ETFRemConEvent_CmdHandler = 22, + ETFRemConEvent_NormalHandler = 23, + ETFRemConEvent_DeleteInstances = 24, + ETFRemConEvent_LoadPCH_NoAccFW = 25, + ETFRemConEvent_DeletePCH_NoAccFW = 26, + ETFRemConEvent_CheckOutgoingCommandResponse = 27, + ETFRemCon_NotifyCommandSubscribe = 28, + ETFRemCon_AddressIncomingNotify = 29, + ETFRemCon_LaunchAudioClient = 30, + ETFRemCon_CloseAudioClient = 31, + ETFRemCon_CheckClientKey = 32, + ETFRemConEvent_CheckCmdSource = 33 + }; + +enum TTFRemConkeyEvent + { + ETFRemConEvent_None = 0, + ERemConEvent_CodeSendEnd, + ETFRemConEvent_VolumeUp, + ETFRemConEvent_VolumeDown, + ETFRemConEvent_CodePlayPause, + ETFRemConEvent_CodeStop, + ETFRemConEvent_CodeBack, + ETFRemConEvent_CodeForward, + ETFRemConEvent_PocUp, + ETFRemConEvent_PocDown, + ETFRemConEvent_Sync, + ETFRemConEvent_CoreApiPlaybackSpeedX1, + ETFRemConEvent_AnswerCall, + ETFRemConEvent_EndCall, + ETFRemConEvent_AnswerEnd, + ETFRemConEvent_VoiceDial, + ETFRemConEvent_LastNumberRedial, + ETFRemConEvent_DialCall, + ETFRemConEvent_DisableNRECFromTerminal, + ETFRemConEvent_MultiPartyCalling, + ETFRemConEvent_GenerateDTMF, + ETFRemConEvent_SpeedDial, + ETFRemConEvent_Mute + }; + + +// Defines test case state for stub +struct TRemConControlTestCaseState + { + TTFRemConFunction iFunction; + TRemConKeyEventData iKeyEvents; + TInt iArg1; + TText8* iArg2; + TBool iUseConverter; + TTFRemConkeyEvent iExpectedKeyEvent; + }; + +const TInt KTFErrRemConServiceMissing = -4001; +const TInt KTFErrRemConEventMissing = -5000; +const TInt KTFErrRemConUnexpectedEvent = -6000; +const TInt KTFErrRemConUnexpectedEventParameter = -7000; +const TInt KTFErrRemConUnexpectedResult = -8000; + +#endif //__TFREMCONTYPES_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconactive.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconactive.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconactive.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,107 +1,107 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -// INCLUDE FILES -#include "remconactive.h" -#include "mremconobserver.h" -#include "siftrace.h" - -// EXTERNAL DATA STRUCTURES - -// EXTERNAL FUNCTION PROTOTYPES - -// CONSTANTS - -// MACROS - -// LOCAL CONSTANTS AND MACROS - -// MODULE DATA STRUCTURES - -// LOCAL FUNCTION PROTOTYPES - -// FORWARD DECLARATIONS - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConActive* CRemConActive::NewL( MRemConObserver& aObserver ) - { - COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::NewL() start" ) ); - CRemConActive* self = new(ELeave) CRemConActive( aObserver ); - COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::NewL() end" ) ); - return self; - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConActive::~CRemConActive() - { - COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::~CRemConActive() start" ) ); - - COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::~CRemConActive() end" ) ); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConActive::CRemConActive( MRemConObserver& aObserver ) -: CActive(CActive::EPriorityStandard), - iObserver(aObserver) - { - CActiveScheduler::Add(this); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConActive::SetActive() - { - CActive::SetActive(); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConActive::RunL() - { - TInt error( iStatus.Int() ); - iStatus = KErrNone; - iObserver.CompleteResponse( error ); - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConActive::DoCancel() - { - - } - -// End of file +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +// INCLUDE FILES +#include "remconactive.h" +#include "mremconobserver.h" +#include "siftrace.h" + +// EXTERNAL DATA STRUCTURES + +// EXTERNAL FUNCTION PROTOTYPES + +// CONSTANTS + +// MACROS + +// LOCAL CONSTANTS AND MACROS + +// MODULE DATA STRUCTURES + +// LOCAL FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConActive* CRemConActive::NewL( MRemConObserver& aObserver ) + { + COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::NewL() start" ) ); + CRemConActive* self = new(ELeave) CRemConActive( aObserver ); + COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::NewL() end" ) ); + return self; + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConActive::~CRemConActive() + { + COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::~CRemConActive() start" ) ); + + COMPONENT_TRACE( _L( "[REMCOMTESTCONTROL] CRemConActive::~CRemConActive() end" ) ); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConActive::CRemConActive( MRemConObserver& aObserver ) +: CActive(CActive::EPriorityStandard), + iObserver(aObserver) + { + CActiveScheduler::Add(this); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConActive::SetActive() + { + CActive::SetActive(); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConActive::RunL() + { + TInt error( iStatus.Int() ); + iStatus = KErrNone; + iObserver.CompleteResponse( error ); + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConActive::DoCancel() + { + + } + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcall.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcall.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcall.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,186 +1,186 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -// INCLUDE FILES -#include "remconcontrol.h" -#include "remconactive.h" -#include "siftrace.h" -#include "remconcall.h" - - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCall::CRemConCall() - { - iError = KErrNone; - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConCall::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - iCall = CRemConCallHandlingTarget::NewL( *aTargetInterfaceSelector, *this ); - iActive = CRemConActive::NewL( *this ); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCall* CRemConCall::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - CRemConCall* self = new( ELeave ) CRemConCall(); - CleanupStack::PushL( self ); - self->ConstructL( aTargetInterfaceSelector ); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCall::~CRemConCall() - { - delete iActive; - } - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCall::CompleteResponse( const TInt aError ) - { - if(aError != KErrNone) - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConCall::CompleteResponse( %d)" ), aError) ); - } - else - { - MRemConControl* aControl = GetRemConControl(); - aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); - } - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// - /** - * Answer an incoming phone call. - */ - void CRemConCall::AnswerCall() - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * End an incoming/ongoing phone call. - */ - void CRemConCall::EndCall() - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * End an incoming/ongoing phone call. - */ - void CRemConCall::AnswerEndCall() - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Make a voice call. - */ - void CRemConCall::VoiceDial( const TBool aActivate ) - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Redial last phone call. - */ - void CRemConCall::LastNumberRedial() - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Dial a phone call. - */ - void CRemConCall::DialCall( const TDesC8& aTelNumber ) - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Make multiparty call. - */ - void CRemConCall::MultipartyCalling( const TDesC8& aData ) - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Generates DTMF signal. - */ - void CRemConCall::GenerateDTMF( const TChar aChar ) - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - - /** - * Make a speed dial call. - */ - void CRemConCall::SpeedDial( const TInt aIndex ) - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConCall::GetCommandSourceInfo(TRemConExtCmdSource& aSource) - { - iCall->GetCommandSourceInfo( aSource ); - } +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +// INCLUDE FILES +#include "remconcontrol.h" +#include "remconactive.h" +#include "siftrace.h" +#include "remconcall.h" + + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCall::CRemConCall() + { + iError = KErrNone; + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConCall::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + iCall = CRemConCallHandlingTarget::NewL( *aTargetInterfaceSelector, *this ); + iActive = CRemConActive::NewL( *this ); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCall* CRemConCall::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + CRemConCall* self = new( ELeave ) CRemConCall(); + CleanupStack::PushL( self ); + self->ConstructL( aTargetInterfaceSelector ); + CleanupStack::Pop(); + return self; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCall::~CRemConCall() + { + delete iActive; + } + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCall::CompleteResponse( const TInt aError ) + { + if(aError != KErrNone) + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConCall::CompleteResponse( %d)" ), aError) ); + } + else + { + MRemConControl* aControl = GetRemConControl(); + aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); + } + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// + /** + * Answer an incoming phone call. + */ + void CRemConCall::AnswerCall() + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * End an incoming/ongoing phone call. + */ + void CRemConCall::EndCall() + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * End an incoming/ongoing phone call. + */ + void CRemConCall::AnswerEndCall() + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Make a voice call. + */ + void CRemConCall::VoiceDial( const TBool aActivate ) + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Redial last phone call. + */ + void CRemConCall::LastNumberRedial() + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Dial a phone call. + */ + void CRemConCall::DialCall( const TDesC8& aTelNumber ) + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Make multiparty call. + */ + void CRemConCall::MultipartyCalling( const TDesC8& aData ) + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Generates DTMF signal. + */ + void CRemConCall::GenerateDTMF( const TChar aChar ) + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + + /** + * Make a speed dial call. + */ + void CRemConCall::SpeedDial( const TInt aIndex ) + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConCall::GetCommandSourceInfo(TRemConExtCmdSource& aSource) + { + iCall->GetCommandSourceInfo( aSource ); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontrol.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontrol.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontrol.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,579 +1,579 @@ -/* -* Copyright (c) 2004 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: This module contains the implementation of CTFFactory class -* member functions. -* -*/ - - -// INCLUDE FILES -#include "siftrace.h" -#include "remconcontrol.h" -#include "remconcontroltestcase.h" -#include "ctffactory.h" -#include "tftypes.h" -#include "accremconpstypes.h" - -DECLARE_TRACE_ASSERT - - -_LIT_SECURITY_POLICY_PASS( KWritePolicy ); -_LIT_SECURITY_POLICY_PASS( KReadPolicy ); - -static TTFRemConkeyEvent MapRemConToTfKey( TRemConCoreApiOperationId aOperationId ) - { - if ( aOperationId == ERemConCoreApiVolumeUp ) return ETFRemConEvent_VolumeUp; - if ( aOperationId == ERemConCoreApiVolumeDown ) return ETFRemConEvent_VolumeDown; - if ( aOperationId == ERemConCoreApiStop ) return ETFRemConEvent_CodeStop; - if ( aOperationId == ERemConCoreApiFastForward ) return ETFRemConEvent_CodeForward; - if ( aOperationId == ERemConCoreApiRewind ) return ETFRemConEvent_CodeBack; - if ( aOperationId == ERemConCoreApiForward ) return ETFRemConEvent_CodeForward; - if ( aOperationId == ERemConCoreApiBackward ) return ETFRemConEvent_CodeBack; - if ( aOperationId == ERemConCoreApiPausePlayFunction ) return ETFRemConEvent_CoreApiPlaybackSpeedX1; //event not used in real implementation - if ( aOperationId == ERemConCoreApiMute )return ETFRemConEvent_Mute; - - return ETFRemConEvent_None; - } - - -MRemConControl* GetRemConControl( void ) - { - CTFStub* stub = CTFFactory::Stub( KTFStubTypeRemConControl ); - return STATIC_CAST( CRemConControl*, stub ); - } - -MRemConControl::MRemConControl( void ) - { - } - - -MRemConControl::~MRemConControl( void ) - { - } - - -CRemConControl::CRemConControl( void ) -: CTFRemoteStub( KTFStubTypeRemConControl ) - { - - iKeyEvent = ETFRemConEvent_None; - iParameter = 0; - iError = 0; - - iTargetInterfaceSelector = NULL; - iPocTarget = NULL; - iCoreTarget = NULL; - iSyncTarget = NULL; - iCallTarget = NULL; - - } - -//lint -e1740 Pointer not directly deleted by destructor -CRemConControl::~CRemConControl( void ) - { - Finalize(); - COMPONENT_TRACE( ( _L( "CRemConControl::~CRemConControl()" ) ) ); - } -//lint +e1740 - - -void CRemConControl::InitializeL( void ) - { - - TInt retval = KErrNone; - retval = RProperty::Define(KTFRemConTestProperty, KTFRemConTriggerCmdKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); - if(retval != KErrAlreadyExists) - User::LeaveIfError(retval); - - retval = RProperty::Define(KTFRemConTestProperty, KTFRemConTriggerNotifyCmdKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); - if(retval != KErrAlreadyExists) - User::LeaveIfError(retval); - - User::LeaveIfError(iSubscribe.Attach(KTFRemConTestProperty, KTFRemConTriggerCmdKey)); - - TInt retval1 = KErrNone; - retval1 = RProperty::Define(KPSUidCtsyCallInformation, KCTsyCallState, RProperty::EInt, KReadPolicy, KWritePolicy); - if(retval1 != KErrAlreadyExists) - User::LeaveIfError(retval); - - if ( iCmdReceiverFromStub == NULL) - { - iCmdReceiverFromStub = CRemConPSPCHObserver::NewL(); - iCmdReceiverFromStub->Start(); - } - - retval = RProperty::Define(KTFRemConTestProperty, KTFRemConClientKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); - - if( retval != KErrAlreadyExists ) - { - User::LeaveIfError(retval); - } - - COMPONENT_TRACE( ( _L( "CRemConControl::InitializeL - return" ) ) ); - } - -void CRemConControl::SwapToNormalHandlerL( void ) - { - - if(iTargetInterfaceSelector == NULL) - { - iTargetInterfaceSelector = CRemConInterfaceSelector::NewL(); - - if(iPocTarget == NULL) - { - iPocTarget = CRemConPoc::NewL(iTargetInterfaceSelector); - } - - if(iSyncTarget == NULL) - { - iSyncTarget = CRemConSync::NewL(iTargetInterfaceSelector); - } - - if(iCallTarget == NULL) - { - iCallTarget = CRemConCall::NewL(iTargetInterfaceSelector); - } - - if(iCoreTarget == NULL) - { - iCoreTarget = CRemConCore::NewL(iTargetInterfaceSelector); - } - - if( !iTargetInterfaceSelector->ControllerOpened() ) - { - iTargetInterfaceSelector->OpenControllerL(); - } - if( !iTargetInterfaceSelector->TargetOpened() ) - { - iTargetInterfaceSelector->OpenTargetL(); - } - } - } - -void CRemConControl::Finalize( void ) - { - COMPONENT_TRACE( ( _L( "CRemConControl::Finalize()" ) ) ); - - if ( iPocTarget != NULL ) - { - delete iPocTarget; - iPocTarget = NULL; - } - - if ( iCoreTarget != NULL ) - { - delete iCoreTarget; - iCoreTarget = NULL; - } - - if ( iSyncTarget != NULL ) - { - delete iSyncTarget; - iSyncTarget = NULL; - } - - if ( iCallTarget != NULL ) - { - delete iCallTarget; - iCallTarget = NULL; - } - - if ( iCmdReceiverFromStub != NULL) - { - iCmdReceiverFromStub->Cancel(); - delete iCmdReceiverFromStub; - iCmdReceiverFromStub = NULL; - } - - if ( iTargetInterfaceSelector != NULL ) - { - delete iTargetInterfaceSelector; - iTargetInterfaceSelector = NULL; - } - - if ( iAudioClientProc.Handle() ) - { - iAudioClientProc.Kill( KErrNone ); - } - - //Just increase test coverage! - User::After(1000000); - - COMPONENT_TRACE( ( _L( "CRemConControl::Finalize() - Success" ) ) ); - } - -void CRemConControl::DeleteInstances( void ) - { - COMPONENT_TRACE( ( _L( "CRemConControl::Finalize()" ) ) ); - - if ( iPocTarget != NULL ) - { - delete iPocTarget; - iPocTarget = NULL; - } - - if ( iCoreTarget != NULL ) - { - delete iCoreTarget; - iCoreTarget = NULL; - } - - if ( iSyncTarget != NULL ) - { - delete iSyncTarget; - iSyncTarget = NULL; - } - - if( iCallTarget != NULL ) - { - delete iCallTarget; - iCallTarget = NULL; - } - } - - -// This method calls API of module under test. -void CRemConControl::CallApiFunctionL( TRemConControlTestCaseState& aParameter ) - { - //COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); - - TInt retval = KTFErrRemConEventMissing; - switch ( aParameter.iFunction ) - { - - case ETFRemConEvent_NormalHandler: - { - SwapToNormalHandlerL(); - retval = KErrNone; - break; - } - - case ETFRemConEvent_CmdHandler: - { - retval = KErrNone; - break; - } - - case ETFRemCon_Subscribe: - { - - TPckgBuf keyDatabuf; - TRemConStubPSData psData; - psData.iKeyEvent = aParameter.iKeyEvents; - psData.iOperationId = aParameter.iArg1; - psData.iData.Copy( aParameter.iArg2 ); - psData.iUseConverter = aParameter.iUseConverter; - keyDatabuf = psData; - retval = iSubscribe.Set(KTFRemConTestProperty, KTFRemConTriggerCmdKey,keyDatabuf); - retval = KErrNone; - - break; - } - - case ETFRemCon_NotifyCommandSubscribe: - { - TPckgBuf keyDatabuf; - TRemConStubPSData psData; - psData.iKeyEvent = aParameter.iKeyEvents; - psData.iOperationId = aParameter.iArg1; - psData.iData.Copy( aParameter.iArg2 ); - psData.iUseConverter = aParameter.iUseConverter; - keyDatabuf = psData; - retval = RProperty::Set(KTFRemConTestProperty, KTFRemConTriggerNotifyCmdKey,keyDatabuf); - retval = KErrNone; - - break; - } - case ETFRemCon_PocButtonDownResponse: - { - iPocTarget->APOCButtonDownResponse(); - retval = KErrNone; - break; - } - - case ETFRemCon_PocButtonUpResponse: - { - iPocTarget->APOCButtonUpResponse(); - retval = KErrNone; - break; - } - case ETFRemCon_SyncButtonResponse: - { - iSyncTarget->SynchronizeResponse(); - retval = KErrNone; - break; - } - - case ETFRemCon_AddressOutgoingCommand: - { - iCoreTarget->Play(); - retval = KErrNone; - break; - } - - case ETFRemCon_PermitOutgoingCommand: - { - iCoreTarget->Stop(); - retval = KErrNone; - break; - } - - case ETFRemCon_CancelOutgoingCommand: - { - iCoreTarget->Cancel(); - retval = KErrNone; - break; - } - - case ETFRemConEvent_CheckEvent: - { - retval = KErrNone; - - if( aParameter.iExpectedKeyEvent != iKeyEvent ) - { - retval = KErrNotFound; - } - - if( aParameter.iArg1 != iParameter ) - { - retval = KErrArgument; - } - - ResetEventResult(); - - break; - } - - case ETFRemConEvent_CheckResponse: - { - retval = KErrNone; - - if( aParameter.iExpectedKeyEvent != iKeyEvent ) - { - retval = KErrNotFound; - } - - if( aParameter.iArg1 != iParameter ) - { - retval = KErrArgument; - } - - if( iError != KErrNone ) - { - retval = iError; - } - - ResetEventResult(); - - break; - } - case ETFRemConEvent_CheckOutgoingCommandResponse: - { - retval = KErrNone; - - if( aParameter.iExpectedKeyEvent != iKeyEvent && iKeyEvent != ETFRemConEvent_CoreApiPlaybackSpeedX1 ) - { - retval = KErrNotFound; - } - - if( aParameter.iArg1 != iParameter && iParameter != ERemConCoreApiButtonClick ) - { - retval = KErrArgument; - } - - if( iError != KErrNone ) - { - retval = iError; - } - - ResetEventResult(); - - break; - } - - case ETFRemConEvent_CheckCmdSource: - { - TRemConExtCmdSource source; - retval = KErrNone; - - iPocTarget->GetCommandSourceInfo( source ); - - switch( source ) - { - case ERemConExtCmdSourceBluetooth: - { - COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - Bluetooth" ) ) ); - break; - } - case ERemConExtCmdSourceWired: - { - COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - Wired" ) ) ); - break; - } - default: - { - COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - UnKnown" ) ) ); - break; - } - } - if( aParameter.iArg1 != source ) - { - retval = KErrGeneral; - } - - // For coverage - if( retval == KErrNone ) - { - iCallTarget->GetCommandSourceInfo( source ); - if( source != ERemConExtCmdSourceUnKnown ) - { - retval = KErrGeneral; - } - } - - if( retval == KErrNone ) - { - iSyncTarget->GetCommandSourceInfo( source ); - if( source != ERemConExtCmdSourceUnKnown ) - { - retval = KErrGeneral; - } - } - - break; - } - - case ETFRemConEvent_SetCallState: - { - retval = iSubscribe.Set(KPSUidCtsyCallInformation, KCTsyCallState, aParameter.iArg1); - retval = KErrNone; - break; - } - - case ETFRemConEvent_LoadPCH_NoAccFW: - { - if( !iTargetInterfaceSelector ) - { - iTargetInterfaceSelector = CRemConInterfaceSelector::NewL(); - } - retval = KErrNone; - } - break; - - case ETFRemCon_LaunchAudioClient: - { - // reset return channel - TRemConClientKeyDataBuf keyDatabuf; - TRemConClientKeyData keyData; - keyData.iOperationId = ERemConCoreApiSelect; // if not changed by audio client maps to ETRemConEvent_None - keyData.iButtonAct = ERemConCoreApiButtonPress; - keyDatabuf = keyData; - - retval = RProperty::Set( KTFRemConTestProperty, KTFRemConClientKey, keyDatabuf ); - - if ( retval == KErrNone ) - { - retval = iAudioClientProc.Create( _L("audioclientstub.exe"), KNullDesC ); - - // wait for start - if ( retval == KErrNone ) - { - TRequestStatus status; - iAudioClientProc.Rendezvous( status ); - iAudioClientProc.Resume(); - User::WaitForRequest( status ); - retval = status.Int(); - } - } - } - break; - - case ETFRemCon_CloseAudioClient: - if ( iAudioClientProc.Handle() ) - { - iAudioClientProc.Kill( KErrNone ); - retval = KErrNone; - } - break; - - case ETFRemCon_CheckClientKey: - { - TRemConClientKeyDataBuf keyDataBuf; - retval = RProperty::Get( KTFRemConTestProperty, KTFRemConClientKey, keyDataBuf ); - if ( retval == KErrNone ) - { - if ( aParameter.iExpectedKeyEvent != MapRemConToTfKey( keyDataBuf().iOperationId ) ) - { - retval = KErrNotFound; - } - - if( aParameter.iArg1 != keyDataBuf().iButtonAct ) - { - retval = KErrArgument; - } - - } - } - break; - - default: - //TRACE_ASSERT_FALSE(); - break; - } - User::LeaveIfError( retval ); - } - - -void CRemConControl::ResetEventResult() - { - //Reset values - iKeyEvent = ETFRemConEvent_None; - iParameter = 0; - iError = 0; - } -// This method is used by DsyTest to ask the current test case id. Call from -// DsyTest to this method is delivered by SAA test framework's client server. -void CRemConControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) - { - aMessage.Complete( KErrNone ); - } - -// This method can be called by SAA test framework when the method above is -// completed. -void CRemConControl::MessageCompleteL( TInt /*aResult*/ ) - { - } - -void CRemConControl::NotifyKeyEvent( TInt aEvent, TInt aParameter ) -{ - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent( %d, %d )" ), aEvent, aParameter ) ); - - iKeyEvent = aEvent; - iParameter = aParameter; - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent - return" ) ) ); -} - -void CRemConControl::CompleteKeyEventResponse( TInt aEvent, TInt aParam, TInt aError ) -{ - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::CompleteKeyEventResponse( %d, %d, %d )" ), aEvent, aParam, aError ) ); - - iKeyEvent = aEvent; - iParameter = aParam; - iError = aError; - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent - return" ) ) ); -} - - +/* +* Copyright (c) 2004 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: This module contains the implementation of CTFFactory class +* member functions. +* +*/ + + +// INCLUDE FILES +#include "siftrace.h" +#include "remconcontrol.h" +#include "remconcontroltestcase.h" +#include "ctffactory.h" +#include "tftypes.h" +#include "accremconpstypes.h" + +DECLARE_TRACE_ASSERT + + +_LIT_SECURITY_POLICY_PASS( KWritePolicy ); +_LIT_SECURITY_POLICY_PASS( KReadPolicy ); + +static TTFRemConkeyEvent MapRemConToTfKey( TRemConCoreApiOperationId aOperationId ) + { + if ( aOperationId == ERemConCoreApiVolumeUp ) return ETFRemConEvent_VolumeUp; + if ( aOperationId == ERemConCoreApiVolumeDown ) return ETFRemConEvent_VolumeDown; + if ( aOperationId == ERemConCoreApiStop ) return ETFRemConEvent_CodeStop; + if ( aOperationId == ERemConCoreApiFastForward ) return ETFRemConEvent_CodeForward; + if ( aOperationId == ERemConCoreApiRewind ) return ETFRemConEvent_CodeBack; + if ( aOperationId == ERemConCoreApiForward ) return ETFRemConEvent_CodeForward; + if ( aOperationId == ERemConCoreApiBackward ) return ETFRemConEvent_CodeBack; + if ( aOperationId == ERemConCoreApiPausePlayFunction ) return ETFRemConEvent_CoreApiPlaybackSpeedX1; //event not used in real implementation + if ( aOperationId == ERemConCoreApiMute )return ETFRemConEvent_Mute; + + return ETFRemConEvent_None; + } + + +MRemConControl* GetRemConControl( void ) + { + CTFStub* stub = CTFFactory::Stub( KTFStubTypeRemConControl ); + return STATIC_CAST( CRemConControl*, stub ); + } + +MRemConControl::MRemConControl( void ) + { + } + + +MRemConControl::~MRemConControl( void ) + { + } + + +CRemConControl::CRemConControl( void ) +: CTFRemoteStub( KTFStubTypeRemConControl ) + { + + iKeyEvent = ETFRemConEvent_None; + iParameter = 0; + iError = 0; + + iTargetInterfaceSelector = NULL; + iPocTarget = NULL; + iCoreTarget = NULL; + iSyncTarget = NULL; + iCallTarget = NULL; + + } + +//lint -e1740 Pointer not directly deleted by destructor +CRemConControl::~CRemConControl( void ) + { + Finalize(); + COMPONENT_TRACE( ( _L( "CRemConControl::~CRemConControl()" ) ) ); + } +//lint +e1740 + + +void CRemConControl::InitializeL( void ) + { + + TInt retval = KErrNone; + retval = RProperty::Define(KTFRemConTestProperty, KTFRemConTriggerCmdKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); + if(retval != KErrAlreadyExists) + User::LeaveIfError(retval); + + retval = RProperty::Define(KTFRemConTestProperty, KTFRemConTriggerNotifyCmdKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); + if(retval != KErrAlreadyExists) + User::LeaveIfError(retval); + + User::LeaveIfError(iSubscribe.Attach(KTFRemConTestProperty, KTFRemConTriggerCmdKey)); + + TInt retval1 = KErrNone; + retval1 = RProperty::Define(KPSUidCtsyCallInformation, KCTsyCallState, RProperty::EInt, KReadPolicy, KWritePolicy); + if(retval1 != KErrAlreadyExists) + User::LeaveIfError(retval); + + if ( iCmdReceiverFromStub == NULL) + { + iCmdReceiverFromStub = CRemConPSPCHObserver::NewL(); + iCmdReceiverFromStub->Start(); + } + + retval = RProperty::Define(KTFRemConTestProperty, KTFRemConClientKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); + + if( retval != KErrAlreadyExists ) + { + User::LeaveIfError(retval); + } + + COMPONENT_TRACE( ( _L( "CRemConControl::InitializeL - return" ) ) ); + } + +void CRemConControl::SwapToNormalHandlerL( void ) + { + + if(iTargetInterfaceSelector == NULL) + { + iTargetInterfaceSelector = CRemConInterfaceSelector::NewL(); + + if(iPocTarget == NULL) + { + iPocTarget = CRemConPoc::NewL(iTargetInterfaceSelector); + } + + if(iSyncTarget == NULL) + { + iSyncTarget = CRemConSync::NewL(iTargetInterfaceSelector); + } + + if(iCallTarget == NULL) + { + iCallTarget = CRemConCall::NewL(iTargetInterfaceSelector); + } + + if(iCoreTarget == NULL) + { + iCoreTarget = CRemConCore::NewL(iTargetInterfaceSelector); + } + + if( !iTargetInterfaceSelector->ControllerOpened() ) + { + iTargetInterfaceSelector->OpenControllerL(); + } + if( !iTargetInterfaceSelector->TargetOpened() ) + { + iTargetInterfaceSelector->OpenTargetL(); + } + } + } + +void CRemConControl::Finalize( void ) + { + COMPONENT_TRACE( ( _L( "CRemConControl::Finalize()" ) ) ); + + if ( iPocTarget != NULL ) + { + delete iPocTarget; + iPocTarget = NULL; + } + + if ( iCoreTarget != NULL ) + { + delete iCoreTarget; + iCoreTarget = NULL; + } + + if ( iSyncTarget != NULL ) + { + delete iSyncTarget; + iSyncTarget = NULL; + } + + if ( iCallTarget != NULL ) + { + delete iCallTarget; + iCallTarget = NULL; + } + + if ( iCmdReceiverFromStub != NULL) + { + iCmdReceiverFromStub->Cancel(); + delete iCmdReceiverFromStub; + iCmdReceiverFromStub = NULL; + } + + if ( iTargetInterfaceSelector != NULL ) + { + delete iTargetInterfaceSelector; + iTargetInterfaceSelector = NULL; + } + + if ( iAudioClientProc.Handle() ) + { + iAudioClientProc.Kill( KErrNone ); + } + + //Just increase test coverage! + User::After(1000000); + + COMPONENT_TRACE( ( _L( "CRemConControl::Finalize() - Success" ) ) ); + } + +void CRemConControl::DeleteInstances( void ) + { + COMPONENT_TRACE( ( _L( "CRemConControl::Finalize()" ) ) ); + + if ( iPocTarget != NULL ) + { + delete iPocTarget; + iPocTarget = NULL; + } + + if ( iCoreTarget != NULL ) + { + delete iCoreTarget; + iCoreTarget = NULL; + } + + if ( iSyncTarget != NULL ) + { + delete iSyncTarget; + iSyncTarget = NULL; + } + + if( iCallTarget != NULL ) + { + delete iCallTarget; + iCallTarget = NULL; + } + } + + +// This method calls API of module under test. +void CRemConControl::CallApiFunctionL( TRemConControlTestCaseState& aParameter ) + { + //COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); + + TInt retval = KTFErrRemConEventMissing; + switch ( aParameter.iFunction ) + { + + case ETFRemConEvent_NormalHandler: + { + SwapToNormalHandlerL(); + retval = KErrNone; + break; + } + + case ETFRemConEvent_CmdHandler: + { + retval = KErrNone; + break; + } + + case ETFRemCon_Subscribe: + { + + TPckgBuf keyDatabuf; + TRemConStubPSData psData; + psData.iKeyEvent = aParameter.iKeyEvents; + psData.iOperationId = aParameter.iArg1; + psData.iData.Copy( aParameter.iArg2 ); + psData.iUseConverter = aParameter.iUseConverter; + keyDatabuf = psData; + retval = iSubscribe.Set(KTFRemConTestProperty, KTFRemConTriggerCmdKey,keyDatabuf); + retval = KErrNone; + + break; + } + + case ETFRemCon_NotifyCommandSubscribe: + { + TPckgBuf keyDatabuf; + TRemConStubPSData psData; + psData.iKeyEvent = aParameter.iKeyEvents; + psData.iOperationId = aParameter.iArg1; + psData.iData.Copy( aParameter.iArg2 ); + psData.iUseConverter = aParameter.iUseConverter; + keyDatabuf = psData; + retval = RProperty::Set(KTFRemConTestProperty, KTFRemConTriggerNotifyCmdKey,keyDatabuf); + retval = KErrNone; + + break; + } + case ETFRemCon_PocButtonDownResponse: + { + iPocTarget->APOCButtonDownResponse(); + retval = KErrNone; + break; + } + + case ETFRemCon_PocButtonUpResponse: + { + iPocTarget->APOCButtonUpResponse(); + retval = KErrNone; + break; + } + case ETFRemCon_SyncButtonResponse: + { + iSyncTarget->SynchronizeResponse(); + retval = KErrNone; + break; + } + + case ETFRemCon_AddressOutgoingCommand: + { + iCoreTarget->Play(); + retval = KErrNone; + break; + } + + case ETFRemCon_PermitOutgoingCommand: + { + iCoreTarget->Stop(); + retval = KErrNone; + break; + } + + case ETFRemCon_CancelOutgoingCommand: + { + iCoreTarget->Cancel(); + retval = KErrNone; + break; + } + + case ETFRemConEvent_CheckEvent: + { + retval = KErrNone; + + if( aParameter.iExpectedKeyEvent != iKeyEvent ) + { + retval = KErrNotFound; + } + + if( aParameter.iArg1 != iParameter ) + { + retval = KErrArgument; + } + + ResetEventResult(); + + break; + } + + case ETFRemConEvent_CheckResponse: + { + retval = KErrNone; + + if( aParameter.iExpectedKeyEvent != iKeyEvent ) + { + retval = KErrNotFound; + } + + if( aParameter.iArg1 != iParameter ) + { + retval = KErrArgument; + } + + if( iError != KErrNone ) + { + retval = iError; + } + + ResetEventResult(); + + break; + } + case ETFRemConEvent_CheckOutgoingCommandResponse: + { + retval = KErrNone; + + if( aParameter.iExpectedKeyEvent != iKeyEvent && iKeyEvent != ETFRemConEvent_CoreApiPlaybackSpeedX1 ) + { + retval = KErrNotFound; + } + + if( aParameter.iArg1 != iParameter && iParameter != ERemConCoreApiButtonClick ) + { + retval = KErrArgument; + } + + if( iError != KErrNone ) + { + retval = iError; + } + + ResetEventResult(); + + break; + } + + case ETFRemConEvent_CheckCmdSource: + { + TRemConExtCmdSource source; + retval = KErrNone; + + iPocTarget->GetCommandSourceInfo( source ); + + switch( source ) + { + case ERemConExtCmdSourceBluetooth: + { + COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - Bluetooth" ) ) ); + break; + } + case ERemConExtCmdSourceWired: + { + COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - Wired" ) ) ); + break; + } + default: + { + COMPONENT_TRACE( ( _L( "CRemConControl::CallApiFunctionL() ETFRemConEvent_CheckCmdSource - UnKnown" ) ) ); + break; + } + } + if( aParameter.iArg1 != source ) + { + retval = KErrGeneral; + } + + // For coverage + if( retval == KErrNone ) + { + iCallTarget->GetCommandSourceInfo( source ); + if( source != ERemConExtCmdSourceUnKnown ) + { + retval = KErrGeneral; + } + } + + if( retval == KErrNone ) + { + iSyncTarget->GetCommandSourceInfo( source ); + if( source != ERemConExtCmdSourceUnKnown ) + { + retval = KErrGeneral; + } + } + + break; + } + + case ETFRemConEvent_SetCallState: + { + retval = iSubscribe.Set(KPSUidCtsyCallInformation, KCTsyCallState, aParameter.iArg1); + retval = KErrNone; + break; + } + + case ETFRemConEvent_LoadPCH_NoAccFW: + { + if( !iTargetInterfaceSelector ) + { + iTargetInterfaceSelector = CRemConInterfaceSelector::NewL(); + } + retval = KErrNone; + } + break; + + case ETFRemCon_LaunchAudioClient: + { + // reset return channel + TRemConClientKeyDataBuf keyDatabuf; + TRemConClientKeyData keyData; + keyData.iOperationId = ERemConCoreApiSelect; // if not changed by audio client maps to ETRemConEvent_None + keyData.iButtonAct = ERemConCoreApiButtonPress; + keyDatabuf = keyData; + + retval = RProperty::Set( KTFRemConTestProperty, KTFRemConClientKey, keyDatabuf ); + + if ( retval == KErrNone ) + { + retval = iAudioClientProc.Create( _L("audioclientstub.exe"), KNullDesC ); + + // wait for start + if ( retval == KErrNone ) + { + TRequestStatus status; + iAudioClientProc.Rendezvous( status ); + iAudioClientProc.Resume(); + User::WaitForRequest( status ); + retval = status.Int(); + } + } + } + break; + + case ETFRemCon_CloseAudioClient: + if ( iAudioClientProc.Handle() ) + { + iAudioClientProc.Kill( KErrNone ); + retval = KErrNone; + } + break; + + case ETFRemCon_CheckClientKey: + { + TRemConClientKeyDataBuf keyDataBuf; + retval = RProperty::Get( KTFRemConTestProperty, KTFRemConClientKey, keyDataBuf ); + if ( retval == KErrNone ) + { + if ( aParameter.iExpectedKeyEvent != MapRemConToTfKey( keyDataBuf().iOperationId ) ) + { + retval = KErrNotFound; + } + + if( aParameter.iArg1 != keyDataBuf().iButtonAct ) + { + retval = KErrArgument; + } + + } + } + break; + + default: + //TRACE_ASSERT_FALSE(); + break; + } + User::LeaveIfError( retval ); + } + + +void CRemConControl::ResetEventResult() + { + //Reset values + iKeyEvent = ETFRemConEvent_None; + iParameter = 0; + iError = 0; + } +// This method is used by DsyTest to ask the current test case id. Call from +// DsyTest to this method is delivered by SAA test framework's client server. +void CRemConControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) + { + aMessage.Complete( KErrNone ); + } + +// This method can be called by SAA test framework when the method above is +// completed. +void CRemConControl::MessageCompleteL( TInt /*aResult*/ ) + { + } + +void CRemConControl::NotifyKeyEvent( TInt aEvent, TInt aParameter ) +{ + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent( %d, %d )" ), aEvent, aParameter ) ); + + iKeyEvent = aEvent; + iParameter = aParameter; + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent - return" ) ) ); +} + +void CRemConControl::CompleteKeyEventResponse( TInt aEvent, TInt aParam, TInt aError ) +{ + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::CompleteKeyEventResponse( %d, %d, %d )" ), aEvent, aParam, aError ) ); + + iKeyEvent = aEvent; + iParameter = aParam; + iError = aError; + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConControl::NotifyKeyEvent - return" ) ) ); +} + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontroltestcase.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontroltestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcontroltestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,165 +1,165 @@ -/* -* Copyright (c) 2004 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: This module contains the implementation of CRemConControlTestCase class -* member functions. -* -*/ - - -// INCLUDE FILES -#include "ctfatesttimer.h" -#include "ctfatestlog.h" -#include "tftypes.h" -#include "siftrace.h" -#include "remconcontrol.h" -#include "remconcontroltestcase.h" -#include "remconcontroltestcaseparam.h" - -CRemConControlTestCase::CRemConControlTestCase( CRemConControlTestCaseParam* aParameters ) -: CTFStubTestCase( KTFStubTypeRemConControl ) -, iParameters( aParameters ) - { - } - -void CRemConControlTestCase::ConstructL( void ) - { - - iTimer = CTFATestTimer::NewL( *this ); - } - -CRemConControlTestCase::~CRemConControlTestCase( void ) - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::~CRemConControlTestCase() - Enter " ) ) ); - delete iParameters; - delete iTimer; - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::~CRemConControlTestCase() - Return " ) ) ); - } - -void CRemConControlTestCase::Log( TInt aDepth ) - { - } - -void CRemConControlTestCase::InitL( void ) - { - iCurrentStateIndex = 0; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - iCleanupWait = EFalse; // Added to run same test again. - } - -void CRemConControlTestCase::ActiveTestRunL( void ) - { - - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::ActiveTestRunL() - Enter " ) ) ); - if ( iCleanupWait ) - { - CActiveScheduler::Stop(); - } - else - { - RunL(); - } - - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::ActiveTestRunL() - Return " ) ) ); - - } - -void CRemConControlTestCase::RunL( void ) - { - - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::RunL() - Enter " ) ) ); - - if ( iCurrentState.iFunction != 0 ) - { - - TRAPD( result, CallCurrentApiFunctionL() ); - StartNextState( result ); - - } - else - { - DoCompleteTest( KTFErrNoStub ); - } - - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::RunL() - Return " ) ) ); - } - -void CRemConControlTestCase::Teardown( void ) - { - // If the test is terminated by a failing stub test case, - // the timer may be left active and thus must be cancelled. - iTimer->Cancel(); - iTimer->After( 200000 ); // 100-ms timeout to wait for pending events. - iCleanupWait = ETrue; - CActiveScheduler::Start(); - } - -// Check that expected event was returned. If there are differences write them to output window -// and return an error code. - -void CRemConControlTestCase::DoCompleteTest( TInt aResult ) - { - iTimer->Cancel(); - CompleteTest( aResult ); // SAA framework method - } - - -void CRemConControlTestCase::CallCurrentApiFunctionL( void ) - { - //TRACE_ASSERT( iStub != NULL ); - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - Enter " ) ) ); - if ( iStub != NULL ) - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - JUUPAA " ) ) ); - - STATIC_CAST( CRemConControl*, iStub )->CallApiFunctionL( iCurrentState ); - } - else - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - TUUPAA " ) ) ); - User::Leave( KTFErrNoStub ); - } - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - Return " ) ) ); - - } - -void CRemConControlTestCase::StartNextState( TInt aResult ) - { - // Test case state failed - if ( aResult != KErrNone ) - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1) ); - //STATIC_CAST( CRemConControl*, iStub )->DeleteInstances(); - DoCompleteTest( aResult ); - } - // Last test case state finished ? - else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Test case complete" ) ) ); - DoCompleteTest( KErrNone ); - } - // Start the next state - else - { - TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); - iCurrentStateIndex++; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - if ( !iTimer->IsActive() ) - { - iTimer->After( 2000000 ); - } - - } - } - +/* +* Copyright (c) 2004 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: This module contains the implementation of CRemConControlTestCase class +* member functions. +* +*/ + + +// INCLUDE FILES +#include "ctfatesttimer.h" +#include "ctfatestlog.h" +#include "tftypes.h" +#include "siftrace.h" +#include "remconcontrol.h" +#include "remconcontroltestcase.h" +#include "remconcontroltestcaseparam.h" + +CRemConControlTestCase::CRemConControlTestCase( CRemConControlTestCaseParam* aParameters ) +: CTFStubTestCase( KTFStubTypeRemConControl ) +, iParameters( aParameters ) + { + } + +void CRemConControlTestCase::ConstructL( void ) + { + + iTimer = CTFATestTimer::NewL( *this ); + } + +CRemConControlTestCase::~CRemConControlTestCase( void ) + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::~CRemConControlTestCase() - Enter " ) ) ); + delete iParameters; + delete iTimer; + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::~CRemConControlTestCase() - Return " ) ) ); + } + +void CRemConControlTestCase::Log( TInt aDepth ) + { + } + +void CRemConControlTestCase::InitL( void ) + { + iCurrentStateIndex = 0; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + iCleanupWait = EFalse; // Added to run same test again. + } + +void CRemConControlTestCase::ActiveTestRunL( void ) + { + + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::ActiveTestRunL() - Enter " ) ) ); + if ( iCleanupWait ) + { + CActiveScheduler::Stop(); + } + else + { + RunL(); + } + + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::ActiveTestRunL() - Return " ) ) ); + + } + +void CRemConControlTestCase::RunL( void ) + { + + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::RunL() - Enter " ) ) ); + + if ( iCurrentState.iFunction != 0 ) + { + + TRAPD( result, CallCurrentApiFunctionL() ); + StartNextState( result ); + + } + else + { + DoCompleteTest( KTFErrNoStub ); + } + + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::RunL() - Return " ) ) ); + } + +void CRemConControlTestCase::Teardown( void ) + { + // If the test is terminated by a failing stub test case, + // the timer may be left active and thus must be cancelled. + iTimer->Cancel(); + iTimer->After( 200000 ); // 100-ms timeout to wait for pending events. + iCleanupWait = ETrue; + CActiveScheduler::Start(); + } + +// Check that expected event was returned. If there are differences write them to output window +// and return an error code. + +void CRemConControlTestCase::DoCompleteTest( TInt aResult ) + { + iTimer->Cancel(); + CompleteTest( aResult ); // SAA framework method + } + + +void CRemConControlTestCase::CallCurrentApiFunctionL( void ) + { + //TRACE_ASSERT( iStub != NULL ); + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - Enter " ) ) ); + if ( iStub != NULL ) + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - JUUPAA " ) ) ); + + STATIC_CAST( CRemConControl*, iStub )->CallApiFunctionL( iCurrentState ); + } + else + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - TUUPAA " ) ) ); + User::Leave( KTFErrNoStub ); + } + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::CallCurrentApiFunctionL() - Return " ) ) ); + + } + +void CRemConControlTestCase::StartNextState( TInt aResult ) + { + // Test case state failed + if ( aResult != KErrNone ) + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1) ); + //STATIC_CAST( CRemConControl*, iStub )->DeleteInstances(); + DoCompleteTest( aResult ); + } + // Last test case state finished ? + else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Test case complete" ) ) ); + DoCompleteTest( KErrNone ); + } + // Start the next state + else + { + TEST_CASE_TRACE( ( _L( "CRemConControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); + iCurrentStateIndex++; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + if ( !iTimer->IsActive() ) + { + iTimer->After( 2000000 ); + } + + } + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcore.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcore.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconcore.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,320 +1,320 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -// INCLUDE FILES -#include "remconcontrol.h" -#include "remconactive.h" -#include "siftrace.h" -#include "remconcore.h" -#include - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCore::CRemConCore() - { - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConCore::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - iCore = CRemConCoreApiTarget::NewL( *aTargetInterfaceSelector, *this ); - - iCoreController = CRemConCoreApiController::NewL( *aTargetInterfaceSelector, *this ); - - iTargetInterfaceSelector = aTargetInterfaceSelector; - - iActive = CRemConActive::NewL( *this ); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCore* CRemConCore::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - CRemConCore* self = new( ELeave ) CRemConCore(); - CleanupStack::PushL( self ); - self->ConstructL( aTargetInterfaceSelector ); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConCore::~CRemConCore() - { - delete iActive; - } - - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::CompleteResponse( const TInt aError ) - { - if( aError != KErrNone ) - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConCore::CompleteResponse( %d)" ), aError) ); - } - else - { - - MRemConControl* aControl = GetRemConControl(); - aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); - } - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoCommand(TRemConCoreApiOperationId aOperationId, - TRemConCoreApiButtonAction aButtonAct) -{ - - iParameter = (TInt)aButtonAct; - - switch ( aOperationId ) - { - case ERemConCoreApiVolumeUp: - { - iEvent = ETFRemConEvent_VolumeUp; - break; - } - case ERemConCoreApiVolumeDown: - { - iEvent = ETFRemConEvent_VolumeDown; - break; - } - case ERemConCoreApiStop: - { - iEvent = ETFRemConEvent_CodeStop; - break; - } - case ERemConCoreApiFastForward: - { - iEvent = ETFRemConEvent_CodeForward; - break; - } - case ERemConCoreApiRewind: - { - iEvent = ETFRemConEvent_CodeBack; - break; - } - case ERemConCoreApiForward: - { - iEvent = ETFRemConEvent_CodeForward; - break; - } - - case ERemConCoreApiBackward: - { - iEvent = ETFRemConEvent_CodeBack; - break; - } - - case ERemConCoreApiPausePlayFunction: - { - iEvent = ETFRemConEvent_CoreApiPlaybackSpeedX1; //event not used in real implementation - break; - } - - case ERemConCoreApiMute: - { - iEvent = ETFRemConEvent_Mute; - break; - } - - default: - iEvent = ETFRemConEvent_None; - break; - } - MRemConControl* aControl = GetRemConControl(); - aControl->NotifyKeyEvent(iEvent, aButtonAct); - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed, - TRemConCoreApiButtonAction aButtonAct) -{ - - //TTFRemConkeyEvent aKeyCode; - iParameter = (TInt)aButtonAct; - - switch ( aSpeed ) - { - case ERemConCoreApiPlaybackSpeedX1: - { - iEvent = ETFRemConEvent_CoreApiPlaybackSpeedX1; - break; - } - - default: - iEvent = ETFRemConEvent_None; - break; - } - MRemConControl* aControl = GetRemConControl(); - aControl->NotifyKeyEvent(iEvent, aButtonAct); - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoTuneFunction(TBool /*aTwoPart*/, - TUint /*aMajorChannel*/, - TUint /*aMinorChannel*/, - TRemConCoreApiButtonAction /*aButtonAct*/) -{ -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoSelectDiskFunction(TUint /*aDisk*/, - TRemConCoreApiButtonAction /*aButtonAct*/) -{ -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoSelectAvInputFunction(TUint8 /*aAvInputSignalNumber*/, - TRemConCoreApiButtonAction /*aButtonAct*/) -{ -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::MrccatoSelectAudioInputFunction(TUint8 /*aAudioInputSignalNumber*/, - TRemConCoreApiButtonAction /*aButtonAct*/) -{ -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::Response(TRemConCoreApiOperationId /*aOperationId*/, TInt /*aError*/) -{ - -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::Play() -{ - TUint numRemotes; - iCoreController->Play(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); - iActive->iStatus = KRequestPending; - iActive->SetActive(); -} - - // ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- - -void CRemConCore::Stop() -{ - TUint numRemotes; - TRemConAddress* aConnection; - TSglQue aConnections; - const TInt KBearerUid = 0x10205083; - - iTargetInterfaceSelector->GetConnections(aConnections); - - aConnection = aConnections.First(); - - if(aConnection->IsNull() == EFalse) - { - // - // Should check also last element... - // - while (aConnection->BearerUid() == TUid::Uid(KBearerUid)) - { - aConnection = (TRemConAddress*)aConnection->iLink.iNext; - }; - - if(aConnection->IsNull() == EFalse) - { - iTargetInterfaceSelector->GoConnectionOrientedL(*aConnection); - } - - iActive->iStatus = KRequestPending; - iCoreController->Stop(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); - iActive->SetActive(); - } -} - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConCore::Cancel() -{ - TUint numRemotes; - iCoreController->Play(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); - iCoreController->Cancel(); - iActive->SetActive(); -} - +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +// INCLUDE FILES +#include "remconcontrol.h" +#include "remconactive.h" +#include "siftrace.h" +#include "remconcore.h" +#include + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCore::CRemConCore() + { + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConCore::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + iCore = CRemConCoreApiTarget::NewL( *aTargetInterfaceSelector, *this ); + + iCoreController = CRemConCoreApiController::NewL( *aTargetInterfaceSelector, *this ); + + iTargetInterfaceSelector = aTargetInterfaceSelector; + + iActive = CRemConActive::NewL( *this ); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCore* CRemConCore::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + CRemConCore* self = new( ELeave ) CRemConCore(); + CleanupStack::PushL( self ); + self->ConstructL( aTargetInterfaceSelector ); + CleanupStack::Pop(); + return self; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConCore::~CRemConCore() + { + delete iActive; + } + + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::CompleteResponse( const TInt aError ) + { + if( aError != KErrNone ) + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConCore::CompleteResponse( %d)" ), aError) ); + } + else + { + + MRemConControl* aControl = GetRemConControl(); + aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); + } + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoCommand(TRemConCoreApiOperationId aOperationId, + TRemConCoreApiButtonAction aButtonAct) +{ + + iParameter = (TInt)aButtonAct; + + switch ( aOperationId ) + { + case ERemConCoreApiVolumeUp: + { + iEvent = ETFRemConEvent_VolumeUp; + break; + } + case ERemConCoreApiVolumeDown: + { + iEvent = ETFRemConEvent_VolumeDown; + break; + } + case ERemConCoreApiStop: + { + iEvent = ETFRemConEvent_CodeStop; + break; + } + case ERemConCoreApiFastForward: + { + iEvent = ETFRemConEvent_CodeForward; + break; + } + case ERemConCoreApiRewind: + { + iEvent = ETFRemConEvent_CodeBack; + break; + } + case ERemConCoreApiForward: + { + iEvent = ETFRemConEvent_CodeForward; + break; + } + + case ERemConCoreApiBackward: + { + iEvent = ETFRemConEvent_CodeBack; + break; + } + + case ERemConCoreApiPausePlayFunction: + { + iEvent = ETFRemConEvent_CoreApiPlaybackSpeedX1; //event not used in real implementation + break; + } + + case ERemConCoreApiMute: + { + iEvent = ETFRemConEvent_Mute; + break; + } + + default: + iEvent = ETFRemConEvent_None; + break; + } + MRemConControl* aControl = GetRemConControl(); + aControl->NotifyKeyEvent(iEvent, aButtonAct); + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoPlay(TRemConCoreApiPlaybackSpeed aSpeed, + TRemConCoreApiButtonAction aButtonAct) +{ + + //TTFRemConkeyEvent aKeyCode; + iParameter = (TInt)aButtonAct; + + switch ( aSpeed ) + { + case ERemConCoreApiPlaybackSpeedX1: + { + iEvent = ETFRemConEvent_CoreApiPlaybackSpeedX1; + break; + } + + default: + iEvent = ETFRemConEvent_None; + break; + } + MRemConControl* aControl = GetRemConControl(); + aControl->NotifyKeyEvent(iEvent, aButtonAct); + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoTuneFunction(TBool /*aTwoPart*/, + TUint /*aMajorChannel*/, + TUint /*aMinorChannel*/, + TRemConCoreApiButtonAction /*aButtonAct*/) +{ +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoSelectDiskFunction(TUint /*aDisk*/, + TRemConCoreApiButtonAction /*aButtonAct*/) +{ +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoSelectAvInputFunction(TUint8 /*aAvInputSignalNumber*/, + TRemConCoreApiButtonAction /*aButtonAct*/) +{ +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::MrccatoSelectAudioInputFunction(TUint8 /*aAudioInputSignalNumber*/, + TRemConCoreApiButtonAction /*aButtonAct*/) +{ +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::Response(TRemConCoreApiOperationId /*aOperationId*/, TInt /*aError*/) +{ + +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::Play() +{ + TUint numRemotes; + iCoreController->Play(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); + iActive->iStatus = KRequestPending; + iActive->SetActive(); +} + + // ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- + +void CRemConCore::Stop() +{ + TUint numRemotes; + TRemConAddress* aConnection; + TSglQue aConnections; + const TInt KBearerUid = 0x10205083; + + iTargetInterfaceSelector->GetConnections(aConnections); + + aConnection = aConnections.First(); + + if(aConnection->IsNull() == EFalse) + { + // + // Should check also last element... + // + while (aConnection->BearerUid() == TUid::Uid(KBearerUid)) + { + aConnection = (TRemConAddress*)aConnection->iLink.iNext; + }; + + if(aConnection->IsNull() == EFalse) + { + iTargetInterfaceSelector->GoConnectionOrientedL(*aConnection); + } + + iActive->iStatus = KRequestPending; + iCoreController->Stop(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); + iActive->SetActive(); + } +} + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConCore::Cancel() +{ + TUint numRemotes; + iCoreController->Play(iActive->iStatus, numRemotes, ERemConCoreApiButtonPress); + iCoreController->Cancel(); + iActive->SetActive(); +} + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconplugin.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconplugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconplugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,183 +1,183 @@ -/* -* Copyright (c) 2004 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: This module contains the implementation of CXXXPlugin class -* member functions. -* -*/ - - -// INCLUDE FILES -#include "tftestmacros.h" -#include "ctfatestenvironment.h" -#include "siftrace.h" -#include "remconplugin.h" -#include "remconcontrol.h" -#include "remconcontroltestcaseparam.h" -#include "remconcontroltestcase.h" -#include "remcontestcases.h" - -// LOCAL FUNCTIONS - -// These lines are test case specific and have to be modified -static void KeyEventUseCaseSuiteL( CTFATestSuite* aSuite ); - -// C++ default constructor can NOT contain any code, that -// might leave. -// -CRemConPlugin::CRemConPlugin( TAny* aInitParams ) -: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) - { - } - -// Two-phased constructor. -CRemConPlugin* CRemConPlugin::NewL( TAny* aInitParams ) - { - return new ( ELeave ) CRemConPlugin( aInitParams ); - } - -// Destructor. -CRemConPlugin::~CRemConPlugin() - { - iInitParams = NULL; - } - -CTFStub* CRemConPlugin::GetStubL( void ) - { - return new ( ELeave ) CRemConControl(); - } - -void CRemConPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - - // Memory checks are disabled since DSY runs in separate thread and heap. - aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); - - TF_START_TEST_DECLARATION_L( aRootSuite ); - TF_ADD_TEST_SUITE_L( _L( "RemCon Test Suite" ) ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Key Events" ), KeyEventUseCaseSuiteL ); - - - TF_END_TEST_SUITE(); - TF_END_TEST_DECLARATION(); - } - -MTFStubTestCase* CRemConPlugin::GetStubTestCaseL( TInt aTestCaseId ) - { - TF_START_STUB_TEST_CASES( aTestCaseId ); - - TF_REMCON_CONTROL_TEST_CASE_L( 1, KPocPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 2, KPocReleaseStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 3, KInvalidPocStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 4, KSynchronizeClickStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 5, KInvalidSyncStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 6, KVolumeUpPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 7, KVolumeUpReleaseShortStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 8, KVolumeUpReleaseLongStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 9, KVolumeDownPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 10, KVolumeDownReleaseShortStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 11, KVolumeDownReleaseLongStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 12, KInvalidVolumeStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 13, KMediaPlayAndPauseStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 14, KMediaStopStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 15, KMediaForwardPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 16, KMediaForwardReleaseStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 17, KMediaRewindPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 18, KMediaRewindReleaseStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 19, KMediaNextTrackStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 20, KMediaPreviousTrackStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 21, KInvalidMediaStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 22, KMuteStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 23, KAddressOutgoingCommandStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 24, KPermitOutgoingCommandStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 25, KCancelOutgoingCommandStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 26, KDialCallStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 27, KAnswerCallStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 28, KEndCallShortPressStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 29, KAnswerEndCallStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 30, KRejectWiredCall ); - TF_REMCON_CONTROL_TEST_CASE_L( 31, KVoiceDialStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 32, KMultiPartyCallingStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 33, KDTMFStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 34, KSpeedDialStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 35, KVoiceDialWired ); - TF_REMCON_CONTROL_TEST_CASE_L( 36, KSupportedStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 37, KLastNumberRedialStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 38, KPermitOutgoingResponseStates ); - TF_REMCON_CONTROL_TEST_CASE_L( 39, KAddressIncomingNotifyStates ); - - TF_REMCON_CONTROL_TEST_CASE_L( 40, KGetSourceCommandInfoStates_Wired ); - - TF_END_STUB_TEST_CASES(); - } - -// Test case specific method -static void KeyEventUseCaseSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 1, _L( "1 ACCREMCON [Poc Press Event]" ) ); - TF_ADD_TEST_CASE_L( 2, _L( "2 ACCREMCON [Poc Release Event]" ) ); - TF_ADD_TEST_CASE_L( 3, _L( "3 ACCREMCON [Poc Invalid Event]" ) ); - - TF_ADD_TEST_CASE_L( 4, _L( "4 ACCREMCON [Synchronize Click Event]" ) ); - TF_ADD_TEST_CASE_L( 5, _L( "5 ACCREMCON [Synchronize Invalid Event]" ) ); - - TF_ADD_TEST_CASE_L( 6, _L( "6 ACCREMCON [Volume Up Press Event]" ) ); - TF_ADD_TEST_CASE_L( 7, _L( "7 ACCREMCON [Volume Up Release Short Event]" ) ); - TF_ADD_TEST_CASE_L( 8, _L( "8 ACCREMCON [Volume Up Release Long Event]" ) ); - - TF_ADD_TEST_CASE_L( 9, _L( "9 ACCREMCON [Volume Down Press Event]" ) ); - TF_ADD_TEST_CASE_L( 10, _L( "10 ACCREMCON [Volume Down Release Short Event]" ) ); - TF_ADD_TEST_CASE_L( 11, _L( "11 ACCREMCON [Volume Down Release Long Event]" ) ); - TF_ADD_TEST_CASE_L( 12, _L( "12 ACCREMCON [Volume Invalid Event]" ) ); - - TF_ADD_TEST_CASE_L( 13, _L( "13 ACCREMCON [Media Play And Pause Event]" ) ); - TF_ADD_TEST_CASE_L( 14, _L( "14 ACCREMCON [Media Stop Event]" ) ); - TF_ADD_TEST_CASE_L( 15, _L( "15 ACCREMCON [Media Forward Press Event]" ) ); - TF_ADD_TEST_CASE_L( 16, _L( "16 ACCREMCON [Media Forward Release Event]" ) ); - TF_ADD_TEST_CASE_L( 17, _L( "17 ACCREMCON [Media Rewind Press Event]" ) ); - TF_ADD_TEST_CASE_L( 18, _L( "18 ACCREMCON [Media Rewind Release Event]" ) ); - TF_ADD_TEST_CASE_L( 19, _L( "19 ACCREMCON [Media Next Track Event]" ) ); - TF_ADD_TEST_CASE_L( 20, _L( "20 ACCREMCON [Media Previous Track Event]" ) ); - TF_ADD_TEST_CASE_L( 21, _L( "21 ACCREMCON [Media Invalid Event]" ) ); - TF_ADD_TEST_CASE_L( 22, _L( "22 ACCREMCON [Mute]" ) ); - - TF_ADD_TEST_CASE_L( 23, _L( "23 ACCREMCON [Command Address Outgoing]" ) ); - TF_ADD_TEST_CASE_L( 24, _L( "24 ACCREMCON [Command Permit Outgoing]" ) ); - TF_ADD_TEST_CASE_L( 25, _L( "25 ACCREMCON [Command Cancel Outgoing]" ) ); - - TF_ADD_TEST_CASE_L( 26, _L( "26 ACCREMCON [BT Dial Call]" ) ); - TF_ADD_TEST_CASE_L( 27, _L( "27 ACCREMCON [BT Answer Call]" ) ); - TF_ADD_TEST_CASE_L( 28, _L( "28 ACCREMCON [BT End Call]" ) ); - TF_ADD_TEST_CASE_L( 29, _L( "29 ACCREMCON [Answer/End Call]" ) ); - TF_ADD_TEST_CASE_L( 30, _L( "30 ACCREMCON [Reject Wired Call]" ) ); - TF_ADD_TEST_CASE_L( 31, _L( "31 ACCREMCON [Voice Dial]" ) ); - TF_ADD_TEST_CASE_L( 32, _L( "32 ACCREMCON [Multiparty call]" ) ); - TF_ADD_TEST_CASE_L( 33, _L( "33 ACCREMCON [DTMF]" ) ); - TF_ADD_TEST_CASE_L( 34, _L( "34 ACCREMCON [BT Speed Dial]" ) ); - TF_ADD_TEST_CASE_L( 35, _L( "35 ACCREMCON [Wired Voice Dial]" ) ); - TF_ADD_TEST_CASE_L( 36, _L( "36 ACCREMCON [Not Supported]" ) ); - TF_ADD_TEST_CASE_L( 37, _L( "37 ACCREMCON [Last Number Redial]" ) ); - - TF_ADD_TEST_CASE_L( 38, _L( "38 ACCREMCON [Response Permit Outgoing]" ) ); - TF_ADD_TEST_CASE_L( 39, _L( "39 ACCREMCON [Notify Address Incoming]" ) ); - - TF_ADD_TEST_CASE_L( 40, _L( "40 ACCREMCON [Get Source Command - Wired]" ) ); -} -// End of File +/* +* Copyright (c) 2004 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: This module contains the implementation of CXXXPlugin class +* member functions. +* +*/ + + +// INCLUDE FILES +#include "tftestmacros.h" +#include "ctfatestenvironment.h" +#include "siftrace.h" +#include "remconplugin.h" +#include "remconcontrol.h" +#include "remconcontroltestcaseparam.h" +#include "remconcontroltestcase.h" +#include "remcontestcases.h" + +// LOCAL FUNCTIONS + +// These lines are test case specific and have to be modified +static void KeyEventUseCaseSuiteL( CTFATestSuite* aSuite ); + +// C++ default constructor can NOT contain any code, that +// might leave. +// +CRemConPlugin::CRemConPlugin( TAny* aInitParams ) +: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) + { + } + +// Two-phased constructor. +CRemConPlugin* CRemConPlugin::NewL( TAny* aInitParams ) + { + return new ( ELeave ) CRemConPlugin( aInitParams ); + } + +// Destructor. +CRemConPlugin::~CRemConPlugin() + { + iInitParams = NULL; + } + +CTFStub* CRemConPlugin::GetStubL( void ) + { + return new ( ELeave ) CRemConControl(); + } + +void CRemConPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + + // Memory checks are disabled since DSY runs in separate thread and heap. + aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); + + TF_START_TEST_DECLARATION_L( aRootSuite ); + TF_ADD_TEST_SUITE_L( _L( "RemCon Test Suite" ) ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Key Events" ), KeyEventUseCaseSuiteL ); + + + TF_END_TEST_SUITE(); + TF_END_TEST_DECLARATION(); + } + +MTFStubTestCase* CRemConPlugin::GetStubTestCaseL( TInt aTestCaseId ) + { + TF_START_STUB_TEST_CASES( aTestCaseId ); + + TF_REMCON_CONTROL_TEST_CASE_L( 1, KPocPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 2, KPocReleaseStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 3, KInvalidPocStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 4, KSynchronizeClickStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 5, KInvalidSyncStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 6, KVolumeUpPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 7, KVolumeUpReleaseShortStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 8, KVolumeUpReleaseLongStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 9, KVolumeDownPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 10, KVolumeDownReleaseShortStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 11, KVolumeDownReleaseLongStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 12, KInvalidVolumeStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 13, KMediaPlayAndPauseStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 14, KMediaStopStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 15, KMediaForwardPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 16, KMediaForwardReleaseStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 17, KMediaRewindPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 18, KMediaRewindReleaseStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 19, KMediaNextTrackStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 20, KMediaPreviousTrackStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 21, KInvalidMediaStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 22, KMuteStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 23, KAddressOutgoingCommandStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 24, KPermitOutgoingCommandStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 25, KCancelOutgoingCommandStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 26, KDialCallStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 27, KAnswerCallStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 28, KEndCallShortPressStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 29, KAnswerEndCallStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 30, KRejectWiredCall ); + TF_REMCON_CONTROL_TEST_CASE_L( 31, KVoiceDialStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 32, KMultiPartyCallingStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 33, KDTMFStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 34, KSpeedDialStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 35, KVoiceDialWired ); + TF_REMCON_CONTROL_TEST_CASE_L( 36, KSupportedStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 37, KLastNumberRedialStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 38, KPermitOutgoingResponseStates ); + TF_REMCON_CONTROL_TEST_CASE_L( 39, KAddressIncomingNotifyStates ); + + TF_REMCON_CONTROL_TEST_CASE_L( 40, KGetSourceCommandInfoStates_Wired ); + + TF_END_STUB_TEST_CASES(); + } + +// Test case specific method +static void KeyEventUseCaseSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 1, _L( "1 ACCREMCON [Poc Press Event]" ) ); + TF_ADD_TEST_CASE_L( 2, _L( "2 ACCREMCON [Poc Release Event]" ) ); + TF_ADD_TEST_CASE_L( 3, _L( "3 ACCREMCON [Poc Invalid Event]" ) ); + + TF_ADD_TEST_CASE_L( 4, _L( "4 ACCREMCON [Synchronize Click Event]" ) ); + TF_ADD_TEST_CASE_L( 5, _L( "5 ACCREMCON [Synchronize Invalid Event]" ) ); + + TF_ADD_TEST_CASE_L( 6, _L( "6 ACCREMCON [Volume Up Press Event]" ) ); + TF_ADD_TEST_CASE_L( 7, _L( "7 ACCREMCON [Volume Up Release Short Event]" ) ); + TF_ADD_TEST_CASE_L( 8, _L( "8 ACCREMCON [Volume Up Release Long Event]" ) ); + + TF_ADD_TEST_CASE_L( 9, _L( "9 ACCREMCON [Volume Down Press Event]" ) ); + TF_ADD_TEST_CASE_L( 10, _L( "10 ACCREMCON [Volume Down Release Short Event]" ) ); + TF_ADD_TEST_CASE_L( 11, _L( "11 ACCREMCON [Volume Down Release Long Event]" ) ); + TF_ADD_TEST_CASE_L( 12, _L( "12 ACCREMCON [Volume Invalid Event]" ) ); + + TF_ADD_TEST_CASE_L( 13, _L( "13 ACCREMCON [Media Play And Pause Event]" ) ); + TF_ADD_TEST_CASE_L( 14, _L( "14 ACCREMCON [Media Stop Event]" ) ); + TF_ADD_TEST_CASE_L( 15, _L( "15 ACCREMCON [Media Forward Press Event]" ) ); + TF_ADD_TEST_CASE_L( 16, _L( "16 ACCREMCON [Media Forward Release Event]" ) ); + TF_ADD_TEST_CASE_L( 17, _L( "17 ACCREMCON [Media Rewind Press Event]" ) ); + TF_ADD_TEST_CASE_L( 18, _L( "18 ACCREMCON [Media Rewind Release Event]" ) ); + TF_ADD_TEST_CASE_L( 19, _L( "19 ACCREMCON [Media Next Track Event]" ) ); + TF_ADD_TEST_CASE_L( 20, _L( "20 ACCREMCON [Media Previous Track Event]" ) ); + TF_ADD_TEST_CASE_L( 21, _L( "21 ACCREMCON [Media Invalid Event]" ) ); + TF_ADD_TEST_CASE_L( 22, _L( "22 ACCREMCON [Mute]" ) ); + + TF_ADD_TEST_CASE_L( 23, _L( "23 ACCREMCON [Command Address Outgoing]" ) ); + TF_ADD_TEST_CASE_L( 24, _L( "24 ACCREMCON [Command Permit Outgoing]" ) ); + TF_ADD_TEST_CASE_L( 25, _L( "25 ACCREMCON [Command Cancel Outgoing]" ) ); + + TF_ADD_TEST_CASE_L( 26, _L( "26 ACCREMCON [BT Dial Call]" ) ); + TF_ADD_TEST_CASE_L( 27, _L( "27 ACCREMCON [BT Answer Call]" ) ); + TF_ADD_TEST_CASE_L( 28, _L( "28 ACCREMCON [BT End Call]" ) ); + TF_ADD_TEST_CASE_L( 29, _L( "29 ACCREMCON [Answer/End Call]" ) ); + TF_ADD_TEST_CASE_L( 30, _L( "30 ACCREMCON [Reject Wired Call]" ) ); + TF_ADD_TEST_CASE_L( 31, _L( "31 ACCREMCON [Voice Dial]" ) ); + TF_ADD_TEST_CASE_L( 32, _L( "32 ACCREMCON [Multiparty call]" ) ); + TF_ADD_TEST_CASE_L( 33, _L( "33 ACCREMCON [DTMF]" ) ); + TF_ADD_TEST_CASE_L( 34, _L( "34 ACCREMCON [BT Speed Dial]" ) ); + TF_ADD_TEST_CASE_L( 35, _L( "35 ACCREMCON [Wired Voice Dial]" ) ); + TF_ADD_TEST_CASE_L( 36, _L( "36 ACCREMCON [Not Supported]" ) ); + TF_ADD_TEST_CASE_L( 37, _L( "37 ACCREMCON [Last Number Redial]" ) ); + + TF_ADD_TEST_CASE_L( 38, _L( "38 ACCREMCON [Response Permit Outgoing]" ) ); + TF_ADD_TEST_CASE_L( 39, _L( "39 ACCREMCON [Notify Address Incoming]" ) ); + + TF_ADD_TEST_CASE_L( 40, _L( "40 ACCREMCON [Get Source Command - Wired]" ) ); +} +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpoc.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpoc.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpoc.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,145 +1,145 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -// INCLUDE FILES -#include "remconcontrol.h" -#include "remconactive.h" -#include "siftrace.h" -#include "remconpoc.h" -#include "remcontypes.h" - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConPoc::CRemConPoc() - { - iError = KErrNone; - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConPoc::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - iPoc = CRemConPocTarget::NewL( *aTargetInterfaceSelector, *this ); - iActive = CRemConActive::NewL( *this ); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConPoc* CRemConPoc::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - CRemConPoc* self = new( ELeave ) CRemConPoc(); - CleanupStack::PushL( self ); - self->ConstructL( aTargetInterfaceSelector ); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConPoc::~CRemConPoc() - { - delete iActive; - } -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConPoc::CompleteResponse( const TInt aError ) - { - if( aError != KErrNone ) - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPoc::CompleteResponse( %d)" ), aError) ); - } - else - { - MRemConControl* aControl = GetRemConControl(); - aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); - } - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConPoc::APOCButtonDown() -{ - iEvent = ETFRemConEvent_PocDown; - iParameter = KErrNone; - MRemConControl* aControl = GetRemConControl(); - aControl->NotifyKeyEvent( iEvent, iParameter ); -} -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConPoc::APOCButtonUp() -{ - iEvent = ETFRemConEvent_PocUp; - iParameter = KErrNone; - MRemConControl* aControl = GetRemConControl(); - aControl->NotifyKeyEvent( iEvent, iParameter ); -} - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConPoc::APOCButtonUpResponse() -{ - iActive->iStatus = KRequestPending; - iPoc->APOCButtonUpResponse( iActive->iStatus, iError ); - iActive->SetActive(); -} - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConPoc::APOCButtonDownResponse() -{ - - iActive->iStatus = KRequestPending; - iPoc->APOCButtonDownResponse( iActive->iStatus, iError ); - iActive->SetActive(); -} - -void CRemConPoc::GetCommandSourceInfo(TRemConExtCmdSource& aSource) - { - iPoc->GetCommandSourceInfo( aSource ); - } +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +// INCLUDE FILES +#include "remconcontrol.h" +#include "remconactive.h" +#include "siftrace.h" +#include "remconpoc.h" +#include "remcontypes.h" + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConPoc::CRemConPoc() + { + iError = KErrNone; + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConPoc::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + iPoc = CRemConPocTarget::NewL( *aTargetInterfaceSelector, *this ); + iActive = CRemConActive::NewL( *this ); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConPoc* CRemConPoc::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + CRemConPoc* self = new( ELeave ) CRemConPoc(); + CleanupStack::PushL( self ); + self->ConstructL( aTargetInterfaceSelector ); + CleanupStack::Pop(); + return self; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConPoc::~CRemConPoc() + { + delete iActive; + } +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConPoc::CompleteResponse( const TInt aError ) + { + if( aError != KErrNone ) + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPoc::CompleteResponse( %d)" ), aError) ); + } + else + { + MRemConControl* aControl = GetRemConControl(); + aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); + } + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConPoc::APOCButtonDown() +{ + iEvent = ETFRemConEvent_PocDown; + iParameter = KErrNone; + MRemConControl* aControl = GetRemConControl(); + aControl->NotifyKeyEvent( iEvent, iParameter ); +} +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConPoc::APOCButtonUp() +{ + iEvent = ETFRemConEvent_PocUp; + iParameter = KErrNone; + MRemConControl* aControl = GetRemConControl(); + aControl->NotifyKeyEvent( iEvent, iParameter ); +} + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConPoc::APOCButtonUpResponse() +{ + iActive->iStatus = KRequestPending; + iPoc->APOCButtonUpResponse( iActive->iStatus, iError ); + iActive->SetActive(); +} + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConPoc::APOCButtonDownResponse() +{ + + iActive->iStatus = KRequestPending; + iPoc->APOCButtonDownResponse( iActive->iStatus, iError ); + iActive->SetActive(); +} + +void CRemConPoc::GetCommandSourceInfo(TRemConExtCmdSource& aSource) + { + iPoc->GetCommandSourceInfo( aSource ); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconproxy.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconproxy.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconproxy.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,44 +1,44 @@ -/* -* Copyright (c) 2004 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: This module contains the implementation of CXXXPlugin class -* member functions. -* -*/ - - -// INCLUDE FILES -#include -#include -#include "remconplugin.h" - -// CONSTANTS -const TImplementationProxy ImplementationTable[] = - { - { { 0x10200c77 }, (TProxyNewLPtr) CRemConPlugin::NewL } - }; - -// ================= OTHER EXPORTED FUNCTIONS ============== - -// --------------------------------------------------------- -// ImplementationGroupProxy -// Returns: TImplementationProxy*: ?description -// --------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); - - return ImplementationTable; - } -// End of File +/* +* Copyright (c) 2004 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: This module contains the implementation of CXXXPlugin class +* member functions. +* +*/ + + +// INCLUDE FILES +#include +#include +#include "remconplugin.h" + +// CONSTANTS +const TImplementationProxy ImplementationTable[] = + { + { { 0x10200c77 }, (TProxyNewLPtr) CRemConPlugin::NewL } + }; + +// ================= OTHER EXPORTED FUNCTIONS ============== + +// --------------------------------------------------------- +// ImplementationGroupProxy +// Returns: TImplementationProxy*: ?description +// --------------------------------------------------------- +// +EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) + { + aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); + + return ImplementationTable; + } +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpspchobserver.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpspchobserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconpspchobserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,204 +1,204 @@ -/* -* 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: -* -*/ - - -// INCLUDE FILES -#include "remconpspchobserver.h" -#include "accremconpstypes.h" -#include "siftrace.h" - -// ---------------------------------------------------------------------------------- -// CRemConPSPCHObserver* CRemConPSPChObserver::NewL() -// ---------------------------------------------------------------------------------- - -CRemConPSPCHObserver* CRemConPSPCHObserver::NewL() -{ - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::NewL() - Enter" ) ) ); - CRemConPSPCHObserver* result = new (ELeave) CRemConPSPCHObserver(); - CleanupStack::PushL(result); - CleanupStack::Pop(); - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::NewL() - Return" ) ) ); - - return result; -} - -// ---------------------------------------------------------------------------------- -// CRemConPSPCHObserver::CRemConPSPCHObserver() -// ---------------------------------------------------------------------------------- -CRemConPSPCHObserver::CRemConPSPCHObserver() -: CActive( CActive::EPriorityStandard ) - { - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::CRemConPSPCHObserver() - Enter" ) ) ); - TInt retval(KErrNone); - - _LIT_SECURITY_POLICY_PASS(KReadPolicy); - _LIT_SECURITY_POLICY_PASS(KWritePolicy); - - retval = RProperty::Define(KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); - - if(retval != KErrAlreadyExists) - User::LeaveIfError(retval); - - retval = iSubscribe.Attach(KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey); - User::LeaveIfError(retval); - CActiveScheduler::Add( this ); - - iControl = GetRemConControl(); - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::CRemConPSPCHObserver() - Return" ) ) ); - - } -// -// ---------------------------------------------------------------------------------- -// CRemConPSPCHObserver::~CRemConPSPCHObserver() -// ---------------------------------------------------------------------------------- -CRemConPSPCHObserver::~CRemConPSPCHObserver() - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::~CRemConPSPCHObserver() - Enter" ) ) ); - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::~CRemConPSPCHObserver() - Return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CRemConPSPCHObserver::RunL() -// ---------------------------------------------------------------------------------- -void CRemConPSPCHObserver::RunL() - { - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunL() - Enter" ) ) ); - TInt retval(KErrNone); - - TPhoneCmdHandlerKeyEventBuf keyDataBuf; - retval = iSubscribe.Get( KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey, keyDataBuf ); - User::LeaveIfError(retval); - - switch ( keyDataBuf().iOperationId ) - { - case ERemConExtAnswerCall: - { - iEvent = ETFRemConEvent_AnswerCall; - break; - } - - case ERemConExtEndCall: - { - iEvent = ETFRemConEvent_EndCall; - break; - } - - case ERemConExtAnswerEnd: - { - iEvent = ETFRemConEvent_AnswerEnd; - break; - } - - case ERemConExtVoiceDial: - { - iEvent = ETFRemConEvent_VoiceDial; - break; - } - - case ERemConExtLastNumberRedial: - { - iEvent = ETFRemConEvent_LastNumberRedial; - break; - } - - case ERemConExtDialCall: - { - iEvent = ETFRemConEvent_DialCall; - break; - } - - case ERemConExt3WaysCalling: - { - iEvent = ETFRemConEvent_MultiPartyCalling; - break; - } - - case ERemConExtGenerateDTMF: - { - iEvent = ETFRemConEvent_GenerateDTMF; - break; - } - - case ERemConExtSpeedDial: - { - iEvent = ETFRemConEvent_SpeedDial; - break; - } - - default: - iEvent = ETFRemConEvent_None; - break; - } - - - iControl->NotifyKeyEvent(iEvent, 0); - - if(!IsActive()) - { - iStatus = KRequestPending; - iSubscribe.Subscribe(iStatus); - SetActive(); - } - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunL() - Return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CRemConPSPCHObserver::DoCancel() -// ---------------------------------------------------------------------------------- -void CRemConPSPCHObserver::DoCancel() - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::DoCancel() - Enter" ) ) ); - - if(IsActive()) - { - iSubscribe.Cancel(); - } - - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::DoCancel() - Return" ) ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CASYReferenceObserver::DoCancel() -// ---------------------------------------------------------------------------------- -TInt CRemConPSPCHObserver::RunError( TInt /*aError*/ ) -{ - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunError() - Enter" ) ) ); - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunError() - Return" ) ) ); - return KErrNone; -} -// -// ---------------------------------------------------------------------------------- -// CASYReferenceObserver::Start -// ---------------------------------------------------------------------------------- -void CRemConPSPCHObserver::Start() -{ - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::Start() - Enter" ) ) ); - if(!IsActive()) - { - iSubscribe.Subscribe(iStatus); - SetActive(); - } - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::Start() - Return") ) ); -} - - +/* +* 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: +* +*/ + + +// INCLUDE FILES +#include "remconpspchobserver.h" +#include "accremconpstypes.h" +#include "siftrace.h" + +// ---------------------------------------------------------------------------------- +// CRemConPSPCHObserver* CRemConPSPChObserver::NewL() +// ---------------------------------------------------------------------------------- + +CRemConPSPCHObserver* CRemConPSPCHObserver::NewL() +{ + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::NewL() - Enter" ) ) ); + CRemConPSPCHObserver* result = new (ELeave) CRemConPSPCHObserver(); + CleanupStack::PushL(result); + CleanupStack::Pop(); + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::NewL() - Return" ) ) ); + + return result; +} + +// ---------------------------------------------------------------------------------- +// CRemConPSPCHObserver::CRemConPSPCHObserver() +// ---------------------------------------------------------------------------------- +CRemConPSPCHObserver::CRemConPSPCHObserver() +: CActive( CActive::EPriorityStandard ) + { + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::CRemConPSPCHObserver() - Enter" ) ) ); + TInt retval(KErrNone); + + _LIT_SECURITY_POLICY_PASS(KReadPolicy); + _LIT_SECURITY_POLICY_PASS(KWritePolicy); + + retval = RProperty::Define(KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey, RProperty::EByteArray, KReadPolicy, KWritePolicy); + + if(retval != KErrAlreadyExists) + User::LeaveIfError(retval); + + retval = iSubscribe.Attach(KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey); + User::LeaveIfError(retval); + CActiveScheduler::Add( this ); + + iControl = GetRemConControl(); + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::CRemConPSPCHObserver() - Return" ) ) ); + + } +// +// ---------------------------------------------------------------------------------- +// CRemConPSPCHObserver::~CRemConPSPCHObserver() +// ---------------------------------------------------------------------------------- +CRemConPSPCHObserver::~CRemConPSPCHObserver() + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::~CRemConPSPCHObserver() - Enter" ) ) ); + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::~CRemConPSPCHObserver() - Return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CRemConPSPCHObserver::RunL() +// ---------------------------------------------------------------------------------- +void CRemConPSPCHObserver::RunL() + { + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunL() - Enter" ) ) ); + TInt retval(KErrNone); + + TPhoneCmdHandlerKeyEventBuf keyDataBuf; + retval = iSubscribe.Get( KTFPhoneCmdHandlerProperty, KTFPhoneCmdHandlerKey, keyDataBuf ); + User::LeaveIfError(retval); + + switch ( keyDataBuf().iOperationId ) + { + case ERemConExtAnswerCall: + { + iEvent = ETFRemConEvent_AnswerCall; + break; + } + + case ERemConExtEndCall: + { + iEvent = ETFRemConEvent_EndCall; + break; + } + + case ERemConExtAnswerEnd: + { + iEvent = ETFRemConEvent_AnswerEnd; + break; + } + + case ERemConExtVoiceDial: + { + iEvent = ETFRemConEvent_VoiceDial; + break; + } + + case ERemConExtLastNumberRedial: + { + iEvent = ETFRemConEvent_LastNumberRedial; + break; + } + + case ERemConExtDialCall: + { + iEvent = ETFRemConEvent_DialCall; + break; + } + + case ERemConExt3WaysCalling: + { + iEvent = ETFRemConEvent_MultiPartyCalling; + break; + } + + case ERemConExtGenerateDTMF: + { + iEvent = ETFRemConEvent_GenerateDTMF; + break; + } + + case ERemConExtSpeedDial: + { + iEvent = ETFRemConEvent_SpeedDial; + break; + } + + default: + iEvent = ETFRemConEvent_None; + break; + } + + + iControl->NotifyKeyEvent(iEvent, 0); + + if(!IsActive()) + { + iStatus = KRequestPending; + iSubscribe.Subscribe(iStatus); + SetActive(); + } + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunL() - Return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CRemConPSPCHObserver::DoCancel() +// ---------------------------------------------------------------------------------- +void CRemConPSPCHObserver::DoCancel() + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::DoCancel() - Enter" ) ) ); + + if(IsActive()) + { + iSubscribe.Cancel(); + } + + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::DoCancel() - Return" ) ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CASYReferenceObserver::DoCancel() +// ---------------------------------------------------------------------------------- +TInt CRemConPSPCHObserver::RunError( TInt /*aError*/ ) +{ + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunError() - Enter" ) ) ); + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::RunError() - Return" ) ) ); + return KErrNone; +} +// +// ---------------------------------------------------------------------------------- +// CASYReferenceObserver::Start +// ---------------------------------------------------------------------------------- +void CRemConPSPCHObserver::Start() +{ + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::Start() - Enter" ) ) ); + if(!IsActive()) + { + iSubscribe.Subscribe(iStatus); + SetActive(); + } + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConPSPCHObserver::Start() - Return") ) ); +} + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconsync.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconsync.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remconsync.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,121 +1,121 @@ -/* -* Copyright (c) 2002-2004 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: ?Description -* -*/ - - -// INCLUDE FILES -#include "remconcontrol.h" -#include "remconactive.h" -#include "siftrace.h" -#include "remconsync.h" - - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConSync::CRemConSync() - { - iError = KErrNone; - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConSync::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - iSync = CRemConSynchronizationTarget::NewL( *aTargetInterfaceSelector, *this ); - iActive = CRemConActive::NewL( *this ); - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConSync* CRemConSync::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) - { - CRemConSync* self = new( ELeave ) CRemConSync(); - CleanupStack::PushL( self ); - self->ConstructL( aTargetInterfaceSelector ); - CleanupStack::Pop(); - return self; - } - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -CRemConSync::~CRemConSync() - { - delete iActive; - } - -// ----------------------------------------------------------------------------- -// -// -// -// ----------------------------------------------------------------------------- -void CRemConSync::CompleteResponse( const TInt aError ) - { - if(aError != KErrNone) - { - COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConSync::CompleteResponse( %d)" ), aError) ); - } - else - { - MRemConControl* aControl = GetRemConControl(); - aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); - } - - iEvent = ETFRemConEvent_None; - iParameter = KErrNone; - } -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConSync::Synchronize() -{ - iEvent = ETFRemConEvent_Sync; - iParameter = KErrNone; - MRemConControl* aControl = GetRemConControl(); - aControl->NotifyKeyEvent(iEvent, iParameter); -} - -// ----------------------------------------------------------------------------- -// -// -// ----------------------------------------------------------------------------- -// -void CRemConSync::SynchronizeResponse() - { - iSync->SynchronizeResponse(iActive->iStatus, iError); - iActive->iStatus = KRequestPending; - iActive->SetActive(); - } - -void CRemConSync::GetCommandSourceInfo(TRemConExtCmdSource& aSource) - { - iSync->GetCommandSourceInfo( aSource ); - } +/* +* Copyright (c) 2002-2004 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: ?Description +* +*/ + + +// INCLUDE FILES +#include "remconcontrol.h" +#include "remconactive.h" +#include "siftrace.h" +#include "remconsync.h" + + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConSync::CRemConSync() + { + iError = KErrNone; + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConSync::ConstructL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + iSync = CRemConSynchronizationTarget::NewL( *aTargetInterfaceSelector, *this ); + iActive = CRemConActive::NewL( *this ); + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConSync* CRemConSync::NewL( CRemConInterfaceSelector* aTargetInterfaceSelector ) + { + CRemConSync* self = new( ELeave ) CRemConSync(); + CleanupStack::PushL( self ); + self->ConstructL( aTargetInterfaceSelector ); + CleanupStack::Pop(); + return self; + } + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +CRemConSync::~CRemConSync() + { + delete iActive; + } + +// ----------------------------------------------------------------------------- +// +// +// +// ----------------------------------------------------------------------------- +void CRemConSync::CompleteResponse( const TInt aError ) + { + if(aError != KErrNone) + { + COMPONENT_TRACE( ( _L( "REMCONTESTCONTROL - CRemConSync::CompleteResponse( %d)" ), aError) ); + } + else + { + MRemConControl* aControl = GetRemConControl(); + aControl->CompleteKeyEventResponse( iEvent, iParameter, aError ); + } + + iEvent = ETFRemConEvent_None; + iParameter = KErrNone; + } +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConSync::Synchronize() +{ + iEvent = ETFRemConEvent_Sync; + iParameter = KErrNone; + MRemConControl* aControl = GetRemConControl(); + aControl->NotifyKeyEvent(iEvent, iParameter); +} + +// ----------------------------------------------------------------------------- +// +// +// ----------------------------------------------------------------------------- +// +void CRemConSync::SynchronizeResponse() + { + iSync->SynchronizeResponse(iActive->iStatus, iError); + iActive->iStatus = KRequestPending; + iActive->SetActive(); + } + +void CRemConSync::GetCommandSourceInfo(TRemConExtCmdSource& aSource) + { + iSync->GetCommandSourceInfo( aSource ); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remcontestcaseparam.cpp --- a/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remcontestcaseparam.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/remcontestcontrolplugin/src/remcontestcaseparam.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,55 +1,55 @@ -/* -* Copyright (c) 2004 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: This module contains the implementation of CXXXStubTestCaseParam class -* member functions. -* -*/ - - -#include "siftrace.h" -#include "remconcontroltestcaseparam.h" - -CRemConControlTestCaseParam::CRemConControlTestCaseParam( void ) - { - } - - -void CRemConControlTestCaseParam::ConstructL( const TRemConControlTestCaseState* aStates, TInt aStateCount ) - { - //TRACE_ASSERT( aStates != NULL ); - //TRACE_ASSERT( aStateCount > 0 ); - iStates = REINTERPRET_CAST( TRemConControlTestCaseState*, User::Alloc( sizeof ( TRemConControlTestCaseState ) * aStateCount ) ); - User::LeaveIfNull( iStates ); - Mem::Copy( iStates, aStates, sizeof ( TRemConControlTestCaseState ) * aStateCount ); - iStateCount = aStateCount; - } - - -CRemConControlTestCaseParam::~CRemConControlTestCaseParam( void ) - { - User::Free( iStates ); - iStates = NULL; - } - - -const TRemConControlTestCaseState* CRemConControlTestCaseParam::States( void ) const - { - return iStates; - } - -TInt CRemConControlTestCaseParam::StateCount( void ) const - { - return iStateCount; - } -//End of File +/* +* Copyright (c) 2004 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: This module contains the implementation of CXXXStubTestCaseParam class +* member functions. +* +*/ + + +#include "siftrace.h" +#include "remconcontroltestcaseparam.h" + +CRemConControlTestCaseParam::CRemConControlTestCaseParam( void ) + { + } + + +void CRemConControlTestCaseParam::ConstructL( const TRemConControlTestCaseState* aStates, TInt aStateCount ) + { + //TRACE_ASSERT( aStates != NULL ); + //TRACE_ASSERT( aStateCount > 0 ); + iStates = REINTERPRET_CAST( TRemConControlTestCaseState*, User::Alloc( sizeof ( TRemConControlTestCaseState ) * aStateCount ) ); + User::LeaveIfNull( iStates ); + Mem::Copy( iStates, aStates, sizeof ( TRemConControlTestCaseState ) * aStateCount ); + iStateCount = aStateCount; + } + + +CRemConControlTestCaseParam::~CRemConControlTestCaseParam( void ) + { + User::Free( iStates ); + iStates = NULL; + } + + +const TRemConControlTestCaseState* CRemConControlTestCaseParam::States( void ) const + { + return iStates; + } + +TInt CRemConControlTestCaseParam::StateCount( void ) const + { + return iStateCount; + } +//End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp --- a/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -181,25 +181,28 @@ { COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel()" ); - iAsyProxyCommsSrvc->iAsyComms.CancelNotifyProcessCommand(); - - if ( !iInDestructionPhase ) + if ( iAsyProxyCommsSrvc ) { - COM_TRACE_( "[AccFW:AsyProxy] Proxy Command Observation is Cancelled while Destruction is not in Progress" ); - #ifdef _DEBUG - TRAPD( errUpdate, iAsyProxyCommsSrvc->UpdateAsyCommsStackL() ); - TRAPD( errCreate, iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) ); + iAsyProxyCommsSrvc->iAsyComms.CancelNotifyProcessCommand(); + + if ( !iInDestructionPhase ) + { + COM_TRACE_( "[AccFW:AsyProxy] Proxy Command Observation is Cancelled while Destruction is not in Progress" ); + #ifdef _DEBUG + TRAPD( errUpdate, iAsyProxyCommsSrvc->UpdateAsyCommsStackL() ); + TRAPD( errCreate, iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) ); + + COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errUpdate == %d", errUpdate ); + COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errCreate == %d", errCreate ); + #else + TRAP_IGNORE( iAsyProxyCommsSrvc->UpdateAsyCommsStackL() ); + TRAP_IGNORE( iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) ); + #endif + } - COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errUpdate == %d", errUpdate ); - COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errCreate == %d", errCreate ); - #else - TRAP_IGNORE( iAsyProxyCommsSrvc->UpdateAsyCommsStackL() ); - TRAP_IGNORE( iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) ); - #endif + iAsyProxyCommsSrvc->Destroy( KErrNotFound ); // Transaction Id is not known know } - - iAsyProxyCommsSrvc->Destroy( KErrNotFound ); // Transaction Id is not known know - + COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - return void" ); } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommsService.cpp --- a/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommsService.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommsService.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -99,7 +99,7 @@ // Zero handler needs CASYProxyCommsStack just to get simple Active Object // because CActiveScheduler will be start later in any way - CASYProxyCommandObserver* iZeroObserver = CASYProxyCommandObserver::NewL( NULL ); + iZeroObserver = CASYProxyCommandObserver::NewL( NULL ); COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommsService::ConstructL - return void" ); } @@ -148,7 +148,11 @@ delete iAsyProxyCommsStack; iAsyProxyCommsStack = 0; } - + if ( iZeroObserver ) + { + delete iZeroObserver; + } + COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommsService::~CASYProxyCommsService" ); } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/data/10200C6D.rss --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/data/10200C6D.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/data/10200C6D.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,53 +1,53 @@ -/* -* 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: -* Plugin definition resource file -* -*/ - -// INCLUDE FILES -#include -// RESOURCE DEFINITIONS -// --------------------------------------------------------- -// -// accessorytestcontrol -// -// --------------------------------------------------------- -// -RESOURCE REGISTRY_INFO AccessoryTestControl - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10200C6D; - interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x10200c7d; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0x10200c70; - version_no = 1; - display_name = "ACCESSORYTESTCONTROL"; - default_data = "ACCESSORYTESTCONTROL"; - opaque_data = ""; - rom_only = 0; - } - }; - } - }; - } - -// End of File +/* +* 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: +* Plugin definition resource file +* +*/ + +// INCLUDE FILES +#include +// RESOURCE DEFINITIONS +// --------------------------------------------------------- +// +// accessorytestcontrol +// +// --------------------------------------------------------- +// +RESOURCE REGISTRY_INFO AccessoryTestControl + { + resource_format_version = RESOURCE_FORMAT_VERSION_2; + dll_uid = 0x10200C6D; + interfaces = + { + INTERFACE_INFO + { + interface_uid = 0x10200c7d; + implementations = + { + IMPLEMENTATION_INFO + { + implementation_uid = 0x10200c70; + version_no = 1; + display_name = "ACCESSORYTESTCONTROL"; + default_data = "ACCESSORYTESTCONTROL"; + opaque_data = ""; + rom_only = 0; + } + }; + } + }; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/group/bld.inf --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,28 +1,28 @@ -/* -* 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: -* -*/ - - -PRJ_PLATFORMS -DEFAULT - - -PRJ_TESTMMPFILES -AccessoryTestControl.mmp - - - - +/* +* 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: +* +*/ + + +PRJ_PLATFORMS +DEFAULT + + +PRJ_TESTMMPFILES +AccessoryTestControl.mmp + + + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestCaseParamControl.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestCaseParamControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestCaseParamControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,50 +1,50 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __CTFACCESSORYTESTCASEPARAMCONTROL_H__ -#define __CTFACCESSORYTESTCASEPARAMCONTROL_H__ - -#include -#include -#include "TfAccessoryTestControlTypes.h" - -class CTFAccessoryTestCaseParamControl : public CTFStubTestCaseParam - { -public: - CTFAccessoryTestCaseParamControl( void ); - - void ConstructL( const TTFAccessoryTestCaseStateControl* aStates, TInt aStateCount ); - - virtual ~CTFAccessoryTestCaseParamControl( void ); - -private: - - CTFAccessoryTestCaseParamControl( const CTFAccessoryTestCaseParamControl& aParam ); - - CTFAccessoryTestCaseParamControl& operator=( const CTFAccessoryTestCaseParamControl& aParam ); - -public: - const TTFAccessoryTestCaseStateControl* States( void ) const; - TInt StateCount( void ) const; - -private: - TTFAccessoryTestCaseStateControl* iStates; - TInt iStateCount; - }; - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __CTFACCESSORYTESTCASEPARAMCONTROL_H__ +#define __CTFACCESSORYTESTCASEPARAMCONTROL_H__ + +#include +#include +#include "TfAccessoryTestControlTypes.h" + +class CTFAccessoryTestCaseParamControl : public CTFStubTestCaseParam + { +public: + CTFAccessoryTestCaseParamControl( void ); + + void ConstructL( const TTFAccessoryTestCaseStateControl* aStates, TInt aStateCount ); + + virtual ~CTFAccessoryTestCaseParamControl( void ); + +private: + + CTFAccessoryTestCaseParamControl( const CTFAccessoryTestCaseParamControl& aParam ); + + CTFAccessoryTestCaseParamControl& operator=( const CTFAccessoryTestCaseParamControl& aParam ); + +public: + const TTFAccessoryTestCaseStateControl* States( void ) const; + TInt StateCount( void ) const; + +private: + TTFAccessoryTestCaseStateControl* iStates; + TInt iStateCount; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControl.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,205 +1,205 @@ -/* -* Copyright (c) 2005 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: -* -*/ - -#ifndef __CTFACCESSORYTESTCONTROL_H__ -#define __CTFACCESSORYTESTCONTROL_H__ - -#include -#include - -#include "MtfAccessoryTestControl.h" -#include "TfAccessoryTestControlTypes.h" -#include "CtfTestControlObserver.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -struct TTFAccessoryTestCaseStateControl; - -const TInt KTFStubTypeAccessoryControl = 565; - -class CTFTestControlObserver; - -class CTFAccessoryTestControl : public CTFRemoteStub, public MTFAccessoryTestControl - { -public: - CTFAccessoryTestControl( void ); - virtual ~CTFAccessoryTestControl( void ); - -private: - CTFAccessoryTestControl( const CTFAccessoryTestControl& aStub ); - CTFAccessoryTestControl& operator=( const CTFAccessoryTestControl& aStub ); - -public: - void InitializeL( void ); - -public: - void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ); - TInt ParameterCount( TTFAccessoryFunction aFunction ) const; - TBool ParameterBounds( TTFAccessoryFunction aFunction, TInt* aMin, TInt* aMax ) const; - - void CancelOutStandingRequest(); - - void ResetAccessoryServer(); - -protected: // Functions from base classes - - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - /** - * From CTFRemoteStub - * - * Processes a message and completes it. It is not necessary to - * complete the message immediately. - */ - void ProcessMessageAndCompleteL( const RMessage2& aMessage ); - - /** - * From CTFRemoteStub - * - * Notifies the stub that the asynchronous message passed to - * ProcessMessageAndCompleteL has been completed with given - * status. This can be used to complete the test case. - */ - void MessageCompleteL( TInt aResult ); - - void AccessoryNotification( TInt aResult, TInt aParameter); - -private: - - void CreateObjectPubSubL( TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects, - TStreamConObjectType aobjectType2, - TInt64 aNumberOfObjects2 ); - - void FillObjectL( CAccPolAudioStreamFormatCon* aContainer, - TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects ); - - - void CreateTopologyObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); - - TInt TestValueRecordL(); - - TInt TestBaseSerializationL(); - - CTFTestControlObserver* CreateObserver(); - - void PublishAndSubscribeL(TTFAccessoryTestCaseStateControl& aParameter); - - void ResetAccessoryServices(); - - TInt GetExistence(CAccPolSubblockNameArray* aNameArray,TDesC aCapability); - - void AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval); - - void FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ); - - void AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ); - - void GetSeveralAccessoryModeSetting( TInt* aRetval ); - - void SetSeveralAccessoryModeSetting( TInt* aRetval ); - - void SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ); - - void SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ); - - void CheckConnectedAccessory( TInt* aRetval ); - - void CallTClassMethods( TInt* aRetval ); - - void GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void Settings(); - - void Policy(); - - void CreateHdmiObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); - - TInt CheckHdmiContainerObjectL(); - - TInt CheckHdmiSinkObjectL(); - - TInt CheckHdmiAudioFormatObjectL(); - - TInt CheckHdmiLatencyObjectL(); - - TInt CheckHdmiSpeakerAllocationObjectL(); - - TInt CheckHdmiVideoFormatObjectL(); - - void CreateHdmiObjectL( CAccPolObjectCon& aCon, THdmiConObjectType aType ); - -private: - - TAccPolGenericID iGenericId[10]; - TAccPolGenericIDArray iGenericIdArray; - TAccAudioType iAudioType; - friend class CTFTestControlObserver; - //TBTDevAddr iBtaddr; - RAccessoryServer iAccessoryServer; - RAccessoryAudioControl* iAccessoryAudioControl; - RAccessoryBTControl* iAccessoryBTControl; - RAccessoryConnection* iAccessoryConnection; - RAccessoryMode* iAccessoryMode; - RAccessorySettings* iAccessorySettings; - RAccessorySingleConnection* iAccessorySingleConnection; - RAccessoryControl* iAccessoryControl; - TBool iInitialized; - //CAccConfigFileParser* iAccConfigFileParser; - RProperty iSubscribe; - TSglQue iStack; - TSglQueIter iStackIter; - CTFTestControlObserver* iObserverItem; - - CAccPolAudioStreamFormatCon* iStreamContainer; - CAccPolAudioTopologyObjectCon* iTopologyContainer; - CAccPolVolumeControl* iSpeakerRightVolume; - CAccPolVolumeControl* iSpeakerLeftVolume; - CAccPolMuteControl* iSpeakerMute; - CAccPolVolumeControl* iMicRightVolume; - CAccPolVolumeControl* iMicLeftVolume; - }; -#endif +/* +* Copyright (c) 2005 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: +* +*/ + +#ifndef __CTFACCESSORYTESTCONTROL_H__ +#define __CTFACCESSORYTESTCONTROL_H__ + +#include +#include + +#include "MtfAccessoryTestControl.h" +#include "TfAccessoryTestControlTypes.h" +#include "CtfTestControlObserver.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +struct TTFAccessoryTestCaseStateControl; + +const TInt KTFStubTypeAccessoryControl = 565; + +class CTFTestControlObserver; + +class CTFAccessoryTestControl : public CTFRemoteStub, public MTFAccessoryTestControl + { +public: + CTFAccessoryTestControl( void ); + virtual ~CTFAccessoryTestControl( void ); + +private: + CTFAccessoryTestControl( const CTFAccessoryTestControl& aStub ); + CTFAccessoryTestControl& operator=( const CTFAccessoryTestControl& aStub ); + +public: + void InitializeL( void ); + +public: + void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ); + TInt ParameterCount( TTFAccessoryFunction aFunction ) const; + TBool ParameterBounds( TTFAccessoryFunction aFunction, TInt* aMin, TInt* aMax ) const; + + void CancelOutStandingRequest(); + + void ResetAccessoryServer(); + +protected: // Functions from base classes + + void DoCancel(); + void RunL(); + TInt RunError( TInt aError ); + /** + * From CTFRemoteStub + * + * Processes a message and completes it. It is not necessary to + * complete the message immediately. + */ + void ProcessMessageAndCompleteL( const RMessage2& aMessage ); + + /** + * From CTFRemoteStub + * + * Notifies the stub that the asynchronous message passed to + * ProcessMessageAndCompleteL has been completed with given + * status. This can be used to complete the test case. + */ + void MessageCompleteL( TInt aResult ); + + void AccessoryNotification( TInt aResult, TInt aParameter); + +private: + + void CreateObjectPubSubL( TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects, + TStreamConObjectType aobjectType2, + TInt64 aNumberOfObjects2 ); + + void FillObjectL( CAccPolAudioStreamFormatCon* aContainer, + TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects ); + + + void CreateTopologyObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); + + TInt TestValueRecordL(); + + TInt TestBaseSerializationL(); + + CTFTestControlObserver* CreateObserver(); + + void PublishAndSubscribeL(TTFAccessoryTestCaseStateControl& aParameter); + + void ResetAccessoryServices(); + + TInt GetExistence(CAccPolSubblockNameArray* aNameArray,TDesC aCapability); + + void AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval); + + void FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ); + + void AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ); + + void GetSeveralAccessoryModeSetting( TInt* aRetval ); + + void SetSeveralAccessoryModeSetting( TInt* aRetval ); + + void SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ); + + void SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ); + + void CheckConnectedAccessory( TInt* aRetval ); + + void CallTClassMethods( TInt* aRetval ); + + void GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void Settings(); + + void Policy(); + + void CreateHdmiObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); + + TInt CheckHdmiContainerObjectL(); + + TInt CheckHdmiSinkObjectL(); + + TInt CheckHdmiAudioFormatObjectL(); + + TInt CheckHdmiLatencyObjectL(); + + TInt CheckHdmiSpeakerAllocationObjectL(); + + TInt CheckHdmiVideoFormatObjectL(); + + void CreateHdmiObjectL( CAccPolObjectCon& aCon, THdmiConObjectType aType ); + +private: + + TAccPolGenericID iGenericId[10]; + TAccPolGenericIDArray iGenericIdArray; + TAccAudioType iAudioType; + friend class CTFTestControlObserver; + //TBTDevAddr iBtaddr; + RAccessoryServer iAccessoryServer; + RAccessoryAudioControl* iAccessoryAudioControl; + RAccessoryBTControl* iAccessoryBTControl; + RAccessoryConnection* iAccessoryConnection; + RAccessoryMode* iAccessoryMode; + RAccessorySettings* iAccessorySettings; + RAccessorySingleConnection* iAccessorySingleConnection; + RAccessoryControl* iAccessoryControl; + TBool iInitialized; + //CAccConfigFileParser* iAccConfigFileParser; + RProperty iSubscribe; + TSglQue iStack; + TSglQueIter iStackIter; + CTFTestControlObserver* iObserverItem; + + CAccPolAudioStreamFormatCon* iStreamContainer; + CAccPolAudioTopologyObjectCon* iTopologyContainer; + CAccPolVolumeControl* iSpeakerRightVolume; + CAccPolVolumeControl* iSpeakerLeftVolume; + CAccPolMuteControl* iSpeakerMute; + CAccPolVolumeControl* iMicRightVolume; + CAccPolVolumeControl* iMicLeftVolume; + }; +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControlPlugin.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControlPlugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfAccessoryTestControlPlugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __CTFACCESSORYTESTCONTROLPLUGIN_H__ -#define __CTFACCESSORYTESTCONTROLPLUGIN_H__ - -// INCLUDE FILES -#include - -// CLASS DECLARATION - -/** -* An implementation of CTFStubModuleInterface. -*/ -class CTFAccessoryTestControlPlugin : public CTFStubModuleInterface - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @param aInitParams Initialisation parameters. - * @return The created object. - */ - static CTFAccessoryTestControlPlugin* NewL( TAny* aInitParams ); - - /** - * Destructor. - */ - ~CTFAccessoryTestControlPlugin( void ); - - public: // Functions from base classes - - /** - * Gets the stub implementation of this plug-in module - */ - CTFStub* GetStubL( void ); - - /** - * Builds the test suite of this plug-in module. - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); - - private: // Functions - - /** - * C++ default constructor. - * @param aParams Initialisation parameters. - */ - CTFAccessoryTestControlPlugin( TAny* aParams ); - - private: // Data - - CTFStubModuleInterface::TInterfaceInitParams* iInitParams; - - }; - -#endif //__CTFACCESSORYTESTCONTROLPLUGIN_H__ - -// End of File +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __CTFACCESSORYTESTCONTROLPLUGIN_H__ +#define __CTFACCESSORYTESTCONTROLPLUGIN_H__ + +// INCLUDE FILES +#include + +// CLASS DECLARATION + +/** +* An implementation of CTFStubModuleInterface. +*/ +class CTFAccessoryTestControlPlugin : public CTFStubModuleInterface + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + * @param aInitParams Initialisation parameters. + * @return The created object. + */ + static CTFAccessoryTestControlPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CTFAccessoryTestControlPlugin( void ); + + public: // Functions from base classes + + /** + * Gets the stub implementation of this plug-in module + */ + CTFStub* GetStubL( void ); + + /** + * Builds the test suite of this plug-in module. + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); + + private: // Functions + + /** + * C++ default constructor. + * @param aParams Initialisation parameters. + */ + CTFAccessoryTestControlPlugin( TAny* aParams ); + + private: // Data + + CTFStubModuleInterface::TInterfaceInitParams* iInitParams; + + }; + +#endif //__CTFACCESSORYTESTCONTROLPLUGIN_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfTestControlObserver.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfTestControlObserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/CtfTestControlObserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,136 +1,136 @@ -/* -* Copyright (c) 2005 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: -* -*/ - -#ifndef __CTFTESTCONTROLOBSERVER_H__ -#define __CTFTESTCONTROLOBSERVER_H__ - - -#include "CtfAccessoryTestControl.h" -#include "TfAccessoryTestControlTypes.h" - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -class CTFAccessoryTestControl; - -class CTFTestControlObserver : public CActive - { - public: - - //CTFAccessoryTestControl aTestControl - static CTFTestControlObserver* NewL(CTFAccessoryTestControl& aTestControl); - - CTFTestControlObserver(CTFAccessoryTestControl& aTestControl); - - ~CTFTestControlObserver(); - - // - // Accessory Connction - // - void NotifyNewAccessoryConnected(TAccPolGenericID& aGenericId); - - void NotifyAccessoryDisconnected(TAccPolGenericID& aGenericId); - - void NotifyBooleanAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void NotifyIntegerAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void NotifyObjectAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void GetAccessoryConnectionStatus(TAccPolGenericIDArray& aGenericIdArray); - // - // Accessory Mode - // - void NotifyAccessoryModeChanged(); - - void GetAccessoryMode(); - - // - // Accessory Bluetooth Control - // - void NotifyBluetoothAudioLinkOpenReq(); - - void NotifyBluetoothAudioLinkCloseReq(); - - void ConnectBTAccessory(TBTDevAddr& btaddr); - - void DisconnectBTAccessory(TBTDevAddr& btaddr); - - // - // Accessory Audio Control - // - void AccessoryAudioLinkOpen( TAccPolGenericID& aGenericI, TUint32 aAudioType ); - - void NotifyAccessoryAudioLinkOpened(TAccPolGenericID& aGenericId); - - void NotifyAccessoryAudioLinkClosed(TAccPolGenericID& aGenericId); - - void AccessoryAudioLinkClose(TAccPolGenericID& aGenericId, TUint32 aAudioType ); - - void NotifyAccessoryConnectionStatusChanged(TAccPolGenericIDArray& aGenericIdArray); - - // Accessory Control - - void ConnectAccessory(TAccPolGenericID& aGenericId, TUint64 aHWDeviceID); - - void DisconnectAccessory(TAccPolGenericID& aGenericId); - - // Support functions - TBool FindRequest(TTFRequestType aRequestType); - - public: // - - static const TInt iOffset; - - protected: // Functions from base classes - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - - private: - - void SetRequestType( TTFRequestType aRequestType) {iRequestType=aRequestType;} - private: - - friend class CTFAccessoryTestControl; - TSglQueLink iSlink; - TAccPolAccessoryMode iAccMode; - CTFAccessoryTestControl& iAccessoryTestControl; - TTFRequestType iRequestType; - TTFRequestType iRequestCompleted; - TInt64 iValue; - TUint32 iCapabilityName; - TAccValueTypeTBool iBooleanValue; - TAccValueTypeTInt iIntegerValue; - TAccValueTypeObject iObjectValue; - TAccAudioType iAudioType; - TBTDevAddr iBTaddr; - HBufC8* iObjectValueBuf; - }; - -#endif //__CTFTESTCONTROLOBSERVER_H__ +/* +* Copyright (c) 2005 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: +* +*/ + +#ifndef __CTFTESTCONTROLOBSERVER_H__ +#define __CTFTESTCONTROLOBSERVER_H__ + + +#include "CtfAccessoryTestControl.h" +#include "TfAccessoryTestControlTypes.h" + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +class CTFAccessoryTestControl; + +class CTFTestControlObserver : public CActive + { + public: + + //CTFAccessoryTestControl aTestControl + static CTFTestControlObserver* NewL(CTFAccessoryTestControl& aTestControl); + + CTFTestControlObserver(CTFAccessoryTestControl& aTestControl); + + ~CTFTestControlObserver(); + + // + // Accessory Connction + // + void NotifyNewAccessoryConnected(TAccPolGenericID& aGenericId); + + void NotifyAccessoryDisconnected(TAccPolGenericID& aGenericId); + + void NotifyBooleanAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void NotifyIntegerAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void NotifyObjectAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void GetAccessoryConnectionStatus(TAccPolGenericIDArray& aGenericIdArray); + // + // Accessory Mode + // + void NotifyAccessoryModeChanged(); + + void GetAccessoryMode(); + + // + // Accessory Bluetooth Control + // + void NotifyBluetoothAudioLinkOpenReq(); + + void NotifyBluetoothAudioLinkCloseReq(); + + void ConnectBTAccessory(TBTDevAddr& btaddr); + + void DisconnectBTAccessory(TBTDevAddr& btaddr); + + // + // Accessory Audio Control + // + void AccessoryAudioLinkOpen( TAccPolGenericID& aGenericI, TUint32 aAudioType ); + + void NotifyAccessoryAudioLinkOpened(TAccPolGenericID& aGenericId); + + void NotifyAccessoryAudioLinkClosed(TAccPolGenericID& aGenericId); + + void AccessoryAudioLinkClose(TAccPolGenericID& aGenericId, TUint32 aAudioType ); + + void NotifyAccessoryConnectionStatusChanged(TAccPolGenericIDArray& aGenericIdArray); + + // Accessory Control + + void ConnectAccessory(TAccPolGenericID& aGenericId, TUint64 aHWDeviceID); + + void DisconnectAccessory(TAccPolGenericID& aGenericId); + + // Support functions + TBool FindRequest(TTFRequestType aRequestType); + + public: // + + static const TInt iOffset; + + protected: // Functions from base classes + void DoCancel(); + void RunL(); + TInt RunError( TInt aError ); + + private: + + void SetRequestType( TTFRequestType aRequestType) {iRequestType=aRequestType;} + private: + + friend class CTFAccessoryTestControl; + TSglQueLink iSlink; + TAccPolAccessoryMode iAccMode; + CTFAccessoryTestControl& iAccessoryTestControl; + TTFRequestType iRequestType; + TTFRequestType iRequestCompleted; + TInt64 iValue; + TUint32 iCapabilityName; + TAccValueTypeTBool iBooleanValue; + TAccValueTypeTInt iIntegerValue; + TAccValueTypeObject iObjectValue; + TAccAudioType iAudioType; + TBTDevAddr iBTaddr; + HBufC8* iObjectValueBuf; + }; + +#endif //__CTFTESTCONTROLOBSERVER_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/MtfAccessoryTestControl.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/MtfAccessoryTestControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/MtfAccessoryTestControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,47 +1,47 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __MTFACCESSORYTESTCONTROL_H__ -#define __MTFACCESSORYTESTCONTROL_H__ - -#include - -struct TTFAccessoryTestCaseStateControl; - -class MTFAccessoryTestControl - { -public: - MTFAccessoryTestControl( void ); - virtual ~MTFAccessoryTestControl( void ); - -private: - MTFAccessoryTestControl( const MTFAccessoryTestControl& aStub ); - MTFAccessoryTestControl& operator=( const MTFAccessoryTestControl& aStub ); - -public: - virtual void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) = 0; - - virtual void CancelOutStandingRequest() = 0; - - virtual void ResetAccessoryServer() = 0; - - }; - -MTFAccessoryTestControl* GetAccessoryTestControl( void ); - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __MTFACCESSORYTESTCONTROL_H__ +#define __MTFACCESSORYTESTCONTROL_H__ + +#include + +struct TTFAccessoryTestCaseStateControl; + +class MTFAccessoryTestControl + { +public: + MTFAccessoryTestControl( void ); + virtual ~MTFAccessoryTestControl( void ); + +private: + MTFAccessoryTestControl( const MTFAccessoryTestControl& aStub ); + MTFAccessoryTestControl& operator=( const MTFAccessoryTestControl& aStub ); + +public: + virtual void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) = 0; + + virtual void CancelOutStandingRequest() = 0; + + virtual void ResetAccessoryServer() = 0; + + }; + +MTFAccessoryTestControl* GetAccessoryTestControl( void ); + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/Siftrace.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/Siftrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/Siftrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,227 +1,227 @@ -/* -* Copyright (c) 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: Declaration and implementation of SIF trace macros -* -*/ - - -// Additional Lint configuration options are defined here. -//lint -e1714 Member function not referenced. -// - CTFTestTimer, CTFActiveTest, copy constructors, assignment operators -//lint -e1526 Member function not defined. -// - Copy constructors, assignment operators -//lint -e714 Symbol not referenced -// - uid, LibEntryL -//lint -e1711 Class has a virtual function but is not inherited -// - Inherited in the project that implements the test cases -//lint -e755 Macro not referenced -// - Some trace macros -//lint -e769 Enumeration constant not referenced -// - Panic codes are not referenced in WINS -//lint -e1716 Virtual member function not referenced -// - Referenced b the project that implements the test cases -//lint -esym(960, 69) Variable number of arguments -// - Log writer functions contain ellipsis -//lint -esym(960, 54) Null statement by itself -// - When COMPONENT_TRACE is not enabled -//lint -esym(960, 59) Left brace expected for if, else, for, do and while -// - TRACE_ASSERT macro -//lint -e1924 C-style case -// - From _L macros -//lint -e666 Expression with side effects -// - From TEST_CASE_TRACE - -#ifndef SIFTRACE_H -#define SIFTRACE_H - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Global enumeration constant not referenced -//lint -e769 - -// Virtual member not referenced -//lint -e1716 - -// Expression with side effects passed to macro -//lint -e666 - -// Enumeration not referenced -//lint -e758 - -// Declaration could be moved from header to module -//lint -e759 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - inline void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } - - inline void ThisFileFunc( const TDesC8& aFile ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "File=%s, compiled=%s %s" ), buffer->Des().PtrZ(), date->Des().PtrZ(), time->Des().PtrZ() ); - } - delete buffer; - delete date; - delete time; - } - - -// - // ----------------------------------------------------------------------------- - // TracePanicFunc - // This method is needed to utilize debugging macros defined in dostrace.h. - // ----------------------------------------------------------------------------- - // - inline void TracePanicFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Panic happened: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - - User::Panic( _L( "[AccFW:AccServer]" ), KErrGeneral ); - } - - #define PANIC_IF_FALSE( a ) if ( !( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - #define PANIC_IF_TRUE( a ) if ( ( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - #define PANIC_ALWAYS() TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE_THIS_FILE ThisFileFunc( _L8( __FILE__ ) ) - - #else //#ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE_THIS_FILE - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_RETURN( a ) if ( !( ( a ) == KErrNone ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) RDebug::Print a - - #else - - #define TEST_CASE_TRACE( a ) - - #endif //#ifdef TEST_CASE_TRACE_FLAG - - #ifdef API_TRACE_FLAG - - #define API_TRACE( a ) RDebug::Print a - - #else //#ifdef API_TRACE_FLAG - - #define API_TRACE( a ) - - #endif //#ifdef API_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_RETURN( a ) a - #define TRACE_ASSERT_ALWAYS - #define TEST_CASE_TRACE( a ) - #define COMPONENT_TRACE( a ) - #define API_TRACE( a ) - #define COMPONENT_TRACE_THIS_FILE - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - -#endif //#ifndef ccftrace.h - -// End of File +/* +* Copyright (c) 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: Declaration and implementation of SIF trace macros +* +*/ + + +// Additional Lint configuration options are defined here. +//lint -e1714 Member function not referenced. +// - CTFTestTimer, CTFActiveTest, copy constructors, assignment operators +//lint -e1526 Member function not defined. +// - Copy constructors, assignment operators +//lint -e714 Symbol not referenced +// - uid, LibEntryL +//lint -e1711 Class has a virtual function but is not inherited +// - Inherited in the project that implements the test cases +//lint -e755 Macro not referenced +// - Some trace macros +//lint -e769 Enumeration constant not referenced +// - Panic codes are not referenced in WINS +//lint -e1716 Virtual member function not referenced +// - Referenced b the project that implements the test cases +//lint -esym(960, 69) Variable number of arguments +// - Log writer functions contain ellipsis +//lint -esym(960, 54) Null statement by itself +// - When COMPONENT_TRACE is not enabled +//lint -esym(960, 59) Left brace expected for if, else, for, do and while +// - TRACE_ASSERT macro +//lint -e1924 C-style case +// - From _L macros +//lint -e666 Expression with side effects +// - From TEST_CASE_TRACE + +#ifndef SIFTRACE_H +#define SIFTRACE_H + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Global enumeration constant not referenced +//lint -e769 + +// Virtual member not referenced +//lint -e1716 + +// Expression with side effects passed to macro +//lint -e666 + +// Enumeration not referenced +//lint -e758 + +// Declaration could be moved from header to module +//lint -e759 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + inline void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } + + inline void ThisFileFunc( const TDesC8& aFile ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "File=%s, compiled=%s %s" ), buffer->Des().PtrZ(), date->Des().PtrZ(), time->Des().PtrZ() ); + } + delete buffer; + delete date; + delete time; + } + + +// + // ----------------------------------------------------------------------------- + // TracePanicFunc + // This method is needed to utilize debugging macros defined in dostrace.h. + // ----------------------------------------------------------------------------- + // + inline void TracePanicFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Panic happened: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + + User::Panic( _L( "[AccFW:AccServer]" ), KErrGeneral ); + } + + #define PANIC_IF_FALSE( a ) if ( !( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + #define PANIC_IF_TRUE( a ) if ( ( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + #define PANIC_ALWAYS() TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE_THIS_FILE ThisFileFunc( _L8( __FILE__ ) ) + + #else //#ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE_THIS_FILE + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_RETURN( a ) if ( !( ( a ) == KErrNone ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) RDebug::Print a + + #else + + #define TEST_CASE_TRACE( a ) + + #endif //#ifdef TEST_CASE_TRACE_FLAG + + #ifdef API_TRACE_FLAG + + #define API_TRACE( a ) RDebug::Print a + + #else //#ifdef API_TRACE_FLAG + + #define API_TRACE( a ) + + #endif //#ifdef API_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_RETURN( a ) a + #define TRACE_ASSERT_ALWAYS + #define TEST_CASE_TRACE( a ) + #define COMPONENT_TRACE( a ) + #define API_TRACE( a ) + #define COMPONENT_TRACE_THIS_FILE + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + +#endif //#ifndef ccftrace.h + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/TfAccessoryTestControlTypes.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/TfAccessoryTestControlTypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/inc/TfAccessoryTestControlTypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,266 +1,266 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __TFACCESSORYTESTCONTROLTYPES_H__ -#define __TFACCESSORYTESTCONTROLTYPES_H__ - -#include -#include -#include - -const TUid KTFAccessoryTestProperty = {0x10200c70}; -const TUint32 KTFAccessoryMethod = 0x00001001; -const TUint32 KTFAccessoryNotifierMethod = 0x00001002; -const TUint32 KTFAccessoryObjectMethod = 0x00001003; - -enum TTFAccessoryFunction - { - ETFAccessory_None = 0, - ETFAccessoryConnection_Open, - ETFAccessoryConnection_Close, - ETFAccessorySingleConnection_Open, - ETFAccessorySingleConnection_Close, - ETFAccessoryControl_Open, - ETFAccessoryControl_Close, - ETFAccessorySettings_Open, - ETFAccessorySettings_Close, - ETFAccessoryMode_Open, - ETFAccessoryMode_Close, - ETFAccessoryAudioControl_Open, - ETFAccessoryAudioControl_Close, - ETFAccessoryBtControl_Open, - ETFAccessoryBtControl_Close, - ETFAccessoryBtConnectAccessory, - ETFAccessoryBtDisconnectAccessory, - ETFAccessoryNotifyAccessoryConnectionStatusChanged, - ETFAccessoryNotifyNewAccessoryConnected, - ETFAccessoryNotifyAccessoryDisconnected, - ETFAccessoryNotifyAccessoryModeChanged, - ETFAccessoryAccessoryModeSync, - ETFAccessoryAccessoryModeASync, - ETFAccessoryNotifyBluetoothAudioLinkOpenReq, - ETFAccessoryAudioLinkOpen, - ETFAccessoryNotifyAccessoryAudioLinkOpened, - ETFAccessoryBluetoothAudioLinkOpenedNotify, - ETFAccessoryBluetoothAudioLinkOpenResp, - ETFAccessoryNotifyAccessoryAudioLinkClosed, - ETFAccessoryNotifyBluetoothAudioLinkCloseReq, - ETFAccessoryAccessoryAudioLinkClose, - ETFAccessoryBluetoothAudioLinkClosedNotify, - ETFAccessoryBluetoothAudioLinkCloseResp, - ETFAccessoryPublishAndSubscribe, - ETFAccessoryBtCancelConnectAccessory, - ETFAccessoryBtCancelDisconnectAccessory, - ETFNotifyIntAccessoryValueChanged, - ETFNotifyBoolAccessoryValueChanged, - ETFAccessoryIntGetValue, - ETFAccessoryBoolGetValue, - ETFAccessoryDes8GetValue, - ETFConnectWiredAccessory, - ETFDisconnectWiredAccessory, - ETFSyncGetAccessoryConnectionStatus, - ETFASyncGetAccessoryConnectionStatus, - ETFSetIntValue, - ETFSetBoolValue, - ETFAccessoryValueChangedNotifyInt, - ETFAccessoryValueChangedNotifyBool, - ETFBTAccessoryValueChangedNotifyBool, - ETFSetHWDeviceSettings, - ETFGetHWDeviceSettings, - ETFGetSupportedHWDeviceSettings, - ETFSetIntAccessoryModeSetting, - ETFSetBoolAccessoryModeSetting, - ETFSetDesAccessoryModeSetting, - ETFGetIntAccessoryModeSetting, - ETFGetBoolAccessoryModeSetting, - ETFGetDesAccessoryModeSetting, - ETFSetSeveralAccessoryModeSetting, - ETFGetSeveralAccessoryModeSetting, - ETFAccessory_Cancel, - ETFAccessorySynchronized, - ETFFindAndCheckRequest, - ETFCheckAllRequest, - ETFCancelAccessoryAudioLinkOpen, - ETFCancelAccessoryAudioLinkClose, - ETFCancelNotifyAccessoryAudioLinkOpened, - ETFCancelNotifyAccessoryAudioLinkClosed, - ETFCancelNotifyProcessCommand, - ETFCancelConnectAccessory, - ETFCancelDisconnectAccessory, - ETFCancelNotifyBluetoothAudioLinkOpenReq, - ETFCancelNotifyBluetoothAudioLinkCloseReq, - ETFCancelNotifyAccessoryConnectionStatusChanged, - ETFCancelGetAccessoryConnectionStatus, - ETFCancelConnectAccessoryBT, - ETFCancelDisconnectAccessoryBT, - ETFCancelNotifyAccessoryModeChanged, - ETFCancelGetAccessoryMode, - ETFCancelNotifyNewAccessoryConnected, - ETFCancelNotifyAccessoryDisconnected, - ETFCancelNotifyAccessoryValueChanged, - ETFAccSrvSubBase, - ETFCheckCapability, - ETFAudioRoutingStatusNotify, - ETFSelectionDialogText, - ETFSelectionDialogCancel, - ETFNotSupportedNote, - ETFUISelectionIndex, - ETFCheckCapabilityGroup, - ETFValueRecordTests, - ETFCheckConnectedAccessory, - ETFAccessorySet_PubSub, - ETFClearStack, - ETFCancelConnects, - ETFCallTClassMethods, - ETFBTAccessoryValueChangedNotifyInt, - ETFAccessorySet_ObjectPubSub, - ETFAccessorySet_TopologyObjectsPubSub, - ETFAccessoryGetTopologyObjects, - ETFAccessoryGetVolumeControlObjects, - ETFAccessorySetVolumeControlObjects, - ETFAccessoryGetMuteControlObjects, - ETFAccessorySetMuteControlObjects, - ETFAccessoryObjectParseTopology, - ETFAccessoryGetStreamObjects, - ETFAccessorySetStreamObjects, - ETFObjectBaseSerializationTests, - ETFAccessoryGetStreamObjectsFromPolicy, - ETFNotifyObjectAccessoryValueChanged, - ETFFindAndCheckObjectRequest, - ETFSetHdmiObject_PubSub, - ETFGetHdmiObject, - ETFCheckHdmiObject - }; - -enum TTFAccessoryParameterResult - { - ETFEAccUnsupportedConnected = 0, - ETFAccModeHandPortable = 1, - ETFAccModeWiredHeadset = 2, - ETFAccModeWirelessHeadset = 3, - ETFAccModeWiredCarKit = 4, - ETFAccModeWirelessCarKit = 5, - ETFAccModeTextDevice = 6, - ETFAccModeLoopset = 7, - ETFAccModeMusicStand = 8 - }; - - -enum TTFRequestType - { - ReqAccRequestNone =0, - ReqNotifyNewAccessoryConnected =1, - ReqNotifyAccessoryDisconnected =2, - ReqNotifyAccessoryModeChanged =3, - ReqNotifyAccessoryConnectionStatusChanged =4, - ReqAccessoryAudioLinkOpen =5, - ReqNotifyAccessoryAudioLinkOpened =6, - ReqNotifyAccessoryAudioLinkClosed =7, - ReqAccessoryAudioLinkClose =8, - ReqNotifyBluetoothAudioLinkOpenReq =9, - ReqNotifyBluetoothAudioLinkCloseReq =10, - ReqConnectBtAccessory =11, - ReqDisconnectBtAccessory =12, - ReqNotifyBooleanAccessoryValueChanged =13, - ReqNotifyIntegerAccessoryValueChanged =14, - ReqGetAccessoryConnectionStatus =15, - ReqAccessoryConnection =16, - ReqAccessoryDisconnection =17, - ReqNotifyAccessoryValueChanged =18, - ReqGetAccessoryMode =19, - ReqNotifyObjectAccessoryValueChanged =20 - }; - -enum TTFASYReference - { - ETFAsyNone =0, - ETFAsyConn, - ETFAsyDisc, - ETFAsyIntNotify, - ETFAsyBoolNotify, - ETFAsyObjectNotify, - ETFBTALinkClosedNo, - ETFBTALinkOpenedNo, - ETFAsySetCapability, - ETFAsySetBoolValue, - ETFAsyConnOpenCable, - ETFAsyUpdateTVOut, - ETFAsyUpdateHeadset, - ETFAsyConnectECIAccessory, - ETFAsyConnectHeadset, - ETFAsyConnectOpenCable3Poles, - ETFAsyConnUSB, - ETFAsyConnUSB2, - ETFAsyConnHDMI, -#ifdef FF_AUTOMOTIVESTACK - ETFAsyRTPStreamingConn -#endif - }; - - -struct TTFAccessoryTestCaseStateControl - { - TTFAccessoryFunction iAccessoryFunction; - TInt iGid; //defines the index of the gereric ID to be used in TestControl - TInt64 iArg1; - TInt64 iArg2; - TUint32 iArg3; - TInt64 iArg4; //Reserved - TInt iTestCaseID; - TTFASYReference iMethod; - TTFRequestType iRequestType; - TInt iExpectedResult; - TInt iTimer;//Specifies the time which is waited before next state is executed - }; - -struct TTFAccessoryPublishAndSubscribe - { - TInt iTestCaseID; - TTFASYReference iMethod; - TInt64 iParam1; - TUint32 iParam2; - TInt iTimeMs;//0 means that command is server synchronously - TAccPolGenericID iGenericID; - }; - -const TInt KTFErrAccessoryNotificationMissing = -3000; -const TInt KTFErrAccessoryServiceMissing = -4000; -const TInt KTFErrAccessoryUnexpectedStatus = -5000; -const TInt KTFErrAccessoryUnexpectedStatusParameter = -6000; -const TInt KTFErrAccessoryUnexpectedArg1 = -7000; -const TInt KTFErrAccessoryUnexpectedArg2 = -8000; -const TInt KTFErrAccessoryUnexpectedArg3 = -8500; -const TInt KTFErrAccessoryUnexpectedResult = -9000; - - -const TInt64 KBTAddrCarkit = 0x001122334455; -const TInt64 KBTAddrHeadsetHSPAndHFP = 0x112233445566; -const TInt64 KBTAddrHeadsetHSP = 0x223344556677; -const TInt64 KBTAddrHeadsetHFP = 0x334455667788; -const TInt64 KBTAddrHeadsetEmptyPR = 0x445566778899; -const TInt64 KBTAddrHeadsetNokiaSPId = 0x556677889900; -const TInt64 KBTAddrNoResponse = 0x667788990011; -const TInt64 KBTAddrErrCode = 0x778899001122; -const TInt64 KBTAllBitsOn = 0x889900112233; -const TInt64 KBTAddrHeadsetAVRCP = 0x990011223344; -const TInt64 KBTAddrHeadseA2DP = 0x111111111111; - - -const TInt KTFDontDeleteObserver = -999; - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __TFACCESSORYTESTCONTROLTYPES_H__ +#define __TFACCESSORYTESTCONTROLTYPES_H__ + +#include +#include +#include + +const TUid KTFAccessoryTestProperty = {0x10200c70}; +const TUint32 KTFAccessoryMethod = 0x00001001; +const TUint32 KTFAccessoryNotifierMethod = 0x00001002; +const TUint32 KTFAccessoryObjectMethod = 0x00001003; + +enum TTFAccessoryFunction + { + ETFAccessory_None = 0, + ETFAccessoryConnection_Open, + ETFAccessoryConnection_Close, + ETFAccessorySingleConnection_Open, + ETFAccessorySingleConnection_Close, + ETFAccessoryControl_Open, + ETFAccessoryControl_Close, + ETFAccessorySettings_Open, + ETFAccessorySettings_Close, + ETFAccessoryMode_Open, + ETFAccessoryMode_Close, + ETFAccessoryAudioControl_Open, + ETFAccessoryAudioControl_Close, + ETFAccessoryBtControl_Open, + ETFAccessoryBtControl_Close, + ETFAccessoryBtConnectAccessory, + ETFAccessoryBtDisconnectAccessory, + ETFAccessoryNotifyAccessoryConnectionStatusChanged, + ETFAccessoryNotifyNewAccessoryConnected, + ETFAccessoryNotifyAccessoryDisconnected, + ETFAccessoryNotifyAccessoryModeChanged, + ETFAccessoryAccessoryModeSync, + ETFAccessoryAccessoryModeASync, + ETFAccessoryNotifyBluetoothAudioLinkOpenReq, + ETFAccessoryAudioLinkOpen, + ETFAccessoryNotifyAccessoryAudioLinkOpened, + ETFAccessoryBluetoothAudioLinkOpenedNotify, + ETFAccessoryBluetoothAudioLinkOpenResp, + ETFAccessoryNotifyAccessoryAudioLinkClosed, + ETFAccessoryNotifyBluetoothAudioLinkCloseReq, + ETFAccessoryAccessoryAudioLinkClose, + ETFAccessoryBluetoothAudioLinkClosedNotify, + ETFAccessoryBluetoothAudioLinkCloseResp, + ETFAccessoryPublishAndSubscribe, + ETFAccessoryBtCancelConnectAccessory, + ETFAccessoryBtCancelDisconnectAccessory, + ETFNotifyIntAccessoryValueChanged, + ETFNotifyBoolAccessoryValueChanged, + ETFAccessoryIntGetValue, + ETFAccessoryBoolGetValue, + ETFAccessoryDes8GetValue, + ETFConnectWiredAccessory, + ETFDisconnectWiredAccessory, + ETFSyncGetAccessoryConnectionStatus, + ETFASyncGetAccessoryConnectionStatus, + ETFSetIntValue, + ETFSetBoolValue, + ETFAccessoryValueChangedNotifyInt, + ETFAccessoryValueChangedNotifyBool, + ETFBTAccessoryValueChangedNotifyBool, + ETFSetHWDeviceSettings, + ETFGetHWDeviceSettings, + ETFGetSupportedHWDeviceSettings, + ETFSetIntAccessoryModeSetting, + ETFSetBoolAccessoryModeSetting, + ETFSetDesAccessoryModeSetting, + ETFGetIntAccessoryModeSetting, + ETFGetBoolAccessoryModeSetting, + ETFGetDesAccessoryModeSetting, + ETFSetSeveralAccessoryModeSetting, + ETFGetSeveralAccessoryModeSetting, + ETFAccessory_Cancel, + ETFAccessorySynchronized, + ETFFindAndCheckRequest, + ETFCheckAllRequest, + ETFCancelAccessoryAudioLinkOpen, + ETFCancelAccessoryAudioLinkClose, + ETFCancelNotifyAccessoryAudioLinkOpened, + ETFCancelNotifyAccessoryAudioLinkClosed, + ETFCancelNotifyProcessCommand, + ETFCancelConnectAccessory, + ETFCancelDisconnectAccessory, + ETFCancelNotifyBluetoothAudioLinkOpenReq, + ETFCancelNotifyBluetoothAudioLinkCloseReq, + ETFCancelNotifyAccessoryConnectionStatusChanged, + ETFCancelGetAccessoryConnectionStatus, + ETFCancelConnectAccessoryBT, + ETFCancelDisconnectAccessoryBT, + ETFCancelNotifyAccessoryModeChanged, + ETFCancelGetAccessoryMode, + ETFCancelNotifyNewAccessoryConnected, + ETFCancelNotifyAccessoryDisconnected, + ETFCancelNotifyAccessoryValueChanged, + ETFAccSrvSubBase, + ETFCheckCapability, + ETFAudioRoutingStatusNotify, + ETFSelectionDialogText, + ETFSelectionDialogCancel, + ETFNotSupportedNote, + ETFUISelectionIndex, + ETFCheckCapabilityGroup, + ETFValueRecordTests, + ETFCheckConnectedAccessory, + ETFAccessorySet_PubSub, + ETFClearStack, + ETFCancelConnects, + ETFCallTClassMethods, + ETFBTAccessoryValueChangedNotifyInt, + ETFAccessorySet_ObjectPubSub, + ETFAccessorySet_TopologyObjectsPubSub, + ETFAccessoryGetTopologyObjects, + ETFAccessoryGetVolumeControlObjects, + ETFAccessorySetVolumeControlObjects, + ETFAccessoryGetMuteControlObjects, + ETFAccessorySetMuteControlObjects, + ETFAccessoryObjectParseTopology, + ETFAccessoryGetStreamObjects, + ETFAccessorySetStreamObjects, + ETFObjectBaseSerializationTests, + ETFAccessoryGetStreamObjectsFromPolicy, + ETFNotifyObjectAccessoryValueChanged, + ETFFindAndCheckObjectRequest, + ETFSetHdmiObject_PubSub, + ETFGetHdmiObject, + ETFCheckHdmiObject + }; + +enum TTFAccessoryParameterResult + { + ETFEAccUnsupportedConnected = 0, + ETFAccModeHandPortable = 1, + ETFAccModeWiredHeadset = 2, + ETFAccModeWirelessHeadset = 3, + ETFAccModeWiredCarKit = 4, + ETFAccModeWirelessCarKit = 5, + ETFAccModeTextDevice = 6, + ETFAccModeLoopset = 7, + ETFAccModeMusicStand = 8 + }; + + +enum TTFRequestType + { + ReqAccRequestNone =0, + ReqNotifyNewAccessoryConnected =1, + ReqNotifyAccessoryDisconnected =2, + ReqNotifyAccessoryModeChanged =3, + ReqNotifyAccessoryConnectionStatusChanged =4, + ReqAccessoryAudioLinkOpen =5, + ReqNotifyAccessoryAudioLinkOpened =6, + ReqNotifyAccessoryAudioLinkClosed =7, + ReqAccessoryAudioLinkClose =8, + ReqNotifyBluetoothAudioLinkOpenReq =9, + ReqNotifyBluetoothAudioLinkCloseReq =10, + ReqConnectBtAccessory =11, + ReqDisconnectBtAccessory =12, + ReqNotifyBooleanAccessoryValueChanged =13, + ReqNotifyIntegerAccessoryValueChanged =14, + ReqGetAccessoryConnectionStatus =15, + ReqAccessoryConnection =16, + ReqAccessoryDisconnection =17, + ReqNotifyAccessoryValueChanged =18, + ReqGetAccessoryMode =19, + ReqNotifyObjectAccessoryValueChanged =20 + }; + +enum TTFASYReference + { + ETFAsyNone =0, + ETFAsyConn, + ETFAsyDisc, + ETFAsyIntNotify, + ETFAsyBoolNotify, + ETFAsyObjectNotify, + ETFBTALinkClosedNo, + ETFBTALinkOpenedNo, + ETFAsySetCapability, + ETFAsySetBoolValue, + ETFAsyConnOpenCable, + ETFAsyUpdateTVOut, + ETFAsyUpdateHeadset, + ETFAsyConnectECIAccessory, + ETFAsyConnectHeadset, + ETFAsyConnectOpenCable3Poles, + ETFAsyConnUSB, + ETFAsyConnUSB2, + ETFAsyConnHDMI, +#ifdef FF_AUTOMOTIVESTACK + ETFAsyRTPStreamingConn +#endif + }; + + +struct TTFAccessoryTestCaseStateControl + { + TTFAccessoryFunction iAccessoryFunction; + TInt iGid; //defines the index of the gereric ID to be used in TestControl + TInt64 iArg1; + TInt64 iArg2; + TUint32 iArg3; + TInt64 iArg4; //Reserved + TInt iTestCaseID; + TTFASYReference iMethod; + TTFRequestType iRequestType; + TInt iExpectedResult; + TInt iTimer;//Specifies the time which is waited before next state is executed + }; + +struct TTFAccessoryPublishAndSubscribe + { + TInt iTestCaseID; + TTFASYReference iMethod; + TInt64 iParam1; + TUint32 iParam2; + TInt iTimeMs;//0 means that command is server synchronously + TAccPolGenericID iGenericID; + }; + +const TInt KTFErrAccessoryNotificationMissing = -3000; +const TInt KTFErrAccessoryServiceMissing = -4000; +const TInt KTFErrAccessoryUnexpectedStatus = -5000; +const TInt KTFErrAccessoryUnexpectedStatusParameter = -6000; +const TInt KTFErrAccessoryUnexpectedArg1 = -7000; +const TInt KTFErrAccessoryUnexpectedArg2 = -8000; +const TInt KTFErrAccessoryUnexpectedArg3 = -8500; +const TInt KTFErrAccessoryUnexpectedResult = -9000; + + +const TInt64 KBTAddrCarkit = 0x001122334455; +const TInt64 KBTAddrHeadsetHSPAndHFP = 0x112233445566; +const TInt64 KBTAddrHeadsetHSP = 0x223344556677; +const TInt64 KBTAddrHeadsetHFP = 0x334455667788; +const TInt64 KBTAddrHeadsetEmptyPR = 0x445566778899; +const TInt64 KBTAddrHeadsetNokiaSPId = 0x556677889900; +const TInt64 KBTAddrNoResponse = 0x667788990011; +const TInt64 KBTAddrErrCode = 0x778899001122; +const TInt64 KBTAllBitsOn = 0x889900112233; +const TInt64 KBTAddrHeadsetAVRCP = 0x990011223344; +const TInt64 KBTAddrHeadseA2DP = 0x111111111111; + + +const TInt KTFDontDeleteObserver = -999; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestCaseControl.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestCaseControl.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestCaseControl.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,441 +1,441 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES -#include -#include -#include -#include - -#include "siftrace.h" -#include "CtfAccessoryTestControl.h" -#include "CtfAccessoryTestCaseControl.h" -#include "CtfAccessoryTestCaseParamControl.h" - -CTFAccessoryTestCaseParamControl::CTFAccessoryTestCaseParamControl( void ) - { - - } - -void CTFAccessoryTestCaseParamControl::ConstructL( const TTFAccessoryTestCaseStateControl* aStates, - TInt aStateCount ) - { - TRACE_ASSERT( aStates != NULL ); - TRACE_ASSERT( aStateCount> 0 ); - iStates = REINTERPRET_CAST( TTFAccessoryTestCaseStateControl*, User::Alloc( sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ) ); - User::LeaveIfNull( iStates ); - Mem::Copy( iStates, aStates, sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ); - iStateCount = aStateCount; - } - -CTFAccessoryTestCaseParamControl::~CTFAccessoryTestCaseParamControl( void ) - { - User::Free( iStates ); - iStates = NULL; - } - -const TTFAccessoryTestCaseStateControl* CTFAccessoryTestCaseParamControl::States( void ) const - { - return iStates; - } - -TInt CTFAccessoryTestCaseParamControl::StateCount( void ) const - { - return iStateCount; - } - -CTFAccessoryTestCaseControl::CTFAccessoryTestCaseControl( CTFAccessoryTestCaseParamControl* aParameters ) : - CTFStubTestCase( KTFStubTypeAccessoryControl ), iParameters( aParameters ) - { - TRACE_ASSERT( aParameters != NULL ); - if ( aParameters != NULL ) - { - TRACE_ASSERT( aParameters->States() != NULL ); - TRACE_ASSERT( aParameters->StateCount()> 0 ); - } - } - -void CTFAccessoryTestCaseControl::ConstructL( void ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - -CTFAccessoryTestCaseControl::~CTFAccessoryTestCaseControl( void ) - { - delete iParameters; - delete iTimer; - } - -void CTFAccessoryTestCaseControl::Log( TInt /*aDepth*/) - { - } - -void CTFAccessoryTestCaseControl::InitL( void ) - { - iCleanupWait = EFalse; - iCurrentStateIndex = 0; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - iStoredArg1 = KTFErrAccessoryUnexpectedArg1; - iStoredArg2 = KTFErrAccessoryUnexpectedArg1; - iStatusReceive = EFalse; - } - -void CTFAccessoryTestCaseControl::ActiveTestRunL( void ) - { - if( iCleanupWait ) - { - CActiveScheduler::Stop(); - } - else - { - RunL(); - } - } - -void CTFAccessoryTestCaseControl::RunL( void ) - { - TInt result = KErrNone; - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - enter" ) ) ); - - if( ( iCurrentState.iAccessoryFunction != 0 ) ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - CallCurrentAccessoryFunctionL (%d)" ),iCurrentState.iAccessoryFunction ) ); - TRAP( result, CallCurrentAccessoryFunctionL() ); - } - - result = CheckResult( result, EFalse ); - - StartNextState( result ); - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - return" ) ) ); - } - -void CTFAccessoryTestCaseControl::Teardown( void ) - { - // If the test is terminated by a failing stub test case, - // the timer may be left active and thus must be cancelled. - iTimer->Cancel(); - iTimer->After( 100000 ); - iCleanupWait = ETrue; - CActiveScheduler::Start(); - } - -void CTFAccessoryTestCaseControl::DoCompleteTest( TInt aResult ) - { - iTimer->Cancel(); - CompleteTest( aResult ); - } - -void CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL( void ) - { - TRACE_ASSERT( iStub != NULL ); - if ( iStub != NULL ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Stub %x" ), iStub ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->CallAccessoryFunctionL( iCurrentState ); - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Leave - KErrNoStub" ) ) ); - User::Leave( KTFErrNoStub ); - } - } - -CTFAccessoryTestCaseParamControl& CTFAccessoryTestCaseControl::Parameters( void ) - { - return *iParameters; - } - -TTFAccessoryFunction CTFAccessoryTestCaseControl::CurrentAccessoryFunction( void ) const - { - return iCurrentState.iAccessoryFunction; - } - -TInt CTFAccessoryTestCaseControl::CurrentArg1( void ) const - { - return iCurrentState.iArg1; - } - -TInt CTFAccessoryTestCaseControl::CurrentStateIndex( void ) const - { - return iCurrentStateIndex; - } - -CTFATestTimer* CTFAccessoryTestCaseControl::Timer( void ) - { - return iTimer; - } - -void CTFAccessoryTestCaseControl::StartNextState( TInt aResult ) - { - if( aResult != /*iParameters->States()[iCurrentStateIndex].iExpectedResult*/KErrNone ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case failed: %d" ), aResult ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Failed state: %d" ), iCurrentStateIndex) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( aResult ); - } - else if( iCurrentStateIndex == iParameters->StateCount() - 1 ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case complete" ) ) ); - DoCompleteTest( KErrNone ); - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Starting state %d" ), iCurrentStateIndex ) ); - if( !iTimer->IsActive() ) - { - iTimer->After( iCurrentState.iTimer ); - } - iCurrentStateIndex++; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - } - } - -// Checks that the test results are expected: -// - iExpectedResult matches unless IgnoreResult flag is set -// - Test parameters match unless IgnoreParameters flag is set -TInt CTFAccessoryTestCaseControl::CheckResult( TInt aResult, TBool /*isCompleted*/) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult(%d)" ), aResult ) ); - TInt result( KErrNone ); - - if( aResult == KErrNotSupported ) - { - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - result = KErrNotSupported; - } - else if( aResult == KTFDontDeleteObserver ) - { - result = KErrNone; - } - else - { - result = aResult; - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult - result: %d" ), result ) ); - return result; - } - -// -// Check request result -// -void CTFAccessoryTestCaseControl::CheckRequest( TRequestStatus aStatus, TInt64 aValue, TUint32& aCapability, TInt* aErr ) - { - - TTFAccessoryTestCaseStateControl aCurrentState = - iParameters->States()[iCurrentStateIndex]; - - if( ( aStatus != KRequestPending ) && - ( aStatus == aCurrentState.iExpectedResult ) ) - { - - if( aCapability ) - { - if( iParameters->States()[iCurrentStateIndex].iArg3 == aCapability ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); - } - } - - if( iParameters->States()[iCurrentStateIndex].iArg1 != aValue ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg1 received" ), iParameters->States()[iCurrentStateIndex].iArg1, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg1 ); - } - - - } - else - { - if(aStatus == KRequestPending) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - if(aErr != NULL) - { - (*aErr) = KTFDontDeleteObserver; - } - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Other than KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - if( aCurrentState.iArg1 == KTFDontDeleteObserver ) - { - //OK, This means that this message shouldn't be received - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); - } - } - } - -} - -void CTFAccessoryTestCaseControl::CheckObjectRequest( TRequestStatus aStatus, - TAccValueTypeObject& aValue, - TUint32& aCapability ) - { - - TTFAccessoryTestCaseStateControl currentState = - iParameters->States()[iCurrentStateIndex]; - - if( ( aStatus != KRequestPending ) && - ( aStatus == currentState.iExpectedResult ) ) - { - - if( aCapability ) - { - if( currentState.iArg3 == aCapability ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); - } - } - else - { - CAccPolObjectCon* conFromASY = NULL; - CAccPolObjectCon* conFromPS = NULL; - switch( currentState.iArg3 ) - { - case KAccAudioUnits: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccAudioUnits" ) ) ); - conFromASY = CAccPolAudioTopologyObjectCon::NewLC(); - conFromPS = CAccPolAudioTopologyObjectCon::NewLC(); - break; - } - case KAccVideoHdmiAttributes: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoHdmiAttributes" ) ) ); - conFromASY = CAccPolHdmiObjectCon::NewLC(); - conFromPS = CAccPolHdmiObjectCon::NewLC(); - break; - } - case KAccVideoFormat: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoFormat" ) ) ); - conFromASY = CAccPolHdmiObjectCon::NewLC(); - conFromPS = CAccPolHdmiObjectCon::NewLC(); - break; - } - default: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Unknown name!" ) ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - break; - } - } - - // Get object container from ASY - RDesReadStream readStream( aValue.iValue ); - readStream.PushL(); - conFromASY->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - - // Get object container from P&S - CBufFlat* valueBuf = CBufFlat::NewL( 50 ); - CleanupStack::PushL( valueBuf ); - valueBuf->ResizeL( 256 ); - TPtr8 valueBufPtr( valueBuf->Ptr( 0 ) ); - TInt err = RProperty::Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - valueBufPtr ); - if( err == KErrNone ) - { - readStream.Open( valueBufPtr ); - readStream.PushL(); - conFromPS->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - } - else - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Failed to read P&S cat=KTFAccessoryTestProperty, key=KTFAccessoryObjectMethod, err=%d" ), err ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - - // Validate: object count - if( conFromASY->Count() != conFromPS->Count() ) - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - - // Validate: Capability specific check - switch( currentState.iArg3 ) - { - case KAccVideoFormat: - { - // Check that video object can be found - CAccPolHdmiObjectCon* con = - static_cast( conFromASY ); - RAccPolHdmiVideoFormatArray array; - CleanupClosePushL( array ); - con->GetHdmiVideoFormatObjectsL( array ); - if( !array.Count() ) - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - CleanupStack::PopAndDestroy( &array ); - break; - } - default: - { - break; - } - } - - // Clean up - CleanupStack::PopAndDestroy( valueBuf ); - CleanupStack::PopAndDestroy( conFromPS ); - CleanupStack::PopAndDestroy( conFromASY ); - } - } - else - { - if( currentState.iArg1 == KTFDontDeleteObserver ) - { - //OK, This means that this message shouldn't be received - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), currentState.iAccessoryFunction, currentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); - } - } - } - +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES +#include +#include +#include +#include + +#include "siftrace.h" +#include "CtfAccessoryTestControl.h" +#include "CtfAccessoryTestCaseControl.h" +#include "CtfAccessoryTestCaseParamControl.h" + +CTFAccessoryTestCaseParamControl::CTFAccessoryTestCaseParamControl( void ) + { + + } + +void CTFAccessoryTestCaseParamControl::ConstructL( const TTFAccessoryTestCaseStateControl* aStates, + TInt aStateCount ) + { + TRACE_ASSERT( aStates != NULL ); + TRACE_ASSERT( aStateCount> 0 ); + iStates = REINTERPRET_CAST( TTFAccessoryTestCaseStateControl*, User::Alloc( sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ) ); + User::LeaveIfNull( iStates ); + Mem::Copy( iStates, aStates, sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ); + iStateCount = aStateCount; + } + +CTFAccessoryTestCaseParamControl::~CTFAccessoryTestCaseParamControl( void ) + { + User::Free( iStates ); + iStates = NULL; + } + +const TTFAccessoryTestCaseStateControl* CTFAccessoryTestCaseParamControl::States( void ) const + { + return iStates; + } + +TInt CTFAccessoryTestCaseParamControl::StateCount( void ) const + { + return iStateCount; + } + +CTFAccessoryTestCaseControl::CTFAccessoryTestCaseControl( CTFAccessoryTestCaseParamControl* aParameters ) : + CTFStubTestCase( KTFStubTypeAccessoryControl ), iParameters( aParameters ) + { + TRACE_ASSERT( aParameters != NULL ); + if ( aParameters != NULL ) + { + TRACE_ASSERT( aParameters->States() != NULL ); + TRACE_ASSERT( aParameters->StateCount()> 0 ); + } + } + +void CTFAccessoryTestCaseControl::ConstructL( void ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + +CTFAccessoryTestCaseControl::~CTFAccessoryTestCaseControl( void ) + { + delete iParameters; + delete iTimer; + } + +void CTFAccessoryTestCaseControl::Log( TInt /*aDepth*/) + { + } + +void CTFAccessoryTestCaseControl::InitL( void ) + { + iCleanupWait = EFalse; + iCurrentStateIndex = 0; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + iStoredArg1 = KTFErrAccessoryUnexpectedArg1; + iStoredArg2 = KTFErrAccessoryUnexpectedArg1; + iStatusReceive = EFalse; + } + +void CTFAccessoryTestCaseControl::ActiveTestRunL( void ) + { + if( iCleanupWait ) + { + CActiveScheduler::Stop(); + } + else + { + RunL(); + } + } + +void CTFAccessoryTestCaseControl::RunL( void ) + { + TInt result = KErrNone; + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - enter" ) ) ); + + if( ( iCurrentState.iAccessoryFunction != 0 ) ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - CallCurrentAccessoryFunctionL (%d)" ),iCurrentState.iAccessoryFunction ) ); + TRAP( result, CallCurrentAccessoryFunctionL() ); + } + + result = CheckResult( result, EFalse ); + + StartNextState( result ); + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - return" ) ) ); + } + +void CTFAccessoryTestCaseControl::Teardown( void ) + { + // If the test is terminated by a failing stub test case, + // the timer may be left active and thus must be cancelled. + iTimer->Cancel(); + iTimer->After( 100000 ); + iCleanupWait = ETrue; + CActiveScheduler::Start(); + } + +void CTFAccessoryTestCaseControl::DoCompleteTest( TInt aResult ) + { + iTimer->Cancel(); + CompleteTest( aResult ); + } + +void CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL( void ) + { + TRACE_ASSERT( iStub != NULL ); + if ( iStub != NULL ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Stub %x" ), iStub ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->CallAccessoryFunctionL( iCurrentState ); + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Leave - KErrNoStub" ) ) ); + User::Leave( KTFErrNoStub ); + } + } + +CTFAccessoryTestCaseParamControl& CTFAccessoryTestCaseControl::Parameters( void ) + { + return *iParameters; + } + +TTFAccessoryFunction CTFAccessoryTestCaseControl::CurrentAccessoryFunction( void ) const + { + return iCurrentState.iAccessoryFunction; + } + +TInt CTFAccessoryTestCaseControl::CurrentArg1( void ) const + { + return iCurrentState.iArg1; + } + +TInt CTFAccessoryTestCaseControl::CurrentStateIndex( void ) const + { + return iCurrentStateIndex; + } + +CTFATestTimer* CTFAccessoryTestCaseControl::Timer( void ) + { + return iTimer; + } + +void CTFAccessoryTestCaseControl::StartNextState( TInt aResult ) + { + if( aResult != /*iParameters->States()[iCurrentStateIndex].iExpectedResult*/KErrNone ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case failed: %d" ), aResult ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Failed state: %d" ), iCurrentStateIndex) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( aResult ); + } + else if( iCurrentStateIndex == iParameters->StateCount() - 1 ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case complete" ) ) ); + DoCompleteTest( KErrNone ); + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Starting state %d" ), iCurrentStateIndex ) ); + if( !iTimer->IsActive() ) + { + iTimer->After( iCurrentState.iTimer ); + } + iCurrentStateIndex++; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + } + } + +// Checks that the test results are expected: +// - iExpectedResult matches unless IgnoreResult flag is set +// - Test parameters match unless IgnoreParameters flag is set +TInt CTFAccessoryTestCaseControl::CheckResult( TInt aResult, TBool /*isCompleted*/) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult(%d)" ), aResult ) ); + TInt result( KErrNone ); + + if( aResult == KErrNotSupported ) + { + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + result = KErrNotSupported; + } + else if( aResult == KTFDontDeleteObserver ) + { + result = KErrNone; + } + else + { + result = aResult; + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult - result: %d" ), result ) ); + return result; + } + +// +// Check request result +// +void CTFAccessoryTestCaseControl::CheckRequest( TRequestStatus aStatus, TInt64 aValue, TUint32& aCapability, TInt* aErr ) + { + + TTFAccessoryTestCaseStateControl aCurrentState = + iParameters->States()[iCurrentStateIndex]; + + if( ( aStatus != KRequestPending ) && + ( aStatus == aCurrentState.iExpectedResult ) ) + { + + if( aCapability ) + { + if( iParameters->States()[iCurrentStateIndex].iArg3 == aCapability ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); + } + } + + if( iParameters->States()[iCurrentStateIndex].iArg1 != aValue ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg1 received" ), iParameters->States()[iCurrentStateIndex].iArg1, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg1 ); + } + + + } + else + { + if(aStatus == KRequestPending) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + if(aErr != NULL) + { + (*aErr) = KTFDontDeleteObserver; + } + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Other than KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + if( aCurrentState.iArg1 == KTFDontDeleteObserver ) + { + //OK, This means that this message shouldn't be received + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); + } + } + } + +} + +void CTFAccessoryTestCaseControl::CheckObjectRequest( TRequestStatus aStatus, + TAccValueTypeObject& aValue, + TUint32& aCapability ) + { + + TTFAccessoryTestCaseStateControl currentState = + iParameters->States()[iCurrentStateIndex]; + + if( ( aStatus != KRequestPending ) && + ( aStatus == currentState.iExpectedResult ) ) + { + + if( aCapability ) + { + if( currentState.iArg3 == aCapability ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); + } + } + else + { + CAccPolObjectCon* conFromASY = NULL; + CAccPolObjectCon* conFromPS = NULL; + switch( currentState.iArg3 ) + { + case KAccAudioUnits: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccAudioUnits" ) ) ); + conFromASY = CAccPolAudioTopologyObjectCon::NewLC(); + conFromPS = CAccPolAudioTopologyObjectCon::NewLC(); + break; + } + case KAccVideoHdmiAttributes: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoHdmiAttributes" ) ) ); + conFromASY = CAccPolHdmiObjectCon::NewLC(); + conFromPS = CAccPolHdmiObjectCon::NewLC(); + break; + } + case KAccVideoFormat: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoFormat" ) ) ); + conFromASY = CAccPolHdmiObjectCon::NewLC(); + conFromPS = CAccPolHdmiObjectCon::NewLC(); + break; + } + default: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Unknown name!" ) ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + break; + } + } + + // Get object container from ASY + RDesReadStream readStream( aValue.iValue ); + readStream.PushL(); + conFromASY->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + + // Get object container from P&S + CBufFlat* valueBuf = CBufFlat::NewL( 50 ); + CleanupStack::PushL( valueBuf ); + valueBuf->ResizeL( 256 ); + TPtr8 valueBufPtr( valueBuf->Ptr( 0 ) ); + TInt err = RProperty::Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + valueBufPtr ); + if( err == KErrNone ) + { + readStream.Open( valueBufPtr ); + readStream.PushL(); + conFromPS->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + } + else + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Failed to read P&S cat=KTFAccessoryTestProperty, key=KTFAccessoryObjectMethod, err=%d" ), err ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + + // Validate: object count + if( conFromASY->Count() != conFromPS->Count() ) + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + + // Validate: Capability specific check + switch( currentState.iArg3 ) + { + case KAccVideoFormat: + { + // Check that video object can be found + CAccPolHdmiObjectCon* con = + static_cast( conFromASY ); + RAccPolHdmiVideoFormatArray array; + CleanupClosePushL( array ); + con->GetHdmiVideoFormatObjectsL( array ); + if( !array.Count() ) + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + CleanupStack::PopAndDestroy( &array ); + break; + } + default: + { + break; + } + } + + // Clean up + CleanupStack::PopAndDestroy( valueBuf ); + CleanupStack::PopAndDestroy( conFromPS ); + CleanupStack::PopAndDestroy( conFromASY ); + } + } + else + { + if( currentState.iArg1 == KTFDontDeleteObserver ) + { + //OK, This means that this message shouldn't be received + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), currentState.iAccessoryFunction, currentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); + } + } + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControl.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControl.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControl.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4698 +1,4698 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES - -#include -#include -#include -#include "siftrace.h" -#include "CtfAccessoryTestcontrol.h" -#include "CtfAccessoryTestCaseControl.h" -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include "AccClientServerMessages.h" -#include - -#include -#include - -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl* GetAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl* GetAccessoryTestControl( void ) - { - CTFStub* stub = CTFFactory::Stub( KTFStubTypeAccessoryControl ); - return STATIC_CAST( CTFAccessoryTestControl*, stub ); - } -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl::MTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl::MTFAccessoryTestControl( void ) - { - } -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl::~MTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl::~MTFAccessoryTestControl( void ) - { - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -CTFAccessoryTestControl::CTFAccessoryTestControl( void ) : - CTFRemoteStub( KTFStubTypeAccessoryControl ), - iStack( CTFTestControlObserver::iOffset ), iStackIter( iStack ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl()" ) ) ); - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl() - return" ) ) ); - } - -//lint -e1740 Pointer not directly deleted by destructor -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::~CTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -CTFAccessoryTestControl::~CTFAccessoryTestControl( void ) - { - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl()" ) ) ); - RProperty::Delete( KTFAccessoryTestProperty, KTFAccessoryMethod ); - - ResetAccessoryServices(); - - iAccessoryServer.Disconnect(); - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl() - Accessory Server connection closed" ) ) ); - - } -//lint +e1740 -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::InitializeL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::InitializeL( void ) - { - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - enter" ) ) ); - TInt retval( KErrNone ); - - iAccessoryConnection = NULL; - iAccessorySingleConnection = NULL; - iAccessoryControl = NULL; - iAccessorySettings = NULL; - iAccessoryMode = NULL; - iAccessoryAudioControl = NULL; - iAccessoryBTControl = NULL; - - iStreamContainer = NULL; - iTopologyContainer = NULL; - iSpeakerRightVolume = NULL; - iSpeakerLeftVolume = NULL; - iSpeakerMute = NULL; - iMicRightVolume = NULL; - iMicLeftVolume = NULL; - - TAccPolGenericID emptyInstance; - for( TInt i( 0 ); i < 10; i++ ) - { - iGenericId[i] = emptyInstance; - } - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL()" ) ) ); - - User::LeaveIfError( iAccessoryServer.Connect() ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL() - Connected to accessory server" ) ) ); - - retval = RProperty::Define( KTFAccessoryTestProperty, - KTFAccessoryMethod, - RProperty::EByteArray ); - if( retval != KErrAlreadyExists ) - User::LeaveIfError( retval ); - //attach to property - - - RProperty systemState; - User::LeaveIfError( systemState.Attach( KPSUidStartup, KPSGlobalSystemState ) ); - TInt value( KErrNone ); - //check value - TInt err = systemState.Get( value ); - - if( err != KErrNone ) - { - err = systemState.Define( KPSUidStartup, - KPSGlobalSystemState, - RProperty::EInt ); - TInt err = systemState.Get( value ); - } - - if( value != ESwStateNormalRfOn || value != ESwStateNormalRfOff || value - != ESwStateNormalBTSap ) - { - TInt err = systemState.Set( KPSUidStartup, - KPSGlobalSystemState, - ESwStateNormalRfOn ); - } - - iInitialized = ETrue; - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL - return" ) ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ResetAccessoryServices -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ResetAccessoryServices( void ) - { - ResetAccessoryServer(); - - iInitialized = EFalse; - - iAccessoryServer.Close(); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ResetAccessoryServer -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ResetAccessoryServer( void ) - { - - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer()" ) ) ); - - CTFTestControlObserver* observerItem; - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( observerItem = iStackIter++ ) != NULL ) - { - observerItem->Cancel(); - User::After( 2000000 ); - iStack.Remove( *observerItem ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Remove Observer" ) ) ); - delete observerItem; - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Delete Observer" ) ) ); - }; - } - - iStack.Reset(); - - TAccPolGenericID emptyInstance; - - for( TInt i( 0 ); i < 10; i++ ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Clear instances" ) ) ); - if( KErrNotFound != iGenericId[i].UniqueID() ) - { - if( iGenericId[i].PhysicalConnectionCaps( KPCBluetooth ) ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Found" ) ) ); - TBTDevAddr BTDevAddr( iGenericId[i].DeviceAddress() ); - if( iAccessoryBTControl != NULL ) - { - TRequestStatus status; - status = KRequestPending; - iAccessoryBTControl->DisconnectAccessory( status, BTDevAddr ); - User::WaitForRequest( status ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Disconnected" ) ) ); - } - } - else - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Found" ) ) ); - TPckgBuf buf; - buf().iMethod = ETFAsyDisc; - User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, - KTFAccessoryMethod, - buf ) ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Disconnected" ) ) ); - } - } - iGenericId[i] = emptyInstance; - } - - if( iAccessoryConnection != NULL ) - { - iAccessoryConnection->CloseSubSession(); - delete iAccessoryConnection; - iAccessoryConnection = NULL; - } - - if( iAccessorySingleConnection != NULL ) - { - iAccessorySingleConnection->CloseSubSession(); - delete iAccessorySingleConnection; - iAccessorySingleConnection = NULL; - } - if( iAccessoryControl != NULL ) - { - iAccessoryControl->CloseSubSession(); - delete iAccessoryControl; - iAccessoryControl = NULL; - } - if( iAccessorySettings != NULL ) - { - iAccessorySettings->CloseSubSession(); - delete iAccessorySettings; - iAccessorySettings = NULL; - } - if( iAccessoryMode != NULL ) - { - iAccessoryMode->CloseSubSession(); - delete iAccessoryMode; - iAccessoryMode = NULL; - } - - if( iAccessoryAudioControl != NULL ) - { - iAccessoryAudioControl->CloseSubSession(); - delete iAccessoryAudioControl; - iAccessoryAudioControl = NULL; - } - - if( iAccessoryBTControl != NULL ) - { - iAccessoryBTControl->CloseSubSession(); - delete iAccessoryBTControl; - iAccessoryBTControl = NULL; - } - - if( iSpeakerRightVolume != NULL ) - { - delete iSpeakerRightVolume; - iSpeakerRightVolume = NULL; - } - - if( iSpeakerLeftVolume != NULL ) - { - delete iSpeakerLeftVolume; - iSpeakerLeftVolume = NULL; - } - - if( iSpeakerMute != NULL ) - { - delete iSpeakerMute; - iSpeakerMute = NULL; - } - - if( iMicRightVolume != NULL ) - { - delete iMicRightVolume; - iMicRightVolume = NULL; - } - - if( iMicLeftVolume != NULL ) - { - delete iMicLeftVolume; - iMicLeftVolume = NULL; - } - - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer() - Success" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CancelOutStandingRequest -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CancelOutStandingRequest() - { - iObserverItem->Cancel(); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::FillObjectL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::FillObjectL( CAccPolAudioStreamFormatCon* aContainer, - TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects ) - { - - for( TInt i = 0; i < aNumberOfObjects; i++ ) - { - switch( aobjectType ) - { - case EAccPolAudioInputStreamObject: - { - CAccPolAudioStreamFormat* stream = - CAccPolAudioStreamFormat::NewLC( aobjectType, - i, - KUidFormatPCM16, - CAccPolAudioStreamFormat::EStereo, - CAccPolAudioStreamFormat::EBitsPerSample16, - i + 200 ); - aContainer->AddL( *stream ); - CleanupStack::PopAndDestroy( stream ); - } - break; - - case EAccPolAudioOutputStreamObject: - { - - CAccPolAudioStreamFormat - * stream = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioOutputStreamObject ); - - stream->SetUnitId( i ); - stream->SetAudioFormat( KUidFormatPCM16 ); - stream->SetStreamType( CAccPolAudioStreamFormat::EMono ); - stream->SetBitResolution( CAccPolAudioStreamFormat::EBitsPerSample32 ); - stream->SetSamFreq( i + 200 ); - - aContainer->AddL( *stream ); - CleanupStack::PopAndDestroy( stream ); - } - break; - - default: - { - TRACE_ASSERT_ALWAYS; - } - break; - } - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateObjectPubSub -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateObjectPubSubL( TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects, - TStreamConObjectType aobjectType2, - TInt64 aNumberOfObjects2 ) - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - CAccPolAudioStreamFormatCon* container = - CAccPolAudioStreamFormatCon::NewLC(); - - FillObjectL( container, aobjectType, aNumberOfObjects ); - FillObjectL( container, aobjectType2, aNumberOfObjects2 ); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize container to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - container->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - TPtr8 ptr( buf->Ptr( 0 ) ); - - TInt retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( container ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateObjectPubSub -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateTopologyObjectsToPubSubL( - TTFAccessoryTestCaseStateControl& aParameter ) - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - CAccPolAudioTopologyObjectCon* aObject = - CAccPolAudioTopologyObjectCon::NewLC(); - - //Speaker - //OT-3 - CAccPolOutputTerminal* OT3 = CAccPolOutputTerminal::NewLC( 3, - CAccPolOutputTerminal::EAPTHeadphone, - 2 ); - //Connected to FU-2 - aObject->AddL( *OT3 ); - - //FU2 - CAccPolFeatureUnit* FU2 = CAccPolFeatureUnit::NewLC( 2, 8 ); - // Volume control object. - CAccPolVolumeControl* speakerRightVolume = - CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* speakerLeftVolume = - CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); - - CAccPolMuteControl* speakermute = - CAccPolMuteControl::NewLC( KAccMasterChannel, ETrue ); - - FU2->AddControlL( *speakerRightVolume ); - FU2->AddControlL( *speakerLeftVolume ); - FU2->AddControlL( *speakermute ); - - //Connected to MU-8 - aObject->AddL( *FU2 ); - - CAccPolMixerUnit* MU8 = CAccPolMixerUnit::NewLC( 8 ); - MU8->AddSourceIdL( 1 ); - MU8->AddSourceIdL( 7 ); - - //Connected to IT1 and FU7 - aObject->AddL( *MU8 ); - - //Choice one - //IT-1 - TUint8 aChannelCount = 2; - TUint16 aChannelConfig = 0; - aChannelConfig = aChannelConfig | KAccRightFrontChannel; - aChannelConfig = aChannelConfig | KAccLeftFrontChannel; - - CAccPolInputTerminal* IT1 = CAccPolInputTerminal::NewLC( 1, - CAccPolInputTerminal::EAPTStream, - aChannelCount, - aChannelConfig ); - aObject->AddL( *IT1 ); - - //choice two - //FU7 - CAccPolFeatureUnit* FU7 = CAccPolFeatureUnit::NewLC( 7, 5 ); //Connected to FU5 - // Volume control object. - CAccPolVolumeControl* sidetoneRightVolume = - CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* sidetoneLeftVolume = - CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); - - FU7->AddControlL( *sidetoneRightVolume ); - FU7->AddControlL( *sidetoneLeftVolume ); - - aObject->AddL( *FU7 ); - - //Microphone - //IT-4 - - //OT-6 - CAccPolOutputTerminal* OT6 = CAccPolOutputTerminal::NewLC( 6, - CAccPolOutputTerminal::EAPTStream, - 10 ); - //Connected to SU-10 - aObject->AddL( *OT6 ); - - //SU-10 - CAccPolSelectorUnit* SU10 = CAccPolSelectorUnit::NewLC( 10, 1 ); - - // Connected to FU 5 - SU10->AddSourceIdL( 5 ); - aObject->AddL( *SU10 ); - - //FU5 - CAccPolFeatureUnit* FU5 = CAccPolFeatureUnit::NewLC( 5, 9 ); - - // Volume control object. - CAccPolVolumeControl* micRightVolume = - CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* micLeftVolume = - CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); - CAccPolMuteControl* micmute = CAccPolMuteControl::NewLC( KAccMasterChannel, - ETrue ); - - FU5->AddControlL( *micRightVolume ); - FU5->AddControlL( *micLeftVolume ); - FU5->AddControlL( *micmute ); - - //Connected to FU-9 - aObject->AddL( *FU5 ); - - ///FU9 - CAccPolFeatureUnit* FU9 = CAccPolFeatureUnit::NewLC( 9, 4 ); - //Connected IT-4 - aObject->AddL( *FU9 ); - - CAccPolInputTerminal* IT4 = CAccPolInputTerminal::NewLC( 4, - CAccPolInputTerminal::EAPTMicrophone, - aChannelCount, - aChannelConfig ); - aObject->AddL( *IT4 ); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize container to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - aObject->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - TInt retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - // Notify ASY stub - if( aParameter.iArg2 ) - { - PublishAndSubscribeL( aParameter ); - } - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( IT4 ); - CleanupStack::PopAndDestroy( FU9 ); - CleanupStack::PopAndDestroy( micmute ); - CleanupStack::PopAndDestroy( micLeftVolume ); - CleanupStack::PopAndDestroy( micRightVolume ); - CleanupStack::PopAndDestroy( FU5 ); - CleanupStack::PopAndDestroy( SU10 ); - CleanupStack::PopAndDestroy( OT6 ); - CleanupStack::PopAndDestroy( sidetoneLeftVolume ); - CleanupStack::PopAndDestroy( sidetoneRightVolume ); - CleanupStack::PopAndDestroy( FU7 ); - CleanupStack::PopAndDestroy( IT1 ); - CleanupStack::PopAndDestroy( MU8 ); - CleanupStack::PopAndDestroy( speakermute ); - CleanupStack::PopAndDestroy( speakerLeftVolume ); - CleanupStack::PopAndDestroy( speakerRightVolume ); - CleanupStack::PopAndDestroy( FU2 ); - CleanupStack::PopAndDestroy( OT3 ); - CleanupStack::PopAndDestroy( aObject ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CallAccessoryFunctionL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) - { - - // COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CallAccessoryFunctionL(%d, %d, %d)" ), aParameter.iAccessoryFunction, aParameter.iArg1, aParameter.iArg2 ) ); - if( !iInitialized ) - { - InitializeL(); - } - - TInt retval = KTFErrAccessoryServiceMissing; - - switch( aParameter.iAccessoryFunction ) - { - case ETFAccessorySet_ObjectPubSub: - { - CreateObjectPubSubL( ( TStreamConObjectType )aParameter.iArg1, - aParameter.iArg2, - ( TStreamConObjectType )aParameter.iArg3, - aParameter.iArg4 ); - retval = KErrNone; - } - break; - - case ETFAccessorySet_TopologyObjectsPubSub: - { - CreateTopologyObjectsToPubSubL( aParameter ); - retval = KErrNone; - } - break; - - case ETFAccessorySet_PubSub: - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryNotifierMethod, - RProperty::EInt ); - retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryNotifierMethod, - aParameter.iArg1 ); - } - break; - - case ETFConnectWiredAccessory: - { - PublishAndSubscribeL( aParameter ); - retval = KErrNone; - } - break; - - case ETFClearStack: - { - CTFTestControlObserver* observerItem; - TInt count = 0; - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( observerItem = iStackIter++ ) != NULL ) - { - observerItem->Cancel(); - iStack.Remove( *observerItem ); - delete observerItem; - count++; - }; - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::ETF_Pappa - count=%d " ), count ) ); - retval = KErrNone; - } - break; - - case ETFDisconnectWiredAccessory: - { - retval = KErrNone; - PublishAndSubscribeL( aParameter ); - TAccPolGenericID emptyInstance; - iGenericId[aParameter.iGid] = emptyInstance; - } - break; - - case ETFCheckCapabilityGroup: - { - if( aParameter.iArg2 - == iGenericId[aParameter.iGid].SubblockCaps( aParameter.iArg3 ) ) - { - retval = KErrNone; - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFCheckCapability: - { - RAccessoryConnection accessoryConnectionn; - accessoryConnectionn.CreateSubSession( iAccessoryServer ); - - CAccPolSubblockNameArray* nameArrayy = - CAccPolSubblockNameArray::NewL(); - CleanupStack::PushL( nameArrayy ); - accessoryConnectionn.GetSubblockNameArrayL( iGenericId[aParameter.iGid], - *nameArrayy ); - - if( aParameter.iArg2 == nameArrayy->HasName( aParameter.iArg3 ) ) - { - retval = KErrNone; - } - else - { - retval = KErrNotFound; - } - - CleanupStack::PopAndDestroy( nameArrayy ); - accessoryConnectionn.CloseSubSession(); - } - break; - - case ETFFindAndCheckRequest: - - { - FindAndCheckRequestL(&retval, aParameter); - } - break; - - case ETFFindAndCheckObjectRequest: - { - CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); - TRACE_ASSERT( testCase != NULL ); - if( testCase != NULL ) - { - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( iObserverItem = iStackIter++ ) != NULL ) - { - if( iObserverItem->FindRequest( aParameter.iRequestType ) ) - { - testCase->CheckObjectRequest( iObserverItem->iStatus, - iObserverItem->iObjectValue, - iObserverItem->iCapabilityName ); - - if( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() - { - if( KTFDontDeleteObserver != aParameter.iArg1 ) - { - iStack.Remove( *iObserverItem ); - delete iObserverItem; - return; - } - else - { - User::Leave( KTFDontDeleteObserver ); - } - } - else - { - retval = KErrGeneral; - } - } - } - } - else - { - retval = KErrGeneral; - } - } - - retval = KErrNone; - } - break; - - // - // Accessory Connection - // - case ETFAccessoryConnection_Open: - { - AccessoryConnectionOpenClose(ETFAccessoryConnection_Open, &retval); - } - break; - - case ETFAccessoryConnection_Close: - - { - AccessoryConnectionOpenClose(ETFAccessoryConnection_Close, &retval); - } - break; - - // - // Accessory Settings - // - case ETFAccessorySettings_Open: - { - AccessorySettingsOpenClose(ETFAccessorySettings_Open, &retval); - } - break; - - case ETFAccessorySettings_Close: - { - AccessorySettingsOpenClose(ETFAccessorySettings_Close, &retval); - } - break; - - case ETFSetHWDeviceSettings: - { - retval - = iAccessorySettings->SetHWDeviceSettingsL( aParameter.iArg1, - ( TBool )aParameter.iArg2 ); - } - break; - - case ETFGetHWDeviceSettings: - { - TUint32 aSettingsValue( 0 ); - retval = iAccessorySettings->GetHWDeviceSettings( aSettingsValue ); - - if( aSettingsValue != aParameter.iArg1 ) - { - retval = KErrArgument; - } - } - break; - - case ETFGetSupportedHWDeviceSettings: - { - TUint32 aSettingsSupportedValue( 0 ); - - retval - = iAccessorySettings->GetSupportedHWDeviceSettings( aSettingsSupportedValue ); - - if( aSettingsSupportedValue != ( aParameter.iArg1 - | aParameter.iArg2 ) ) - { - retval = KErrArgument; - } - } - break; - - case ETFSetIntAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - //Set Lights - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTInt( aParameter.iArg4 ); - - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFSetBoolAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - //Set Lights - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTBool( aParameter.iArg4 ); - - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFSetDesAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - TBuf buf; - buf.Num( aParameter.iArg3 ); - // buf.Copy( *aParameter.iArg3 ); - - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTDes( buf ); - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFGetIntAccessoryModeSetting: - { - TInt aSettingsValueInt; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingInt ) - { - retval = aSetting.GetTInt( aSettingsValueInt ); - - if( retval != KErrNotFound ) - { - if( aSettingsValueInt == aParameter.iArg4 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFGetBoolAccessoryModeSetting: - { - TBool aSettingsValueBool; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingBool ) - { - retval = aSetting.GetTBool( aSettingsValueBool ); - - if( retval != KErrNotFound ) - { - if( aSettingsValueBool == ( TBool )aParameter.iArg4 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFGetDesAccessoryModeSetting: - { - TBuf aSettingsValueDes; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingDes ) - { - retval = aSetting.GetTDes( aSettingsValueDes ); - - if( retval != KErrNotFound ) - { - TBuf buffer; - buffer.Num( aParameter.iArg3 ); - if( KErrNone == aSettingsValueDes.Compare( buffer ) ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFSetSeveralAccessoryModeSetting: - { - - TAccModeSetting accModeSettingIn; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 1 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "012345678901234567890" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( ETrue ); - arrayIn.AddSetting( accModeSettingIn ); - - retval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, - arrayIn ); - - } - break; - - case ETFGetSeveralAccessoryModeSetting: - { - - TAccModeSetting accModeSettingOut; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf aDesOut; - TAccModeSettingArray arrayOut; - TInt intOut( 0 ); - // set input parameters for GetAccessoryModeSettings() - // setting 11 - accModeSettingOut.SetId( 11 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 12 - accModeSettingOut.SetId( 12 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 13 - accModeSettingOut.SetId( 13 ); - arrayOut.AddSetting( accModeSettingOut ); - - retval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, - arrayOut ); - - // Check that got settings are right - - TInt count = arrayOut.GetArraySize(); - TInt foundCount( 0 ); - - for( TInt index = 0; index < count; index++ ) - { - arrayOut.GetSetting( index, accModeSettingOut ); - - if( 11 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTInt( intOut ); - - if( 1 == intOut ) - { - foundCount++; - } - } - - if( 12 == accModeSettingOut.Id() ) - { - accModeSettingOut.GetTDes( aDesOut ); - - if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) - { - foundCount++; - } - - } - - if( 13 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTBool( intOut ); - - if( intOut ) - { - foundCount++; - } - } - } - - if( foundCount != 3 ) - { - retval = KErrNotFound; - } - - // - // Reset Settings - // - TAccModeSetting accModeSettingIn; - TBuf aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 0 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( EFalse ); - arrayIn.AddSetting( accModeSettingIn ); - - iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - } - break; - - // - // Accessory Single Connection - // - case ETFAccessorySingleConnection_Open: - { - if( iAccessorySingleConnection == NULL ) - { - iAccessorySingleConnection - = new ( ELeave ) RAccessorySingleConnection; - retval - = iAccessorySingleConnection->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySingleConnection_Close: - { - TRACE_ASSERT( iAccessorySingleConnection != NULL ); - - if( iAccessorySingleConnection != NULL ) - { - iAccessorySingleConnection->CloseSubSession(); - delete iAccessorySingleConnection; - iAccessorySingleConnection = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyNewAccessoryConnected: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyNewAccessoryConnected( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryDisconnected: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryDisconnected( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFNotifyIntAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyIntegerAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFNotifyBoolAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBooleanAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFNotifyObjectAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyObjectAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryIntGetValue: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt aIntValue; - - iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], - aNameRecord, - aIntValue ); - - if( aIntValue.iValue == aParameter.iArg2 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - break; - - case ETFAccessoryBoolGetValue: - { - RAccessoryConnection accessoryConnection; - accessoryConnection.CreateSubSession( iAccessoryServer ); - - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool boolValue; - retval - = accessoryConnection.GetValueL( iGenericId[aParameter.iGid], - nameRecord, - boolValue ); - - if( boolValue.iValue != aParameter.iArg1 ) - { - retval = KErrArgument; - } - - accessoryConnection.CloseSubSession(); - } - break; - - case ETFAccessoryDes8GetValue: - { - TBuf8<80> - worm( _L8("Malicious Worm Attach with extra long data with extra long content" )); - TBuf8<85> valueBuf; - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg1 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, valueBuf ) ); - - if( err == aParameter.iExpectedResult ) - { - - if( aParameter.iExpectedResult == KErrArgument ) - { - retval = KErrNone; - } - else - { - if( KErrNone == valueBuf.Compare( worm ) ) - { - RDebug::RawPrint( valueBuf ); - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrArgument; - } - } - break; - - case ETFAccessoryObjectParseTopology: - { - - TInt rspeaker( KErrGeneral ); - TInt lspeaker( KErrGeneral ); - TInt rmic( KErrGeneral ); - TInt lmic( KErrGeneral ); - TInt mute( KErrGeneral ); - TInt sidetone( KErrGeneral ); - // - // Find speaker volume object in USB headset case. - // - CAccPolAudioUnitBase* audioUnit = NULL; - CAccPolAudioControlBase* audioControl = NULL; - //CAccPolOutputTerminal* ouputTerminal = NULL; - - if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, - audioUnit ) ) - { - if( audioUnit->GetNextAudioUnitL( audioUnit ) ) - { - if( audioUnit->ObjectType() - == EAccPolAudioFeatureUnitObject ) - { - if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, - KAccRightFrontChannel, - audioControl ) ) - { - iSpeakerRightVolume = CAccPolVolumeControl::NewL(); - *iSpeakerRightVolume - = *reinterpret_cast ( audioControl ); - rspeaker = KErrNone; - } - if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, - KAccLeftFrontChannel, - audioControl ) ) - { - iSpeakerLeftVolume = CAccPolVolumeControl::NewL(); - *iSpeakerLeftVolume - = *reinterpret_cast ( audioControl ); - lspeaker = KErrNone; - } - if( audioUnit->GetAudioControlL( EAccPolAudioMuteControlObject, - KAccMasterChannel, - audioControl ) ) - { - iSpeakerMute = CAccPolMuteControl::NewL(); - *iSpeakerMute - = *reinterpret_cast ( audioControl ); - mute = KErrNone; - } - - } - } - } - - // - // Find mic volume object in USB headset case. - // - if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTStream, - audioUnit ) ) - { - do - { - } - while( audioUnit->GetNextAudioUnitL( audioUnit ) - && audioUnit->ObjectType() != EAccPolAudioFeatureUnitObject ); - - RPointerArray aAudioControls; - audioUnit->GetAudioControlsL( KAccRightFrontChannel, - aAudioControls ); - - if( aAudioControls.Count() > 0 ) - { - iMicRightVolume = CAccPolVolumeControl::NewL(); - *iMicRightVolume - = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); - rmic = KErrNone; - } - aAudioControls.Reset(); - - audioUnit->GetAudioControlsL( KAccLeftFrontChannel, - aAudioControls ); - - if( aAudioControls.Count() > 0 ) - { - iMicLeftVolume = CAccPolVolumeControl::NewL(); - *iMicLeftVolume - = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); - lmic = KErrNone; - } - - // - // Find sidetone volume object in USB headset case. - // - iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, - audioUnit ); - - do - { - audioUnit->GetNextAudioUnitL( audioUnit ); - } - while( audioUnit->ObjectType() != EAccPolAudioMixerUnitObject ); - - if( audioUnit->SourceIdCount() > 1 ) - { - RPointerArray aAudioUnits; - audioUnit->GetAudioUnitListL( aAudioUnits ); - - for( TInt i = 0; i < aAudioUnits.Count(); i++ ) - { - if( aAudioUnits.operator[]( i )->ObjectType() - == EAccPolAudioFeatureUnitObject ) - { - audioUnit = aAudioUnits.operator[]( i ); - break; - } - } - } - - aAudioControls.Reset(); - audioUnit->GetAudioControlsL( aAudioControls ); - if( aAudioControls.Count() == 2 ) - { - sidetone = KErrNone; - } - } - - retval = ( rspeaker | lspeaker | rmic | lmic | mute | sidetone ); - - } - break; - - case ETFAccessoryGetStreamObjects: - { - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); - - if( err == aParameter.iExpectedResult ) - { - //externalize container to bufFromASY - CBufFlat* bufFromASY = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromASY ); - bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - RBufWriteStream wStrm; - ( void )wStrm.Open( *bufFromASY ); - wStrm.PushL(); - iStreamContainer->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); - - //Read container from PubSub - RProperty prop; - RBufReadStream rStrm; - CBufFlat* bufFromPubSub = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromPubSub ); - bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); - TInt ret = prop.Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptrBufFromPubSub ); - - TInt k = sizeof( bufFromASY ); - TInt kk = sizeof( bufFromPubSub ); - - bufFromASY->Compress(); - bufFromPubSub->Compress(); - - k = sizeof( bufFromASY ); - kk = sizeof( bufFromPubSub ); - - retval - = ( 0 - == memcompare( reinterpret_cast ( &ptrbufFromASY ), - sizeof( bufFromASY ), - reinterpret_cast ( &ptrBufFromPubSub ), - sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; - - CleanupStack::PopAndDestroy( bufFromPubSub ); - CleanupStack::PopAndDestroy( bufFromASY ); - } - } - break; - - case ETFAccessoryGetStreamObjectsFromPolicy: - { - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); - - RPointerArray inputStreamObjects; - RPointerArray outputStreamObjects; - - iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); - iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); - - CAccPolAudioStreamFormat* inputStream = - inputStreamObjects.operator[]( 0 ); - CAccPolAudioStreamFormat* ouputStream = - outputStreamObjects.operator[]( 0 ); - - retval = err; - } - break; - - case ETFAccessorySetStreamObjects: - { - CAccPolAudioStreamFormatCon* setContainer = CAccPolAudioStreamFormatCon::NewLC(); - - RPointerArray inputStreamObjects; - RPointerArray outputStreamObjects; - - iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); - CAccPolAudioStreamFormat* inputStream = NULL; - for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && - inputStream->UnitId() == 0 && - inputStream->StreamType() == CAccPolAudioStreamFormat::EStereo && - inputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample16 && - inputStream->SamFreq() == 200 ) - { - setContainer->AddL( *inputStream ); - break; - } - } - - iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); - CAccPolAudioStreamFormat* outputStream = NULL; - for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && - outputStream->UnitId() == 0 && - outputStream->StreamType() == CAccPolAudioStreamFormat::EMono && - outputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample32 && - outputStream->SamFreq() == 200 ) - { - setContainer->AddL( *outputStream ); - break; - } - } - - RBufWriteStream wStrm; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - (void)wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, KTFAccessoryObjectMethod, ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - inputStreamObjects.Close(); - outputStreamObjects.Close(); - } - break; - - case ETFAccessoryGetTopologyObjects: - { - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - if( err == aParameter.iExpectedResult ) - { - //externalize container to bufFromASY - CBufFlat* bufFromASY = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromASY ); - bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - RBufWriteStream wStrm; - ( void )wStrm.Open( *bufFromASY ); - wStrm.PushL(); - iTopologyContainer->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); - - //Read container from PubSub - RProperty prop; - RBufReadStream rStrm; - CBufFlat* bufFromPubSub = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromPubSub ); - bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); - TInt ret = prop.Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptrBufFromPubSub ); - - TInt k = sizeof( bufFromASY ); - TInt kk = sizeof( bufFromPubSub ); - - bufFromASY->Compress(); - bufFromPubSub->Compress(); - - k = sizeof( bufFromASY ); - kk = sizeof( bufFromPubSub ); - - retval - = ( 0 - == memcompare( reinterpret_cast ( &ptrbufFromASY ), - sizeof( bufFromASY ), - reinterpret_cast ( &ptrBufFromPubSub ), - sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; - - CleanupStack::PopAndDestroy( bufFromPubSub ); - CleanupStack::PopAndDestroy( bufFromASY ); - } - } - break; - - case ETFAccessoryGetVolumeControlObjects: - { - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - iTopologyContainer->AddL( *iSpeakerRightVolume ); - iTopologyContainer->AddL( *iSpeakerLeftVolume ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - CAccPolVolumeControl* rightVolume; - rightVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 0 ); - - CAccPolVolumeControl* leftVolume; - leftVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 1 ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySetVolumeControlObjects: - { - RBufWriteStream wStrm; - CAccPolAudioTopologyObjectCon* setContainer = - CAccPolAudioTopologyObjectCon::NewLC(); - - iSpeakerRightVolume->SetVolumeDb( aParameter.iArg1 ); - iSpeakerRightVolume->SetMinVolumeDb( aParameter.iArg2 ); - iSpeakerRightVolume->SetMaxVolumeDb( aParameter.iArg4 ); - iSpeakerRightVolume->SetVolumeResDb( 0x05 ); - setContainer->AddL( *iSpeakerRightVolume ); - iSpeakerLeftVolume->SetVolumeDb( aParameter.iArg1 ); - iSpeakerLeftVolume->SetMinVolumeDb( aParameter.iArg2 ); - iSpeakerLeftVolume->SetMaxVolumeDb( aParameter.iArg4 ); - iSpeakerLeftVolume->SetVolumeResDb( 0x05 ); - setContainer->AddL( *iSpeakerLeftVolume ); - - CBufFlat* buf = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - } - break; - - case ETFAccessoryGetMuteControlObjects: - { - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - iTopologyContainer->AddL( *iSpeakerMute ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - CAccPolMuteControl* mute; - mute = ( CAccPolMuteControl* )iTopologyContainer->AtL( 0 ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySetMuteControlObjects: - { - RBufWriteStream wStrm; - CAccPolAudioTopologyObjectCon* setContainer = - CAccPolAudioTopologyObjectCon::NewLC(); - - iSpeakerMute->SetMute( aParameter.iArg1 ); - setContainer->AddL( *iSpeakerMute ); - - CBufFlat* buf = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - } - break; - - // - // Accessory Control - // - - case ETFAccessoryControl_Open: - { - if( iAccessoryControl == NULL ) - { - iAccessoryControl = new ( ELeave ) RAccessoryControl; - retval = iAccessoryControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryControl_Close: - { - TRACE_ASSERT( iAccessoryControl != NULL ); - - if( iAccessoryControl != NULL ) - { - iAccessoryControl->CloseSubSession(); - delete iAccessoryControl; - iAccessoryControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryConnectionStatusChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryConnectionStatusChanged( iGenericIdArray ); - retval = KErrNone; - } - break; - - case ETFSyncGetAccessoryConnectionStatus: - { - iAccessoryConnection->GetAccessoryConnectionStatus( iGenericIdArray ); - - if( iGenericIdArray.Count() != aParameter.iArg1 ) - { - retval = KErrArgument; - } - else - { - retval = KErrNone; - } - } - break; - - case ETFASyncGetAccessoryConnectionStatus: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->GetAccessoryConnectionStatus( iGenericIdArray ); - retval = KErrNone; - } - break; - - case ETFSetIntValue: - { - SetIntValue(aParameter, &retval); - } - break; - - case ETFSetBoolValue: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool aBoolValue; - aBoolValue.iValue = aParameter.iArg1; - retval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], - aNameRecord, - aBoolValue ); - } - break; - - // - //Tuupaa - // - case ETFAccessoryValueChangedNotifyInt: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( KAccAudioOutputType ); - TAccValueTypeTInt aIntValue; - aIntValue.iValue = EAccAudioOutPutTypePublic; - iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], - aNameRecord, - aIntValue ); - retval = KErrNone; - } - break; - - case ETFAccessoryValueChangedNotifyBool: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool aBoolValue; - aBoolValue.iValue = ETrue; - iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], - aNameRecord, - aBoolValue ); - retval = KErrNone; - } - break; - - // - // BT Control - // - case ETFBTAccessoryValueChangedNotifyBool: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool boolValue; - boolValue.iValue = aParameter.iArg4; - iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, - nameRecord, - boolValue ); - retval = KErrNone; - } - break; - - case ETFBTAccessoryValueChangedNotifyInt: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt intValue; - intValue.iValue = aParameter.iArg4; - iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, - nameRecord, - intValue ); - retval = KErrNone; - } - break; - - case ETFAccessoryBtControl_Open: - { - if( iAccessoryBTControl == NULL ) - { - iAccessoryBTControl = new ( ELeave ) RAccessoryBTControl; - retval - = iAccessoryBTControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryBtControl_Close: - { - TRACE_ASSERT( iAccessoryBTControl != NULL ); - - if( iAccessoryBTControl != NULL ) - { - iAccessoryBTControl->CloseSubSession(); - delete iAccessoryBTControl; - iAccessoryBTControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryBtConnectAccessory: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->ConnectBTAccessory( btaddr ); - retval = KErrNone; - } - break; - case ETFAccessoryBtDisconnectAccessory: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRequestStatus status; - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->DisconnectBTAccessory( btaddr ); - retval = KErrNone; - TAccPolGenericID emptyInstance; - iGenericId[aParameter.iGid] = emptyInstance; - } - break; - - case ETFAccessoryNotifyBluetoothAudioLinkOpenReq: - { - //TRequestStatus status; - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBluetoothAudioLinkOpenReq(); - retval = KErrNone; - } - break; - - case ETFAccessoryBluetoothAudioLinkOpenedNotify: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenedNotifyL( btaddr, (TAccAudioType)aParameter.iArg3 ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBluetoothAudioLinkOpenResp: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TInt response( aParameter.iArg2 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenRespL( btaddr, response ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryNotifyBluetoothAudioLinkCloseReq: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBluetoothAudioLinkCloseReq(); - retval = KErrNone; - } - break; - - case ETFAccessoryBluetoothAudioLinkClosedNotify: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkClosedNotifyL( btaddr, ( TAccAudioType )aParameter.iArg3 ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBluetoothAudioLinkCloseResp: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TInt response( aParameter.iArg2 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkCloseRespL( btaddr, response ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBtCancelConnectAccessory: - { - TRequestStatus status; - TBTDevAddr btaddr( aParameter.iArg1 ); - iAccessoryBTControl->ConnectAccessory( status, btaddr ); - iAccessoryBTControl->CancelConnectAccessory(); - User::WaitForRequest( status ); - if( KErrCancel != status.Int() ) - { - retval = status.Int(); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryBtCancelDisconnectAccessory: - { - TRequestStatus status; - TBTDevAddr btaddr( aParameter.iArg1 ); - iAccessoryBTControl->DisconnectAccessory( status, btaddr ); - iAccessoryBTControl->CancelDisconnectAccessory(); - User::WaitForRequest( status ); - retval = status.Int(); - } - break; - - // - // Accessory Mode - // - case ETFAccessoryMode_Open: - { - if( iAccessoryMode == NULL ) - { - iAccessoryMode = new ( ELeave ) RAccessoryMode; - retval = iAccessoryMode->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryMode_Close: - { - TRACE_ASSERT( iAccessoryMode != NULL ); - - if( iAccessoryMode != NULL ) - { - iAccessoryMode->CloseSubSession(); - delete iAccessoryMode; - iAccessoryMode = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryModeChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryModeChanged(); - retval = KErrNone; - } - break; - - case ETFAccessoryAccessoryModeSync: - { - TAccPolAccessoryMode mode; - retval = iAccessoryMode->GetAccessoryMode( mode ); - - if( retval == KErrNone ) - { - if( aParameter.iArg1 != mode.iAccessoryMode ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter1 %d %d" ), aParameter.iArg1, mode.iAccessoryMode ) ); - retval = KTFErrAccessoryUnexpectedArg1; - } -#ifdef __WINS__ // Just check this in winscw - if( aParameter.iArg2 != mode.iAudioOutputStatus ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter2 %d %d" ), aParameter.iArg2, mode.iAudioOutputStatus ) ); - retval = KTFErrAccessoryUnexpectedArg2; - } -#endif - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Getting Accessory Mode Failed %d" ), retval ) ); - } - - } - break; - - case ETFAccessoryAccessoryModeASync: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->GetAccessoryMode(); - retval = KErrNone; - } - break; - - // - // Audio Control - // - case ETFAccessoryAudioControl_Open: - { - if( iAccessoryAudioControl == NULL ) - { - iAccessoryAudioControl = new ( ELeave ) RAccessoryAudioControl; - retval - = iAccessoryAudioControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryAudioControl_Close: - { - TRACE_ASSERT( iAccessoryAudioControl != NULL ); - - if( iAccessoryAudioControl != NULL ) - { - iAccessoryAudioControl->CloseSubSession(); - delete iAccessoryAudioControl; - iAccessoryAudioControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAudioRoutingStatusNotify: - { - RAccessoryAudioControl audioControl; - audioControl.CreateSubSession( iAccessoryServer ); - - audioControl.AudioRoutingStatusNotify( aParameter.iArg1, - iGenericId[aParameter.iGid] ); - retval = KErrNone; - - audioControl.CloseSubSession(); - } - break; - - case ETFAccessoryAudioLinkOpen: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->AccessoryAudioLinkOpen( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryAudioLinkOpened: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryAudioLinkOpened( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryAudioLinkClosed: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryAudioLinkClosed( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryAccessoryAudioLinkClose: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->AccessoryAudioLinkClose( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryPublishAndSubscribe: - { - PublishAndSubscribeL( aParameter ); - retval = KErrNone; - } - break; - - case ETFAccessory_Cancel: - { - CTFTestControlObserver* item; - if( !iStack.IsEmpty() ) - { - item = iStack.First(); - item->Cancel(); - } - retval = KErrNone; - } - break; - - // - // Cancels - // - case ETFCancelAccessoryAudioLinkOpen: - { - iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); - retval = KErrNone; - } - break; - - case ETFCancelAccessoryAudioLinkClose: - { - iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryAudioLinkOpened: - { - iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryAudioLinkClosed: - { - iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyProcessCommand: - { - TRACE_ASSERT_ALWAYS; - } - break; - - case ETFCancelConnectAccessory: - { - iAccessoryControl->CancelConnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelDisconnectAccessory: - { - iAccessoryControl->CancelDisconnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyBluetoothAudioLinkOpenReq: - { - iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyBluetoothAudioLinkCloseReq: - { - iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryConnectionStatusChanged: - { - iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); - retval = KErrNone; - } - break; - - case ETFCancelGetAccessoryConnectionStatus: - { - iAccessoryConnection->CancelGetAccessoryConnectionStatus(); - retval = KErrNone; - } - break; - - case ETFCancelConnectAccessoryBT: - { - iAccessoryBTControl->CancelConnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelDisconnectAccessoryBT: - { - iAccessoryBTControl->CancelDisconnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryModeChanged: - { - iAccessoryMode->CancelNotifyAccessoryModeChanged(); - retval = KErrNone; - } - break; - - case ETFCancelGetAccessoryMode: - { - iAccessoryMode->CancelGetAccessoryMode(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyNewAccessoryConnected: - { - iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryDisconnected: - { - iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryValueChanged: - { - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - iAccessorySingleConnection->CancelNotifyAccessoryValueChanged( nameRecord ); - retval = KErrNone; - } - break; - - case ETFSelectionDialogText: - { - SelectionDialog(ETFSelectionDialogText, &retval); - } - break; - - case ETFSelectionDialogCancel: - { - SelectionDialog(ETFSelectionDialogCancel, &retval); - } - break; - - case ETFNotSupportedNote: - { - TUid KAccFwUiNoteNotifierUid = - { - 0x10205061 - }; - RNotifier notifier; - notifier.Connect(); - - TInt err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, - KNullDesC8 ); - - TInt value( 0 ); - TPckg intPckg( value ); - notifier.Close(); - - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - retval = KErrNone; - } - break; - - case ETFValueRecordTests: - { - retval = TestValueRecordL(); - } - break; - - case ETFObjectBaseSerializationTests: - { - retval = TestBaseSerializationL(); - } - break; - - case ETFCheckConnectedAccessory: - { - CheckConnectedAccessory(&retval); - } - break; - - case ETFCallTClassMethods: - { - CallTClassMethods(&retval); \ - } - - case ETFSetHdmiObject_PubSub: - { - CreateHdmiObjectsToPubSubL( aParameter ); - retval = KErrNone; - break; - } - - case ETFGetHdmiObject: - { - TInt err = KErrNone; - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - - // Create HDMI container - CAccPolHdmiObjectCon* conFromASY = CAccPolHdmiObjectCon::NewLC(); - CAccPolHdmiObjectCon* conFromPS = CAccPolHdmiObjectCon::NewLC(); - - // Get HDMI container - TRAP( err, iAccessorySingleConnection->GetValueL( - iGenericId[aParameter.iGid], nameRecord, *conFromASY ) ); - - // Get HDMI container from P&S - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - TPtr8 bufPtr( buf->Ptr( 0 ) ); - err = RProperty::Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - bufPtr ); - if( err == KErrNone ) - { - RBufReadStream readStream( *buf ); - readStream.PushL(); - conFromPS->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - } - switch( aParameter.iArg3 ) - { - case KAccVideoHdmiAttributes: - { - // Validate object count - if( conFromASY->Count() != conFromPS->Count() ) - { - err = KErrArgument; - } - - // Validate speaker allocation - RAccPolHdmiSpeakerAllocationArray array; - CleanupClosePushL( array ); - conFromASY->GetHdmiSpeakerAllocationObjectsL( array ); - if( array.Count() ) - { - CAccPolHdmiSpeakerAllocation* speakerAllocation = array[0]; - TUint32 bits = speakerAllocation->SpeakerAllocation(); - - // Speaker allocation should be EHdmiSpeakerUnknown - if( bits != CAccPolHdmiSpeakerAllocation::EHdmiSpeakerUnknown ) - { - err = KErrArgument; - } - - // Speaker count should be zero - if( speakerAllocation->SpeakerCount() ) - { - err = KErrArgument; - } - } - CleanupStack::PopAndDestroy( &array ); - break; - } - case KAccVideoFormat: - { - // Validate object count - if( conFromASY->Count() != conFromPS->Count() ) - { - err = KErrArgument; - } - - // Validate video format - RAccPolHdmiVideoFormatArray array; - CleanupClosePushL( array ); - conFromASY->GetHdmiVideoFormatObjectsL( array ); - if( array.Count() ) - { - CAccPolHdmiVideoFormat* videoFormat = array[0]; - - // Interlaced video should be enabled - if( !videoFormat->Interlaced() ) - { - err = KErrArgument; - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &array ); - break; - } - default: - { - break; - } - } - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( conFromPS ); - CleanupStack::PopAndDestroy( conFromASY ); - retval = err; - break; - } - - case ETFCheckHdmiObject: - { - TInt err = KErrNone; - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d" ), - aParameter.iArg1 ) ); - switch( aParameter.iArg1 ) - { - case EAccPolHdmiObjectCon: - { - err = CheckHdmiContainerObjectL(); - break; - } - case EAccPolHdmiSinkObject: - { - err = CheckHdmiSinkObjectL(); - break; - } - case EAccPolHdmiAudioFormatObject: - { - err = CheckHdmiAudioFormatObjectL(); - break; - } - case EAccPolHdmiLatencyObject: - { - err = CheckHdmiLatencyObjectL(); - break; - } - case EAccPolHdmiSpeakerAllocationObject: - { - err = CheckHdmiSpeakerAllocationObjectL(); - break; - } - case EAccPolHdmiVideoFormatObject: - { - err = CheckHdmiVideoFormatObjectL(); - break; - } - default: - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Invalid HDMI object=%d" ), - aParameter.iArg1 ) ); - err = KErrArgument; - break; - } - } - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d returned with code %d" ), - aParameter.iArg1, err ) ); - retval = err; - break; - } - - default: - TRACE_ASSERT_ALWAYS; - break; - - } - User::LeaveIfError( retval ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::TestValueRecordL() -// ---------------------------------------------------------------------------------- -// -TInt CTFAccessoryTestControl::TestValueRecordL() - { - TInt ret( KErrNone ); - - TAccPolValueRecord valueRecord; - TBuf8 eci; - TBuf8 check; - _LIT( Kissa, "Kissa" ); - eci.Copy( Kissa ); - - valueRecord.SetValue( eci ); - check.Copy( valueRecord.ValueRef() ); - - if( KErrNone != eci.Compare( check ) ) - { - User::Leave( KErrGeneral ); - } - - TDesC8& test( valueRecord.ValueRef() ); - if( KErrNone != eci.Compare( test ) ) - { - User::Leave( KErrGeneral ); - } - - return ret; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::TestBaseSerializationL() -// ---------------------------------------------------------------------------------- -// -TInt CTFAccessoryTestControl::TestBaseSerializationL() - { - TInt ret( KErrNone ); - TInt err( KErrNone ); - - /*** One container *************************************************************/ - CAccPolAudioStreamFormatCon* container1 = - CAccPolAudioStreamFormatCon::NewLC(); - CAccPolAudioStreamFormatCon* container2 = - CAccPolAudioStreamFormatCon::NewLC(); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - container1->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - //Internalize from buf - RBufReadStream rStrm; - ( void )rStrm.Open( *buf ); - rStrm.PushL(); - container2->InternalizeL( rStrm ); - rStrm.Close(); - rStrm.Pop(); - - //container1 content must equal to container2 content - err = ( 0 == memcompare( reinterpret_cast ( container1 ), - sizeof(CAccPolObjectCon), - reinterpret_cast ( container2 ), - sizeof(CAccPolObjectCon) ) ) ? KErrNone : KErrGeneral; - User::LeaveIfError( err ); - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( container2 ); - CleanupStack::PopAndDestroy( container1 ); - container2 = NULL; - container1 = NULL; - /* end *************************************************************************/ - - //Make test again! - - CAccPolAudioStreamFormat* audioStream1 = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject, - 15, - KUidFormatMP3, - CAccPolAudioStreamFormat::EStereo, - CAccPolAudioStreamFormat::EBitsPerSample24, - 11 ); - - buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize to buf - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - audioStream1->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - //Internalize from buf - ( void )rStrm.Open( *buf ); - rStrm.PushL(); - - TInt objectid = rStrm.ReadUint8L(); - - if( ( TStreamConObjectType )objectid == EAccPolAudioInputStreamObject ) - { - CAccPolAudioStreamFormat* audioStream2 = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject ); - - audioStream2->InternalizeL( rStrm ); - - //audioStream1 content must equal to audioStream2 content - err = ( 0 == memcompare( reinterpret_cast ( audioStream1 ), - sizeof(CAccPolAudioStreamFormat), - reinterpret_cast ( audioStream2 ), - sizeof(CAccPolAudioStreamFormat) ) ) ? KErrNone : KErrGeneral; - - User::LeaveIfError( err ); - - CleanupStack::PopAndDestroy( audioStream2 ); - - rStrm.Close(); - rStrm.Pop(); - - } - else - { - User::LeaveIfError( KErrGeneral ); - } - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( audioStream1 ); - audioStream1 = NULL; - /* end *************************************************************************/ - - return ret; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::PublishAndSubscribeL() -// ---------------------------------------------------------------------------------- -// -void CTFAccessoryTestControl::PublishAndSubscribeL( TTFAccessoryTestCaseStateControl& aParameter ) - { - TPckgBuf buf; - - buf().iTestCaseID = aParameter.iTestCaseID; - buf().iMethod = aParameter.iMethod; - buf().iParam1 = aParameter.iArg1; - buf().iTimeMs = aParameter.iArg4; - buf().iGenericID = iGenericId[aParameter.iGid]; - - // Send capability to stub(s). - - // if( aParameter.iArg3 ) - // { - buf().iParam2 = aParameter.iArg3; - // } - - /* - if( aParameter.iArg3->Compare( KNullDesC ) ) - { - buf().iParam2.Copy( *aParameter.iArg3 ); - } - - */ - User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, - KTFAccessoryMethod, - buf ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL() -// ---------------------------------------------------------------------------------- -// -void CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL( - TTFAccessoryTestCaseStateControl& aParameter ) - { - // Define property just in case - RProperty::Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - // Create HDMI container - CAccPolHdmiObjectCon* con = CAccPolHdmiObjectCon::NewLC(); - switch( aParameter.iArg3 ) - { - case KAccVideoHdmiAttributes: - { - // Create audio format object - CreateHdmiObjectL( *con, EAccPolHdmiAudioFormatObject ); - - // Create latency object - CreateHdmiObjectL( *con, EAccPolHdmiLatencyObject ); - - // Create sink object - CreateHdmiObjectL( *con, EAccPolHdmiSinkObject ); - - // Create speaker allocation object - CreateHdmiObjectL( *con, EAccPolHdmiSpeakerAllocationObject ); - - // Create video format object - CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); - break; - } - case KAccVideoFormat: - { - // Create video format object - CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); - break; - } - default: - { - break; - } - } - // Stream HDMI container to P&S - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - RBufWriteStream writeStream( *buf ); - writeStream.PushL(); - con->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - - TPtr8 bufPtr( buf->Ptr( 0 ) ); - TInt err = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - bufPtr ); - User::LeaveIfError( err ); - - // Check if ASY stub needs to be informed - if( aParameter.iArg2 ) - { - PublishAndSubscribeL( aParameter ); - } - - // Cleanup - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( con ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiContainerObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiContainerObjectL() - { - TInt err = KErrNone; - CAccPolHdmiObjectCon* con1 = NULL; - CAccPolHdmiObjectCon* con2 = NULL; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - con1 = CAccPolHdmiObjectCon::NewL(); - CleanupStack::PushL( con1 ); - CleanupStack::PopAndDestroy( con1 ); - - // NewLC - con1 = CAccPolHdmiObjectCon::NewLC(); - CleanupStack::PopAndDestroy( con1 ); - - // Internalize & Externalize - con1 = CAccPolHdmiObjectCon::NewLC(); - CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - con1->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - - con2 = CAccPolHdmiObjectCon::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - con2->InternalizeL( readStream ); - if( con1->Count() == con2->Count() ) - { - TInt count = con1->Count(); - CAccPolObjectBase* objBase1 = NULL; - CAccPolObjectBase* objBase2 = NULL; - for( TInt i = 0; i < count; i++ ) - { - objBase1 = con1->AtL( i ); - objBase2 = con2->AtL( i ); - if( objBase1->ObjectType() != objBase2->ObjectType() ) - { - err = KErrArgument; - } - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( con2 ); - CleanupStack::PopAndDestroy( con1 ); - - // DuplicateLC - con1 = CAccPolHdmiObjectCon::NewLC(); - CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); - con2 = static_cast( con1->DuplicateLC() ); - if( con1->Count() == con2->Count() ) - { - TInt count = con1->Count(); - CAccPolObjectBase* objBase1 = NULL; - CAccPolObjectBase* objBase2 = NULL; - for( TInt i = 0; i < count; i++ ) - { - objBase1 = con1->AtL( i ); - objBase2 = con2->AtL( i ); - if( objBase1->ObjectType() != objBase2->ObjectType() ) - { - err = KErrArgument; - } - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( con2 ); - CleanupStack::PopAndDestroy( con1 ); - - // Rest of the API - con1 = CAccPolHdmiObjectCon::NewLC(); - THdmiConObjectType objectType = EAccPolHdmiObjectCon; - TBool exit = EFalse; - TInt index = 0; - TInt count = 0; - do - { - index++; - err = KErrArgument; - objectType = ( THdmiConObjectType )( index ); - CreateHdmiObjectL( *con1, objectType ); - count = con1->Count(); - CAccPolObjectBase* obj = NULL; - if( con1->Count() != index ) - { - err = KErrArgument; - break; - } - for( TInt ii = 0; ii < count; ii++ ) - { - obj = con1->AtL( ii ); - if( obj->ObjectType() == objectType ) - { - err = KErrNone; - break; - } - } - if( objectType == EAccPolHdmiVideoFormatObject ) - { - // Last object - exit = ETrue; - } - } - while( !exit && ( err == KErrNone ) ); - CleanupStack::PopAndDestroy( con1 ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiSinkObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiSinkObjectL() - { - TInt err = KErrNone; - CAccPolHdmiSink* obj = NULL; - CAccPolHdmiSink* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiSink::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiSink::NewL( ETrue, ETrue ); - CleanupStack::PushL( obj ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiSink::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSink::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiSinkObject ) - { - err = KErrArgument; - } - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSink ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiSink::NewLC(); - obj->SetBasicAudioSupport( ETrue ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - obj->SetHdcpSupport( ETrue ); - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL() - { - TInt err = KErrNone; - CAccPolHdmiAudioFormat* obj = NULL; - CAccPolHdmiAudioFormat* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiAudioFormat::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiAudioFormat::NewL( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiAudioFormat::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiAudioFormat::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiAudioFormatObject ) - { - err = KErrArgument; - } - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSink ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiAudioFormat::NewLC(); - obj->SetAudioFormat( HdmiAudioFormat::KUidFormatEAC3 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatEAC3 ) - { - err = KErrArgument; - } - obj->SetChannelCount( 2 ); - if( obj->ChannelCount() != 2 ) - { - err = KErrArgument; - } - obj->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample20 ); - if( !( obj->BitResolution() & CAccPolHdmiAudioFormat::EBitsPerSample20 ) ) - { - err = KErrArgument; - } - obj->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample24 ); - if( obj->MaxBitResolution() != CAccPolHdmiAudioFormat::EBitsPerSample24 ) - { - err = KErrArgument; - } - obj->SetSamFreq( CAccPolHdmiAudioFormat::ESamplingFreq192KHz ); - if( !( obj->SamFreq() & CAccPolHdmiAudioFormat::ESamplingFreq192KHz ) ) - { - err = KErrArgument; - } - obj->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - if( !( obj->FormatDependentValue() & CAccPolHdmiAudioFormat::EBitsPerSample16 ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiLatencyObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiLatencyObjectL() - { - TInt err = KErrNone; - CAccPolHdmiLatency* obj = NULL; - CAccPolHdmiLatency* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiLatency::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiLatency::NewL( HdmiLatency::KUidLatency, 100, 200 ); - CleanupStack::PushL( obj ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiLatency::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiLatency::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiLatencyObject ) - { - err = KErrArgument; - } - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiLatency ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiLatency::NewLC(); - obj->SetLatencyType( HdmiLatency::KUidLatency ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - obj->SetAudioLatency( 100 ); - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - obj->SetVideoLatency( 200 ); - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL() - { - TInt err = KErrNone; - CAccPolHdmiSpeakerAllocation* obj = NULL; - CAccPolHdmiSpeakerAllocation* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TUint32 bits = 0x0; - - // NewL - obj = CAccPolHdmiSpeakerAllocation::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewL( bits ); - CleanupStack::PushL( obj ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewL( EFalse, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - EFalse, - EFalse ); - CleanupStack::PushL( obj ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC( EFalse, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - EFalse, - EFalse ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiSpeakerAllocationObject ) - { - err = KErrArgument; - } - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSpeakerAllocation ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - obj->SetSpeakerAllocation( bits ); - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - obj->SetFrontSpeakers( ETrue ); - if( !obj->FrontSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontSpeakers( EFalse ); - if( obj->FrontSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearSpeakers( ETrue ); - if( !obj->RearSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetRearSpeakers( EFalse ); - if( obj->RearSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetLowFrequencyEffect( ETrue ); - if( !obj->LowFrequencyEffect() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetLowFrequencyEffect( EFalse ); - if( obj->LowFrequencyEffect() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontCenter( ETrue ); - if( !obj->FrontCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetFrontCenter( EFalse ); - if( obj->FrontCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontCenterHigh( ETrue ); - if( !obj->FrontCenterHigh() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetFrontCenterHigh( EFalse ); - if( obj->FrontCenterHigh() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetTopCenter( ETrue ); - if( !obj->TopCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetTopCenter( EFalse ); - if( obj->TopCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearCenter( ETrue ); - if( !obj->RearCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetRearCenter( EFalse ); - if( obj->RearCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontLeftRightCenter( ETrue ); - if( !obj->FrontLeftRightCenter() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontLeftRightCenter( EFalse ); - if( obj->FrontLeftRightCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearLeftRightCenter( ETrue ); - if( !obj->RearLeftRightCenter() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetRearLeftRightCenter( EFalse ); - if( obj->RearLeftRightCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontWideSpeakers( ETrue ); - if( !obj->FrontWideSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontWideSpeakers( EFalse ); - if( obj->FrontWideSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontHighSpeakers( ETrue ); - if( !obj->FrontHighSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontHighSpeakers( EFalse ); - if( obj->FrontHighSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL() - { - TInt err = KErrNone; - CAccPolHdmiVideoFormat* obj = NULL; - CAccPolHdmiVideoFormat* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiVideoFormat::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiVideoFormat::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiVideoFormat::NewL( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - CleanupStack::PushL( obj ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiVideoFormat::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiVideoFormatObject ) - { - err = KErrArgument; - } - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiVideoFormat ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiVideoFormat::NewLC(); - obj->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - obj->SetDmtFixedMode( E640x350p85HzRB ); - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - obj->SetPixelRepeat( 4 ); - if( obj->PixelRepeat() != 4 ) - { - err = KErrArgument; - } - obj->SetInterlaced( ETrue ); - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver()" ) ) ); - iStack.AddFirst/*AddLast*/( *CTFTestControlObserver::NewL( *this ) ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver() return" ) ) ); - return iStack.First/*Last*/(); - } - -// Not used at this point. -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ProcessMessageAndCompleteL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL enter" ) ) ); - aMessage.Complete( KErrNone ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::MessageCompleteL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::MessageCompleteL( TInt /*aResult*/) - { - - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateHdmiObjectL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateHdmiObjectL( CAccPolObjectCon& aCon, - THdmiConObjectType aType ) - { - switch( aType ) - { - case EAccPolHdmiSinkObject: - { - CAccPolHdmiSink* sink = CAccPolHdmiSink::NewLC(); - sink->SetBasicAudioSupport( ETrue ); - sink->SetHdcpSupport( ETrue ); - aCon.AddL( *sink ); - CleanupStack::PopAndDestroy( sink ); - break; - } - case EAccPolHdmiAudioFormatObject: - { - CAccPolHdmiAudioFormat* audioFormat = CAccPolHdmiAudioFormat::NewLC(); - audioFormat->SetAudioFormat( HdmiAudioFormat::KUidFormatPCM16 ); - audioFormat->SetChannelCount( 2 ); - audioFormat->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SamFreq( CAccPolHdmiAudioFormat::ESamplingFreq32KHz ); - aCon.AddL( *audioFormat ); - CleanupStack::PopAndDestroy( audioFormat ); - break; - } - case EAccPolHdmiLatencyObject: - { - CAccPolHdmiLatency* latency = CAccPolHdmiLatency::NewLC(); - latency->SetLatencyType( HdmiLatency::KUidLatency ); - latency->SetAudioLatency( 100 ); - latency->SetVideoLatency( 200 ); - aCon.AddL( *latency ); - CleanupStack::PopAndDestroy( latency ); - break; - } - case EAccPolHdmiSpeakerAllocationObject: - { - CAccPolHdmiSpeakerAllocation* speakerAllocation = - CAccPolHdmiSpeakerAllocation::NewLC(); - speakerAllocation->SetFrontSpeakers( ETrue ); - speakerAllocation->SetRearSpeakers( ETrue ); - speakerAllocation->SetLowFrequencyEffect( ETrue ); - speakerAllocation->SetFrontCenter( ETrue ); - speakerAllocation->SetFrontCenterHigh( ETrue ); - speakerAllocation->SetTopCenter( ETrue ); - speakerAllocation->SetRearCenter( ETrue ); - speakerAllocation->SetFrontLeftRightCenter( ETrue ); - speakerAllocation->SetRearLeftRightCenter( ETrue ); - speakerAllocation->SetFrontWideSpeakers( ETrue ); - speakerAllocation->SetFrontHighSpeakers( ETrue ); - aCon.AddL( *speakerAllocation ); - CleanupStack::PopAndDestroy( speakerAllocation ); - break; - } - case EAccPolHdmiVideoFormatObject: - { - CAccPolHdmiVideoFormat* videoFormat = CAccPolHdmiVideoFormat::NewLC(); - videoFormat->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); - videoFormat->SetDmtFixedMode( E640x480p85HzRB ); - videoFormat->SetInterlaced( EFalse ); - aCon.AddL( *videoFormat ); - CleanupStack::PopAndDestroy( videoFormat ); - break; - } - default: - { - break; - } - } - } - - -void CTFAccessoryTestControl::AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval) - { - switch(aCase) - { - case ETFAccessoryConnection_Open: - { - if ( iAccessoryConnection == NULL ) - { - iAccessoryConnection = new ( ELeave ) RAccessoryConnection; - *aRetval = iAccessoryConnection->CreateSubSession( iAccessoryServer ); - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session created - (%d)" ), *aRetval ) ); - } - else - { - *aRetval = KErrNone; - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session not created - (%d)" ), *aRetval ) ); - } - } - break; - - case ETFAccessoryConnection_Close: - { - TRACE_ASSERT( iAccessoryConnection != NULL ); - - if ( iAccessoryConnection != NULL ) - { - iAccessoryConnection->CloseSubSession(); - delete iAccessoryConnection; - iAccessoryConnection = NULL; - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Close - Sub session closed" ) ) ); - } - *aRetval = KErrNone; - } - break; - - default: - break; - } - - } - -void CTFAccessoryTestControl::FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ) - { - CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); - TInt errVal = 0; - - TRACE_ASSERT( testCase != NULL ); - if ( testCase != NULL ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() - inside if ( testCase != NULL )" ) ) ); - if(!iStack.IsEmpty()) - { - iStackIter.SetToFirst(); - - while ( ( iObserverItem = iStackIter++ ) != NULL ) - { - if(iObserverItem->FindRequest(aParameter.iRequestType)) - { - testCase->CheckRequest( iObserverItem->iStatus, - iObserverItem->iValue, - iObserverItem->iCapabilityName, - &errVal ); - - if(errVal == KTFDontDeleteObserver) - { - aParameter.iArg1 = KTFDontDeleteObserver; - } - - - if ( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() - { - if( KTFDontDeleteObserver != aParameter.iArg1 ) - { - if (iObserverItem->iStatus == KRequestPending ) - { - User::WaitForRequest(iObserverItem->iStatus); - } - iStack.Remove( *iObserverItem ); - delete iObserverItem; - } - else - { - User::Leave( KTFDontDeleteObserver ); - } - } - else - { - *aRetval = KErrGeneral; - } - } - } - } - else - { - *aRetval = KErrGeneral; - } - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() returning and setting *aRetval = KErrNone )" ) ) ); - *aRetval = KErrNone; - } - - -void CTFAccessoryTestControl::AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ) - { - switch(aCase) - { - case ETFAccessorySettings_Open: - { - if ( iAccessorySettings == NULL ) - { - iAccessorySettings = new ( ELeave ) RAccessorySettings; - *aRetval = iAccessorySettings->CreateSubSession( iAccessoryServer ); - } - else - *aRetval = KErrNone; - } - break; - - case ETFAccessorySettings_Close: - { - TRACE_ASSERT( iAccessorySettings != NULL ); - - if ( iAccessorySettings != NULL ) - { - iAccessorySettings->CloseSubSession(); - delete iAccessorySettings; - iAccessorySettings = NULL; - } - *aRetval = KErrNone; - } - break; - - default: - break; - - } - } - -void CTFAccessoryTestControl::SetSeveralAccessoryModeSetting( TInt* aRetval ) - { - TAccModeSetting accModeSettingIn; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf< KMaxAccModeSetting > aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 1 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "012345678901234567890" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( ETrue ); - arrayIn.AddSetting( accModeSettingIn ); - - *aRetval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - } - -void CTFAccessoryTestControl::GetSeveralAccessoryModeSetting( TInt* aRetval ) - { - TAccModeSetting accModeSettingOut; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf< KMaxAccModeSetting > aDesOut; - TAccModeSettingArray arrayOut; - TInt intOut( 0 ); - // set input parameters for GetAccessoryModeSettings() - // setting 11 - accModeSettingOut.SetId( 11 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 12 - accModeSettingOut.SetId( 12 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 13 - accModeSettingOut.SetId( 13 ); - arrayOut.AddSetting( accModeSettingOut ); - - *aRetval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, arrayOut ); - - // Check that got settings are right - - TInt count = arrayOut.GetArraySize(); - TInt foundCount(0); - - for( TInt index = 0; index < count; index++ ) - { - arrayOut.GetSetting( index, accModeSettingOut ); - - if( 11 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTInt( intOut); - - if( 1 == intOut ) - { - foundCount++; - } - } - - - if( 12 == accModeSettingOut.Id() ) - { - accModeSettingOut.GetTDes( aDesOut ); - - if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) - { - foundCount++; - } - - } - - if( 13 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTBool( intOut ); - - if( intOut ) - { - foundCount++; - } - } - } - - if(foundCount != 3) - { - *aRetval = KErrNotFound; - } - - // - // Reset Settings - // - TAccModeSetting accModeSettingIn; - TBuf< KMaxAccModeSetting > aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 0 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( EFalse ); - arrayIn.AddSetting( accModeSettingIn ); - - iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - - } - -void CTFAccessoryTestControl::SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ) - { - switch( aParameter.iArg3 ) - { - case KAccSetVolumeLevel: - { - //AccPolCommonNameValuePairs.h contains following example code - RAccessoryControl accessoryControl; - accessoryControl.CreateSubSession( iAccessoryServer ); - - CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL(); - CleanupStack::PushL( nameArray ); - accessoryControl.GetSubblockNameArrayL( iGenericId[aParameter.iGid], *nameArray ); - - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( KAccSetVolumeLevel ); - TAccValueTypeTInt value; - - if( nameArray->HasName( KAccSetVolumeLevel ) ) - { - accessoryControl.GetValueL( iGenericId[aParameter.iGid], nameRecord, value ); - value.iValue = value.iValue | aParameter.iArg1; - accessoryControl.AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], nameRecord, value ); - } - - CleanupStack::PopAndDestroy( nameArray ); - accessoryControl.CloseSubSession(); - *aRetval = KErrNone; - } - break; - - default: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt aIntValue; - aIntValue.iValue = aParameter.iArg1; - *aRetval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, aIntValue ); - } - break; - } - - } - -void CTFAccessoryTestControl::SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ) - { - switch(aCase) - { - case ETFSelectionDialogText: - { - const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; - - RNotifier notifier; - notifier.Connect(); - - TInt selectionListBitmask = 255; - TInt reply = 0; - - TPckg replyPck( reply); - TPckg selectionBitmaskPackage( selectionListBitmask); - - //activate active object - TRequestStatus status; - status = KRequestPending; - - //open ui - notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); - - User::WaitForRequest( status); - - - notifier.Close(); - - *aRetval = KErrNone; - } - - case ETFSelectionDialogCancel: - { - const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; - - RNotifier notifier; - notifier.Connect(); - - TInt selectionListBitmask = 7; - TInt reply = 0; - - TPckg replyPck( reply); - TPckg selectionBitmaskPackage( selectionListBitmask); - - //activate active object - TRequestStatus status; - - //open ui - notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); - User::After( 2500000); - notifier.CancelNotifier( KAccFwUiDialogNotifierUid); - - // Implementation of the dialog is changed. Request is completed every time - User::WaitForRequest( status ); - - notifier.Close(); - - *aRetval = KErrNone; - } - - default: - break; - - } - - } - -void CTFAccessoryTestControl::CheckConnectedAccessory( TInt* aRetval ) - { - *aRetval = KErrNone; - - TAccPolGenericID genID; // TGeneric ID that should be connected - TAccPolGenericID genIDConnected; // TGeneric ID that is connected - TAccPolGIDHeader iGenericIDHeader; // Header of the GID that should be connected - TAccPolGIDHeader iGenericIDHeaderConnected; // Header of the connected GID - TAccPolGenericIDArray genericIdArray; // Array of connected generic ID's - CAccConGenericID* aGenericID = CAccConGenericID::NewL(); // This might be needed for capabilities - CAccPolSubblockNameArray* nameArrayConnected = CAccPolSubblockNameArray::NewL(); - - CleanupStack::PushL( aGenericID ); - CleanupStack::PushL( nameArrayConnected ); - - TAccPolGenericID genericID = aGenericID->GenericID(); - - TBuf hwModelID(_L("headset")); - // Set GenericID header - iGenericIDHeader.iAccessoryDeviceType = KDTHeadset; - iGenericIDHeader.iPhysicalConnection = KPCWired; - iGenericIDHeader.iApplicationProtocol = 0x0; - - iGenericIDHeader.iCapabilitiesSubblocks = KSBAudioSubblock; - - iGenericIDHeader.iHWModelID = hwModelID; - iGenericIDHeader.iHWDeviceID = 0x0; - iGenericIDHeader.iDBID = 0x0; - - RAccessoryConnection* accessoryConnection = new ( ELeave ) RAccessoryConnection(); - CleanupStack::PushL( accessoryConnection ); - accessoryConnection->CreateSubSession( iAccessoryServer ); - accessoryConnection->GetAccessoryConnectionStatus( genericIdArray ); - CleanupStack::PopAndDestroy( accessoryConnection ); - - genIDConnected = genericIdArray.GetGenericIDL( 0 ); - - RAccessorySingleConnection singleConnect;// = new ( ELeave ) RAccessoryConnectionBase(); - singleConnect.CreateSubSession( iAccessoryServer ); - singleConnect.GetSubblockNameArrayL( genIDConnected, *nameArrayConnected ); - - singleConnect.CloseSubSession(); - - iGenericIDHeaderConnected.iAccessoryDeviceType = genIDConnected.DeviceTypeCaps(); - iGenericIDHeaderConnected.iPhysicalConnection = genIDConnected.PhysicalConnectionCaps(); - iGenericIDHeaderConnected.iApplicationProtocol = genIDConnected.ApplicationProtocolCaps(); - iGenericIDHeaderConnected.iCapabilitiesSubblocks = genIDConnected.SubblockCaps(); - iGenericIDHeaderConnected.iHWModelID = genIDConnected.HWModelID(); - iGenericIDHeaderConnected.iHWDeviceID = genIDConnected.HWDeviceID(); - iGenericIDHeaderConnected.iDBID = 0x0; - - //Check GenericID header - if( iGenericIDHeader.iAccessoryDeviceType != iGenericIDHeaderConnected.iAccessoryDeviceType ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iPhysicalConnection != iGenericIDHeaderConnected.iPhysicalConnection ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iApplicationProtocol != iGenericIDHeaderConnected.iApplicationProtocol ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iCapabilitiesSubblocks != iGenericIDHeaderConnected.iCapabilitiesSubblocks ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iHWModelID != iGenericIDHeaderConnected.iHWModelID ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iHWDeviceID != iGenericIDHeaderConnected.iHWDeviceID ) - { - *aRetval = EFalse; - } - if( !( nameArrayConnected->HasName( KAccStereoAudio ) ) ) - { - *aRetval = EFalse; - } - - if( !( nameArrayConnected->HasName( KAccAudioOutConnector ) ) ) - { - *aRetval = EFalse; - } - - if( !( nameArrayConnected->HasName( KAccAudioOutputType ) ) ) - { - *aRetval = EFalse; - } - //CleanupStack::PopAndDestroy( nameValueArray ); - CleanupStack::PopAndDestroy( nameArrayConnected ); - CleanupStack::PopAndDestroy( aGenericID ); - - } - - -void CTFAccessoryTestControl::CallTClassMethods( TInt* aRetval ) - { - // Settings(); - Policy(); - *aRetval = KErrNone; - } - -void CTFAccessoryTestControl::Settings() - { - TAccModeSettingArray array; - array.Reset(); - TInt ret = array.GetMaxArraySize(); - TAccModeSetting setting; - TUint32 settingId( 1 ); - setting.SetId( settingId ); - array.AddSetting( setting ); - TAccModeSetting setting2; - ret = array.GetSetting( 0, setting2 ); - ret = array.GetArraySize(); - } - -void CTFAccessoryTestControl::Policy() - { - TInt valueInt( 1 ); - TUint32 valueUInt( 1 ); - TDesC8 des( _L8( "timo" ) ); - //TDes8 valueDesc = des; - TAccPolNameRecord nameRecord; - TAccPolValueRecord valRec( des, EAPVPolicy ); - TAccPolNameValueRecord nameValRec; - TAccPolNameValueRecord nameValRec1( nameRecord, valRec ); - TAccPolNameValueRecord nameValRec2( valueUInt, valueInt, EAPVInt, EAPVPolicy ); - TAccPolNameValueRecord nameValRec3( valueUInt, des, EAPVPolicy ); - TAccPolNameValueRecord nameValRec4( valueUInt ); - //TDesC8 valueToGet; - valRec.GetValueL( des ); - valRec.SetValue( des ); - //valRec.SetValue( valueToGet ); - TAccPolValueRecord valRec1( valueInt, EAPVInt, EAPVPolicy ); - valRec1.SetValue( valueInt ); - valRec1.SetLocation( EAPVPolicy ); - valRec1.SetL( valueInt, EAPVInt, EAPVPolicy ); - } - -void CTFAccessoryTestControl::GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TBool aSettingsValueBool; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId(aParameter.iArg2); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); - - if( aSetting.Type() == EAccModeSettingBool) - { - *aRetval = aSetting.GetTBool(aSettingsValueBool); - - if(*aRetval != KErrNotFound) - { - if(aSettingsValueBool == (TBool)aParameter.iArg4) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -void CTFAccessoryTestControl::GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TInt aSettingsValueInt; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId(aParameter.iArg2); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); - - if(aSetting.Type() == EAccModeSettingInt) - { - *aRetval = aSetting.GetTInt(aSettingsValueInt); - - if(*aRetval != KErrNotFound) - { - if( aSettingsValueInt == aParameter.iArg4 ) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -void CTFAccessoryTestControl::GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TBuf aSettingsValueDes; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, aSetting ); - - if( aSetting.Type() == EAccModeSettingDes ) - { - *aRetval = aSetting.GetTDes( aSettingsValueDes ); - - if(*aRetval != KErrNotFound) - { - TBuf buffer; - buffer.Num( aParameter.iArg3 ); - if( KErrNone == aSettingsValueDes.Compare( buffer ) ) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -// End of file +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES + +#include +#include +#include +#include "siftrace.h" +#include "CtfAccessoryTestcontrol.h" +#include "CtfAccessoryTestCaseControl.h" +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include "AccClientServerMessages.h" +#include + +#include +#include + +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl* GetAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl* GetAccessoryTestControl( void ) + { + CTFStub* stub = CTFFactory::Stub( KTFStubTypeAccessoryControl ); + return STATIC_CAST( CTFAccessoryTestControl*, stub ); + } +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl::MTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl::MTFAccessoryTestControl( void ) + { + } +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl::~MTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl::~MTFAccessoryTestControl( void ) + { + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +CTFAccessoryTestControl::CTFAccessoryTestControl( void ) : + CTFRemoteStub( KTFStubTypeAccessoryControl ), + iStack( CTFTestControlObserver::iOffset ), iStackIter( iStack ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl()" ) ) ); + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl() - return" ) ) ); + } + +//lint -e1740 Pointer not directly deleted by destructor +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::~CTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +CTFAccessoryTestControl::~CTFAccessoryTestControl( void ) + { + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl()" ) ) ); + RProperty::Delete( KTFAccessoryTestProperty, KTFAccessoryMethod ); + + ResetAccessoryServices(); + + iAccessoryServer.Disconnect(); + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl() - Accessory Server connection closed" ) ) ); + + } +//lint +e1740 +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::InitializeL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::InitializeL( void ) + { + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - enter" ) ) ); + TInt retval( KErrNone ); + + iAccessoryConnection = NULL; + iAccessorySingleConnection = NULL; + iAccessoryControl = NULL; + iAccessorySettings = NULL; + iAccessoryMode = NULL; + iAccessoryAudioControl = NULL; + iAccessoryBTControl = NULL; + + iStreamContainer = NULL; + iTopologyContainer = NULL; + iSpeakerRightVolume = NULL; + iSpeakerLeftVolume = NULL; + iSpeakerMute = NULL; + iMicRightVolume = NULL; + iMicLeftVolume = NULL; + + TAccPolGenericID emptyInstance; + for( TInt i( 0 ); i < 10; i++ ) + { + iGenericId[i] = emptyInstance; + } + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL()" ) ) ); + + User::LeaveIfError( iAccessoryServer.Connect() ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL() - Connected to accessory server" ) ) ); + + retval = RProperty::Define( KTFAccessoryTestProperty, + KTFAccessoryMethod, + RProperty::EByteArray ); + if( retval != KErrAlreadyExists ) + User::LeaveIfError( retval ); + //attach to property + + + RProperty systemState; + User::LeaveIfError( systemState.Attach( KPSUidStartup, KPSGlobalSystemState ) ); + TInt value( KErrNone ); + //check value + TInt err = systemState.Get( value ); + + if( err != KErrNone ) + { + err = systemState.Define( KPSUidStartup, + KPSGlobalSystemState, + RProperty::EInt ); + TInt err = systemState.Get( value ); + } + + if( value != ESwStateNormalRfOn || value != ESwStateNormalRfOff || value + != ESwStateNormalBTSap ) + { + TInt err = systemState.Set( KPSUidStartup, + KPSGlobalSystemState, + ESwStateNormalRfOn ); + } + + iInitialized = ETrue; + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL - return" ) ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ResetAccessoryServices +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ResetAccessoryServices( void ) + { + ResetAccessoryServer(); + + iInitialized = EFalse; + + iAccessoryServer.Close(); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ResetAccessoryServer +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ResetAccessoryServer( void ) + { + + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer()" ) ) ); + + CTFTestControlObserver* observerItem; + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( observerItem = iStackIter++ ) != NULL ) + { + observerItem->Cancel(); + User::After( 2000000 ); + iStack.Remove( *observerItem ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Remove Observer" ) ) ); + delete observerItem; + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Delete Observer" ) ) ); + }; + } + + iStack.Reset(); + + TAccPolGenericID emptyInstance; + + for( TInt i( 0 ); i < 10; i++ ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Clear instances" ) ) ); + if( KErrNotFound != iGenericId[i].UniqueID() ) + { + if( iGenericId[i].PhysicalConnectionCaps( KPCBluetooth ) ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Found" ) ) ); + TBTDevAddr BTDevAddr( iGenericId[i].DeviceAddress() ); + if( iAccessoryBTControl != NULL ) + { + TRequestStatus status; + status = KRequestPending; + iAccessoryBTControl->DisconnectAccessory( status, BTDevAddr ); + User::WaitForRequest( status ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Disconnected" ) ) ); + } + } + else + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Found" ) ) ); + TPckgBuf buf; + buf().iMethod = ETFAsyDisc; + User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, + KTFAccessoryMethod, + buf ) ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Disconnected" ) ) ); + } + } + iGenericId[i] = emptyInstance; + } + + if( iAccessoryConnection != NULL ) + { + iAccessoryConnection->CloseSubSession(); + delete iAccessoryConnection; + iAccessoryConnection = NULL; + } + + if( iAccessorySingleConnection != NULL ) + { + iAccessorySingleConnection->CloseSubSession(); + delete iAccessorySingleConnection; + iAccessorySingleConnection = NULL; + } + if( iAccessoryControl != NULL ) + { + iAccessoryControl->CloseSubSession(); + delete iAccessoryControl; + iAccessoryControl = NULL; + } + if( iAccessorySettings != NULL ) + { + iAccessorySettings->CloseSubSession(); + delete iAccessorySettings; + iAccessorySettings = NULL; + } + if( iAccessoryMode != NULL ) + { + iAccessoryMode->CloseSubSession(); + delete iAccessoryMode; + iAccessoryMode = NULL; + } + + if( iAccessoryAudioControl != NULL ) + { + iAccessoryAudioControl->CloseSubSession(); + delete iAccessoryAudioControl; + iAccessoryAudioControl = NULL; + } + + if( iAccessoryBTControl != NULL ) + { + iAccessoryBTControl->CloseSubSession(); + delete iAccessoryBTControl; + iAccessoryBTControl = NULL; + } + + if( iSpeakerRightVolume != NULL ) + { + delete iSpeakerRightVolume; + iSpeakerRightVolume = NULL; + } + + if( iSpeakerLeftVolume != NULL ) + { + delete iSpeakerLeftVolume; + iSpeakerLeftVolume = NULL; + } + + if( iSpeakerMute != NULL ) + { + delete iSpeakerMute; + iSpeakerMute = NULL; + } + + if( iMicRightVolume != NULL ) + { + delete iMicRightVolume; + iMicRightVolume = NULL; + } + + if( iMicLeftVolume != NULL ) + { + delete iMicLeftVolume; + iMicLeftVolume = NULL; + } + + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer() - Success" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CancelOutStandingRequest +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CancelOutStandingRequest() + { + iObserverItem->Cancel(); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::FillObjectL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::FillObjectL( CAccPolAudioStreamFormatCon* aContainer, + TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects ) + { + + for( TInt i = 0; i < aNumberOfObjects; i++ ) + { + switch( aobjectType ) + { + case EAccPolAudioInputStreamObject: + { + CAccPolAudioStreamFormat* stream = + CAccPolAudioStreamFormat::NewLC( aobjectType, + i, + KUidFormatPCM16, + CAccPolAudioStreamFormat::EStereo, + CAccPolAudioStreamFormat::EBitsPerSample16, + i + 200 ); + aContainer->AddL( *stream ); + CleanupStack::PopAndDestroy( stream ); + } + break; + + case EAccPolAudioOutputStreamObject: + { + + CAccPolAudioStreamFormat + * stream = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioOutputStreamObject ); + + stream->SetUnitId( i ); + stream->SetAudioFormat( KUidFormatPCM16 ); + stream->SetStreamType( CAccPolAudioStreamFormat::EMono ); + stream->SetBitResolution( CAccPolAudioStreamFormat::EBitsPerSample32 ); + stream->SetSamFreq( i + 200 ); + + aContainer->AddL( *stream ); + CleanupStack::PopAndDestroy( stream ); + } + break; + + default: + { + TRACE_ASSERT_ALWAYS; + } + break; + } + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateObjectPubSub +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateObjectPubSubL( TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects, + TStreamConObjectType aobjectType2, + TInt64 aNumberOfObjects2 ) + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + CAccPolAudioStreamFormatCon* container = + CAccPolAudioStreamFormatCon::NewLC(); + + FillObjectL( container, aobjectType, aNumberOfObjects ); + FillObjectL( container, aobjectType2, aNumberOfObjects2 ); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize container to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + container->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + TPtr8 ptr( buf->Ptr( 0 ) ); + + TInt retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( container ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateObjectPubSub +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateTopologyObjectsToPubSubL( + TTFAccessoryTestCaseStateControl& aParameter ) + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + CAccPolAudioTopologyObjectCon* aObject = + CAccPolAudioTopologyObjectCon::NewLC(); + + //Speaker + //OT-3 + CAccPolOutputTerminal* OT3 = CAccPolOutputTerminal::NewLC( 3, + CAccPolOutputTerminal::EAPTHeadphone, + 2 ); + //Connected to FU-2 + aObject->AddL( *OT3 ); + + //FU2 + CAccPolFeatureUnit* FU2 = CAccPolFeatureUnit::NewLC( 2, 8 ); + // Volume control object. + CAccPolVolumeControl* speakerRightVolume = + CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* speakerLeftVolume = + CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); + + CAccPolMuteControl* speakermute = + CAccPolMuteControl::NewLC( KAccMasterChannel, ETrue ); + + FU2->AddControlL( *speakerRightVolume ); + FU2->AddControlL( *speakerLeftVolume ); + FU2->AddControlL( *speakermute ); + + //Connected to MU-8 + aObject->AddL( *FU2 ); + + CAccPolMixerUnit* MU8 = CAccPolMixerUnit::NewLC( 8 ); + MU8->AddSourceIdL( 1 ); + MU8->AddSourceIdL( 7 ); + + //Connected to IT1 and FU7 + aObject->AddL( *MU8 ); + + //Choice one + //IT-1 + TUint8 aChannelCount = 2; + TUint16 aChannelConfig = 0; + aChannelConfig = aChannelConfig | KAccRightFrontChannel; + aChannelConfig = aChannelConfig | KAccLeftFrontChannel; + + CAccPolInputTerminal* IT1 = CAccPolInputTerminal::NewLC( 1, + CAccPolInputTerminal::EAPTStream, + aChannelCount, + aChannelConfig ); + aObject->AddL( *IT1 ); + + //choice two + //FU7 + CAccPolFeatureUnit* FU7 = CAccPolFeatureUnit::NewLC( 7, 5 ); //Connected to FU5 + // Volume control object. + CAccPolVolumeControl* sidetoneRightVolume = + CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* sidetoneLeftVolume = + CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); + + FU7->AddControlL( *sidetoneRightVolume ); + FU7->AddControlL( *sidetoneLeftVolume ); + + aObject->AddL( *FU7 ); + + //Microphone + //IT-4 + + //OT-6 + CAccPolOutputTerminal* OT6 = CAccPolOutputTerminal::NewLC( 6, + CAccPolOutputTerminal::EAPTStream, + 10 ); + //Connected to SU-10 + aObject->AddL( *OT6 ); + + //SU-10 + CAccPolSelectorUnit* SU10 = CAccPolSelectorUnit::NewLC( 10, 1 ); + + // Connected to FU 5 + SU10->AddSourceIdL( 5 ); + aObject->AddL( *SU10 ); + + //FU5 + CAccPolFeatureUnit* FU5 = CAccPolFeatureUnit::NewLC( 5, 9 ); + + // Volume control object. + CAccPolVolumeControl* micRightVolume = + CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* micLeftVolume = + CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); + CAccPolMuteControl* micmute = CAccPolMuteControl::NewLC( KAccMasterChannel, + ETrue ); + + FU5->AddControlL( *micRightVolume ); + FU5->AddControlL( *micLeftVolume ); + FU5->AddControlL( *micmute ); + + //Connected to FU-9 + aObject->AddL( *FU5 ); + + ///FU9 + CAccPolFeatureUnit* FU9 = CAccPolFeatureUnit::NewLC( 9, 4 ); + //Connected IT-4 + aObject->AddL( *FU9 ); + + CAccPolInputTerminal* IT4 = CAccPolInputTerminal::NewLC( 4, + CAccPolInputTerminal::EAPTMicrophone, + aChannelCount, + aChannelConfig ); + aObject->AddL( *IT4 ); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize container to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + aObject->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + TInt retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + // Notify ASY stub + if( aParameter.iArg2 ) + { + PublishAndSubscribeL( aParameter ); + } + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( IT4 ); + CleanupStack::PopAndDestroy( FU9 ); + CleanupStack::PopAndDestroy( micmute ); + CleanupStack::PopAndDestroy( micLeftVolume ); + CleanupStack::PopAndDestroy( micRightVolume ); + CleanupStack::PopAndDestroy( FU5 ); + CleanupStack::PopAndDestroy( SU10 ); + CleanupStack::PopAndDestroy( OT6 ); + CleanupStack::PopAndDestroy( sidetoneLeftVolume ); + CleanupStack::PopAndDestroy( sidetoneRightVolume ); + CleanupStack::PopAndDestroy( FU7 ); + CleanupStack::PopAndDestroy( IT1 ); + CleanupStack::PopAndDestroy( MU8 ); + CleanupStack::PopAndDestroy( speakermute ); + CleanupStack::PopAndDestroy( speakerLeftVolume ); + CleanupStack::PopAndDestroy( speakerRightVolume ); + CleanupStack::PopAndDestroy( FU2 ); + CleanupStack::PopAndDestroy( OT3 ); + CleanupStack::PopAndDestroy( aObject ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CallAccessoryFunctionL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) + { + + // COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CallAccessoryFunctionL(%d, %d, %d)" ), aParameter.iAccessoryFunction, aParameter.iArg1, aParameter.iArg2 ) ); + if( !iInitialized ) + { + InitializeL(); + } + + TInt retval = KTFErrAccessoryServiceMissing; + + switch( aParameter.iAccessoryFunction ) + { + case ETFAccessorySet_ObjectPubSub: + { + CreateObjectPubSubL( ( TStreamConObjectType )aParameter.iArg1, + aParameter.iArg2, + ( TStreamConObjectType )aParameter.iArg3, + aParameter.iArg4 ); + retval = KErrNone; + } + break; + + case ETFAccessorySet_TopologyObjectsPubSub: + { + CreateTopologyObjectsToPubSubL( aParameter ); + retval = KErrNone; + } + break; + + case ETFAccessorySet_PubSub: + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryNotifierMethod, + RProperty::EInt ); + retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryNotifierMethod, + aParameter.iArg1 ); + } + break; + + case ETFConnectWiredAccessory: + { + PublishAndSubscribeL( aParameter ); + retval = KErrNone; + } + break; + + case ETFClearStack: + { + CTFTestControlObserver* observerItem; + TInt count = 0; + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( observerItem = iStackIter++ ) != NULL ) + { + observerItem->Cancel(); + iStack.Remove( *observerItem ); + delete observerItem; + count++; + }; + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::ETF_Pappa - count=%d " ), count ) ); + retval = KErrNone; + } + break; + + case ETFDisconnectWiredAccessory: + { + retval = KErrNone; + PublishAndSubscribeL( aParameter ); + TAccPolGenericID emptyInstance; + iGenericId[aParameter.iGid] = emptyInstance; + } + break; + + case ETFCheckCapabilityGroup: + { + if( aParameter.iArg2 + == iGenericId[aParameter.iGid].SubblockCaps( aParameter.iArg3 ) ) + { + retval = KErrNone; + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFCheckCapability: + { + RAccessoryConnection accessoryConnectionn; + accessoryConnectionn.CreateSubSession( iAccessoryServer ); + + CAccPolSubblockNameArray* nameArrayy = + CAccPolSubblockNameArray::NewL(); + CleanupStack::PushL( nameArrayy ); + accessoryConnectionn.GetSubblockNameArrayL( iGenericId[aParameter.iGid], + *nameArrayy ); + + if( aParameter.iArg2 == nameArrayy->HasName( aParameter.iArg3 ) ) + { + retval = KErrNone; + } + else + { + retval = KErrNotFound; + } + + CleanupStack::PopAndDestroy( nameArrayy ); + accessoryConnectionn.CloseSubSession(); + } + break; + + case ETFFindAndCheckRequest: + + { + FindAndCheckRequestL(&retval, aParameter); + } + break; + + case ETFFindAndCheckObjectRequest: + { + CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); + TRACE_ASSERT( testCase != NULL ); + if( testCase != NULL ) + { + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( iObserverItem = iStackIter++ ) != NULL ) + { + if( iObserverItem->FindRequest( aParameter.iRequestType ) ) + { + testCase->CheckObjectRequest( iObserverItem->iStatus, + iObserverItem->iObjectValue, + iObserverItem->iCapabilityName ); + + if( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() + { + if( KTFDontDeleteObserver != aParameter.iArg1 ) + { + iStack.Remove( *iObserverItem ); + delete iObserverItem; + return; + } + else + { + User::Leave( KTFDontDeleteObserver ); + } + } + else + { + retval = KErrGeneral; + } + } + } + } + else + { + retval = KErrGeneral; + } + } + + retval = KErrNone; + } + break; + + // + // Accessory Connection + // + case ETFAccessoryConnection_Open: + { + AccessoryConnectionOpenClose(ETFAccessoryConnection_Open, &retval); + } + break; + + case ETFAccessoryConnection_Close: + + { + AccessoryConnectionOpenClose(ETFAccessoryConnection_Close, &retval); + } + break; + + // + // Accessory Settings + // + case ETFAccessorySettings_Open: + { + AccessorySettingsOpenClose(ETFAccessorySettings_Open, &retval); + } + break; + + case ETFAccessorySettings_Close: + { + AccessorySettingsOpenClose(ETFAccessorySettings_Close, &retval); + } + break; + + case ETFSetHWDeviceSettings: + { + retval + = iAccessorySettings->SetHWDeviceSettingsL( aParameter.iArg1, + ( TBool )aParameter.iArg2 ); + } + break; + + case ETFGetHWDeviceSettings: + { + TUint32 aSettingsValue( 0 ); + retval = iAccessorySettings->GetHWDeviceSettings( aSettingsValue ); + + if( aSettingsValue != aParameter.iArg1 ) + { + retval = KErrArgument; + } + } + break; + + case ETFGetSupportedHWDeviceSettings: + { + TUint32 aSettingsSupportedValue( 0 ); + + retval + = iAccessorySettings->GetSupportedHWDeviceSettings( aSettingsSupportedValue ); + + if( aSettingsSupportedValue != ( aParameter.iArg1 + | aParameter.iArg2 ) ) + { + retval = KErrArgument; + } + } + break; + + case ETFSetIntAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + //Set Lights + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTInt( aParameter.iArg4 ); + + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFSetBoolAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + //Set Lights + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTBool( aParameter.iArg4 ); + + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFSetDesAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + TBuf buf; + buf.Num( aParameter.iArg3 ); + // buf.Copy( *aParameter.iArg3 ); + + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTDes( buf ); + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFGetIntAccessoryModeSetting: + { + TInt aSettingsValueInt; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingInt ) + { + retval = aSetting.GetTInt( aSettingsValueInt ); + + if( retval != KErrNotFound ) + { + if( aSettingsValueInt == aParameter.iArg4 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFGetBoolAccessoryModeSetting: + { + TBool aSettingsValueBool; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingBool ) + { + retval = aSetting.GetTBool( aSettingsValueBool ); + + if( retval != KErrNotFound ) + { + if( aSettingsValueBool == ( TBool )aParameter.iArg4 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFGetDesAccessoryModeSetting: + { + TBuf aSettingsValueDes; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingDes ) + { + retval = aSetting.GetTDes( aSettingsValueDes ); + + if( retval != KErrNotFound ) + { + TBuf buffer; + buffer.Num( aParameter.iArg3 ); + if( KErrNone == aSettingsValueDes.Compare( buffer ) ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFSetSeveralAccessoryModeSetting: + { + + TAccModeSetting accModeSettingIn; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 1 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "012345678901234567890" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( ETrue ); + arrayIn.AddSetting( accModeSettingIn ); + + retval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, + arrayIn ); + + } + break; + + case ETFGetSeveralAccessoryModeSetting: + { + + TAccModeSetting accModeSettingOut; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf aDesOut; + TAccModeSettingArray arrayOut; + TInt intOut( 0 ); + // set input parameters for GetAccessoryModeSettings() + // setting 11 + accModeSettingOut.SetId( 11 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 12 + accModeSettingOut.SetId( 12 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 13 + accModeSettingOut.SetId( 13 ); + arrayOut.AddSetting( accModeSettingOut ); + + retval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, + arrayOut ); + + // Check that got settings are right + + TInt count = arrayOut.GetArraySize(); + TInt foundCount( 0 ); + + for( TInt index = 0; index < count; index++ ) + { + arrayOut.GetSetting( index, accModeSettingOut ); + + if( 11 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTInt( intOut ); + + if( 1 == intOut ) + { + foundCount++; + } + } + + if( 12 == accModeSettingOut.Id() ) + { + accModeSettingOut.GetTDes( aDesOut ); + + if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) + { + foundCount++; + } + + } + + if( 13 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTBool( intOut ); + + if( intOut ) + { + foundCount++; + } + } + } + + if( foundCount != 3 ) + { + retval = KErrNotFound; + } + + // + // Reset Settings + // + TAccModeSetting accModeSettingIn; + TBuf aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 0 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( EFalse ); + arrayIn.AddSetting( accModeSettingIn ); + + iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + } + break; + + // + // Accessory Single Connection + // + case ETFAccessorySingleConnection_Open: + { + if( iAccessorySingleConnection == NULL ) + { + iAccessorySingleConnection + = new ( ELeave ) RAccessorySingleConnection; + retval + = iAccessorySingleConnection->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySingleConnection_Close: + { + TRACE_ASSERT( iAccessorySingleConnection != NULL ); + + if( iAccessorySingleConnection != NULL ) + { + iAccessorySingleConnection->CloseSubSession(); + delete iAccessorySingleConnection; + iAccessorySingleConnection = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyNewAccessoryConnected: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyNewAccessoryConnected( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryDisconnected: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryDisconnected( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFNotifyIntAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyIntegerAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFNotifyBoolAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBooleanAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFNotifyObjectAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyObjectAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryIntGetValue: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt aIntValue; + + iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], + aNameRecord, + aIntValue ); + + if( aIntValue.iValue == aParameter.iArg2 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + break; + + case ETFAccessoryBoolGetValue: + { + RAccessoryConnection accessoryConnection; + accessoryConnection.CreateSubSession( iAccessoryServer ); + + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool boolValue; + retval + = accessoryConnection.GetValueL( iGenericId[aParameter.iGid], + nameRecord, + boolValue ); + + if( boolValue.iValue != aParameter.iArg1 ) + { + retval = KErrArgument; + } + + accessoryConnection.CloseSubSession(); + } + break; + + case ETFAccessoryDes8GetValue: + { + TBuf8<80> + worm( _L8("Malicious Worm Attach with extra long data with extra long content" )); + TBuf8<85> valueBuf; + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg1 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, valueBuf ) ); + + if( err == aParameter.iExpectedResult ) + { + + if( aParameter.iExpectedResult == KErrArgument ) + { + retval = KErrNone; + } + else + { + if( KErrNone == valueBuf.Compare( worm ) ) + { + RDebug::RawPrint( valueBuf ); + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrArgument; + } + } + break; + + case ETFAccessoryObjectParseTopology: + { + + TInt rspeaker( KErrGeneral ); + TInt lspeaker( KErrGeneral ); + TInt rmic( KErrGeneral ); + TInt lmic( KErrGeneral ); + TInt mute( KErrGeneral ); + TInt sidetone( KErrGeneral ); + // + // Find speaker volume object in USB headset case. + // + CAccPolAudioUnitBase* audioUnit = NULL; + CAccPolAudioControlBase* audioControl = NULL; + //CAccPolOutputTerminal* ouputTerminal = NULL; + + if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, + audioUnit ) ) + { + if( audioUnit->GetNextAudioUnitL( audioUnit ) ) + { + if( audioUnit->ObjectType() + == EAccPolAudioFeatureUnitObject ) + { + if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, + KAccRightFrontChannel, + audioControl ) ) + { + iSpeakerRightVolume = CAccPolVolumeControl::NewL(); + *iSpeakerRightVolume + = *reinterpret_cast ( audioControl ); + rspeaker = KErrNone; + } + if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, + KAccLeftFrontChannel, + audioControl ) ) + { + iSpeakerLeftVolume = CAccPolVolumeControl::NewL(); + *iSpeakerLeftVolume + = *reinterpret_cast ( audioControl ); + lspeaker = KErrNone; + } + if( audioUnit->GetAudioControlL( EAccPolAudioMuteControlObject, + KAccMasterChannel, + audioControl ) ) + { + iSpeakerMute = CAccPolMuteControl::NewL(); + *iSpeakerMute + = *reinterpret_cast ( audioControl ); + mute = KErrNone; + } + + } + } + } + + // + // Find mic volume object in USB headset case. + // + if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTStream, + audioUnit ) ) + { + do + { + } + while( audioUnit->GetNextAudioUnitL( audioUnit ) + && audioUnit->ObjectType() != EAccPolAudioFeatureUnitObject ); + + RPointerArray aAudioControls; + audioUnit->GetAudioControlsL( KAccRightFrontChannel, + aAudioControls ); + + if( aAudioControls.Count() > 0 ) + { + iMicRightVolume = CAccPolVolumeControl::NewL(); + *iMicRightVolume + = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); + rmic = KErrNone; + } + aAudioControls.Reset(); + + audioUnit->GetAudioControlsL( KAccLeftFrontChannel, + aAudioControls ); + + if( aAudioControls.Count() > 0 ) + { + iMicLeftVolume = CAccPolVolumeControl::NewL(); + *iMicLeftVolume + = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); + lmic = KErrNone; + } + + // + // Find sidetone volume object in USB headset case. + // + iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, + audioUnit ); + + do + { + audioUnit->GetNextAudioUnitL( audioUnit ); + } + while( audioUnit->ObjectType() != EAccPolAudioMixerUnitObject ); + + if( audioUnit->SourceIdCount() > 1 ) + { + RPointerArray aAudioUnits; + audioUnit->GetAudioUnitListL( aAudioUnits ); + + for( TInt i = 0; i < aAudioUnits.Count(); i++ ) + { + if( aAudioUnits.operator[]( i )->ObjectType() + == EAccPolAudioFeatureUnitObject ) + { + audioUnit = aAudioUnits.operator[]( i ); + break; + } + } + } + + aAudioControls.Reset(); + audioUnit->GetAudioControlsL( aAudioControls ); + if( aAudioControls.Count() == 2 ) + { + sidetone = KErrNone; + } + } + + retval = ( rspeaker | lspeaker | rmic | lmic | mute | sidetone ); + + } + break; + + case ETFAccessoryGetStreamObjects: + { + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); + + if( err == aParameter.iExpectedResult ) + { + //externalize container to bufFromASY + CBufFlat* bufFromASY = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromASY ); + bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + RBufWriteStream wStrm; + ( void )wStrm.Open( *bufFromASY ); + wStrm.PushL(); + iStreamContainer->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); + + //Read container from PubSub + RProperty prop; + RBufReadStream rStrm; + CBufFlat* bufFromPubSub = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromPubSub ); + bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); + TInt ret = prop.Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptrBufFromPubSub ); + + TInt k = sizeof( bufFromASY ); + TInt kk = sizeof( bufFromPubSub ); + + bufFromASY->Compress(); + bufFromPubSub->Compress(); + + k = sizeof( bufFromASY ); + kk = sizeof( bufFromPubSub ); + + retval + = ( 0 + == memcompare( reinterpret_cast ( &ptrbufFromASY ), + sizeof( bufFromASY ), + reinterpret_cast ( &ptrBufFromPubSub ), + sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; + + CleanupStack::PopAndDestroy( bufFromPubSub ); + CleanupStack::PopAndDestroy( bufFromASY ); + } + } + break; + + case ETFAccessoryGetStreamObjectsFromPolicy: + { + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); + + RPointerArray inputStreamObjects; + RPointerArray outputStreamObjects; + + iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); + iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); + + CAccPolAudioStreamFormat* inputStream = + inputStreamObjects.operator[]( 0 ); + CAccPolAudioStreamFormat* ouputStream = + outputStreamObjects.operator[]( 0 ); + + retval = err; + } + break; + + case ETFAccessorySetStreamObjects: + { + CAccPolAudioStreamFormatCon* setContainer = CAccPolAudioStreamFormatCon::NewLC(); + + RPointerArray inputStreamObjects; + RPointerArray outputStreamObjects; + + iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); + CAccPolAudioStreamFormat* inputStream = NULL; + for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && + inputStream->UnitId() == 0 && + inputStream->StreamType() == CAccPolAudioStreamFormat::EStereo && + inputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample16 && + inputStream->SamFreq() == 200 ) + { + setContainer->AddL( *inputStream ); + break; + } + } + + iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); + CAccPolAudioStreamFormat* outputStream = NULL; + for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && + outputStream->UnitId() == 0 && + outputStream->StreamType() == CAccPolAudioStreamFormat::EMono && + outputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample32 && + outputStream->SamFreq() == 200 ) + { + setContainer->AddL( *outputStream ); + break; + } + } + + RBufWriteStream wStrm; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + (void)wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, KTFAccessoryObjectMethod, ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + inputStreamObjects.Close(); + outputStreamObjects.Close(); + } + break; + + case ETFAccessoryGetTopologyObjects: + { + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + if( err == aParameter.iExpectedResult ) + { + //externalize container to bufFromASY + CBufFlat* bufFromASY = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromASY ); + bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + RBufWriteStream wStrm; + ( void )wStrm.Open( *bufFromASY ); + wStrm.PushL(); + iTopologyContainer->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); + + //Read container from PubSub + RProperty prop; + RBufReadStream rStrm; + CBufFlat* bufFromPubSub = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromPubSub ); + bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); + TInt ret = prop.Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptrBufFromPubSub ); + + TInt k = sizeof( bufFromASY ); + TInt kk = sizeof( bufFromPubSub ); + + bufFromASY->Compress(); + bufFromPubSub->Compress(); + + k = sizeof( bufFromASY ); + kk = sizeof( bufFromPubSub ); + + retval + = ( 0 + == memcompare( reinterpret_cast ( &ptrbufFromASY ), + sizeof( bufFromASY ), + reinterpret_cast ( &ptrBufFromPubSub ), + sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; + + CleanupStack::PopAndDestroy( bufFromPubSub ); + CleanupStack::PopAndDestroy( bufFromASY ); + } + } + break; + + case ETFAccessoryGetVolumeControlObjects: + { + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + iTopologyContainer->AddL( *iSpeakerRightVolume ); + iTopologyContainer->AddL( *iSpeakerLeftVolume ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + CAccPolVolumeControl* rightVolume; + rightVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 0 ); + + CAccPolVolumeControl* leftVolume; + leftVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 1 ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySetVolumeControlObjects: + { + RBufWriteStream wStrm; + CAccPolAudioTopologyObjectCon* setContainer = + CAccPolAudioTopologyObjectCon::NewLC(); + + iSpeakerRightVolume->SetVolumeDb( aParameter.iArg1 ); + iSpeakerRightVolume->SetMinVolumeDb( aParameter.iArg2 ); + iSpeakerRightVolume->SetMaxVolumeDb( aParameter.iArg4 ); + iSpeakerRightVolume->SetVolumeResDb( 0x05 ); + setContainer->AddL( *iSpeakerRightVolume ); + iSpeakerLeftVolume->SetVolumeDb( aParameter.iArg1 ); + iSpeakerLeftVolume->SetMinVolumeDb( aParameter.iArg2 ); + iSpeakerLeftVolume->SetMaxVolumeDb( aParameter.iArg4 ); + iSpeakerLeftVolume->SetVolumeResDb( 0x05 ); + setContainer->AddL( *iSpeakerLeftVolume ); + + CBufFlat* buf = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + } + break; + + case ETFAccessoryGetMuteControlObjects: + { + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + iTopologyContainer->AddL( *iSpeakerMute ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + CAccPolMuteControl* mute; + mute = ( CAccPolMuteControl* )iTopologyContainer->AtL( 0 ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySetMuteControlObjects: + { + RBufWriteStream wStrm; + CAccPolAudioTopologyObjectCon* setContainer = + CAccPolAudioTopologyObjectCon::NewLC(); + + iSpeakerMute->SetMute( aParameter.iArg1 ); + setContainer->AddL( *iSpeakerMute ); + + CBufFlat* buf = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + } + break; + + // + // Accessory Control + // + + case ETFAccessoryControl_Open: + { + if( iAccessoryControl == NULL ) + { + iAccessoryControl = new ( ELeave ) RAccessoryControl; + retval = iAccessoryControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryControl_Close: + { + TRACE_ASSERT( iAccessoryControl != NULL ); + + if( iAccessoryControl != NULL ) + { + iAccessoryControl->CloseSubSession(); + delete iAccessoryControl; + iAccessoryControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryConnectionStatusChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryConnectionStatusChanged( iGenericIdArray ); + retval = KErrNone; + } + break; + + case ETFSyncGetAccessoryConnectionStatus: + { + iAccessoryConnection->GetAccessoryConnectionStatus( iGenericIdArray ); + + if( iGenericIdArray.Count() != aParameter.iArg1 ) + { + retval = KErrArgument; + } + else + { + retval = KErrNone; + } + } + break; + + case ETFASyncGetAccessoryConnectionStatus: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->GetAccessoryConnectionStatus( iGenericIdArray ); + retval = KErrNone; + } + break; + + case ETFSetIntValue: + { + SetIntValue(aParameter, &retval); + } + break; + + case ETFSetBoolValue: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool aBoolValue; + aBoolValue.iValue = aParameter.iArg1; + retval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], + aNameRecord, + aBoolValue ); + } + break; + + // + //Tuupaa + // + case ETFAccessoryValueChangedNotifyInt: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( KAccAudioOutputType ); + TAccValueTypeTInt aIntValue; + aIntValue.iValue = EAccAudioOutPutTypePublic; + iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], + aNameRecord, + aIntValue ); + retval = KErrNone; + } + break; + + case ETFAccessoryValueChangedNotifyBool: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool aBoolValue; + aBoolValue.iValue = ETrue; + iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], + aNameRecord, + aBoolValue ); + retval = KErrNone; + } + break; + + // + // BT Control + // + case ETFBTAccessoryValueChangedNotifyBool: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool boolValue; + boolValue.iValue = aParameter.iArg4; + iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, + nameRecord, + boolValue ); + retval = KErrNone; + } + break; + + case ETFBTAccessoryValueChangedNotifyInt: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt intValue; + intValue.iValue = aParameter.iArg4; + iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, + nameRecord, + intValue ); + retval = KErrNone; + } + break; + + case ETFAccessoryBtControl_Open: + { + if( iAccessoryBTControl == NULL ) + { + iAccessoryBTControl = new ( ELeave ) RAccessoryBTControl; + retval + = iAccessoryBTControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryBtControl_Close: + { + TRACE_ASSERT( iAccessoryBTControl != NULL ); + + if( iAccessoryBTControl != NULL ) + { + iAccessoryBTControl->CloseSubSession(); + delete iAccessoryBTControl; + iAccessoryBTControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryBtConnectAccessory: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->ConnectBTAccessory( btaddr ); + retval = KErrNone; + } + break; + case ETFAccessoryBtDisconnectAccessory: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRequestStatus status; + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->DisconnectBTAccessory( btaddr ); + retval = KErrNone; + TAccPolGenericID emptyInstance; + iGenericId[aParameter.iGid] = emptyInstance; + } + break; + + case ETFAccessoryNotifyBluetoothAudioLinkOpenReq: + { + //TRequestStatus status; + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBluetoothAudioLinkOpenReq(); + retval = KErrNone; + } + break; + + case ETFAccessoryBluetoothAudioLinkOpenedNotify: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenedNotifyL( btaddr, (TAccAudioType)aParameter.iArg3 ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBluetoothAudioLinkOpenResp: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TInt response( aParameter.iArg2 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenRespL( btaddr, response ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryNotifyBluetoothAudioLinkCloseReq: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBluetoothAudioLinkCloseReq(); + retval = KErrNone; + } + break; + + case ETFAccessoryBluetoothAudioLinkClosedNotify: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkClosedNotifyL( btaddr, ( TAccAudioType )aParameter.iArg3 ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBluetoothAudioLinkCloseResp: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TInt response( aParameter.iArg2 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkCloseRespL( btaddr, response ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBtCancelConnectAccessory: + { + TRequestStatus status; + TBTDevAddr btaddr( aParameter.iArg1 ); + iAccessoryBTControl->ConnectAccessory( status, btaddr ); + iAccessoryBTControl->CancelConnectAccessory(); + User::WaitForRequest( status ); + if( KErrCancel != status.Int() ) + { + retval = status.Int(); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryBtCancelDisconnectAccessory: + { + TRequestStatus status; + TBTDevAddr btaddr( aParameter.iArg1 ); + iAccessoryBTControl->DisconnectAccessory( status, btaddr ); + iAccessoryBTControl->CancelDisconnectAccessory(); + User::WaitForRequest( status ); + retval = status.Int(); + } + break; + + // + // Accessory Mode + // + case ETFAccessoryMode_Open: + { + if( iAccessoryMode == NULL ) + { + iAccessoryMode = new ( ELeave ) RAccessoryMode; + retval = iAccessoryMode->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryMode_Close: + { + TRACE_ASSERT( iAccessoryMode != NULL ); + + if( iAccessoryMode != NULL ) + { + iAccessoryMode->CloseSubSession(); + delete iAccessoryMode; + iAccessoryMode = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryModeChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryModeChanged(); + retval = KErrNone; + } + break; + + case ETFAccessoryAccessoryModeSync: + { + TAccPolAccessoryMode mode; + retval = iAccessoryMode->GetAccessoryMode( mode ); + + if( retval == KErrNone ) + { + if( aParameter.iArg1 != mode.iAccessoryMode ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter1 %d %d" ), aParameter.iArg1, mode.iAccessoryMode ) ); + retval = KTFErrAccessoryUnexpectedArg1; + } +#ifdef __WINS__ // Just check this in winscw + if( aParameter.iArg2 != mode.iAudioOutputStatus ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter2 %d %d" ), aParameter.iArg2, mode.iAudioOutputStatus ) ); + retval = KTFErrAccessoryUnexpectedArg2; + } +#endif + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Getting Accessory Mode Failed %d" ), retval ) ); + } + + } + break; + + case ETFAccessoryAccessoryModeASync: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->GetAccessoryMode(); + retval = KErrNone; + } + break; + + // + // Audio Control + // + case ETFAccessoryAudioControl_Open: + { + if( iAccessoryAudioControl == NULL ) + { + iAccessoryAudioControl = new ( ELeave ) RAccessoryAudioControl; + retval + = iAccessoryAudioControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryAudioControl_Close: + { + TRACE_ASSERT( iAccessoryAudioControl != NULL ); + + if( iAccessoryAudioControl != NULL ) + { + iAccessoryAudioControl->CloseSubSession(); + delete iAccessoryAudioControl; + iAccessoryAudioControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAudioRoutingStatusNotify: + { + RAccessoryAudioControl audioControl; + audioControl.CreateSubSession( iAccessoryServer ); + + audioControl.AudioRoutingStatusNotify( aParameter.iArg1, + iGenericId[aParameter.iGid] ); + retval = KErrNone; + + audioControl.CloseSubSession(); + } + break; + + case ETFAccessoryAudioLinkOpen: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->AccessoryAudioLinkOpen( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryAudioLinkOpened: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryAudioLinkOpened( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryAudioLinkClosed: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryAudioLinkClosed( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryAccessoryAudioLinkClose: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->AccessoryAudioLinkClose( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryPublishAndSubscribe: + { + PublishAndSubscribeL( aParameter ); + retval = KErrNone; + } + break; + + case ETFAccessory_Cancel: + { + CTFTestControlObserver* item; + if( !iStack.IsEmpty() ) + { + item = iStack.First(); + item->Cancel(); + } + retval = KErrNone; + } + break; + + // + // Cancels + // + case ETFCancelAccessoryAudioLinkOpen: + { + iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); + retval = KErrNone; + } + break; + + case ETFCancelAccessoryAudioLinkClose: + { + iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryAudioLinkOpened: + { + iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryAudioLinkClosed: + { + iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyProcessCommand: + { + TRACE_ASSERT_ALWAYS; + } + break; + + case ETFCancelConnectAccessory: + { + iAccessoryControl->CancelConnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelDisconnectAccessory: + { + iAccessoryControl->CancelDisconnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyBluetoothAudioLinkOpenReq: + { + iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyBluetoothAudioLinkCloseReq: + { + iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryConnectionStatusChanged: + { + iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); + retval = KErrNone; + } + break; + + case ETFCancelGetAccessoryConnectionStatus: + { + iAccessoryConnection->CancelGetAccessoryConnectionStatus(); + retval = KErrNone; + } + break; + + case ETFCancelConnectAccessoryBT: + { + iAccessoryBTControl->CancelConnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelDisconnectAccessoryBT: + { + iAccessoryBTControl->CancelDisconnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryModeChanged: + { + iAccessoryMode->CancelNotifyAccessoryModeChanged(); + retval = KErrNone; + } + break; + + case ETFCancelGetAccessoryMode: + { + iAccessoryMode->CancelGetAccessoryMode(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyNewAccessoryConnected: + { + iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryDisconnected: + { + iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryValueChanged: + { + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + iAccessorySingleConnection->CancelNotifyAccessoryValueChanged( nameRecord ); + retval = KErrNone; + } + break; + + case ETFSelectionDialogText: + { + SelectionDialog(ETFSelectionDialogText, &retval); + } + break; + + case ETFSelectionDialogCancel: + { + SelectionDialog(ETFSelectionDialogCancel, &retval); + } + break; + + case ETFNotSupportedNote: + { + TUid KAccFwUiNoteNotifierUid = + { + 0x10205061 + }; + RNotifier notifier; + notifier.Connect(); + + TInt err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, + KNullDesC8 ); + + TInt value( 0 ); + TPckg intPckg( value ); + notifier.Close(); + + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + retval = KErrNone; + } + break; + + case ETFValueRecordTests: + { + retval = TestValueRecordL(); + } + break; + + case ETFObjectBaseSerializationTests: + { + retval = TestBaseSerializationL(); + } + break; + + case ETFCheckConnectedAccessory: + { + CheckConnectedAccessory(&retval); + } + break; + + case ETFCallTClassMethods: + { + CallTClassMethods(&retval); \ + } + + case ETFSetHdmiObject_PubSub: + { + CreateHdmiObjectsToPubSubL( aParameter ); + retval = KErrNone; + break; + } + + case ETFGetHdmiObject: + { + TInt err = KErrNone; + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + + // Create HDMI container + CAccPolHdmiObjectCon* conFromASY = CAccPolHdmiObjectCon::NewLC(); + CAccPolHdmiObjectCon* conFromPS = CAccPolHdmiObjectCon::NewLC(); + + // Get HDMI container + TRAP( err, iAccessorySingleConnection->GetValueL( + iGenericId[aParameter.iGid], nameRecord, *conFromASY ) ); + + // Get HDMI container from P&S + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + TPtr8 bufPtr( buf->Ptr( 0 ) ); + err = RProperty::Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + bufPtr ); + if( err == KErrNone ) + { + RBufReadStream readStream( *buf ); + readStream.PushL(); + conFromPS->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + } + switch( aParameter.iArg3 ) + { + case KAccVideoHdmiAttributes: + { + // Validate object count + if( conFromASY->Count() != conFromPS->Count() ) + { + err = KErrArgument; + } + + // Validate speaker allocation + RAccPolHdmiSpeakerAllocationArray array; + CleanupClosePushL( array ); + conFromASY->GetHdmiSpeakerAllocationObjectsL( array ); + if( array.Count() ) + { + CAccPolHdmiSpeakerAllocation* speakerAllocation = array[0]; + TUint32 bits = speakerAllocation->SpeakerAllocation(); + + // Speaker allocation should be EHdmiSpeakerUnknown + if( bits != CAccPolHdmiSpeakerAllocation::EHdmiSpeakerUnknown ) + { + err = KErrArgument; + } + + // Speaker count should be zero + if( speakerAllocation->SpeakerCount() ) + { + err = KErrArgument; + } + } + CleanupStack::PopAndDestroy( &array ); + break; + } + case KAccVideoFormat: + { + // Validate object count + if( conFromASY->Count() != conFromPS->Count() ) + { + err = KErrArgument; + } + + // Validate video format + RAccPolHdmiVideoFormatArray array; + CleanupClosePushL( array ); + conFromASY->GetHdmiVideoFormatObjectsL( array ); + if( array.Count() ) + { + CAccPolHdmiVideoFormat* videoFormat = array[0]; + + // Interlaced video should be enabled + if( !videoFormat->Interlaced() ) + { + err = KErrArgument; + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &array ); + break; + } + default: + { + break; + } + } + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( conFromPS ); + CleanupStack::PopAndDestroy( conFromASY ); + retval = err; + break; + } + + case ETFCheckHdmiObject: + { + TInt err = KErrNone; + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d" ), + aParameter.iArg1 ) ); + switch( aParameter.iArg1 ) + { + case EAccPolHdmiObjectCon: + { + err = CheckHdmiContainerObjectL(); + break; + } + case EAccPolHdmiSinkObject: + { + err = CheckHdmiSinkObjectL(); + break; + } + case EAccPolHdmiAudioFormatObject: + { + err = CheckHdmiAudioFormatObjectL(); + break; + } + case EAccPolHdmiLatencyObject: + { + err = CheckHdmiLatencyObjectL(); + break; + } + case EAccPolHdmiSpeakerAllocationObject: + { + err = CheckHdmiSpeakerAllocationObjectL(); + break; + } + case EAccPolHdmiVideoFormatObject: + { + err = CheckHdmiVideoFormatObjectL(); + break; + } + default: + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Invalid HDMI object=%d" ), + aParameter.iArg1 ) ); + err = KErrArgument; + break; + } + } + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d returned with code %d" ), + aParameter.iArg1, err ) ); + retval = err; + break; + } + + default: + TRACE_ASSERT_ALWAYS; + break; + + } + User::LeaveIfError( retval ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::TestValueRecordL() +// ---------------------------------------------------------------------------------- +// +TInt CTFAccessoryTestControl::TestValueRecordL() + { + TInt ret( KErrNone ); + + TAccPolValueRecord valueRecord; + TBuf8 eci; + TBuf8 check; + _LIT( Kissa, "Kissa" ); + eci.Copy( Kissa ); + + valueRecord.SetValue( eci ); + check.Copy( valueRecord.ValueRef() ); + + if( KErrNone != eci.Compare( check ) ) + { + User::Leave( KErrGeneral ); + } + + TDesC8& test( valueRecord.ValueRef() ); + if( KErrNone != eci.Compare( test ) ) + { + User::Leave( KErrGeneral ); + } + + return ret; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::TestBaseSerializationL() +// ---------------------------------------------------------------------------------- +// +TInt CTFAccessoryTestControl::TestBaseSerializationL() + { + TInt ret( KErrNone ); + TInt err( KErrNone ); + + /*** One container *************************************************************/ + CAccPolAudioStreamFormatCon* container1 = + CAccPolAudioStreamFormatCon::NewLC(); + CAccPolAudioStreamFormatCon* container2 = + CAccPolAudioStreamFormatCon::NewLC(); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + container1->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + //Internalize from buf + RBufReadStream rStrm; + ( void )rStrm.Open( *buf ); + rStrm.PushL(); + container2->InternalizeL( rStrm ); + rStrm.Close(); + rStrm.Pop(); + + //container1 content must equal to container2 content + err = ( 0 == memcompare( reinterpret_cast ( container1 ), + sizeof(CAccPolObjectCon), + reinterpret_cast ( container2 ), + sizeof(CAccPolObjectCon) ) ) ? KErrNone : KErrGeneral; + User::LeaveIfError( err ); + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( container2 ); + CleanupStack::PopAndDestroy( container1 ); + container2 = NULL; + container1 = NULL; + /* end *************************************************************************/ + + //Make test again! + + CAccPolAudioStreamFormat* audioStream1 = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject, + 15, + KUidFormatMP3, + CAccPolAudioStreamFormat::EStereo, + CAccPolAudioStreamFormat::EBitsPerSample24, + 11 ); + + buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize to buf + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + audioStream1->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + //Internalize from buf + ( void )rStrm.Open( *buf ); + rStrm.PushL(); + + TInt objectid = rStrm.ReadUint8L(); + + if( ( TStreamConObjectType )objectid == EAccPolAudioInputStreamObject ) + { + CAccPolAudioStreamFormat* audioStream2 = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject ); + + audioStream2->InternalizeL( rStrm ); + + //audioStream1 content must equal to audioStream2 content + err = ( 0 == memcompare( reinterpret_cast ( audioStream1 ), + sizeof(CAccPolAudioStreamFormat), + reinterpret_cast ( audioStream2 ), + sizeof(CAccPolAudioStreamFormat) ) ) ? KErrNone : KErrGeneral; + + User::LeaveIfError( err ); + + CleanupStack::PopAndDestroy( audioStream2 ); + + rStrm.Close(); + rStrm.Pop(); + + } + else + { + User::LeaveIfError( KErrGeneral ); + } + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( audioStream1 ); + audioStream1 = NULL; + /* end *************************************************************************/ + + return ret; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::PublishAndSubscribeL() +// ---------------------------------------------------------------------------------- +// +void CTFAccessoryTestControl::PublishAndSubscribeL( TTFAccessoryTestCaseStateControl& aParameter ) + { + TPckgBuf buf; + + buf().iTestCaseID = aParameter.iTestCaseID; + buf().iMethod = aParameter.iMethod; + buf().iParam1 = aParameter.iArg1; + buf().iTimeMs = aParameter.iArg4; + buf().iGenericID = iGenericId[aParameter.iGid]; + + // Send capability to stub(s). + + // if( aParameter.iArg3 ) + // { + buf().iParam2 = aParameter.iArg3; + // } + + /* + if( aParameter.iArg3->Compare( KNullDesC ) ) + { + buf().iParam2.Copy( *aParameter.iArg3 ); + } + + */ + User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, + KTFAccessoryMethod, + buf ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL() +// ---------------------------------------------------------------------------------- +// +void CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL( + TTFAccessoryTestCaseStateControl& aParameter ) + { + // Define property just in case + RProperty::Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + // Create HDMI container + CAccPolHdmiObjectCon* con = CAccPolHdmiObjectCon::NewLC(); + switch( aParameter.iArg3 ) + { + case KAccVideoHdmiAttributes: + { + // Create audio format object + CreateHdmiObjectL( *con, EAccPolHdmiAudioFormatObject ); + + // Create latency object + CreateHdmiObjectL( *con, EAccPolHdmiLatencyObject ); + + // Create sink object + CreateHdmiObjectL( *con, EAccPolHdmiSinkObject ); + + // Create speaker allocation object + CreateHdmiObjectL( *con, EAccPolHdmiSpeakerAllocationObject ); + + // Create video format object + CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); + break; + } + case KAccVideoFormat: + { + // Create video format object + CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); + break; + } + default: + { + break; + } + } + // Stream HDMI container to P&S + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + RBufWriteStream writeStream( *buf ); + writeStream.PushL(); + con->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + + TPtr8 bufPtr( buf->Ptr( 0 ) ); + TInt err = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + bufPtr ); + User::LeaveIfError( err ); + + // Check if ASY stub needs to be informed + if( aParameter.iArg2 ) + { + PublishAndSubscribeL( aParameter ); + } + + // Cleanup + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( con ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiContainerObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiContainerObjectL() + { + TInt err = KErrNone; + CAccPolHdmiObjectCon* con1 = NULL; + CAccPolHdmiObjectCon* con2 = NULL; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + con1 = CAccPolHdmiObjectCon::NewL(); + CleanupStack::PushL( con1 ); + CleanupStack::PopAndDestroy( con1 ); + + // NewLC + con1 = CAccPolHdmiObjectCon::NewLC(); + CleanupStack::PopAndDestroy( con1 ); + + // Internalize & Externalize + con1 = CAccPolHdmiObjectCon::NewLC(); + CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + con1->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + + con2 = CAccPolHdmiObjectCon::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + con2->InternalizeL( readStream ); + if( con1->Count() == con2->Count() ) + { + TInt count = con1->Count(); + CAccPolObjectBase* objBase1 = NULL; + CAccPolObjectBase* objBase2 = NULL; + for( TInt i = 0; i < count; i++ ) + { + objBase1 = con1->AtL( i ); + objBase2 = con2->AtL( i ); + if( objBase1->ObjectType() != objBase2->ObjectType() ) + { + err = KErrArgument; + } + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( con2 ); + CleanupStack::PopAndDestroy( con1 ); + + // DuplicateLC + con1 = CAccPolHdmiObjectCon::NewLC(); + CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); + con2 = static_cast( con1->DuplicateLC() ); + if( con1->Count() == con2->Count() ) + { + TInt count = con1->Count(); + CAccPolObjectBase* objBase1 = NULL; + CAccPolObjectBase* objBase2 = NULL; + for( TInt i = 0; i < count; i++ ) + { + objBase1 = con1->AtL( i ); + objBase2 = con2->AtL( i ); + if( objBase1->ObjectType() != objBase2->ObjectType() ) + { + err = KErrArgument; + } + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( con2 ); + CleanupStack::PopAndDestroy( con1 ); + + // Rest of the API + con1 = CAccPolHdmiObjectCon::NewLC(); + THdmiConObjectType objectType = EAccPolHdmiObjectCon; + TBool exit = EFalse; + TInt index = 0; + TInt count = 0; + do + { + index++; + err = KErrArgument; + objectType = ( THdmiConObjectType )( index ); + CreateHdmiObjectL( *con1, objectType ); + count = con1->Count(); + CAccPolObjectBase* obj = NULL; + if( con1->Count() != index ) + { + err = KErrArgument; + break; + } + for( TInt ii = 0; ii < count; ii++ ) + { + obj = con1->AtL( ii ); + if( obj->ObjectType() == objectType ) + { + err = KErrNone; + break; + } + } + if( objectType == EAccPolHdmiVideoFormatObject ) + { + // Last object + exit = ETrue; + } + } + while( !exit && ( err == KErrNone ) ); + CleanupStack::PopAndDestroy( con1 ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiSinkObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiSinkObjectL() + { + TInt err = KErrNone; + CAccPolHdmiSink* obj = NULL; + CAccPolHdmiSink* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiSink::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiSink::NewL( ETrue, ETrue ); + CleanupStack::PushL( obj ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiSink::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSink::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiSinkObject ) + { + err = KErrArgument; + } + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSink ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiSink::NewLC(); + obj->SetBasicAudioSupport( ETrue ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + obj->SetHdcpSupport( ETrue ); + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL() + { + TInt err = KErrNone; + CAccPolHdmiAudioFormat* obj = NULL; + CAccPolHdmiAudioFormat* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiAudioFormat::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiAudioFormat::NewL( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiAudioFormat::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiAudioFormat::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiAudioFormatObject ) + { + err = KErrArgument; + } + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSink ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiAudioFormat::NewLC(); + obj->SetAudioFormat( HdmiAudioFormat::KUidFormatEAC3 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatEAC3 ) + { + err = KErrArgument; + } + obj->SetChannelCount( 2 ); + if( obj->ChannelCount() != 2 ) + { + err = KErrArgument; + } + obj->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample20 ); + if( !( obj->BitResolution() & CAccPolHdmiAudioFormat::EBitsPerSample20 ) ) + { + err = KErrArgument; + } + obj->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample24 ); + if( obj->MaxBitResolution() != CAccPolHdmiAudioFormat::EBitsPerSample24 ) + { + err = KErrArgument; + } + obj->SetSamFreq( CAccPolHdmiAudioFormat::ESamplingFreq192KHz ); + if( !( obj->SamFreq() & CAccPolHdmiAudioFormat::ESamplingFreq192KHz ) ) + { + err = KErrArgument; + } + obj->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + if( !( obj->FormatDependentValue() & CAccPolHdmiAudioFormat::EBitsPerSample16 ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiLatencyObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiLatencyObjectL() + { + TInt err = KErrNone; + CAccPolHdmiLatency* obj = NULL; + CAccPolHdmiLatency* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiLatency::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiLatency::NewL( HdmiLatency::KUidLatency, 100, 200 ); + CleanupStack::PushL( obj ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiLatency::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiLatency::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiLatencyObject ) + { + err = KErrArgument; + } + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiLatency ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiLatency::NewLC(); + obj->SetLatencyType( HdmiLatency::KUidLatency ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + obj->SetAudioLatency( 100 ); + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + obj->SetVideoLatency( 200 ); + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL() + { + TInt err = KErrNone; + CAccPolHdmiSpeakerAllocation* obj = NULL; + CAccPolHdmiSpeakerAllocation* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TUint32 bits = 0x0; + + // NewL + obj = CAccPolHdmiSpeakerAllocation::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewL( bits ); + CleanupStack::PushL( obj ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewL( EFalse, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + EFalse, + EFalse ); + CleanupStack::PushL( obj ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC( EFalse, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + EFalse, + EFalse ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiSpeakerAllocationObject ) + { + err = KErrArgument; + } + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSpeakerAllocation ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + obj->SetSpeakerAllocation( bits ); + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + obj->SetFrontSpeakers( ETrue ); + if( !obj->FrontSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontSpeakers( EFalse ); + if( obj->FrontSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearSpeakers( ETrue ); + if( !obj->RearSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetRearSpeakers( EFalse ); + if( obj->RearSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetLowFrequencyEffect( ETrue ); + if( !obj->LowFrequencyEffect() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetLowFrequencyEffect( EFalse ); + if( obj->LowFrequencyEffect() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontCenter( ETrue ); + if( !obj->FrontCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetFrontCenter( EFalse ); + if( obj->FrontCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontCenterHigh( ETrue ); + if( !obj->FrontCenterHigh() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetFrontCenterHigh( EFalse ); + if( obj->FrontCenterHigh() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetTopCenter( ETrue ); + if( !obj->TopCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetTopCenter( EFalse ); + if( obj->TopCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearCenter( ETrue ); + if( !obj->RearCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetRearCenter( EFalse ); + if( obj->RearCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontLeftRightCenter( ETrue ); + if( !obj->FrontLeftRightCenter() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontLeftRightCenter( EFalse ); + if( obj->FrontLeftRightCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearLeftRightCenter( ETrue ); + if( !obj->RearLeftRightCenter() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetRearLeftRightCenter( EFalse ); + if( obj->RearLeftRightCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontWideSpeakers( ETrue ); + if( !obj->FrontWideSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontWideSpeakers( EFalse ); + if( obj->FrontWideSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontHighSpeakers( ETrue ); + if( !obj->FrontHighSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontHighSpeakers( EFalse ); + if( obj->FrontHighSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL() + { + TInt err = KErrNone; + CAccPolHdmiVideoFormat* obj = NULL; + CAccPolHdmiVideoFormat* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiVideoFormat::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiVideoFormat::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiVideoFormat::NewL( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + CleanupStack::PushL( obj ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiVideoFormat::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiVideoFormatObject ) + { + err = KErrArgument; + } + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiVideoFormat ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiVideoFormat::NewLC(); + obj->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + obj->SetDmtFixedMode( E640x350p85HzRB ); + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + obj->SetPixelRepeat( 4 ); + if( obj->PixelRepeat() != 4 ) + { + err = KErrArgument; + } + obj->SetInterlaced( ETrue ); + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver()" ) ) ); + iStack.AddFirst/*AddLast*/( *CTFTestControlObserver::NewL( *this ) ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver() return" ) ) ); + return iStack.First/*Last*/(); + } + +// Not used at this point. +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ProcessMessageAndCompleteL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL enter" ) ) ); + aMessage.Complete( KErrNone ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::MessageCompleteL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::MessageCompleteL( TInt /*aResult*/) + { + + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateHdmiObjectL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateHdmiObjectL( CAccPolObjectCon& aCon, + THdmiConObjectType aType ) + { + switch( aType ) + { + case EAccPolHdmiSinkObject: + { + CAccPolHdmiSink* sink = CAccPolHdmiSink::NewLC(); + sink->SetBasicAudioSupport( ETrue ); + sink->SetHdcpSupport( ETrue ); + aCon.AddL( *sink ); + CleanupStack::PopAndDestroy( sink ); + break; + } + case EAccPolHdmiAudioFormatObject: + { + CAccPolHdmiAudioFormat* audioFormat = CAccPolHdmiAudioFormat::NewLC(); + audioFormat->SetAudioFormat( HdmiAudioFormat::KUidFormatPCM16 ); + audioFormat->SetChannelCount( 2 ); + audioFormat->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SamFreq( CAccPolHdmiAudioFormat::ESamplingFreq32KHz ); + aCon.AddL( *audioFormat ); + CleanupStack::PopAndDestroy( audioFormat ); + break; + } + case EAccPolHdmiLatencyObject: + { + CAccPolHdmiLatency* latency = CAccPolHdmiLatency::NewLC(); + latency->SetLatencyType( HdmiLatency::KUidLatency ); + latency->SetAudioLatency( 100 ); + latency->SetVideoLatency( 200 ); + aCon.AddL( *latency ); + CleanupStack::PopAndDestroy( latency ); + break; + } + case EAccPolHdmiSpeakerAllocationObject: + { + CAccPolHdmiSpeakerAllocation* speakerAllocation = + CAccPolHdmiSpeakerAllocation::NewLC(); + speakerAllocation->SetFrontSpeakers( ETrue ); + speakerAllocation->SetRearSpeakers( ETrue ); + speakerAllocation->SetLowFrequencyEffect( ETrue ); + speakerAllocation->SetFrontCenter( ETrue ); + speakerAllocation->SetFrontCenterHigh( ETrue ); + speakerAllocation->SetTopCenter( ETrue ); + speakerAllocation->SetRearCenter( ETrue ); + speakerAllocation->SetFrontLeftRightCenter( ETrue ); + speakerAllocation->SetRearLeftRightCenter( ETrue ); + speakerAllocation->SetFrontWideSpeakers( ETrue ); + speakerAllocation->SetFrontHighSpeakers( ETrue ); + aCon.AddL( *speakerAllocation ); + CleanupStack::PopAndDestroy( speakerAllocation ); + break; + } + case EAccPolHdmiVideoFormatObject: + { + CAccPolHdmiVideoFormat* videoFormat = CAccPolHdmiVideoFormat::NewLC(); + videoFormat->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); + videoFormat->SetDmtFixedMode( E640x480p85HzRB ); + videoFormat->SetInterlaced( EFalse ); + aCon.AddL( *videoFormat ); + CleanupStack::PopAndDestroy( videoFormat ); + break; + } + default: + { + break; + } + } + } + + +void CTFAccessoryTestControl::AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval) + { + switch(aCase) + { + case ETFAccessoryConnection_Open: + { + if ( iAccessoryConnection == NULL ) + { + iAccessoryConnection = new ( ELeave ) RAccessoryConnection; + *aRetval = iAccessoryConnection->CreateSubSession( iAccessoryServer ); + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session created - (%d)" ), *aRetval ) ); + } + else + { + *aRetval = KErrNone; + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session not created - (%d)" ), *aRetval ) ); + } + } + break; + + case ETFAccessoryConnection_Close: + { + TRACE_ASSERT( iAccessoryConnection != NULL ); + + if ( iAccessoryConnection != NULL ) + { + iAccessoryConnection->CloseSubSession(); + delete iAccessoryConnection; + iAccessoryConnection = NULL; + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Close - Sub session closed" ) ) ); + } + *aRetval = KErrNone; + } + break; + + default: + break; + } + + } + +void CTFAccessoryTestControl::FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ) + { + CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); + TInt errVal = 0; + + TRACE_ASSERT( testCase != NULL ); + if ( testCase != NULL ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() - inside if ( testCase != NULL )" ) ) ); + if(!iStack.IsEmpty()) + { + iStackIter.SetToFirst(); + + while ( ( iObserverItem = iStackIter++ ) != NULL ) + { + if(iObserverItem->FindRequest(aParameter.iRequestType)) + { + testCase->CheckRequest( iObserverItem->iStatus, + iObserverItem->iValue, + iObserverItem->iCapabilityName, + &errVal ); + + if(errVal == KTFDontDeleteObserver) + { + aParameter.iArg1 = KTFDontDeleteObserver; + } + + + if ( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() + { + if( KTFDontDeleteObserver != aParameter.iArg1 ) + { + if (iObserverItem->iStatus == KRequestPending ) + { + User::WaitForRequest(iObserverItem->iStatus); + } + iStack.Remove( *iObserverItem ); + delete iObserverItem; + } + else + { + User::Leave( KTFDontDeleteObserver ); + } + } + else + { + *aRetval = KErrGeneral; + } + } + } + } + else + { + *aRetval = KErrGeneral; + } + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() returning and setting *aRetval = KErrNone )" ) ) ); + *aRetval = KErrNone; + } + + +void CTFAccessoryTestControl::AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ) + { + switch(aCase) + { + case ETFAccessorySettings_Open: + { + if ( iAccessorySettings == NULL ) + { + iAccessorySettings = new ( ELeave ) RAccessorySettings; + *aRetval = iAccessorySettings->CreateSubSession( iAccessoryServer ); + } + else + *aRetval = KErrNone; + } + break; + + case ETFAccessorySettings_Close: + { + TRACE_ASSERT( iAccessorySettings != NULL ); + + if ( iAccessorySettings != NULL ) + { + iAccessorySettings->CloseSubSession(); + delete iAccessorySettings; + iAccessorySettings = NULL; + } + *aRetval = KErrNone; + } + break; + + default: + break; + + } + } + +void CTFAccessoryTestControl::SetSeveralAccessoryModeSetting( TInt* aRetval ) + { + TAccModeSetting accModeSettingIn; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf< KMaxAccModeSetting > aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 1 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "012345678901234567890" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( ETrue ); + arrayIn.AddSetting( accModeSettingIn ); + + *aRetval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + } + +void CTFAccessoryTestControl::GetSeveralAccessoryModeSetting( TInt* aRetval ) + { + TAccModeSetting accModeSettingOut; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf< KMaxAccModeSetting > aDesOut; + TAccModeSettingArray arrayOut; + TInt intOut( 0 ); + // set input parameters for GetAccessoryModeSettings() + // setting 11 + accModeSettingOut.SetId( 11 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 12 + accModeSettingOut.SetId( 12 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 13 + accModeSettingOut.SetId( 13 ); + arrayOut.AddSetting( accModeSettingOut ); + + *aRetval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, arrayOut ); + + // Check that got settings are right + + TInt count = arrayOut.GetArraySize(); + TInt foundCount(0); + + for( TInt index = 0; index < count; index++ ) + { + arrayOut.GetSetting( index, accModeSettingOut ); + + if( 11 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTInt( intOut); + + if( 1 == intOut ) + { + foundCount++; + } + } + + + if( 12 == accModeSettingOut.Id() ) + { + accModeSettingOut.GetTDes( aDesOut ); + + if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) + { + foundCount++; + } + + } + + if( 13 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTBool( intOut ); + + if( intOut ) + { + foundCount++; + } + } + } + + if(foundCount != 3) + { + *aRetval = KErrNotFound; + } + + // + // Reset Settings + // + TAccModeSetting accModeSettingIn; + TBuf< KMaxAccModeSetting > aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 0 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( EFalse ); + arrayIn.AddSetting( accModeSettingIn ); + + iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + + } + +void CTFAccessoryTestControl::SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ) + { + switch( aParameter.iArg3 ) + { + case KAccSetVolumeLevel: + { + //AccPolCommonNameValuePairs.h contains following example code + RAccessoryControl accessoryControl; + accessoryControl.CreateSubSession( iAccessoryServer ); + + CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL(); + CleanupStack::PushL( nameArray ); + accessoryControl.GetSubblockNameArrayL( iGenericId[aParameter.iGid], *nameArray ); + + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( KAccSetVolumeLevel ); + TAccValueTypeTInt value; + + if( nameArray->HasName( KAccSetVolumeLevel ) ) + { + accessoryControl.GetValueL( iGenericId[aParameter.iGid], nameRecord, value ); + value.iValue = value.iValue | aParameter.iArg1; + accessoryControl.AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], nameRecord, value ); + } + + CleanupStack::PopAndDestroy( nameArray ); + accessoryControl.CloseSubSession(); + *aRetval = KErrNone; + } + break; + + default: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt aIntValue; + aIntValue.iValue = aParameter.iArg1; + *aRetval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, aIntValue ); + } + break; + } + + } + +void CTFAccessoryTestControl::SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ) + { + switch(aCase) + { + case ETFSelectionDialogText: + { + const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; + + RNotifier notifier; + notifier.Connect(); + + TInt selectionListBitmask = 255; + TInt reply = 0; + + TPckg replyPck( reply); + TPckg selectionBitmaskPackage( selectionListBitmask); + + //activate active object + TRequestStatus status; + status = KRequestPending; + + //open ui + notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); + + User::WaitForRequest( status); + + + notifier.Close(); + + *aRetval = KErrNone; + } + + case ETFSelectionDialogCancel: + { + const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; + + RNotifier notifier; + notifier.Connect(); + + TInt selectionListBitmask = 7; + TInt reply = 0; + + TPckg replyPck( reply); + TPckg selectionBitmaskPackage( selectionListBitmask); + + //activate active object + TRequestStatus status; + + //open ui + notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); + User::After( 2500000); + notifier.CancelNotifier( KAccFwUiDialogNotifierUid); + + // Implementation of the dialog is changed. Request is completed every time + User::WaitForRequest( status ); + + notifier.Close(); + + *aRetval = KErrNone; + } + + default: + break; + + } + + } + +void CTFAccessoryTestControl::CheckConnectedAccessory( TInt* aRetval ) + { + *aRetval = KErrNone; + + TAccPolGenericID genID; // TGeneric ID that should be connected + TAccPolGenericID genIDConnected; // TGeneric ID that is connected + TAccPolGIDHeader iGenericIDHeader; // Header of the GID that should be connected + TAccPolGIDHeader iGenericIDHeaderConnected; // Header of the connected GID + TAccPolGenericIDArray genericIdArray; // Array of connected generic ID's + CAccConGenericID* aGenericID = CAccConGenericID::NewL(); // This might be needed for capabilities + CAccPolSubblockNameArray* nameArrayConnected = CAccPolSubblockNameArray::NewL(); + + CleanupStack::PushL( aGenericID ); + CleanupStack::PushL( nameArrayConnected ); + + TAccPolGenericID genericID = aGenericID->GenericID(); + + TBuf hwModelID(_L("headset")); + // Set GenericID header + iGenericIDHeader.iAccessoryDeviceType = KDTHeadset; + iGenericIDHeader.iPhysicalConnection = KPCWired; + iGenericIDHeader.iApplicationProtocol = 0x0; + + iGenericIDHeader.iCapabilitiesSubblocks = KSBAudioSubblock; + + iGenericIDHeader.iHWModelID = hwModelID; + iGenericIDHeader.iHWDeviceID = 0x0; + iGenericIDHeader.iDBID = 0x0; + + RAccessoryConnection* accessoryConnection = new ( ELeave ) RAccessoryConnection(); + CleanupStack::PushL( accessoryConnection ); + accessoryConnection->CreateSubSession( iAccessoryServer ); + accessoryConnection->GetAccessoryConnectionStatus( genericIdArray ); + CleanupStack::PopAndDestroy( accessoryConnection ); + + genIDConnected = genericIdArray.GetGenericIDL( 0 ); + + RAccessorySingleConnection singleConnect;// = new ( ELeave ) RAccessoryConnectionBase(); + singleConnect.CreateSubSession( iAccessoryServer ); + singleConnect.GetSubblockNameArrayL( genIDConnected, *nameArrayConnected ); + + singleConnect.CloseSubSession(); + + iGenericIDHeaderConnected.iAccessoryDeviceType = genIDConnected.DeviceTypeCaps(); + iGenericIDHeaderConnected.iPhysicalConnection = genIDConnected.PhysicalConnectionCaps(); + iGenericIDHeaderConnected.iApplicationProtocol = genIDConnected.ApplicationProtocolCaps(); + iGenericIDHeaderConnected.iCapabilitiesSubblocks = genIDConnected.SubblockCaps(); + iGenericIDHeaderConnected.iHWModelID = genIDConnected.HWModelID(); + iGenericIDHeaderConnected.iHWDeviceID = genIDConnected.HWDeviceID(); + iGenericIDHeaderConnected.iDBID = 0x0; + + //Check GenericID header + if( iGenericIDHeader.iAccessoryDeviceType != iGenericIDHeaderConnected.iAccessoryDeviceType ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iPhysicalConnection != iGenericIDHeaderConnected.iPhysicalConnection ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iApplicationProtocol != iGenericIDHeaderConnected.iApplicationProtocol ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iCapabilitiesSubblocks != iGenericIDHeaderConnected.iCapabilitiesSubblocks ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iHWModelID != iGenericIDHeaderConnected.iHWModelID ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iHWDeviceID != iGenericIDHeaderConnected.iHWDeviceID ) + { + *aRetval = EFalse; + } + if( !( nameArrayConnected->HasName( KAccStereoAudio ) ) ) + { + *aRetval = EFalse; + } + + if( !( nameArrayConnected->HasName( KAccAudioOutConnector ) ) ) + { + *aRetval = EFalse; + } + + if( !( nameArrayConnected->HasName( KAccAudioOutputType ) ) ) + { + *aRetval = EFalse; + } + //CleanupStack::PopAndDestroy( nameValueArray ); + CleanupStack::PopAndDestroy( nameArrayConnected ); + CleanupStack::PopAndDestroy( aGenericID ); + + } + + +void CTFAccessoryTestControl::CallTClassMethods( TInt* aRetval ) + { + // Settings(); + Policy(); + *aRetval = KErrNone; + } + +void CTFAccessoryTestControl::Settings() + { + TAccModeSettingArray array; + array.Reset(); + TInt ret = array.GetMaxArraySize(); + TAccModeSetting setting; + TUint32 settingId( 1 ); + setting.SetId( settingId ); + array.AddSetting( setting ); + TAccModeSetting setting2; + ret = array.GetSetting( 0, setting2 ); + ret = array.GetArraySize(); + } + +void CTFAccessoryTestControl::Policy() + { + TInt valueInt( 1 ); + TUint32 valueUInt( 1 ); + TDesC8 des( _L8( "timo" ) ); + //TDes8 valueDesc = des; + TAccPolNameRecord nameRecord; + TAccPolValueRecord valRec( des, EAPVPolicy ); + TAccPolNameValueRecord nameValRec; + TAccPolNameValueRecord nameValRec1( nameRecord, valRec ); + TAccPolNameValueRecord nameValRec2( valueUInt, valueInt, EAPVInt, EAPVPolicy ); + TAccPolNameValueRecord nameValRec3( valueUInt, des, EAPVPolicy ); + TAccPolNameValueRecord nameValRec4( valueUInt ); + //TDesC8 valueToGet; + valRec.GetValueL( des ); + valRec.SetValue( des ); + //valRec.SetValue( valueToGet ); + TAccPolValueRecord valRec1( valueInt, EAPVInt, EAPVPolicy ); + valRec1.SetValue( valueInt ); + valRec1.SetLocation( EAPVPolicy ); + valRec1.SetL( valueInt, EAPVInt, EAPVPolicy ); + } + +void CTFAccessoryTestControl::GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TBool aSettingsValueBool; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId(aParameter.iArg2); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); + + if( aSetting.Type() == EAccModeSettingBool) + { + *aRetval = aSetting.GetTBool(aSettingsValueBool); + + if(*aRetval != KErrNotFound) + { + if(aSettingsValueBool == (TBool)aParameter.iArg4) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +void CTFAccessoryTestControl::GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TInt aSettingsValueInt; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId(aParameter.iArg2); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); + + if(aSetting.Type() == EAccModeSettingInt) + { + *aRetval = aSetting.GetTInt(aSettingsValueInt); + + if(*aRetval != KErrNotFound) + { + if( aSettingsValueInt == aParameter.iArg4 ) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +void CTFAccessoryTestControl::GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TBuf aSettingsValueDes; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, aSetting ); + + if( aSetting.Type() == EAccModeSettingDes ) + { + *aRetval = aSetting.GetTDes( aSettingsValueDes ); + + if(*aRetval != KErrNotFound) + { + TBuf buffer; + buffer.Num( aParameter.iArg3 ); + if( KErrNone == aSettingsValueDes.Compare( buffer ) ) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlPlugin.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlPlugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlPlugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,3179 +1,3179 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -// INCLUDE FILES -#include -#include -#include "siftrace.h" -#include "CtfAccessoryTestControlPlugin.h" -#include "CtfAccessoryTestControl.h" -#include "CtfAccessoryTestCaseParamControl.h" -#include "CtfAccessoryTestCaseControl.h" -#include - -#ifdef FF_AUTOMOTIVESTACK -#include -#endif - -//M10703 KAccAudioOutConnector - -// LOCAL FUNCTIONS -static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); -static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); -static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ); -static void BtAndAudioLinkModuleTestSuiteL( CTFATestSuite* aSuite ); -static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void SpecialModuleTestSuiteL( CTFATestSuite* aSuite ); -static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ); -static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ); -static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ); -static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ); -#ifdef FF_AUTOMOTIVESTACK -static void AutoAudioAsyModuleTestSuiteL( CTFATestSuite* aSuite ); -#endif - -// -// [M10101] [[AccServer] Open And Close Accessory Connection] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryConnectionOpenCloseStates[2] = - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M10102] [[AccServer] Open And Close Accessory Single Connection] -// -const TTFAccessoryTestCaseStateControl KTFAccessorySingleConnectionOpenCloseStates[2] = - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10103] [[AccServer] Open And Close Accessory Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryControlOpenCloseStates[2] = - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; -// -// [M10104] [[AccServer] Open And Close Accessory Settings] -// -const TTFAccessoryTestCaseStateControl KTFAccessorySettingOpenCloseStates[2] = - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10105] [[AccServer] Open And Close Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeOpenCloseStates[2] = - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10106] [[AccServer] Open And Close Accessory Audio Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryAudioControlOpenCloseStates[2] = - { - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10107] [[AccServer] Open And Close Accessory BT Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryBTControlOpenCloseStates[2] = - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10108] [[AccServer] All Async method called twice] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryAsyncsCalledTwice[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - - //***SingleConnection*** - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrAlreadyExists, 0}, - - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrAlreadyExists, 0}, - - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, - - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, - - { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //cancel with name - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryMode*** - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrAlreadyExists, 0}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFCancelGetAccessoryMode, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryConnection*** - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrAlreadyExists, 0}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFCancelGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryAudioControl*** - - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10108, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrAlreadyExists, 0}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrAlreadyExists, 0}, - - { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10108, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryBTControl - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrAlreadyExists, 0}, - - { ETFCancelNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - //*** - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -//[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged] -// -const TTFAccessoryTestCaseStateControl KTFCancelValueChanged[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10109, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10109, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - //Cancel both notifications with one call - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - //Cancel notifications with separate cancel-call - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFClearStack, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10109, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Wired Accessory Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10201] [[AccServer] Connect Accessory] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectStates[3]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10201, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M10202] [[AccServer] Disconnect Accessory] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetDisconnectStates[3]= - { - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10203] [[AccServer] Notify New Accessory Connected] -// -const TTFAccessoryTestCaseStateControl KTFNotifyNewAccessoryConnectionState[4]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10203, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - }; - -// -// [M10204] [[AccServer] Notify Accessory Disconnected] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryDisconnectedStates[4]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeConnectionStates[4]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10205, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0} - }; - -// -// [M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates[4]= - { - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10206, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10207] [[AccServer] Sync Get Accessory Connection Status] -// -const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryConnectionStatusStates[5]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10207, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSyncGetAccessoryConnectionStatus,0, 1, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10208] [[AccServer] Request Get Accessory Connection Status Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates[4]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10209] [[AccServer] Request Get Accessory Connection Status After Connection] -// -const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusAfterConnectionStates[6]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10209, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10209, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10210] [[AccServer] Notify Accessory Value Changed (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedIntegerStates[11]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10210, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyIntNotify, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10210, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10211] [[AccServer] Notify Accessory Value Changed (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10211, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10211, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M10212] [[AccServer] Accessory Value Changed Notify (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyIntegerStates[10]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10212, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryValueChangedNotifyInt, 0, 1, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10212, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10213] [[AccServer] Accessory Value Changed Notify (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10213, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryValueChangedNotifyBool, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10213, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; -// -//[M10214] [[AccServer] Set Value (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFSetValueIntegerStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10214, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntValue, 0, EAccAudioOutPutTypePublic, 0, KAccAudioOutputType, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Integer - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePublic, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10214, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - - -// -//[M10215] [[AccServer] Set Value (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFSetValueBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10215, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10215, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - - -// -// [M10216] AccServer [ Get Value (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFGetTIntStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10216, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10216, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10216, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10217] AccServer [ Get Value (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFGetTBoolStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10217, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10217, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10218] AccServer [ Get Value fails (TDes8)] -// -const TTFAccessoryTestCaseStateControl KTFGetTDes8States[9]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10218, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, KAccECIAudioBlock, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrArgument, 2000000}, //Desc - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10218, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10219] AccServer [ Connect and Disconnect Carkit (CK-10)] -// -const TTFAccessoryTestCaseStateControl KTFConnDisConnCarkit[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10219, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10219, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10219, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10221] AccServer [ Connect Accessory, Error response from ASY] -// -const TTFAccessoryTestCaseStateControl KTFConnErrorFromASY[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10221, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10221, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFClearStack, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Wireless test cases *********************************/ -/***************************** *********************************/ - - -// -// [M10401] [[AccServer] Connect BT with Headset And Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioInput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccBTHSP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccBTHFP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, EFalse, KAccNoDRMOutput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - - -// -// [M10403] [[AccServer] Connect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 0, KAccBTHFP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 1, KAccBTHSP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10404] [[AccServer] Disconnect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10405] [[AccServer] Connect BT with Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 1, KAccBTHFP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 0, KAccBTHSP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10406] [[AccServer] Disconnect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10407] [[AccServer] Connect BT with Empty Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 0, KAccIntegratedAudioInput, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10408] [[AccServer] Disconnect BT with Empty Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10409] [[AccServer] Connect BT with Nokia Spesific Device Id] -// -const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id] -// -const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -//*************************************************************************************** - -// -// [M10411] [[AccServer] BT Connect, No Response From BT ASY ] -// -const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqConnectBtAccessory, KErrTimedOut, 0}, - }; - -// -// [M10412] [[AccServer] BT Disconnect, No Response From BT ASY ] -// -const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyDisconnectStates[]= - { - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -//*************************************************************************************** - -// -// [M10413] [[AccServer] BT Connect, Response with Error Code] -// -const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqConnectBtAccessory, KErrGeneral, 2000000}, - }; - -// -// [M10414] [[AccServer] BT Disconnect, Response with Error Code] -// -const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeDisconnectStates[]= - { - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10415] [[AccServer] BT Connect, All Service UUIDs] -// -const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, ETrue, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, 0x3, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntValue, 0, KAccSetVolumeLevelAVRCP, 0, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, 0x7, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10416] [[AccServer] BT Disconnect, All Services UUIDs] -// -const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10417] [[AccServer] BT Connect, BT with AVRCP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTAVRCPConnectStates[6]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - }; - -// -// [M10418] [[AccServer] BT Disconnect, BT with AVRCP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTAVRCPDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10419] [[AccServer] BT Connect, BT with A2DP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTA2DPConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, ETrue, KAccNoDRMOutput, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10420] [[AccServer] BT Disconnect, BT with A2DP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTA2DPDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyBooleanStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 0, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 0, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccAcousticEchoControl, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccNoiseReduction, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer] -// -const TTFAccessoryTestCaseStateControl KTFBTFailedAudiotransferFromBT[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10422, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10422, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ // Change order because audio is changing audio routing status! - { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#else - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10423] [[AccServer] BT Accessory Value Changed Notify (TInt/KAccAudioLatency)] -// -const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyIntStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 0, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 70000, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 70000, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 1, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 1, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -/***************************** *********************************/ -/***************************** Bt and Audio Control Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10501] [[AccServer] BT And Audio Link Open] -// -const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkOpenStates[17]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, - }; - -// -// [M10502] [[AccServer] BT And Audio Link Close] -// -const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkCloseStates[17]= - { - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory] -// -const TTFAccessoryTestCaseStateControl KTFBtAudioTransferFromBTtoPhoneStates[26]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, -// { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, -// { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkClosedNo, ReqAccRequestNone, KErrNone, 2000000}, - //This is made form asy - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - //Just in case - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkOpenedNo, ReqAccRequestNone, KErrNone, 2000000}, - //This is made form asy - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - //Just in case end - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10504] [[AccServer] AudioLink Open and Close cancels] -// -const TTFAccessoryTestCaseStateControl KTFBtAudioLinkCancels[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - //********************************************* - // Open/CancalOpen/Close/CancelClose - //********************************************* - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, -/*CancalOpen*/ { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, -/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, -/*CancelClose*/ { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, KErrGeneral,0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrCancel, 2000000}, - //********************************************* - // Open/Close - //********************************************* - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, -/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, - // - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Accessory Modes Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable] -// -const TTFAccessoryTestCaseStateControl KTFHandPortableAccessoryModeStates[7]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10601, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10601, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetAccessoryModeStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10602, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, EFalse, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, -#ifdef __WINS__ // Just ignore because audio policy is set the routing status! - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, ETrue, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, -#endif - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10602, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset] -// -const TTFAccessoryTestCaseStateControl KTFWirelessHeadesetAccessoryModeStates[9]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10603, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -// [M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit] -// -const TTFAccessoryTestCaseStateControl KTFWiredCarkitAccessoryModeStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10604, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x020104, 0, 0, 0, 10604, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 10604, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10604, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit] -// -const TTFAccessoryTestCaseStateControl KTFWirelessCarKitAccessoryModeStatus[9]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 4, 0, 0, 0, 10605, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -// [M10606] [[AccServer] Notify Accessory Mode Changed to Text Device] -// -const TTFAccessoryTestCaseStateControl KTFTextDeviceAccessoryModeStatus[11]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10606, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10606, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be TTY - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10606, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! - { ETFClearStack, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - - - -// -// [M10607] [[AccServer] Notify Accessory Mode Changed to Loopset] -// -const TTFAccessoryTestCaseStateControl KTFLoopsetAccessoryModeStates[11]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10607, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10607, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be Loopset - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10607, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! - { ETFClearStack, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand] -// -const TTFAccessoryTestCaseStateControl KTFMusicStandAccessoryModeStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10608, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10608, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10608, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10608, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10609] [[AccServer] Sync Get Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryModeStates[5]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10609, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryAccessoryModeSync, 0, 1, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10609, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10610] [[AccServer] ASync Get Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFASyncGetAccessoryModeStates[7]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10610, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10610, ETFAsyNone, ReqGetAccessoryMode, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10610, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - - -/***************************** *********************************/ -/***************************** Special cases *********************************/ -/***************************** *********************************/ - -// -// [M10701] [[AccServer] MD-1 Power Supply On After Connection] ////KAccExtPowerSupply connect(off)->on->disconnect -// -const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnAfterConnectionState[15]= - { - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10701, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10701, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10701, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10701, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10702] [[AccServer] MD-1 Power Supply On/Off] //KAccExtPowerSupply connect(on)->off->on->disconnect -// -const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnOffState[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10702, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //->Power Supply Off - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False -#else - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //->Power Supply On - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False -#else - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //Disconnect - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10702, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// KAccAudioOutConnector is "On" in connection state and "Off" in disconnection state. -// -// [M10703] [[AccServer] HS-20 Audio Out Connector On/Off] //KAccAudioOutConnector -// -const TTFAccessoryTestCaseStateControl KTFHS20AudioOutConnectorOnOffState[23]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10703, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10703, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, -#else - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10703, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10704] [[AccServer] Connect Unsupported Accessory] -// -const TTFAccessoryTestCaseStateControl KTFUnsupportedWiredAccessoryStates[4]= - { - { ETFAccessoryControl_Open, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0,0x000000, 0, 0, 0, 10704, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0,0, 0, 0, 0, 10704, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10705] [[AccServer] Transaction matching for ASY command] -// -const TTFAccessoryTestCaseStateControl KTFTransactionMatchStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10705, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10705, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M10706] [[AccServer] Fast Mode Notification Change] -// -// NotifyAccessoryModeChanged() is not reordered fast enough -// (e.g. due to different process sceduling by kernel) -// -const TTFAccessoryTestCaseStateControl KTFFastModeNotificationChange[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10706, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //Ordering NotifyAccessoryModeChanged() after calling AudioRoutingStatusNotify() fakes the use-case under test - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10706, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10707] [[AccServer] Not supported note] -// -const TTFAccessoryTestCaseStateControl KTFNotSupportedNote[]= - { - { ETFNotSupportedNote, 0, 0, 0, 0, 0, 10707, ETFAsyNone, ReqAccRequestNone, KErrNone, 20000000}, - }; - - - - -/***************************** *********************************/ -/***************************** Accessory Settings *********************************/ -/***************************** *********************************/ - - -// -// [M10801] [[AccServer] Set Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeStates[3]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset,1, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10802] [[AccServer] Get Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFGetLoopsetModeStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10803] [[AccServer] Set And Get Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetModeStates[6]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10804] [[AccServer] Set TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeStates[3]= - { - { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0,KASTTY, 1, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10805] [[AccServer] Get TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFGetTTYModeStates[3]= - { - { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHWDeviceSettings, 0,1, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10806] [[AccServer] Set And Get TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetTTYModeStates[6]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 1, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10807] [[AccServer] Set Loopset Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeAfterConnectionStates[17]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10807, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 1, KASLoopset, 1, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10807, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#if 0 -// -// [M10808] [[AccServer] Set TTY Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[17]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10808, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 1, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; -#endif - -// -// [M10808] [[AccServer] Set TTY Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10808, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headset Connected ! - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10809] [[AccServer] Set MusicStand Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10809, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 0, 9, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headphone Connected ! - { ETFSetHWDeviceSettings, 0, KASMusicStand, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetHWDeviceSettings, 0, KASMusicStand, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10810] [[AccServer] Default Accessory Set To MusicStand; Connect Headphone; Change accessory settings to Headphones] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASMusicStand, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10810, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // MusicStand Connected ! - { ETFSetHWDeviceSettings, 0, KASHeadphones, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetHWDeviceSettings, 0, KASMusicStand, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10811] [[AccServer] Default Accessory Set To TTY; Connect Headset; Change accessory settings to Headset] -// -const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10811, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10811, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headset identified as TTY! - { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10811, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#if 0 -// -// [M10809] [[AccServer] Set Loopset Mode Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[15]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10809, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10810] [[AccServer] Set TTY Mode Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[15]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10810, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10811] [[AccServer] Get Supported HW Devices] -// -const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[3]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetSupportedHWDeviceSettings, 0, KASTTY, KASLoopset, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#endif -// -// [M10812] [[AccServer] Accessory Mode Settings (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTIntStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10813] [[AccServer] Accessory Mode Settings (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTBoolStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10814] [[AccServer] Accessory Mode Settings (TDes)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTDesStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#ifdef __WINS__ -// -// [M10815] [[AccServer] Accessory Mode Settings (Array)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsArrayStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; -#endif - -// -// [M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWiredCarkitAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetTextDeviceAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetMusicStandAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsGsSettingsState[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsAutomatic, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 200000}, - }; - -/***************************** *********************************/ -/***************************** Multible Connections *********************************/ -/***************************** *********************************/ - -// -// [M10901] [[AccServer] Connect Wired And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFConnectWiredAndBTArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10901, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, -}; - -// -// [M10902] [[AccServer] Disconnect Wired And Wireleass] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectWiredAndBTArrayStates[]= -{ - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10902, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} -}; - -// -// [M10903] [[AccServer] Connect Wireless And Wired] -// -const TTFAccessoryTestCaseStateControl KTFConnectBTAndWiredArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 1, 0x010103, 0, 0, 0, 10903, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - }; - -// -// [M10904] [[AccServer] Disconnect Wireless And Wired] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndWiredArrayStates[]= -{ - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 1, 0, 0, 0, 0, 10904, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} -}; - - -// -// [M10905] [[AccServer] Connect Wireless And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFConnectBTAndBTArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - }; - -// -// [M10906] [[AccServer] Disconnect Wireless And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndBTArrayStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -/***************************** *********************************/ -/***************************** Selection Dialog *********************************/ -/***************************** *********************************/ - -// -// [11001] [[AccServer] Selection dialog test -// -const TTFAccessoryTestCaseStateControl KTFTestSelectionDialog[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [11002] [[AccServer] Selection dialog test -// -const TTFAccessoryTestCaseStateControl KTFTestSelectionDialogOpenCancel[]= - { - { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - // { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSelectionDialogCancel, 0, 0, 0, 0, 0, 11002, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M11003] [[AccServer] Connect open cable, user select tv-out]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectTVOUT[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11003, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 20000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqNotifyNewAccessoryConnected,KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11003, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11004] [[AccServer] Connect open cable, ASY selects tv-out] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableAsySelectTVOUT[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11004, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11005, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11006] [[AccServer] Connect open cable, open selection dialog, disconnect] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableOpenSelectionDialogDisconnect[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11006, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11006, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11007] [[AccServer] Connect open cable, connect headset, user select headset] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11007, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 5000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyUpdateHeadset, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [11008] [[AccServer] Connect ECI accessory] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectECIAccessory[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11008, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - //Check ECI capability - { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11008, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11009] [[AccServer] Connect headset, default accessory headset, default is selected] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableDefaultSelection[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11010] [[AccServer] Connect Headset]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectHeadset[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11010, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11010, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11011] [[AccServer] Connect Headphones]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectHeadphones[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11011, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11011, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11012] [[AccServer] Connect Open Cable]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCable[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11012, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11012, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11013] [[AccServer] Connect TV Out]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectTVOUT[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 2, 11013, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11013, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11014 [[AccServer] Disconnect wired accessory]] -// -const TTFAccessoryTestCaseStateControl KTFTestDisconnectWired[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11014, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11015] [[AccServer] Connect Headphones, no selection, disconnect accessory]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectAndDisconnectHeadphones[]= - { - { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11015, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10611 [[AccServer] KTFCheckConnectedAccessory]] -// -const TTFAccessoryTestCaseStateControl KTFCheckConnectedAccessory[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10611, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckConnectedAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -/***************************** *********************************/ -/***************************** Policy Tests *********************************/ -/***************************** *********************************/ - -// -// [11101] [[AccPolicy] ValueRecord test -// - -const TTFAccessoryTestCaseStateControl KTFTestValueRecord[]= - { - { ETFValueRecordTests, 0, 0, 0, 0, 0, 11101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11103] [[AccPolicy] Object Base Serialization test -// -const TTFAccessoryTestCaseStateControl KTFTestObjectBaseSerialization[]= - { - { ETFObjectBaseSerializationTests, 0, 0, 0, 0, 0, 11103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** New tests to *********************************/ -/***************************** increase code *********************************/ -/***************************** coverage *********************************/ -/***************************** *********************************/ - -// -// [11101] [[AccServer] Cancel connects -// - -// -// [M11102] [[AccServer] Cancel connect Accessory] -// -/*const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectCancelStates[7]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtCancelConnectAccessory, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtCancelDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; -*/ - -// -// [M11102] [[AccServer] Cancel connect Accessory] -// -/*const TTFAccessoryTestCaseStateControl KTFCallTClassMethods[1]= - { - { ETFCallTClassMethods, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; -*/ -/************************ ****************************/ -/************************ CAccPolObjectBase related testcases (USB) ****************************/ -/************************ ****************************/ - -// -// [M11201] AccServer [ Connect USB headset ] -// -const TTFAccessoryTestCaseStateControl KTFConnectUSBheadsetStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11202] AccServer [ Get and Set USB headset audio streams format parameter] -// -const TTFAccessoryTestCaseStateControl KTFGetSetUSBheadsetValue[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_ObjectPubSub, 0, EAccPolAudioInputStreamObject, 2, EAccPolAudioOutputStreamObject, 2, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11203] [[AccServer] Get USB audio units (Audio Topology) ] -// -const TTFAccessoryTestCaseStateControl KTFUSBheadsetAudioControls[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11203, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11204] [[AccServer] Set/Get volume control] -// -const TTFAccessoryTestCaseStateControl KTFSetGetUSBvolumeControl[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11204, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetVolumeControlObjects, 0, 10, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 20, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 30, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 40, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 50, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 60, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11205] [[AccServer] Set/Get mute control] -// -const TTFAccessoryTestCaseStateControl KTFSetGetUSBmuteControl[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11205, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11205, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - - -// -// [M11206] AccServer [ Connect USB 2 headset / Policy test ] -// -const TTFAccessoryTestCaseStateControl KTFConnectUSB2headsetStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB2, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetStreamObjectsFromPolicy, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11207] AccServer [ Cancel accessory object value changed notification request ] -// -const TTFAccessoryTestCaseStateControl KTFCancelNotifyAccessoryValueChangedObjectStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11207, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11208] AccServer [ Accessory object value changed notification request ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11208, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11208, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11208, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11209] AccServer [ Accessory object value changed notification request and cancel ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectAndCancelStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11209, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11209, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -/************************ ****************************/ -/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ -/************************ ****************************/ - -// -// [M11301] AccServer [ Connect HDMI device ] -// -const TTFAccessoryTestCaseStateControl KTFConnectHDMIDeviceStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoOut, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoFormat, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdcpSupport, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11302] AccServer [ Get HDMI device attributes ] -// -const TTFAccessoryTestCaseStateControl KTFGetHDMIDeviceAttributesStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFSetHdmiObject_PubSub, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHdmiObject, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11303] AccServer [ Notify HDMI device attributes changed ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyHDMIDeviceAttributesChangedStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11303, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11304] AccServer [ Get HDMI video format ] -// -const TTFAccessoryTestCaseStateControl KTFGetHDMIVideoFormatStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFSetHdmiObject_PubSub, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHdmiObject, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11305] AccServer [ Notify HDMI video format changed ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyHDMIVideoFormatChangedStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoFormat, 0, 11305, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11306] AccServer [ Test HDMI objects ] -// -const TTFAccessoryTestCaseStateControl KTCheckHdmiObjectsStates[]= - { - { ETFCheckHdmiObject, 0, EAccPolHdmiObjectCon, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiSinkObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiAudioFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiLatencyObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiSpeakerAllocationObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiVideoFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#ifdef FF_AUTOMOTIVESTACK -/************************ ****************************/ -/************************ AutoAudio ASY related testcases ****************************/ -/************************ ****************************/ - -// -// [M11401] AccServer [ Connect RTP streaming device ] -// - -const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, EUnidirectional, 0, 0, 0, 11401, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccStereoAudio, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioOutput, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccRTPStreaming, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, ENone, 0, 0, 0, 11401, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - - { ETFClearStack, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11402] [[AccServer] [RTP Streaming device Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFRTPStreamingAccessoryModeStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, EUnidirectional, 0, 0, 0, 11402, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 11402, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, ENone, 0, 0, 0, 11402, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M11403] AccServer [ Improper publish of RTP Streaming status ] -// -const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates1[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, ENone, 0, 0, 0, 11403, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, EBidirectional, 0, 0, 0, 11403, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - - { ETFClearStack, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11404] AccServer [ Publish Improper And Connect RTP streaming device ] -// -const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates2[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, EBidirectional, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, EUnidirectional, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, ENone, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - - { ETFClearStack, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#endif // FF_AUTOMOTIVESTACK -/***************************** *********************************/ -/***************************** End Tests *********************************/ -/***************************** *********************************/ - - -CTFAccessoryTestControlPlugin::CTFAccessoryTestControlPlugin( TAny* aInitParams ) -: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) - { - } - -// Two-phased constructor. -CTFAccessoryTestControlPlugin* CTFAccessoryTestControlPlugin::NewL( TAny* aInitParams ) - { - return new ( ELeave ) CTFAccessoryTestControlPlugin( aInitParams ); - } - -// Destructor. -CTFAccessoryTestControlPlugin::~CTFAccessoryTestControlPlugin() - { - iInitParams = NULL; - } - -CTFStub* CTFAccessoryTestControlPlugin::GetStubL( void ) - { - - return new ( ELeave ) CTFAccessoryTestControl(); - } - -void CTFAccessoryTestControlPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - // Memory checks are disabled since Accessory Server runs in separate thread and heap. - aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); - - TF_START_TEST_DECLARATION_L( aRootSuite ); - // Use case test cases - TF_ADD_TEST_SUITE_L( _L( "Module Tests" ) ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Session Tests" ), AccessorySessionsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wired Accessory Module Tests" ), WiredAccessoryModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wireless Accessory Module Tests" ), WirelessAccessoryModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Bt And Audio Link Module Tests" ), BtAndAudioLinkModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Mode Module Tests" ), AccessoryModeModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Special Module Tests" ), SpecialModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Settings Tests" ), AccessorySettingsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Multible Connections" ), MultibleConnectionsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Signature Connection Tests" ), SignatureModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Policy Tests" ), PolicyModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "USB Object Tests" ), UsbObjectModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "HDMI Object Tests" ), HdmiObjectModuleTestSuiteL ); -#ifdef FF_AUTOMOTIVESTACK - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "AutoAudio ASY Tests" ), AutoAudioAsyModuleTestSuiteL ); -#endif - - TF_END_TEST_SUITE(); - TF_END_TEST_DECLARATION(); - } - -MTFStubTestCase* CTFAccessoryTestControlPlugin::GetStubTestCaseL( TInt aTestCaseId ) - { - TF_START_STUB_TEST_CASES( aTestCaseId ); - -/***************************** Open And Close Services *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAccessoryConnectionOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAccessorySingleConnectionOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAccessoryControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10104, KTFAccessorySettingOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10105, KTFAccessoryModeOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10106, KTFAccessoryAudioControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAccessoryBTControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAccessoryAsyncsCalledTwice ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10109, KTFCancelValueChanged ); - -/***************************** Wired Accessory Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10201, KTFWiredHeadsetConnectStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10202, KTFWiredHeadsetDisconnectStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10203, KTFNotifyNewAccessoryConnectionState ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10204, KTFNotifyAccessoryDisconnectedStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10205, KTFNotifyAccessoryConnectionStatusChangeConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10206, KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10207, KTFSyncGetAccessoryConnectionStatusStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10208, KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10209, KTFRequestGetAccessoryConnectionStatusAfterConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10210, KTFNotifyAccessoryValueChangedIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10211, KTFNotifyAccessoryValueChangedBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10212, KTFAccessoryValueChangedNotifyIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10213, KTFAccessoryValueChangedNotifyBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10214, KTFSetValueIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10215, KTFSetValueBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10216, KTFGetTIntStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10217, KTFGetTBoolStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10218, KTFGetTDes8States ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10219, KTFConnDisConnCarkit ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10221, KTFConnErrorFromASY ) ; - -/***************************** Wireless Accessory Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10401, KTFBTHeadsetAndHandsfreeProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10402, KTFBTHeadsetAndHandsfreeProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10403, KTFBTHeadsetProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10404, KTFBTHeadsetProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10405, KTFBTHandsfreeProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10406, KTFBTHandsfreeProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10407, KTFBTEmptyProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10408, KTFBTEmptyProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10409, KTFBTNokiaSpesificDeviceIdConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10410, KTFBTNokiaSpesificDeviceIdDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10411, KTFBTNoResponseFromBtAsyConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10412, KTFBTNoResponseFromBtAsyDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10413, KTFBTAsyResponseWithErrorCodeConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10414, KTFBTAsyResponseWithErrorCodeDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10415, KTFBTAllServiceUUIDsConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10416, KTFBTAllServiceUUIDsDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10417, KTFBTAVRCPConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10418, KTFBTAVRCPDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10419, KTFBTA2DPConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10420, KTFBTA2DPDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10421, KTFBTAccessoryValueChangedNotifyBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10422, KTFBTFailedAudiotransferFromBT ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10423, KTFBTAccessoryValueChangedNotifyIntStates ) ; - -/***************************** BT/Audio Link Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10501, KTFBtAndAudioLinkOpenStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10502, KTFBtAndAudioLinkCloseStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10503, KTFBtAudioTransferFromBTtoPhoneStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10504, KTFBtAudioLinkCancels) ; - -/***************************** Accessory Mode Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10601, KTFHandPortableAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10602, KTFWiredHeadsetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10603, KTFWirelessHeadesetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10604, KTFWiredCarkitAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10605, KTFWirelessCarKitAccessoryModeStatus) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10606, KTFTextDeviceAccessoryModeStatus) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10607, KTFLoopsetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10608, KTFMusicStandAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10609, KTFSyncGetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10610, KTFASyncGetAccessoryModeStates) ; - -/***************************** Special Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10701, KTFMD1PowerSupplyOnAfterConnectionState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10702, KTFMD1PowerSupplyOnOffState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10703, KTFHS20AudioOutConnectorOnOffState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10704, KTFUnsupportedWiredAccessoryStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10705, KTFTransactionMatchStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10706, KTFFastModeNotificationChange ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10707, KTFNotSupportedNote ); - -/***************************** Accessory Settings *********************************/ - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10801, KTFSetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10802, KTFGetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10803, KTFSetAndGetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10804, KTFSetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10805, KTFGetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10806, KTFSetAndGetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10807, KTFSetLoopsetModeAfterConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10808, KTFSetTTYModeAfterConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10809, KTFSetLoopsetModeBeforeConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10810, KTFSetTTYModeBeforeConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10811, KTFGetSupportedHWDevicesStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10812, KTFAccessoryModeSettingsTIntStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10813, KTFAccessoryModeSettingsTBoolStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10814, KTFAccessoryModeSettingsTDesStates) ; - -#ifdef __WINS__ - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10815, KTFAccessoryModeSettingsArrayStates) ; -#endif - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10816, KTFSetAndGetWirelessAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10817, KTFSetAndGetWiredCarkitAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10818, KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10819, KTFSetAndGetTextDeviceAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10820, KTFSetAndGetLoopsetAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10821, KTFSetAndGetMusicStandAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10822, KTFAccessoryModeSettingsGsSettingsState ) ; - -/***************************** Multible connections *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10901, KTFConnectWiredAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10902, KTFDisconnectWiredAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10903, KTFConnectBTAndWiredArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10904, KTFDisconnectBTAndWiredArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10905, KTFConnectBTAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10906, KTFDisconnectBTAndBTArrayStates ); - -/***************************** Signature testcases *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11001, KTFTestSelectionDialog ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11002, KTFTestSelectionDialogOpenCancel ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11003, KTFTestConnectOpenCableUserSelectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11004, KTFTestConnectOpenCableAsySelectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11005, KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11006, KTFTestConnectOpenCableOpenSelectionDialogDisconnect ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11007, KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11008, KTFTestConnectECIAccessory ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11009, KTFTestConnectOpenCableDefaultSelection ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11010, KTFTestConnectHeadset ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11011, KTFTestConnectHeadphones ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11012, KTFTestConnectOpenCable ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11013, KTFTestConnectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11014, KTFTestDisconnectWired ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11015, KTFTestConnectAndDisconnectHeadphones ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10611, KTFCheckConnectedAccessory ); - -/***************************** Policy testcases *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11101, KTFTestValueRecord ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11103, KTFTestObjectBaseSerialization ); - -/************************ CAccPolObjectBase related testcases (USB) ****************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11201, KTFConnectUSBheadsetStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11202, KTFGetSetUSBheadsetValue ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11203, KTFUSBheadsetAudioControls ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11204, KTFSetGetUSBvolumeControl ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11205, KTFSetGetUSBmuteControl ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11206, KTFConnectUSB2headsetStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11207, KTFCancelNotifyAccessoryValueChangedObjectStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11208, KTFNotifyAccessoryValueChangedObjectStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11209, KTFNotifyAccessoryValueChangedObjectAndCancelStates ); - -/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11301, KTFConnectHDMIDeviceStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11302, KTFGetHDMIDeviceAttributesStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11303, KTFNotifyHDMIDeviceAttributesChangedStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11304, KTFGetHDMIVideoFormatStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11305, KTFNotifyHDMIVideoFormatChangedStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11306, KTCheckHdmiObjectsStates ); - -/************************ AutoAudio related testcases (RTPStreaming) ****************************/ -#ifdef FF_AUTOMOTIVESTACK - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11401, KTFConnectRTPStreamingDeviceStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11402, KTFRTPStreamingAccessoryModeStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11403, KTFConnectRTPStreamingDeviceStates1 ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11404, KTFConnectRTPStreamingDeviceStates2 ); -#endif - - TF_END_STUB_TEST_CASES(); - } - -static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10101, _L( "[M10101] [[AccServer] Open And Close Accessory Connection]") ); - TF_ADD_TEST_CASE_L( 10102, _L( "[M10102] [[AccServer] Open And Close Accessory Single Connection]" ) ); - TF_ADD_TEST_CASE_L( 10103, _L( "[M10103] [[AccServer] Open And Close Accessory Control]") ); - TF_ADD_TEST_CASE_L( 10104, _L( "[M10104] [[AccServer] Open And Close Accessory Settings]") ); - TF_ADD_TEST_CASE_L( 10105, _L( "[M10105] [[AccServer] Open And Close Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10106, _L( "[M10106] [[AccServer] Open And Close Accessory Audio Control]") ); - TF_ADD_TEST_CASE_L( 10107, _L( "[M10107] [[AccServer] Open And Close Accessory BT Control]") ); - TF_ADD_TEST_CASE_L( 10108, _L( "[M10108] [[AccServer] All Async method called twice]") ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10109, _L( "[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged]") ); -} - -static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10201, _L( "[M10201] [[AccServer] Connect Accessory]") ); - TF_ADD_TEST_CASE_L( 10202, _L( "[M10202] [[AccServer] Disconnect Accessory]") ); - TF_ADD_TEST_CASE_L( 10203, _L( "[M10203] [[AccServer] Notify New Accessory Connected]") ); - TF_ADD_TEST_CASE_L( 10204, _L( "[M10204] [[AccServer] Notify New Accessory Disconnected]") ); - TF_ADD_TEST_CASE_L( 10205, _L( "[M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)]") ); - TF_ADD_TEST_CASE_L( 10206, _L( "[M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)]") ); - TF_ADD_TEST_CASE_L( 10207, _L( "[M10207] [[AccServer] Sync Get Accessory Connection Status]" ) ); - TF_ADD_TEST_CASE_L( 10208, _L( "[M10208] [[AccServer] Request Get Accessory Connection Status Before Connection]" ) ); - TF_ADD_TEST_CASE_L( 10209, _L( "[M10209] [[AccServer] Request Get Accessory Connection Status After Connection]" ) ); - TF_ADD_TEST_CASE_L( 10210, _L( "[M10210] [[AccServer] Notify Accessory Value Changed (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10211, _L( "[M10211] [[AccServer] Notify Accessory Value Changed (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10212, _L( "[M10212] [[AccServer] Accessory Value Changed Notify (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10213, _L( "[M10213] [[AccServer] Accessory Value Changed Notify (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10214, _L( "[M10214] [[AccServer] Set Value (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10215, _L( "[M10215] [[AccServer] Set Value (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10216, _L( "[M10216] [[AccServer] Get Value (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10217, _L( "[M10217] [[AccServer] Get Value (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10218, _L( "[M10218] [[AccServer] Get Value fails (TDes8)]" ) ); - TF_ADD_TEST_CASE_L( 10219, _L( "[M10219] [[AccServer] Connect and Disconnect Carkit (CK-10)]" ) ); - TF_ADD_TEST_CASE_L( 10221, _L( "[M10221] [[AccServer] Connect Accessory, Error response from ASY" ) ); -} - -static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10401, _L( "[M10401] [[AccServer] Connect BT with Headset And Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10402, _L( "[M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10403, _L( "[M10403] [[AccServer] Connect BT with Headset Profile]")); - TF_ADD_TEST_CASE_L( 10404, _L( "[M10404] [[AccServer] Disconnect BT with Headset Profile]")); - TF_ADD_TEST_CASE_L( 10405, _L( "[M10405] [[AccServer] Connect BT with Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10406, _L( "[M10406] [[AccServer] Disconnect BT with Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10407, _L( "[M10407] [[AccServer] Connect BT with Empty Profile]")); - TF_ADD_TEST_CASE_L( 10408, _L( "[M10408] [[AccServer] Disconnect BT with Empty Profile]")); - TF_ADD_TEST_CASE_L( 10409, _L( "[M10409] [[AccServer] Connect BT with Nokia Spesific Device Id]")); - TF_ADD_TEST_CASE_L( 10410, _L( "[M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id]")); - TF_ADD_TEST_CASE_L( 10411, _L( "[M10411] [[AccServer] Connect BT, No Response From BT ASY]")); - TF_ADD_TEST_CASE_L( 10412, _L( "[M10412] [[AccServer] Disconnectect BT, No Response From BT ASY]")); - TF_ADD_TEST_CASE_L( 10413, _L( "[M10413] [[AccServer] Connect BT, Response with Error Code]")); - TF_ADD_TEST_CASE_L( 10414, _L( "[M10414] [[AccServer] Disconnect BT, Response with Error Code]")); - TF_ADD_TEST_CASE_L( 10415, _L( "[M10415] [[AccServer] Connect BT, All Service UUIDs]")); - TF_ADD_TEST_CASE_L( 10416, _L( "[M10416] [[AccServer] Disconnect BT, All Service UUIDs]")); - TF_ADD_TEST_CASE_L( 10417, _L( "[M10417] [[AccServer] BT Connect, BT with AVRCP profile]")); - TF_ADD_TEST_CASE_L( 10418, _L( "[M10418] [[AccServer] BT Disconnect, BT with AVRCP profile]")); - TF_ADD_TEST_CASE_L( 10419, _L( "[M10419] [[AccServer] BT Connect, BT with A2DP profile]")); - TF_ADD_TEST_CASE_L( 10420, _L( "[M10420] [[AccServer] BT Disconnect, BT with A2DP profile]")); - TF_ADD_TEST_CASE_L( 10421, _L( "[M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10422, _L( "[M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer]" ) ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10423, _L( "[M10423] [[AccServer] BT Accessory Value Changed Notify (TInt)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void BtAndAudioLinkModuleTestSuiteL(CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10501, _L( "[M10501] [[AccServer] BT And Audio Link Open] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10502, _L( "[M10502] [[AccServer] BT And Audio Link Close]")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10503, _L( "[M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory]")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10504, _L( "[M10504] [[AccServer] AudioLink Open and Close cancels]")); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10601, _L( "[M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable]") ); - TF_ADD_TEST_CASE_L( 10602, _L( "[M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset]") ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10603, _L( "[M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset]") ); - TF_ADD_TEST_CASE_L( 10604, _L( "[M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit]") ); - TF_ADD_TEST_CASE_L( 10605, _L( "[M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit]") ); - TF_ADD_TEST_CASE_L( 10607, _L( "[M10607] [[AccServer] Notify Accessory Mode Changed to Loopset]") ); - TF_ADD_TEST_CASE_L( 10608, _L( "[M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand]") ); - TF_ADD_TEST_CASE_L( 10609, _L( "[M10609] [[AccServer] Sync Get Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10610, _L( "[M10610] [[AccServer] ASync Get Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10611, _L( "[M10611] [[AccServer] Check Connected Accessory]]")); -} - -static void SpecialModuleTestSuiteL(CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10701, _L( "[M10701] [[AccServer] MD-1, PowerSupply On After Connection] ")); - TF_ADD_TEST_CASE_L( 10702, _L( "[M10702] [[AccServer] MD-1 Power Supply On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10703, _L( "[M10703] [[AccServer] HS-20 Audio Out Connector On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10704, _L( "[M10704] [[AccServer] Connect Unsupported Accessory] ")); - TF_ADD_TEST_CASE_L( 10705, _L( "[M10705] [[AccServer] Transaction matching for ASY command] ")); - TF_ADD_TEST_CASE_L( 10706, _L( "[M10706] [[AccServer] Fast Mode Notification Change] ")); - TF_ADD_TEST_CASE_L( 10707, _L( "[M10707] [[AccServer] Not supported note ")); -} - -static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10801, _L( "[M10801] [[AccServer] Set Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10802, _L( "[M10802] [[AccServer] Get Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10803, _L( "[M10803] [[AccServer] Set And Get Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10804, _L( "[M10804] [[AccServer] Set TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10805, _L( "[M10805] [[AccServer] Get TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10806, _L( "[M10806] [[AccServer] Set And Get TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10808, _L( "[M10808] [[AccServer] Set TTY Mode After Connection] ") ); - TF_ADD_TEST_CASE_L( 10809, _L( "[M10809] [[AccServer] Set MusicStand Mode After Connection] ") ); - TF_ADD_TEST_CASE_L( 10810, _L( "[M10810] [[AccServer] Default Accessory Set To MusicStand; Connect Headphone; Change accessory settings to Headphones] ") ); - TF_ADD_TEST_CASE_L( 10811, _L( "[M10811] [[AccServer] Default Accessory Set To TTY; Connect Headset; Change accessory settings to Headset] ") ); - TF_ADD_TEST_CASE_L( 10812, _L( "[M10812] [[AccServer] Accessory Mode Settings (TInt)] ") ); - TF_ADD_TEST_CASE_L( 10813, _L( "[M10813] [[AccServer] Accessory Mode Settings (TBool)] ") ); - TF_ADD_TEST_CASE_L( 10814, _L( "[M10814] [[AccServer] Accessory Mode Settings (TDes)] ") ); -#ifdef __WINS__ - TF_ADD_TEST_CASE_L( 10815, _L( "[M10815] [[AccServer] Accessory Mode Settings (Array)] ") ); -#endif - TF_ADD_TEST_CASE_L( 10816, _L( "[M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10817, _L( "[M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10818, _L( "[M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10819, _L( "[M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10820, _L( "[M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10821, _L( "[M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10822, _L( "[M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)]") ); -} - -static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10901, _L( "[M10901] [[AccServer] Connect Wired And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10902, _L( "[M10902] [[AccServer] Disconnect Wired And Wireleass] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10903, _L( "[M10903] [[AccServer] Connect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10904, _L( "[M10904] [[AccServer] Disconnect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10905, _L( "[M10905] [[AccServer] Connect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10906, _L( "[M10906] [[AccServer] Disconnect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11001, _L( "[M11001] [[AccServer] Selection dialog test] ")); - TF_ADD_TEST_CASE_L( 11002, _L( "[M11002] [[AccServer] Selection dialog open/cancel] ")); - //TF_ADD_TEST_CASE_L( 11003, _L( "[M11003] [[AccServer] Connect open cable, user select tv-out]")); - TF_ADD_TEST_CASE_L( 11004, _L( "[M11004] [[AccServer] Connect open cable, ASY selects tv-out]")); - //TF_ADD_TEST_CASE_L( 11005, _L( "[M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out]")); - TF_ADD_TEST_CASE_L( 11006, _L( "[M11006] [[AccServer] Connect open cable, open selection dialog, disconnect]")); - TF_ADD_TEST_CASE_L( 11007, _L( "[M11007] [[AccServer] Connect open cable, connect headset, user select headset]")); - TF_ADD_TEST_CASE_L( 11008, _L( "[M11008] [[AccServer] Connect ECI accessory]")); - TF_ADD_TEST_CASE_L( 11009, _L( "[M11009] [[AccServer] Connect open cable, default accessory headset, default is selected]")); - TF_ADD_TEST_CASE_L( 11010, _L( "[M11010] [[AccServer] Connect Headset]]")); - TF_ADD_TEST_CASE_L( 11011, _L( "[M11011] [[AccServer] Connect Headphones]]")); - TF_ADD_TEST_CASE_L( 11012, _L( "[M11012] [[AccServer] Connect Open Cable]]")); - TF_ADD_TEST_CASE_L( 11013, _L( "[M11013] [[AccServer] Connect TV Out]]")); - TF_ADD_TEST_CASE_L( 11014, _L( "[M11014] [[AccServer] Disconnect Wired Accessory]]")); - TF_ADD_TEST_CASE_L( 11015, _L( "[M11015] [[AccServer] Connect and disconnect Headphones]]")); -} - - -static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11101, _L( "[M11101] [[AccPolicy] ValueRecord test] ")); - //TF_ADD_TEST_CASE_L( 11102, _L( "[M11102] [[Code coverage] Cancel connects] ")); - TF_ADD_TEST_CASE_L( 11103, _L( "[M11103] [[AccPolicy] Object Base Serialization test] ")); -} - -static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11201, _L( "[M11201] [[AccServer] Connect USB headset] ")); - TF_ADD_TEST_CASE_L( 11202, _L( "[M11202] [[AccServer] Get and Set USB headset audio streams format parameter] ")); - TF_ADD_TEST_CASE_L( 11203, _L( "[M11203] [[AccServer] Get USB audio units (Audio Topology) ] ")); - TF_ADD_TEST_CASE_L( 11204, _L( "[M11204] [[AccServer] Set/Get volume control] ")); - TF_ADD_TEST_CASE_L( 11205, _L( "[M11205] [[AccServer] Set/Get mute control] ")); - TF_ADD_TEST_CASE_L( 11206, _L( "[M11206] [[AccServer] Connect USB 2 headset / Policy test]")); - TF_ADD_TEST_CASE_L( 11207, _L( "[M11207] [[AccServer] Cancel accessory object value changed notify]")); - TF_ADD_TEST_CASE_L( 11208, _L( "[M11208] [[AccServer] Accessory object value changed notify]")); - TF_ADD_TEST_CASE_L( 11209, _L( "[M11209] [[AccServer] Accessory object value changed notify and cancel]")); -} - -static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11301, _L( "[M11301] [[AccServer] Connect HDMI device] ")); - TF_ADD_TEST_CASE_L( 11302, _L( "[M11302] [[AccServer] Get HDMI device attributes] ")); - TF_ADD_TEST_CASE_L( 11303, _L( "[M11303] [[AccServer] Notify HDMI device attributes changed] ")); - TF_ADD_TEST_CASE_L( 11304, _L( "[M11304] [[AccServer] Get HDMI video format] ")); - TF_ADD_TEST_CASE_L( 11305, _L( "[M11305] [[AccServer] Notify HDMI video format changed] ")); - TF_ADD_TEST_CASE_L( 11306, _L( "[M11306] [[AccServer] Check HDMI objects] ")); -} - -#ifdef FF_AUTOMOTIVESTACK -static void AutoAudioAsyModuleTestSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 11401, _L( "[M11401] [[AccServer] Connect RTP Streaming device] ")); - TF_ADD_TEST_CASE_L( 11402, _L( "[M11402] [[AccServer] RTP Streaming device Accessory Mode] ")); - TF_ADD_TEST_CASE_L( 11403, _L( "[M11403] [[AccServer] Improper publish of RTP Streaming status] ")); - TF_ADD_TEST_CASE_L( 11404, _L( "[M11404] [[AccServer] Publish Improper And Connect RTP streaming device] ")); - } -#endif - -// End of File - +/* +* Copyright (c) 2005 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: +* +*/ + + +// INCLUDE FILES +#include +#include +#include "siftrace.h" +#include "CtfAccessoryTestControlPlugin.h" +#include "CtfAccessoryTestControl.h" +#include "CtfAccessoryTestCaseParamControl.h" +#include "CtfAccessoryTestCaseControl.h" +#include + +#ifdef FF_AUTOMOTIVESTACK +#include +#endif + +//M10703 KAccAudioOutConnector + +// LOCAL FUNCTIONS +static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); +static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); +static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ); +static void BtAndAudioLinkModuleTestSuiteL( CTFATestSuite* aSuite ); +static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void SpecialModuleTestSuiteL( CTFATestSuite* aSuite ); +static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ); +static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ); +static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ); +static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ); +#ifdef FF_AUTOMOTIVESTACK +static void AutoAudioAsyModuleTestSuiteL( CTFATestSuite* aSuite ); +#endif + +// +// [M10101] [[AccServer] Open And Close Accessory Connection] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryConnectionOpenCloseStates[2] = + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M10102] [[AccServer] Open And Close Accessory Single Connection] +// +const TTFAccessoryTestCaseStateControl KTFAccessorySingleConnectionOpenCloseStates[2] = + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10103] [[AccServer] Open And Close Accessory Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryControlOpenCloseStates[2] = + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; +// +// [M10104] [[AccServer] Open And Close Accessory Settings] +// +const TTFAccessoryTestCaseStateControl KTFAccessorySettingOpenCloseStates[2] = + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10105] [[AccServer] Open And Close Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeOpenCloseStates[2] = + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10106] [[AccServer] Open And Close Accessory Audio Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryAudioControlOpenCloseStates[2] = + { + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10107] [[AccServer] Open And Close Accessory BT Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryBTControlOpenCloseStates[2] = + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10108] [[AccServer] All Async method called twice] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryAsyncsCalledTwice[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + + //***SingleConnection*** + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrAlreadyExists, 0}, + + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrAlreadyExists, 0}, + + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, + + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, + + { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //cancel with name + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryMode*** + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrAlreadyExists, 0}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFCancelGetAccessoryMode, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryConnection*** + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrAlreadyExists, 0}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFCancelGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryAudioControl*** + + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10108, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrAlreadyExists, 0}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrAlreadyExists, 0}, + + { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10108, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryBTControl + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrAlreadyExists, 0}, + + { ETFCancelNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + //*** + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +//[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged] +// +const TTFAccessoryTestCaseStateControl KTFCancelValueChanged[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10109, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10109, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + //Cancel both notifications with one call + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + //Cancel notifications with separate cancel-call + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFClearStack, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10109, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Wired Accessory Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10201] [[AccServer] Connect Accessory] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectStates[3]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10201, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M10202] [[AccServer] Disconnect Accessory] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetDisconnectStates[3]= + { + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10203] [[AccServer] Notify New Accessory Connected] +// +const TTFAccessoryTestCaseStateControl KTFNotifyNewAccessoryConnectionState[4]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10203, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + }; + +// +// [M10204] [[AccServer] Notify Accessory Disconnected] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryDisconnectedStates[4]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeConnectionStates[4]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10205, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0} + }; + +// +// [M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates[4]= + { + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10206, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10207] [[AccServer] Sync Get Accessory Connection Status] +// +const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryConnectionStatusStates[5]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10207, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSyncGetAccessoryConnectionStatus,0, 1, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10208] [[AccServer] Request Get Accessory Connection Status Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates[4]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10209] [[AccServer] Request Get Accessory Connection Status After Connection] +// +const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusAfterConnectionStates[6]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10209, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10209, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10210] [[AccServer] Notify Accessory Value Changed (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedIntegerStates[11]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10210, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyIntNotify, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10210, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10211] [[AccServer] Notify Accessory Value Changed (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10211, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10211, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M10212] [[AccServer] Accessory Value Changed Notify (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyIntegerStates[10]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10212, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryValueChangedNotifyInt, 0, 1, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10212, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10213] [[AccServer] Accessory Value Changed Notify (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10213, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryValueChangedNotifyBool, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10213, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; +// +//[M10214] [[AccServer] Set Value (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFSetValueIntegerStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10214, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntValue, 0, EAccAudioOutPutTypePublic, 0, KAccAudioOutputType, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Integer + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePublic, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10214, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + + +// +//[M10215] [[AccServer] Set Value (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFSetValueBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10215, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10215, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + + +// +// [M10216] AccServer [ Get Value (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFGetTIntStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10216, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10216, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10216, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10217] AccServer [ Get Value (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFGetTBoolStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10217, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10217, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10218] AccServer [ Get Value fails (TDes8)] +// +const TTFAccessoryTestCaseStateControl KTFGetTDes8States[9]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10218, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, KAccECIAudioBlock, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrArgument, 2000000}, //Desc + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10218, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10219] AccServer [ Connect and Disconnect Carkit (CK-10)] +// +const TTFAccessoryTestCaseStateControl KTFConnDisConnCarkit[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10219, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10219, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10219, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10221] AccServer [ Connect Accessory, Error response from ASY] +// +const TTFAccessoryTestCaseStateControl KTFConnErrorFromASY[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10221, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10221, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFClearStack, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Wireless test cases *********************************/ +/***************************** *********************************/ + + +// +// [M10401] [[AccServer] Connect BT with Headset And Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioInput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccBTHSP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccBTHFP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, EFalse, KAccNoDRMOutput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + + +// +// [M10403] [[AccServer] Connect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 0, KAccBTHFP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 1, KAccBTHSP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10404] [[AccServer] Disconnect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10405] [[AccServer] Connect BT with Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 1, KAccBTHFP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 0, KAccBTHSP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10406] [[AccServer] Disconnect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10407] [[AccServer] Connect BT with Empty Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 0, KAccIntegratedAudioInput, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10408] [[AccServer] Disconnect BT with Empty Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10409] [[AccServer] Connect BT with Nokia Spesific Device Id] +// +const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id] +// +const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +//*************************************************************************************** + +// +// [M10411] [[AccServer] BT Connect, No Response From BT ASY ] +// +const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqConnectBtAccessory, KErrTimedOut, 0}, + }; + +// +// [M10412] [[AccServer] BT Disconnect, No Response From BT ASY ] +// +const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyDisconnectStates[]= + { + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +//*************************************************************************************** + +// +// [M10413] [[AccServer] BT Connect, Response with Error Code] +// +const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqConnectBtAccessory, KErrGeneral, 2000000}, + }; + +// +// [M10414] [[AccServer] BT Disconnect, Response with Error Code] +// +const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeDisconnectStates[]= + { + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10415] [[AccServer] BT Connect, All Service UUIDs] +// +const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, ETrue, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, 0x3, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntValue, 0, KAccSetVolumeLevelAVRCP, 0, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, 0x7, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10416] [[AccServer] BT Disconnect, All Services UUIDs] +// +const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10417] [[AccServer] BT Connect, BT with AVRCP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTAVRCPConnectStates[6]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + }; + +// +// [M10418] [[AccServer] BT Disconnect, BT with AVRCP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTAVRCPDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10419] [[AccServer] BT Connect, BT with A2DP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTA2DPConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, ETrue, KAccNoDRMOutput, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10420] [[AccServer] BT Disconnect, BT with A2DP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTA2DPDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyBooleanStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 0, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 0, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccAcousticEchoControl, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccNoiseReduction, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer] +// +const TTFAccessoryTestCaseStateControl KTFBTFailedAudiotransferFromBT[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10422, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10422, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ // Change order because audio is changing audio routing status! + { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#else + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10423] [[AccServer] BT Accessory Value Changed Notify (TInt/KAccAudioLatency)] +// +const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyIntStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 0, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 70000, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 70000, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 1, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 1, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +/***************************** *********************************/ +/***************************** Bt and Audio Control Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10501] [[AccServer] BT And Audio Link Open] +// +const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkOpenStates[17]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, + }; + +// +// [M10502] [[AccServer] BT And Audio Link Close] +// +const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkCloseStates[17]= + { + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory] +// +const TTFAccessoryTestCaseStateControl KTFBtAudioTransferFromBTtoPhoneStates[26]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, +// { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, +// { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkClosedNo, ReqAccRequestNone, KErrNone, 2000000}, + //This is made form asy + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + //Just in case + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkOpenedNo, ReqAccRequestNone, KErrNone, 2000000}, + //This is made form asy + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + //Just in case end + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10504] [[AccServer] AudioLink Open and Close cancels] +// +const TTFAccessoryTestCaseStateControl KTFBtAudioLinkCancels[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + //********************************************* + // Open/CancalOpen/Close/CancelClose + //********************************************* + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, +/*CancalOpen*/ { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, +/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, +/*CancelClose*/ { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, KErrGeneral,0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrCancel, 2000000}, + //********************************************* + // Open/Close + //********************************************* + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, +/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, + // + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Accessory Modes Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable] +// +const TTFAccessoryTestCaseStateControl KTFHandPortableAccessoryModeStates[7]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10601, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10601, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetAccessoryModeStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10602, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, EFalse, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, +#ifdef __WINS__ // Just ignore because audio policy is set the routing status! + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, ETrue, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, +#endif + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10602, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset] +// +const TTFAccessoryTestCaseStateControl KTFWirelessHeadesetAccessoryModeStates[9]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10603, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +// [M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit] +// +const TTFAccessoryTestCaseStateControl KTFWiredCarkitAccessoryModeStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10604, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x020104, 0, 0, 0, 10604, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 10604, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10604, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit] +// +const TTFAccessoryTestCaseStateControl KTFWirelessCarKitAccessoryModeStatus[9]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 4, 0, 0, 0, 10605, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +// [M10606] [[AccServer] Notify Accessory Mode Changed to Text Device] +// +const TTFAccessoryTestCaseStateControl KTFTextDeviceAccessoryModeStatus[11]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10606, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10606, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be TTY + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10606, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! + { ETFClearStack, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + + + +// +// [M10607] [[AccServer] Notify Accessory Mode Changed to Loopset] +// +const TTFAccessoryTestCaseStateControl KTFLoopsetAccessoryModeStates[11]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10607, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10607, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be Loopset + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10607, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! + { ETFClearStack, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand] +// +const TTFAccessoryTestCaseStateControl KTFMusicStandAccessoryModeStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10608, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10608, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10608, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10608, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10609] [[AccServer] Sync Get Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryModeStates[5]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10609, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryAccessoryModeSync, 0, 1, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10609, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10610] [[AccServer] ASync Get Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFASyncGetAccessoryModeStates[7]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10610, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10610, ETFAsyNone, ReqGetAccessoryMode, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10610, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + + +/***************************** *********************************/ +/***************************** Special cases *********************************/ +/***************************** *********************************/ + +// +// [M10701] [[AccServer] MD-1 Power Supply On After Connection] ////KAccExtPowerSupply connect(off)->on->disconnect +// +const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnAfterConnectionState[15]= + { + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10701, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10701, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10701, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10701, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10702] [[AccServer] MD-1 Power Supply On/Off] //KAccExtPowerSupply connect(on)->off->on->disconnect +// +const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnOffState[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10702, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //->Power Supply Off + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False +#else + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //->Power Supply On + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False +#else + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //Disconnect + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10702, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// KAccAudioOutConnector is "On" in connection state and "Off" in disconnection state. +// +// [M10703] [[AccServer] HS-20 Audio Out Connector On/Off] //KAccAudioOutConnector +// +const TTFAccessoryTestCaseStateControl KTFHS20AudioOutConnectorOnOffState[23]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10703, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10703, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, +#else + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10703, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10704] [[AccServer] Connect Unsupported Accessory] +// +const TTFAccessoryTestCaseStateControl KTFUnsupportedWiredAccessoryStates[4]= + { + { ETFAccessoryControl_Open, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0,0x000000, 0, 0, 0, 10704, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0,0, 0, 0, 0, 10704, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10705] [[AccServer] Transaction matching for ASY command] +// +const TTFAccessoryTestCaseStateControl KTFTransactionMatchStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10705, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10705, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M10706] [[AccServer] Fast Mode Notification Change] +// +// NotifyAccessoryModeChanged() is not reordered fast enough +// (e.g. due to different process sceduling by kernel) +// +const TTFAccessoryTestCaseStateControl KTFFastModeNotificationChange[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10706, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //Ordering NotifyAccessoryModeChanged() after calling AudioRoutingStatusNotify() fakes the use-case under test + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10706, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10707] [[AccServer] Not supported note] +// +const TTFAccessoryTestCaseStateControl KTFNotSupportedNote[]= + { + { ETFNotSupportedNote, 0, 0, 0, 0, 0, 10707, ETFAsyNone, ReqAccRequestNone, KErrNone, 20000000}, + }; + + + + +/***************************** *********************************/ +/***************************** Accessory Settings *********************************/ +/***************************** *********************************/ + + +// +// [M10801] [[AccServer] Set Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeStates[3]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset,1, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10802] [[AccServer] Get Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFGetLoopsetModeStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10803] [[AccServer] Set And Get Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetModeStates[6]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10804] [[AccServer] Set TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeStates[3]= + { + { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0,KASTTY, 1, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10805] [[AccServer] Get TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFGetTTYModeStates[3]= + { + { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHWDeviceSettings, 0,1, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10806] [[AccServer] Set And Get TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetTTYModeStates[6]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 1, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10807] [[AccServer] Set Loopset Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeAfterConnectionStates[17]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10807, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 1, KASLoopset, 1, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10807, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#if 0 +// +// [M10808] [[AccServer] Set TTY Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[17]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10808, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 1, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; +#endif + +// +// [M10808] [[AccServer] Set TTY Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10808, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headset Connected ! + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10809] [[AccServer] Set MusicStand Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10809, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 0, 9, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headphone Connected ! + { ETFSetHWDeviceSettings, 0, KASMusicStand, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetHWDeviceSettings, 0, KASMusicStand, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10810] [[AccServer] Default Accessory Set To MusicStand; Connect Headphone; Change accessory settings to Headphones] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASMusicStand, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10810, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // MusicStand Connected ! + { ETFSetHWDeviceSettings, 0, KASHeadphones, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetHWDeviceSettings, 0, KASMusicStand, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10811] [[AccServer] Default Accessory Set To TTY; Connect Headset; Change accessory settings to Headset] +// +const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10811, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10811, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, // Headset identified as TTY! + { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10811, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#if 0 +// +// [M10809] [[AccServer] Set Loopset Mode Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[15]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10809, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10810] [[AccServer] Set TTY Mode Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[15]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10810, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10811] [[AccServer] Get Supported HW Devices] +// +const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[3]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetSupportedHWDeviceSettings, 0, KASTTY, KASLoopset, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#endif +// +// [M10812] [[AccServer] Accessory Mode Settings (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTIntStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10813] [[AccServer] Accessory Mode Settings (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTBoolStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10814] [[AccServer] Accessory Mode Settings (TDes)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTDesStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#ifdef __WINS__ +// +// [M10815] [[AccServer] Accessory Mode Settings (Array)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsArrayStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; +#endif + +// +// [M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWiredCarkitAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetTextDeviceAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetMusicStandAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsGsSettingsState[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsAutomatic, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 200000}, + }; + +/***************************** *********************************/ +/***************************** Multible Connections *********************************/ +/***************************** *********************************/ + +// +// [M10901] [[AccServer] Connect Wired And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFConnectWiredAndBTArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10901, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, +}; + +// +// [M10902] [[AccServer] Disconnect Wired And Wireleass] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectWiredAndBTArrayStates[]= +{ + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10902, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} +}; + +// +// [M10903] [[AccServer] Connect Wireless And Wired] +// +const TTFAccessoryTestCaseStateControl KTFConnectBTAndWiredArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 1, 0x010103, 0, 0, 0, 10903, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + }; + +// +// [M10904] [[AccServer] Disconnect Wireless And Wired] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndWiredArrayStates[]= +{ + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 1, 0, 0, 0, 0, 10904, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} +}; + + +// +// [M10905] [[AccServer] Connect Wireless And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFConnectBTAndBTArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + }; + +// +// [M10906] [[AccServer] Disconnect Wireless And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndBTArrayStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +/***************************** *********************************/ +/***************************** Selection Dialog *********************************/ +/***************************** *********************************/ + +// +// [11001] [[AccServer] Selection dialog test +// +const TTFAccessoryTestCaseStateControl KTFTestSelectionDialog[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [11002] [[AccServer] Selection dialog test +// +const TTFAccessoryTestCaseStateControl KTFTestSelectionDialogOpenCancel[]= + { + { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + // { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSelectionDialogCancel, 0, 0, 0, 0, 0, 11002, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M11003] [[AccServer] Connect open cable, user select tv-out]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectTVOUT[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11003, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 20000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqNotifyNewAccessoryConnected,KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11003, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11004] [[AccServer] Connect open cable, ASY selects tv-out] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableAsySelectTVOUT[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11004, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11005, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11006] [[AccServer] Connect open cable, open selection dialog, disconnect] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableOpenSelectionDialogDisconnect[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11006, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11006, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11007] [[AccServer] Connect open cable, connect headset, user select headset] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11007, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 5000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyUpdateHeadset, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [11008] [[AccServer] Connect ECI accessory] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectECIAccessory[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11008, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + //Check ECI capability + { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11008, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11009] [[AccServer] Connect headset, default accessory headset, default is selected] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableDefaultSelection[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11010] [[AccServer] Connect Headset]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectHeadset[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11010, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11010, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11011] [[AccServer] Connect Headphones]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectHeadphones[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11011, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11011, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11012] [[AccServer] Connect Open Cable]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCable[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11012, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11012, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11013] [[AccServer] Connect TV Out]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectTVOUT[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 2, 11013, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11013, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11014 [[AccServer] Disconnect wired accessory]] +// +const TTFAccessoryTestCaseStateControl KTFTestDisconnectWired[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11014, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11015] [[AccServer] Connect Headphones, no selection, disconnect accessory]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectAndDisconnectHeadphones[]= + { + { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11015, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10611 [[AccServer] KTFCheckConnectedAccessory]] +// +const TTFAccessoryTestCaseStateControl KTFCheckConnectedAccessory[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10611, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckConnectedAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +/***************************** *********************************/ +/***************************** Policy Tests *********************************/ +/***************************** *********************************/ + +// +// [11101] [[AccPolicy] ValueRecord test +// + +const TTFAccessoryTestCaseStateControl KTFTestValueRecord[]= + { + { ETFValueRecordTests, 0, 0, 0, 0, 0, 11101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11103] [[AccPolicy] Object Base Serialization test +// +const TTFAccessoryTestCaseStateControl KTFTestObjectBaseSerialization[]= + { + { ETFObjectBaseSerializationTests, 0, 0, 0, 0, 0, 11103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** New tests to *********************************/ +/***************************** increase code *********************************/ +/***************************** coverage *********************************/ +/***************************** *********************************/ + +// +// [11101] [[AccServer] Cancel connects +// + +// +// [M11102] [[AccServer] Cancel connect Accessory] +// +/*const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectCancelStates[7]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtCancelConnectAccessory, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtCancelDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; +*/ + +// +// [M11102] [[AccServer] Cancel connect Accessory] +// +/*const TTFAccessoryTestCaseStateControl KTFCallTClassMethods[1]= + { + { ETFCallTClassMethods, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; +*/ +/************************ ****************************/ +/************************ CAccPolObjectBase related testcases (USB) ****************************/ +/************************ ****************************/ + +// +// [M11201] AccServer [ Connect USB headset ] +// +const TTFAccessoryTestCaseStateControl KTFConnectUSBheadsetStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11202] AccServer [ Get and Set USB headset audio streams format parameter] +// +const TTFAccessoryTestCaseStateControl KTFGetSetUSBheadsetValue[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_ObjectPubSub, 0, EAccPolAudioInputStreamObject, 2, EAccPolAudioOutputStreamObject, 2, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11203] [[AccServer] Get USB audio units (Audio Topology) ] +// +const TTFAccessoryTestCaseStateControl KTFUSBheadsetAudioControls[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11203, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11204] [[AccServer] Set/Get volume control] +// +const TTFAccessoryTestCaseStateControl KTFSetGetUSBvolumeControl[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11204, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetVolumeControlObjects, 0, 10, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 20, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 30, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 40, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 50, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 60, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11205] [[AccServer] Set/Get mute control] +// +const TTFAccessoryTestCaseStateControl KTFSetGetUSBmuteControl[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11205, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11205, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + + +// +// [M11206] AccServer [ Connect USB 2 headset / Policy test ] +// +const TTFAccessoryTestCaseStateControl KTFConnectUSB2headsetStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB2, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetStreamObjectsFromPolicy, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11207] AccServer [ Cancel accessory object value changed notification request ] +// +const TTFAccessoryTestCaseStateControl KTFCancelNotifyAccessoryValueChangedObjectStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11207, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11208] AccServer [ Accessory object value changed notification request ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11208, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11208, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11208, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11209] AccServer [ Accessory object value changed notification request and cancel ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectAndCancelStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11209, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11209, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +/************************ ****************************/ +/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ +/************************ ****************************/ + +// +// [M11301] AccServer [ Connect HDMI device ] +// +const TTFAccessoryTestCaseStateControl KTFConnectHDMIDeviceStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoOut, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoFormat, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdcpSupport, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11302] AccServer [ Get HDMI device attributes ] +// +const TTFAccessoryTestCaseStateControl KTFGetHDMIDeviceAttributesStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFSetHdmiObject_PubSub, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHdmiObject, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11303] AccServer [ Notify HDMI device attributes changed ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyHDMIDeviceAttributesChangedStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11303, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11304] AccServer [ Get HDMI video format ] +// +const TTFAccessoryTestCaseStateControl KTFGetHDMIVideoFormatStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFSetHdmiObject_PubSub, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHdmiObject, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11305] AccServer [ Notify HDMI video format changed ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyHDMIVideoFormatChangedStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoFormat, 0, 11305, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11306] AccServer [ Test HDMI objects ] +// +const TTFAccessoryTestCaseStateControl KTCheckHdmiObjectsStates[]= + { + { ETFCheckHdmiObject, 0, EAccPolHdmiObjectCon, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiSinkObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiAudioFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiLatencyObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiSpeakerAllocationObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiVideoFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#ifdef FF_AUTOMOTIVESTACK +/************************ ****************************/ +/************************ AutoAudio ASY related testcases ****************************/ +/************************ ****************************/ + +// +// [M11401] AccServer [ Connect RTP streaming device ] +// + +const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusUnidirectional, 0, 0, 0, 11401, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccStereoAudio, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioOutput, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccRTPStreaming, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, EAudioConnectionStatusNone, 0, 0, 0, 11401, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + + { ETFClearStack, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11402] [[AccServer] [RTP Streaming device Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFRTPStreamingAccessoryModeStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusUnidirectional, 0, 0, 0, 11402, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 11402, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, EAudioConnectionStatusNone, 0, 0, 0, 11402, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 11402, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M11403] AccServer [ Improper publish of RTP Streaming status ] +// +const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates1[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusNone, 0, 0, 0, 11403, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusBidirectional, 0, 0, 0, 11403, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + + { ETFClearStack, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11404] AccServer [ Publish Improper And Connect RTP streaming device ] +// +const TTFAccessoryTestCaseStateControl KTFConnectRTPStreamingDeviceStates2[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusBidirectional, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, EAudioConnectionStatusUnidirectional, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, EAudioConnectionStatusNone, 0, 0, 0, 11404, ETFAsyRTPStreamingConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + + { ETFClearStack, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#endif // FF_AUTOMOTIVESTACK +/***************************** *********************************/ +/***************************** End Tests *********************************/ +/***************************** *********************************/ + + +CTFAccessoryTestControlPlugin::CTFAccessoryTestControlPlugin( TAny* aInitParams ) +: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) + { + } + +// Two-phased constructor. +CTFAccessoryTestControlPlugin* CTFAccessoryTestControlPlugin::NewL( TAny* aInitParams ) + { + return new ( ELeave ) CTFAccessoryTestControlPlugin( aInitParams ); + } + +// Destructor. +CTFAccessoryTestControlPlugin::~CTFAccessoryTestControlPlugin() + { + iInitParams = NULL; + } + +CTFStub* CTFAccessoryTestControlPlugin::GetStubL( void ) + { + + return new ( ELeave ) CTFAccessoryTestControl(); + } + +void CTFAccessoryTestControlPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + // Memory checks are disabled since Accessory Server runs in separate thread and heap. + aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); + + TF_START_TEST_DECLARATION_L( aRootSuite ); + // Use case test cases + TF_ADD_TEST_SUITE_L( _L( "Module Tests" ) ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Session Tests" ), AccessorySessionsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wired Accessory Module Tests" ), WiredAccessoryModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wireless Accessory Module Tests" ), WirelessAccessoryModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Bt And Audio Link Module Tests" ), BtAndAudioLinkModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Mode Module Tests" ), AccessoryModeModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Special Module Tests" ), SpecialModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Settings Tests" ), AccessorySettingsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Multible Connections" ), MultibleConnectionsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Signature Connection Tests" ), SignatureModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Policy Tests" ), PolicyModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "USB Object Tests" ), UsbObjectModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "HDMI Object Tests" ), HdmiObjectModuleTestSuiteL ); +#ifdef FF_AUTOMOTIVESTACK + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "AutoAudio ASY Tests" ), AutoAudioAsyModuleTestSuiteL ); +#endif + + TF_END_TEST_SUITE(); + TF_END_TEST_DECLARATION(); + } + +MTFStubTestCase* CTFAccessoryTestControlPlugin::GetStubTestCaseL( TInt aTestCaseId ) + { + TF_START_STUB_TEST_CASES( aTestCaseId ); + +/***************************** Open And Close Services *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAccessoryConnectionOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAccessorySingleConnectionOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAccessoryControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10104, KTFAccessorySettingOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10105, KTFAccessoryModeOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10106, KTFAccessoryAudioControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAccessoryBTControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAccessoryAsyncsCalledTwice ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10109, KTFCancelValueChanged ); + +/***************************** Wired Accessory Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10201, KTFWiredHeadsetConnectStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10202, KTFWiredHeadsetDisconnectStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10203, KTFNotifyNewAccessoryConnectionState ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10204, KTFNotifyAccessoryDisconnectedStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10205, KTFNotifyAccessoryConnectionStatusChangeConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10206, KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10207, KTFSyncGetAccessoryConnectionStatusStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10208, KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10209, KTFRequestGetAccessoryConnectionStatusAfterConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10210, KTFNotifyAccessoryValueChangedIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10211, KTFNotifyAccessoryValueChangedBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10212, KTFAccessoryValueChangedNotifyIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10213, KTFAccessoryValueChangedNotifyBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10214, KTFSetValueIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10215, KTFSetValueBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10216, KTFGetTIntStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10217, KTFGetTBoolStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10218, KTFGetTDes8States ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10219, KTFConnDisConnCarkit ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10221, KTFConnErrorFromASY ) ; + +/***************************** Wireless Accessory Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10401, KTFBTHeadsetAndHandsfreeProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10402, KTFBTHeadsetAndHandsfreeProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10403, KTFBTHeadsetProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10404, KTFBTHeadsetProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10405, KTFBTHandsfreeProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10406, KTFBTHandsfreeProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10407, KTFBTEmptyProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10408, KTFBTEmptyProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10409, KTFBTNokiaSpesificDeviceIdConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10410, KTFBTNokiaSpesificDeviceIdDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10411, KTFBTNoResponseFromBtAsyConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10412, KTFBTNoResponseFromBtAsyDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10413, KTFBTAsyResponseWithErrorCodeConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10414, KTFBTAsyResponseWithErrorCodeDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10415, KTFBTAllServiceUUIDsConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10416, KTFBTAllServiceUUIDsDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10417, KTFBTAVRCPConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10418, KTFBTAVRCPDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10419, KTFBTA2DPConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10420, KTFBTA2DPDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10421, KTFBTAccessoryValueChangedNotifyBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10422, KTFBTFailedAudiotransferFromBT ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10423, KTFBTAccessoryValueChangedNotifyIntStates ) ; + +/***************************** BT/Audio Link Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10501, KTFBtAndAudioLinkOpenStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10502, KTFBtAndAudioLinkCloseStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10503, KTFBtAudioTransferFromBTtoPhoneStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10504, KTFBtAudioLinkCancels) ; + +/***************************** Accessory Mode Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10601, KTFHandPortableAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10602, KTFWiredHeadsetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10603, KTFWirelessHeadesetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10604, KTFWiredCarkitAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10605, KTFWirelessCarKitAccessoryModeStatus) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10606, KTFTextDeviceAccessoryModeStatus) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10607, KTFLoopsetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10608, KTFMusicStandAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10609, KTFSyncGetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10610, KTFASyncGetAccessoryModeStates) ; + +/***************************** Special Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10701, KTFMD1PowerSupplyOnAfterConnectionState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10702, KTFMD1PowerSupplyOnOffState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10703, KTFHS20AudioOutConnectorOnOffState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10704, KTFUnsupportedWiredAccessoryStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10705, KTFTransactionMatchStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10706, KTFFastModeNotificationChange ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10707, KTFNotSupportedNote ); + +/***************************** Accessory Settings *********************************/ + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10801, KTFSetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10802, KTFGetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10803, KTFSetAndGetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10804, KTFSetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10805, KTFGetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10806, KTFSetAndGetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10807, KTFSetLoopsetModeAfterConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10808, KTFSetTTYModeAfterConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10809, KTFSetLoopsetModeBeforeConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10810, KTFSetTTYModeBeforeConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10811, KTFGetSupportedHWDevicesStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10812, KTFAccessoryModeSettingsTIntStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10813, KTFAccessoryModeSettingsTBoolStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10814, KTFAccessoryModeSettingsTDesStates) ; + +#ifdef __WINS__ + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10815, KTFAccessoryModeSettingsArrayStates) ; +#endif + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10816, KTFSetAndGetWirelessAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10817, KTFSetAndGetWiredCarkitAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10818, KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10819, KTFSetAndGetTextDeviceAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10820, KTFSetAndGetLoopsetAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10821, KTFSetAndGetMusicStandAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10822, KTFAccessoryModeSettingsGsSettingsState ) ; + +/***************************** Multible connections *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10901, KTFConnectWiredAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10902, KTFDisconnectWiredAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10903, KTFConnectBTAndWiredArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10904, KTFDisconnectBTAndWiredArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10905, KTFConnectBTAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10906, KTFDisconnectBTAndBTArrayStates ); + +/***************************** Signature testcases *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11001, KTFTestSelectionDialog ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11002, KTFTestSelectionDialogOpenCancel ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11003, KTFTestConnectOpenCableUserSelectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11004, KTFTestConnectOpenCableAsySelectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11005, KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11006, KTFTestConnectOpenCableOpenSelectionDialogDisconnect ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11007, KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11008, KTFTestConnectECIAccessory ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11009, KTFTestConnectOpenCableDefaultSelection ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11010, KTFTestConnectHeadset ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11011, KTFTestConnectHeadphones ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11012, KTFTestConnectOpenCable ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11013, KTFTestConnectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11014, KTFTestDisconnectWired ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11015, KTFTestConnectAndDisconnectHeadphones ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10611, KTFCheckConnectedAccessory ); + +/***************************** Policy testcases *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11101, KTFTestValueRecord ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11103, KTFTestObjectBaseSerialization ); + +/************************ CAccPolObjectBase related testcases (USB) ****************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11201, KTFConnectUSBheadsetStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11202, KTFGetSetUSBheadsetValue ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11203, KTFUSBheadsetAudioControls ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11204, KTFSetGetUSBvolumeControl ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11205, KTFSetGetUSBmuteControl ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11206, KTFConnectUSB2headsetStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11207, KTFCancelNotifyAccessoryValueChangedObjectStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11208, KTFNotifyAccessoryValueChangedObjectStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11209, KTFNotifyAccessoryValueChangedObjectAndCancelStates ); + +/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11301, KTFConnectHDMIDeviceStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11302, KTFGetHDMIDeviceAttributesStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11303, KTFNotifyHDMIDeviceAttributesChangedStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11304, KTFGetHDMIVideoFormatStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11305, KTFNotifyHDMIVideoFormatChangedStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11306, KTCheckHdmiObjectsStates ); + +/************************ AutoAudio related testcases (RTPStreaming) ****************************/ +#ifdef FF_AUTOMOTIVESTACK + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11401, KTFConnectRTPStreamingDeviceStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11402, KTFRTPStreamingAccessoryModeStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11403, KTFConnectRTPStreamingDeviceStates1 ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11404, KTFConnectRTPStreamingDeviceStates2 ); +#endif + + TF_END_STUB_TEST_CASES(); + } + +static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10101, _L( "[M10101] [[AccServer] Open And Close Accessory Connection]") ); + TF_ADD_TEST_CASE_L( 10102, _L( "[M10102] [[AccServer] Open And Close Accessory Single Connection]" ) ); + TF_ADD_TEST_CASE_L( 10103, _L( "[M10103] [[AccServer] Open And Close Accessory Control]") ); + TF_ADD_TEST_CASE_L( 10104, _L( "[M10104] [[AccServer] Open And Close Accessory Settings]") ); + TF_ADD_TEST_CASE_L( 10105, _L( "[M10105] [[AccServer] Open And Close Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10106, _L( "[M10106] [[AccServer] Open And Close Accessory Audio Control]") ); + TF_ADD_TEST_CASE_L( 10107, _L( "[M10107] [[AccServer] Open And Close Accessory BT Control]") ); + TF_ADD_TEST_CASE_L( 10108, _L( "[M10108] [[AccServer] All Async method called twice]") ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10109, _L( "[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged]") ); +} + +static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10201, _L( "[M10201] [[AccServer] Connect Accessory]") ); + TF_ADD_TEST_CASE_L( 10202, _L( "[M10202] [[AccServer] Disconnect Accessory]") ); + TF_ADD_TEST_CASE_L( 10203, _L( "[M10203] [[AccServer] Notify New Accessory Connected]") ); + TF_ADD_TEST_CASE_L( 10204, _L( "[M10204] [[AccServer] Notify New Accessory Disconnected]") ); + TF_ADD_TEST_CASE_L( 10205, _L( "[M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)]") ); + TF_ADD_TEST_CASE_L( 10206, _L( "[M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)]") ); + TF_ADD_TEST_CASE_L( 10207, _L( "[M10207] [[AccServer] Sync Get Accessory Connection Status]" ) ); + TF_ADD_TEST_CASE_L( 10208, _L( "[M10208] [[AccServer] Request Get Accessory Connection Status Before Connection]" ) ); + TF_ADD_TEST_CASE_L( 10209, _L( "[M10209] [[AccServer] Request Get Accessory Connection Status After Connection]" ) ); + TF_ADD_TEST_CASE_L( 10210, _L( "[M10210] [[AccServer] Notify Accessory Value Changed (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10211, _L( "[M10211] [[AccServer] Notify Accessory Value Changed (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10212, _L( "[M10212] [[AccServer] Accessory Value Changed Notify (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10213, _L( "[M10213] [[AccServer] Accessory Value Changed Notify (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10214, _L( "[M10214] [[AccServer] Set Value (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10215, _L( "[M10215] [[AccServer] Set Value (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10216, _L( "[M10216] [[AccServer] Get Value (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10217, _L( "[M10217] [[AccServer] Get Value (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10218, _L( "[M10218] [[AccServer] Get Value fails (TDes8)]" ) ); + TF_ADD_TEST_CASE_L( 10219, _L( "[M10219] [[AccServer] Connect and Disconnect Carkit (CK-10)]" ) ); + TF_ADD_TEST_CASE_L( 10221, _L( "[M10221] [[AccServer] Connect Accessory, Error response from ASY" ) ); +} + +static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10401, _L( "[M10401] [[AccServer] Connect BT with Headset And Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10402, _L( "[M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10403, _L( "[M10403] [[AccServer] Connect BT with Headset Profile]")); + TF_ADD_TEST_CASE_L( 10404, _L( "[M10404] [[AccServer] Disconnect BT with Headset Profile]")); + TF_ADD_TEST_CASE_L( 10405, _L( "[M10405] [[AccServer] Connect BT with Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10406, _L( "[M10406] [[AccServer] Disconnect BT with Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10407, _L( "[M10407] [[AccServer] Connect BT with Empty Profile]")); + TF_ADD_TEST_CASE_L( 10408, _L( "[M10408] [[AccServer] Disconnect BT with Empty Profile]")); + TF_ADD_TEST_CASE_L( 10409, _L( "[M10409] [[AccServer] Connect BT with Nokia Spesific Device Id]")); + TF_ADD_TEST_CASE_L( 10410, _L( "[M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id]")); + TF_ADD_TEST_CASE_L( 10411, _L( "[M10411] [[AccServer] Connect BT, No Response From BT ASY]")); + TF_ADD_TEST_CASE_L( 10412, _L( "[M10412] [[AccServer] Disconnectect BT, No Response From BT ASY]")); + TF_ADD_TEST_CASE_L( 10413, _L( "[M10413] [[AccServer] Connect BT, Response with Error Code]")); + TF_ADD_TEST_CASE_L( 10414, _L( "[M10414] [[AccServer] Disconnect BT, Response with Error Code]")); + TF_ADD_TEST_CASE_L( 10415, _L( "[M10415] [[AccServer] Connect BT, All Service UUIDs]")); + TF_ADD_TEST_CASE_L( 10416, _L( "[M10416] [[AccServer] Disconnect BT, All Service UUIDs]")); + TF_ADD_TEST_CASE_L( 10417, _L( "[M10417] [[AccServer] BT Connect, BT with AVRCP profile]")); + TF_ADD_TEST_CASE_L( 10418, _L( "[M10418] [[AccServer] BT Disconnect, BT with AVRCP profile]")); + TF_ADD_TEST_CASE_L( 10419, _L( "[M10419] [[AccServer] BT Connect, BT with A2DP profile]")); + TF_ADD_TEST_CASE_L( 10420, _L( "[M10420] [[AccServer] BT Disconnect, BT with A2DP profile]")); + TF_ADD_TEST_CASE_L( 10421, _L( "[M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10422, _L( "[M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer]" ) ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10423, _L( "[M10423] [[AccServer] BT Accessory Value Changed Notify (TInt)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void BtAndAudioLinkModuleTestSuiteL(CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10501, _L( "[M10501] [[AccServer] BT And Audio Link Open] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10502, _L( "[M10502] [[AccServer] BT And Audio Link Close]")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10503, _L( "[M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory]")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10504, _L( "[M10504] [[AccServer] AudioLink Open and Close cancels]")); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10601, _L( "[M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable]") ); + TF_ADD_TEST_CASE_L( 10602, _L( "[M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset]") ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10603, _L( "[M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset]") ); + TF_ADD_TEST_CASE_L( 10604, _L( "[M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit]") ); + TF_ADD_TEST_CASE_L( 10605, _L( "[M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit]") ); + TF_ADD_TEST_CASE_L( 10607, _L( "[M10607] [[AccServer] Notify Accessory Mode Changed to Loopset]") ); + TF_ADD_TEST_CASE_L( 10608, _L( "[M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand]") ); + TF_ADD_TEST_CASE_L( 10609, _L( "[M10609] [[AccServer] Sync Get Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10610, _L( "[M10610] [[AccServer] ASync Get Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10611, _L( "[M10611] [[AccServer] Check Connected Accessory]]")); +} + +static void SpecialModuleTestSuiteL(CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10701, _L( "[M10701] [[AccServer] MD-1, PowerSupply On After Connection] ")); + TF_ADD_TEST_CASE_L( 10702, _L( "[M10702] [[AccServer] MD-1 Power Supply On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10703, _L( "[M10703] [[AccServer] HS-20 Audio Out Connector On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10704, _L( "[M10704] [[AccServer] Connect Unsupported Accessory] ")); + TF_ADD_TEST_CASE_L( 10705, _L( "[M10705] [[AccServer] Transaction matching for ASY command] ")); + TF_ADD_TEST_CASE_L( 10706, _L( "[M10706] [[AccServer] Fast Mode Notification Change] ")); + TF_ADD_TEST_CASE_L( 10707, _L( "[M10707] [[AccServer] Not supported note ")); +} + +static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10801, _L( "[M10801] [[AccServer] Set Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10802, _L( "[M10802] [[AccServer] Get Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10803, _L( "[M10803] [[AccServer] Set And Get Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10804, _L( "[M10804] [[AccServer] Set TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10805, _L( "[M10805] [[AccServer] Get TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10806, _L( "[M10806] [[AccServer] Set And Get TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10808, _L( "[M10808] [[AccServer] Set TTY Mode After Connection] ") ); + TF_ADD_TEST_CASE_L( 10809, _L( "[M10809] [[AccServer] Set MusicStand Mode After Connection] ") ); + TF_ADD_TEST_CASE_L( 10810, _L( "[M10810] [[AccServer] Default Accessory Set To MusicStand; Connect Headphone; Change accessory settings to Headphones] ") ); + TF_ADD_TEST_CASE_L( 10811, _L( "[M10811] [[AccServer] Default Accessory Set To TTY; Connect Headset; Change accessory settings to Headset] ") ); + TF_ADD_TEST_CASE_L( 10812, _L( "[M10812] [[AccServer] Accessory Mode Settings (TInt)] ") ); + TF_ADD_TEST_CASE_L( 10813, _L( "[M10813] [[AccServer] Accessory Mode Settings (TBool)] ") ); + TF_ADD_TEST_CASE_L( 10814, _L( "[M10814] [[AccServer] Accessory Mode Settings (TDes)] ") ); +#ifdef __WINS__ + TF_ADD_TEST_CASE_L( 10815, _L( "[M10815] [[AccServer] Accessory Mode Settings (Array)] ") ); +#endif + TF_ADD_TEST_CASE_L( 10816, _L( "[M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10817, _L( "[M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10818, _L( "[M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10819, _L( "[M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10820, _L( "[M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10821, _L( "[M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10822, _L( "[M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)]") ); +} + +static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10901, _L( "[M10901] [[AccServer] Connect Wired And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10902, _L( "[M10902] [[AccServer] Disconnect Wired And Wireleass] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10903, _L( "[M10903] [[AccServer] Connect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10904, _L( "[M10904] [[AccServer] Disconnect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10905, _L( "[M10905] [[AccServer] Connect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10906, _L( "[M10906] [[AccServer] Disconnect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11001, _L( "[M11001] [[AccServer] Selection dialog test] ")); + TF_ADD_TEST_CASE_L( 11002, _L( "[M11002] [[AccServer] Selection dialog open/cancel] ")); + //TF_ADD_TEST_CASE_L( 11003, _L( "[M11003] [[AccServer] Connect open cable, user select tv-out]")); + TF_ADD_TEST_CASE_L( 11004, _L( "[M11004] [[AccServer] Connect open cable, ASY selects tv-out]")); + //TF_ADD_TEST_CASE_L( 11005, _L( "[M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out]")); + TF_ADD_TEST_CASE_L( 11006, _L( "[M11006] [[AccServer] Connect open cable, open selection dialog, disconnect]")); + TF_ADD_TEST_CASE_L( 11007, _L( "[M11007] [[AccServer] Connect open cable, connect headset, user select headset]")); + TF_ADD_TEST_CASE_L( 11008, _L( "[M11008] [[AccServer] Connect ECI accessory]")); + TF_ADD_TEST_CASE_L( 11009, _L( "[M11009] [[AccServer] Connect open cable, default accessory headset, default is selected]")); + TF_ADD_TEST_CASE_L( 11010, _L( "[M11010] [[AccServer] Connect Headset]]")); + TF_ADD_TEST_CASE_L( 11011, _L( "[M11011] [[AccServer] Connect Headphones]]")); + TF_ADD_TEST_CASE_L( 11012, _L( "[M11012] [[AccServer] Connect Open Cable]]")); + TF_ADD_TEST_CASE_L( 11013, _L( "[M11013] [[AccServer] Connect TV Out]]")); + TF_ADD_TEST_CASE_L( 11014, _L( "[M11014] [[AccServer] Disconnect Wired Accessory]]")); + TF_ADD_TEST_CASE_L( 11015, _L( "[M11015] [[AccServer] Connect and disconnect Headphones]]")); +} + + +static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11101, _L( "[M11101] [[AccPolicy] ValueRecord test] ")); + //TF_ADD_TEST_CASE_L( 11102, _L( "[M11102] [[Code coverage] Cancel connects] ")); + TF_ADD_TEST_CASE_L( 11103, _L( "[M11103] [[AccPolicy] Object Base Serialization test] ")); +} + +static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11201, _L( "[M11201] [[AccServer] Connect USB headset] ")); + TF_ADD_TEST_CASE_L( 11202, _L( "[M11202] [[AccServer] Get and Set USB headset audio streams format parameter] ")); + TF_ADD_TEST_CASE_L( 11203, _L( "[M11203] [[AccServer] Get USB audio units (Audio Topology) ] ")); + TF_ADD_TEST_CASE_L( 11204, _L( "[M11204] [[AccServer] Set/Get volume control] ")); + TF_ADD_TEST_CASE_L( 11205, _L( "[M11205] [[AccServer] Set/Get mute control] ")); + TF_ADD_TEST_CASE_L( 11206, _L( "[M11206] [[AccServer] Connect USB 2 headset / Policy test]")); + TF_ADD_TEST_CASE_L( 11207, _L( "[M11207] [[AccServer] Cancel accessory object value changed notify]")); + TF_ADD_TEST_CASE_L( 11208, _L( "[M11208] [[AccServer] Accessory object value changed notify]")); + TF_ADD_TEST_CASE_L( 11209, _L( "[M11209] [[AccServer] Accessory object value changed notify and cancel]")); +} + +static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11301, _L( "[M11301] [[AccServer] Connect HDMI device] ")); + TF_ADD_TEST_CASE_L( 11302, _L( "[M11302] [[AccServer] Get HDMI device attributes] ")); + TF_ADD_TEST_CASE_L( 11303, _L( "[M11303] [[AccServer] Notify HDMI device attributes changed] ")); + TF_ADD_TEST_CASE_L( 11304, _L( "[M11304] [[AccServer] Get HDMI video format] ")); + TF_ADD_TEST_CASE_L( 11305, _L( "[M11305] [[AccServer] Notify HDMI video format changed] ")); + TF_ADD_TEST_CASE_L( 11306, _L( "[M11306] [[AccServer] Check HDMI objects] ")); +} + +#ifdef FF_AUTOMOTIVESTACK +static void AutoAudioAsyModuleTestSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 11401, _L( "[M11401] [[AccServer] Connect RTP Streaming device] ")); + TF_ADD_TEST_CASE_L( 11402, _L( "[M11402] [[AccServer] RTP Streaming device Accessory Mode] ")); + TF_ADD_TEST_CASE_L( 11403, _L( "[M11403] [[AccServer] Improper publish of RTP Streaming status] ")); + TF_ADD_TEST_CASE_L( 11404, _L( "[M11404] [[AccServer] Publish Improper And Connect RTP streaming device] ")); + } +#endif + +// End of File + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlProxy.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlProxy.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfAccessoryTestControlProxy.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,44 +1,44 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -// INCLUDE FILES -#include -#include -#include "CtfAccessoryTestControlPlugin.h" - -// CONSTANTS -const TImplementationProxy ImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY( 0x10200c70, CTFAccessoryTestControlPlugin::NewL ) - }; - -// ================= OTHER EXPORTED FUNCTIONS ============== - -// --------------------------------------------------------- -// ImplementationGroupProxy -// Returns: TImplementationProxy*: ?description -// --------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); - - return ImplementationTable; - } - -// End of File +/* +* Copyright (c) 2005 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: +* +*/ + + +// INCLUDE FILES +#include +#include +#include "CtfAccessoryTestControlPlugin.h" + +// CONSTANTS +const TImplementationProxy ImplementationTable[] = + { + IMPLEMENTATION_PROXY_ENTRY( 0x10200c70, CTFAccessoryTestControlPlugin::NewL ) + }; + +// ================= OTHER EXPORTED FUNCTIONS ============== + +// --------------------------------------------------------- +// ImplementationGroupProxy +// Returns: TImplementationProxy*: ?description +// --------------------------------------------------------- +// +EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) + { + aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); + + return ImplementationTable; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfTestControlObserver.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfTestControlObserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/AccessoryTestControlPlugin/src/TfTestControlObserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,753 +1,753 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES -#include -#include "siftrace.h" -#include "CtfTestControlObserver.h" -#include - -const TInt CTFTestControlObserver::iOffset = _FOFF(CTFTestControlObserver,iSlink); - -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver* CTFTestControlObserver::NewL() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver* CTFTestControlObserver::NewL( CTFAccessoryTestControl& aTestControl ) - { - CTFTestControlObserver* result = - new ( ELeave ) CTFTestControlObserver( aTestControl ); - result->iObjectValueBuf = HBufC8::NewL( 256 ); - result->iObjectValue.iValue.Set( result->iObjectValueBuf->Des() ); - CleanupStack::PushL( result ); - CleanupStack::Pop(); - return result; - } - -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::CTFTestControlObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver::CTFTestControlObserver( CTFAccessoryTestControl& aTestControl ) : - CActive( CActive::EPriorityHigh ), - iAccessoryTestControl( aTestControl ), - iObjectValue( TPtr8( NULL, 0, 0 ) ) - { - - iRequestCompleted = ReqAccRequestNone; - iCapabilityName = 0; - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver()" ) ) ); - CActiveScheduler::Add( this ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver - return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::~CTFTestControlObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver::~CTFTestControlObserver() - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - %d" ), iRequestType ) ); - delete iObjectValueBuf; - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - succesful" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::RunL() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::RunL() - { - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - enter" ) ) ); - - switch( iRequestType ) - { - - case ReqDisconnectBtAccessory: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqDisconnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqConnectBtAccessory: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyNewAccessoryConnected: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyNewAccessoryConnected" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryDisconnected: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryDisconnected" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryConnectionStatusChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryConnectionStatusChanged" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryModeChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryModeChanged" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccMode.iAccessoryMode; - } - break; - - case ReqGetAccessoryMode: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryMode" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccMode.iAccessoryMode; - } - break; - - case ReqNotifyAccessoryAudioLinkOpened: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqAccessoryAudioLinkOpen: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyBluetoothAudioLinkOpenReq: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkOpenReq" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqNotifyAccessoryAudioLinkClosed: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryAudioLinkClosed" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryAudioLinkClose: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryAudioLinkClose" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyBluetoothAudioLinkCloseReq: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkCloseReq" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqNotifyIntegerAccessoryValueChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyIntegerAccessoryValueChanged" ) ) ); - iCapabilityName = 0; - iRequestCompleted = iRequestType; - iValue = iIntegerValue.iValue; - } - break; - - case ReqNotifyBooleanAccessoryValueChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBooleanAccessoryValueChanged" ) ) ); - iCapabilityName = 0; - iRequestCompleted = iRequestType; - iValue = ( TInt )iBooleanValue.iValue; - } - break; - - case ReqNotifyObjectAccessoryValueChanged: - { - iCapabilityName = 0; - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryConnection: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryConnection" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryDisconnection: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryDisconnection" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqGetAccessoryConnectionStatus: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryConnectionStatus" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccessoryTestControl.iGenericIdArray.Count(); - } - break; - - default: - TRACE_ASSERT_ALWAYS; - break; - } - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - return" ) ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::RunError() -// ---------------------------------------------------------------------------------- -TInt CTFTestControlObserver::RunError( TInt aError ) - { - return aError; - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DoCancel() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DoCancel() - { - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - enter" ) ) ); - - switch( iRequestType ) - { - - case ReqDisconnectBtAccessory: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelDisconnectAccessory(); - } - } - break; - - case ReqConnectBtAccessory: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelConnectAccessory(); - } - } - break; - - case ReqNotifyNewAccessoryConnected: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); - } - } - break; - - case ReqNotifyAccessoryDisconnected: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); - } - } - break; - - case ReqNotifyAccessoryConnectionStatusChanged: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); - } - } - break; - - case ReqNotifyAccessoryModeChanged: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryMode->CancelNotifyAccessoryModeChanged(); - } - } - break; - - case ReqNotifyAccessoryAudioLinkOpened: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); - } - } - break; - - case ReqAccessoryAudioLinkOpen: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); - } - } - break; - - case ReqNotifyBluetoothAudioLinkOpenReq: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); - } - } - break; - - case ReqNotifyAccessoryAudioLinkClosed: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); - } - } - break; - - case ReqAccessoryAudioLinkClose: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); - } - } - break; - - case ReqNotifyBluetoothAudioLinkCloseReq: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); - } - } - break; - - case ReqGetAccessoryConnectionStatus: - { - //if(IsActive()) - //{ - //iAccessoryTestControl.iAccessoryConnection.CancelGetAccessoryConnectionStatus(); - // } - } - break; - - default: - TRACE_ASSERT_ALWAYS; - break; - } - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - Leave" ) ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyNewAccessoryConnected -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyNewAccessoryConnected( TAccPolGenericID& aGenericId ) - { - - if( !IsActive() ) - { - SetRequestType( ReqNotifyNewAccessoryConnected ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyNewAccessoryConnected( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyNewAccessoryConnected outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryDisconnected -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyAccessoryDisconnected( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryDisconnected ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryDisconnected( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryDisconnected outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryModeChanged -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryModeChanged() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryModeChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryMode->NotifyAccessoryModeChanged( iStatus, - iAccMode ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryModeChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged( TAccPolGenericIDArray& aGenericIdArray ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryConnectionStatusChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryConnection->NotifyAccessoryConnectionStatusChanged( iStatus, - aGenericIdArray ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::AccessoryAudioLinkOpen() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::AccessoryAudioLinkOpen( TAccPolGenericID& aGenericId, - TUint32 aAudioType ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryAudioLinkOpen ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkOpen( iStatus, - aGenericId, - ( TAccAudioType )aAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkOpen outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryAudioLinkOpened -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryAudioLinkOpened( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryAudioLinkOpened ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkOpened( iStatus, - aGenericId, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkOpened outstanding" ) ) ); - } - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryAudioLinkClosed -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryAudioLinkClosed( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryAudioLinkClosed ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkClosed( iStatus, - aGenericId, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkClosed outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::AccessoryAudioLinkClose -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::AccessoryAudioLinkClose( TAccPolGenericID& aGenericId, - TUint32 aAudioType ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryAudioLinkClose ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkClose( iStatus, - aGenericId, - ( TAccAudioType )aAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkClose outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyBluetoothAudioLinkOpenReq ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkOpenReq( iStatus, - iBTaddr, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyBluetoothAudioLinkCloseReq ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkCloseReq( iStatus, - iBTaddr, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::ConnectBTAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::ConnectBTAccessory( TBTDevAddr& btaddr ) - { - if( !IsActive() ) - { - SetRequestType( ReqConnectBtAccessory ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->ConnectAccessory( iStatus, - btaddr ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectBTAccessory outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DisconnectBTAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DisconnectBTAccessory( TBTDevAddr& btaddr ) - { - if( !IsActive() ) - { - SetRequestType( ReqDisconnectBtAccessory ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->DisconnectAccessory( iStatus, - btaddr ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectBTAccessory outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBooleanAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBooleanAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyBooleanAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iBooleanValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBooleanAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyIntegerAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyIntegerAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iIntegerValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyObjectAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - // Cleanup old data - iObjectValue.iValue.Zero(); - - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyObjectAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iObjectValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::GetAccessoryConnectionStatus() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::GetAccessoryConnectionStatus( TAccPolGenericIDArray& aGenericIdArray ) - { - if( !IsActive() ) - { - SetRequestType( ReqGetAccessoryConnectionStatus ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryConnection->GetAccessoryConnectionStatus( iStatus, - aGenericIdArray ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryConnectionStatus outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::ConnectAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::ConnectAccessory( TAccPolGenericID& aGenericId, - TUint64 aHWDeviceID ) - { - CAccConfigFileParser* accConfigFileParser = CAccConfigFileParser::NewL( _L("Configuration file") ); - - TBuf aHWModelID; - aHWModelID.Num( aHWDeviceID ); - - accConfigFileParser->FindL( aGenericId, aHWDeviceID, aHWModelID ); - - if( !IsActive() ) - { - SetRequestType( ReqAccessoryConnection ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryControl->ConnectAccessory( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectAccessory outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DisconnectAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DisconnectAccessory( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryDisconnection ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryControl->DisconnectAccessory( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectAccessory outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::GetAccessoryMode() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::GetAccessoryMode() - { - if( !IsActive() ) - { - SetRequestType( ReqGetAccessoryMode ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryMode->GetAccessoryMode( iStatus, - iAccMode ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryMode outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// -// ---------------------------------------------------------------------------------- -TBool CTFTestControlObserver::FindRequest( TTFRequestType aRequest ) - { - TBool bFound = EFalse; - - if( aRequest == iRequestType ) - { - bFound = ETrue; - } - return bFound; - } - +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES +#include +#include "siftrace.h" +#include "CtfTestControlObserver.h" +#include + +const TInt CTFTestControlObserver::iOffset = _FOFF(CTFTestControlObserver,iSlink); + +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver* CTFTestControlObserver::NewL() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver* CTFTestControlObserver::NewL( CTFAccessoryTestControl& aTestControl ) + { + CTFTestControlObserver* result = + new ( ELeave ) CTFTestControlObserver( aTestControl ); + result->iObjectValueBuf = HBufC8::NewL( 256 ); + result->iObjectValue.iValue.Set( result->iObjectValueBuf->Des() ); + CleanupStack::PushL( result ); + CleanupStack::Pop(); + return result; + } + +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::CTFTestControlObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver::CTFTestControlObserver( CTFAccessoryTestControl& aTestControl ) : + CActive( CActive::EPriorityHigh ), + iAccessoryTestControl( aTestControl ), + iObjectValue( TPtr8( NULL, 0, 0 ) ) + { + + iRequestCompleted = ReqAccRequestNone; + iCapabilityName = 0; + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver()" ) ) ); + CActiveScheduler::Add( this ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver - return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::~CTFTestControlObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver::~CTFTestControlObserver() + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - %d" ), iRequestType ) ); + delete iObjectValueBuf; + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - succesful" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::RunL() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::RunL() + { + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - enter" ) ) ); + + switch( iRequestType ) + { + + case ReqDisconnectBtAccessory: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqDisconnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqConnectBtAccessory: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyNewAccessoryConnected: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyNewAccessoryConnected" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryDisconnected: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryDisconnected" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryConnectionStatusChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryConnectionStatusChanged" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryModeChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryModeChanged" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccMode.iAccessoryMode; + } + break; + + case ReqGetAccessoryMode: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryMode" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccMode.iAccessoryMode; + } + break; + + case ReqNotifyAccessoryAudioLinkOpened: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqAccessoryAudioLinkOpen: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyBluetoothAudioLinkOpenReq: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkOpenReq" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqNotifyAccessoryAudioLinkClosed: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryAudioLinkClosed" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryAudioLinkClose: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryAudioLinkClose" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyBluetoothAudioLinkCloseReq: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkCloseReq" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqNotifyIntegerAccessoryValueChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyIntegerAccessoryValueChanged" ) ) ); + iCapabilityName = 0; + iRequestCompleted = iRequestType; + iValue = iIntegerValue.iValue; + } + break; + + case ReqNotifyBooleanAccessoryValueChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBooleanAccessoryValueChanged" ) ) ); + iCapabilityName = 0; + iRequestCompleted = iRequestType; + iValue = ( TInt )iBooleanValue.iValue; + } + break; + + case ReqNotifyObjectAccessoryValueChanged: + { + iCapabilityName = 0; + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryConnection: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryConnection" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryDisconnection: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryDisconnection" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqGetAccessoryConnectionStatus: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryConnectionStatus" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccessoryTestControl.iGenericIdArray.Count(); + } + break; + + default: + TRACE_ASSERT_ALWAYS; + break; + } + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - return" ) ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::RunError() +// ---------------------------------------------------------------------------------- +TInt CTFTestControlObserver::RunError( TInt aError ) + { + return aError; + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DoCancel() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DoCancel() + { + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - enter" ) ) ); + + switch( iRequestType ) + { + + case ReqDisconnectBtAccessory: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelDisconnectAccessory(); + } + } + break; + + case ReqConnectBtAccessory: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelConnectAccessory(); + } + } + break; + + case ReqNotifyNewAccessoryConnected: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); + } + } + break; + + case ReqNotifyAccessoryDisconnected: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); + } + } + break; + + case ReqNotifyAccessoryConnectionStatusChanged: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); + } + } + break; + + case ReqNotifyAccessoryModeChanged: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryMode->CancelNotifyAccessoryModeChanged(); + } + } + break; + + case ReqNotifyAccessoryAudioLinkOpened: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); + } + } + break; + + case ReqAccessoryAudioLinkOpen: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); + } + } + break; + + case ReqNotifyBluetoothAudioLinkOpenReq: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); + } + } + break; + + case ReqNotifyAccessoryAudioLinkClosed: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); + } + } + break; + + case ReqAccessoryAudioLinkClose: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); + } + } + break; + + case ReqNotifyBluetoothAudioLinkCloseReq: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); + } + } + break; + + case ReqGetAccessoryConnectionStatus: + { + //if(IsActive()) + //{ + //iAccessoryTestControl.iAccessoryConnection.CancelGetAccessoryConnectionStatus(); + // } + } + break; + + default: + TRACE_ASSERT_ALWAYS; + break; + } + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - Leave" ) ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyNewAccessoryConnected +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyNewAccessoryConnected( TAccPolGenericID& aGenericId ) + { + + if( !IsActive() ) + { + SetRequestType( ReqNotifyNewAccessoryConnected ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyNewAccessoryConnected( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyNewAccessoryConnected outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryDisconnected +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyAccessoryDisconnected( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryDisconnected ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryDisconnected( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryDisconnected outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryModeChanged +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryModeChanged() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryModeChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryMode->NotifyAccessoryModeChanged( iStatus, + iAccMode ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryModeChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged( TAccPolGenericIDArray& aGenericIdArray ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryConnectionStatusChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryConnection->NotifyAccessoryConnectionStatusChanged( iStatus, + aGenericIdArray ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::AccessoryAudioLinkOpen() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::AccessoryAudioLinkOpen( TAccPolGenericID& aGenericId, + TUint32 aAudioType ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryAudioLinkOpen ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkOpen( iStatus, + aGenericId, + ( TAccAudioType )aAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkOpen outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryAudioLinkOpened +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryAudioLinkOpened( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryAudioLinkOpened ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkOpened( iStatus, + aGenericId, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkOpened outstanding" ) ) ); + } + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryAudioLinkClosed +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryAudioLinkClosed( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryAudioLinkClosed ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkClosed( iStatus, + aGenericId, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkClosed outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::AccessoryAudioLinkClose +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::AccessoryAudioLinkClose( TAccPolGenericID& aGenericId, + TUint32 aAudioType ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryAudioLinkClose ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkClose( iStatus, + aGenericId, + ( TAccAudioType )aAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkClose outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyBluetoothAudioLinkOpenReq ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkOpenReq( iStatus, + iBTaddr, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyBluetoothAudioLinkCloseReq ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkCloseReq( iStatus, + iBTaddr, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::ConnectBTAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::ConnectBTAccessory( TBTDevAddr& btaddr ) + { + if( !IsActive() ) + { + SetRequestType( ReqConnectBtAccessory ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->ConnectAccessory( iStatus, + btaddr ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectBTAccessory outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DisconnectBTAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DisconnectBTAccessory( TBTDevAddr& btaddr ) + { + if( !IsActive() ) + { + SetRequestType( ReqDisconnectBtAccessory ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->DisconnectAccessory( iStatus, + btaddr ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectBTAccessory outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBooleanAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBooleanAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyBooleanAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iBooleanValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBooleanAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyIntegerAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyIntegerAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iIntegerValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyObjectAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + // Cleanup old data + iObjectValue.iValue.Zero(); + + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyObjectAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iObjectValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::GetAccessoryConnectionStatus() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::GetAccessoryConnectionStatus( TAccPolGenericIDArray& aGenericIdArray ) + { + if( !IsActive() ) + { + SetRequestType( ReqGetAccessoryConnectionStatus ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryConnection->GetAccessoryConnectionStatus( iStatus, + aGenericIdArray ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryConnectionStatus outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::ConnectAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::ConnectAccessory( TAccPolGenericID& aGenericId, + TUint64 aHWDeviceID ) + { + CAccConfigFileParser* accConfigFileParser = CAccConfigFileParser::NewL( _L("Configuration file") ); + + TBuf aHWModelID; + aHWModelID.Num( aHWDeviceID ); + + accConfigFileParser->FindL( aGenericId, aHWDeviceID, aHWModelID ); + + if( !IsActive() ) + { + SetRequestType( ReqAccessoryConnection ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryControl->ConnectAccessory( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectAccessory outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DisconnectAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DisconnectAccessory( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryDisconnection ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryControl->DisconnectAccessory( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectAccessory outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::GetAccessoryMode() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::GetAccessoryMode() + { + if( !IsActive() ) + { + SetRequestType( ReqGetAccessoryMode ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryMode->GetAccessoryMode( iStatus, + iAccMode ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryMode outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// +// ---------------------------------------------------------------------------------- +TBool CTFTestControlObserver::FindRequest( TTFRequestType aRequest ) + { + TBool bFound = EFalse; + + if( aRequest == iRequestType ) + { + bFound = ETrue; + } + return bFound; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BMARM/DOSSERVERCONTROLU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -EXPORTS - ImplementationGroupProxy__FRi @ 1 NONAME R3UNUSED ; ImplementationGroupProxy(int &) - GetDosServerControl__Fv @ 2 NONAME R3UNUSED ; GetDosServerControl(void) - +EXPORTS + ImplementationGroupProxy__FRi @ 1 NONAME R3UNUSED ; ImplementationGroupProxy(int &) + GetDosServerControl__Fv @ 2 NONAME R3UNUSED ; GetDosServerControl(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/BWINS/DOSSERVERCONTROLU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -EXPORTS - ?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * __cdecl ImplementationGroupProxy(int &) - ?GetDosServerControl@@YAPAVMTFDosServerControl@@XZ @ 2 NONAME ; class MTFDosServerControl * __cdecl GetDosServerControl(void) - +EXPORTS + ?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * __cdecl ImplementationGroupProxy(int &) + ?GetDosServerControl@@YAPAVMTFDosServerControl@@XZ @ 2 NONAME ; class MTFDosServerControl * __cdecl GetDosServerControl(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/EABI/dosservercontrolU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/EABI/dosservercontrolU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/EABI/dosservercontrolU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,5 +1,5 @@ -EXPORTS - _Z24ImplementationGroupProxyRi @ 1 NONAME - _Z19GetDosServerControlv @ 2 NONAME - - +EXPORTS + _Z24ImplementationGroupProxyRi @ 1 NONAME + _Z19GetDosServerControlv @ 2 NONAME + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/data/10200c6f.rss --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/data/10200c6f.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/data/10200c6f.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,54 +1,54 @@ -/* -* 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: Declaration of DOS server control ECom resource -* -*/ - - -// INCLUDE FILES -#include "registryinfov2.rh" - -// RESOURCE DEFINITIONS -// --------------------------------------------------------- -// -// DosServerControlPlugin -// -// --------------------------------------------------------- -// -RESOURCE REGISTRY_INFO DosServerControlPlugin - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10200c6f; - interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x10200c7d; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0x10200c77; - version_no = 1; - display_name = "DOSSERVERCONTROLPLUGIN"; - default_data = "DOSSERVERCONTROLPLUGIN"; - opaque_data = ""; - rom_only = 0; - } - }; - } - }; - } - -// End of File +/* +* 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: Declaration of DOS server control ECom resource +* +*/ + + +// INCLUDE FILES +#include "registryinfov2.rh" + +// RESOURCE DEFINITIONS +// --------------------------------------------------------- +// +// DosServerControlPlugin +// +// --------------------------------------------------------- +// +RESOURCE REGISTRY_INFO DosServerControlPlugin + { + resource_format_version = RESOURCE_FORMAT_VERSION_2; + dll_uid = 0x10200c6f; + interfaces = + { + INTERFACE_INFO + { + interface_uid = 0x10200c7d; + implementations = + { + IMPLEMENTATION_INFO + { + implementation_uid = 0x10200c77; + version_no = 1; + display_name = "DOSSERVERCONTROLPLUGIN"; + default_data = "DOSSERVERCONTROLPLUGIN"; + opaque_data = ""; + rom_only = 0; + } + }; + } + }; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/bld.inf --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,28 +1,28 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dosservercontrol -* -*/ - - -#include - -PRJ_EXPORTS -#ifndef RD_STARTUP_CHANGE -../inc/mtfdosservercontrol.h OS_LAYER_PLATFORM_EXPORT_PATH(mtfdosservercontrol.h) -#endif // RD_STARTUP_CHANGE -PRJ_MMPFILES -#ifndef RD_STARTUP_CHANGE -dosservercontrol.mmp +/* +* Copyright (c) 2002-2006 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: Build information file for project dosservercontrol +* +*/ + + +#include + +PRJ_EXPORTS +#ifndef RD_STARTUP_CHANGE +../inc/mtfdosservercontrol.h OS_LAYER_PLATFORM_EXPORT_PATH(mtfdosservercontrol.h) +#endif // RD_STARTUP_CHANGE +PRJ_MMPFILES +#ifndef RD_STARTUP_CHANGE +dosservercontrol.mmp #endif // RD_STARTUP_CHANGE \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/dosservercontrol.mmp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/dosservercontrol.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/group/dosservercontrol.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,64 +1,64 @@ -/* -* Copyright (c) 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: Declaration of dosservercontrol module -* -*/ - - -#include -#include - -TARGET dosservercontrol.dll -TARGETTYPE dll -TARGETPATH ECOM_RESOURCE_DIR - -UID 0x10009D8D 0x10200C6F - -CAPABILITY CAP_GENERAL_DLL - -SOURCEPATH ../src -SOURCE tfdosservercontrol.cpp -SOURCE tfdosservercontroltestcase.cpp -SOURCE tfdosserverproxy.cpp -SOURCE tfdosserverplugin.cpp -SOURCE tfdoseventlistener.cpp - -USERINCLUDE ../inc -USERINCLUDE ../../dsytfcore/inc - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -START RESOURCE ../data/10200c6f.rss - -HEADER -TARGETPATH ECOM_RESOURCE_DIR - -target dosservercontrol.rsc - -END - -LIBRARY euser.lib -LIBRARY ecom.lib -LIBRARY dsytfcore.lib -LIBRARY dsclient.lib -LIBRARY bluetooth.lib - -//MACRO COMPONENT_TRACE_FLAG -MACRO TEST_CASE_TRACE_FLAG - -// Disable if running tests without UI (eg. running tests from console) -//MACRO TESTS_NO_UI - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dosservercontrol module +* +*/ + + +#include +#include + +TARGET dosservercontrol.dll +TARGETTYPE dll +TARGETPATH ECOM_RESOURCE_DIR + +UID 0x10009D8D 0x10200C6F + +CAPABILITY CAP_GENERAL_DLL + +SOURCEPATH ../src +SOURCE tfdosservercontrol.cpp +SOURCE tfdosservercontroltestcase.cpp +SOURCE tfdosserverproxy.cpp +SOURCE tfdosserverplugin.cpp +SOURCE tfdoseventlistener.cpp + +USERINCLUDE ../inc +USERINCLUDE ../../dsytfcore/inc + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +START RESOURCE ../data/10200c6f.rss + +HEADER +TARGETPATH ECOM_RESOURCE_DIR + +target dosservercontrol.rsc + +END + +LIBRARY euser.lib +LIBRARY ecom.lib +LIBRARY dsytfcore.lib +LIBRARY dsclient.lib +LIBRARY bluetooth.lib + +//MACRO COMPONENT_TRACE_FLAG +MACRO TEST_CASE_TRACE_FLAG + +// Disable if running tests without UI (eg. running tests from console) +//MACRO TESTS_NO_UI + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdoseventlistener.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdoseventlistener.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdoseventlistener.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,257 +1,257 @@ -/* -* 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: Declaration of CTFDosServerEventListener class -* -*/ - - -#ifndef __CTFDOSEVENTLISTENER_H__ -#define __CTFDOSEVENTLISTENER_H__ - -#include - -class CTFDosServerControl; - -NONSHARABLE_CLASS( CTFDosServerEventListener ): public CDosEventListenerBase - { - public: - /** - * Constructor - */ - CTFDosServerEventListener( RDosServer& aServer ); - - /** - * Destructor - */ - virtual ~CTFDosServerEventListener( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerEventListener( const CTFDosServerEventListener& aListener ); - - /** - * Assignment operator is hidden - */ - CTFDosServerEventListener& operator=( const CTFDosServerEventListener& aListener ); - - protected: - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies that a Dos SelfTest has completed. - * @param aSelftTestResult The result of the self test. - */ - void NotifySelfTestStatusL( const TInt aSelfTestResult ); - - /** - * It notifies that the phone side has initiated a shutdown. - */ - void DoMtcInitiatedShutdownL(); - - /** - * It notifies that the phone is on. - */ - void PhonePowerOnL(); -#endif // RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies that the SIM card is ready to be fully used. - * @param aStatus The new status. - */ - void SimReadyL( EPSSimReadyStatus aStatus ); - - /** - * It notifies if the SIM card has been changed. - * @param aValue ETrue if it has been or EFalse otherwise. - */ - void SimChangedL( TBool aValue ); - - /** - * It notifies about a change in the status of the SimLock. - * @param aStatus The new status. - */ - void SimLockStatusL(EPSSimLockStatus aStatus); - /** - * It notifies about a change in the state of the SIM card. - * @param aStatus The new state. - */ - void SimStateL( TDosSimState aState ); - - /** - * It notifies about a change in the status of the calls forwarding settings. - * @param aStatus The new status. - */ - void CallsForwardingStatusL(EPSCallsForwardingStatus aStatus); - /** - * It notifies about a change in the status of the voice mail settings. - * @param aStatus The new status. - */ - void VoiceMailStatusL(EPSVoiceMailStatus aStatus); - - /** - * It notifies about the existance of a fax message in our voice mail. - * @param aValue ETrue or EFalse - */ - void FaxMessageL( TBool aValue ); - - /** - * It notifies about the existance of a E-mail message in our voice mail. - * @param aValue ETrue or EFalse - */ - void EmailMessageL( TBool aValue ); -#endif //RD_STARTUP_CHANGE - - /** - * It notifies about a change in the network bars. - * @param aValue The new value. - */ - // void NetworkBarsL( TInt aValue ); - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change in the status of the security code. - * @param aStatus The new status. - */ - void SecurityCodeL(EPSSecurityCodeStatus aStatus); -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change in the status of the current SIM. - * @param aStatus The new status. - */ - void CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus); -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - /** - * It notifies about a headset button state change - * @param aMode - */ - void HeadsetButtonChangedL(EPSButtonState aState); - - /** - * It notifies about a output volume level changes - * @param aState - */ - void OutputVolumeLevelChangedL( TInt aLevel ); - - /** - * It requests to open a BT Audio link between phone and BT Audio Accessory. - */ - void AudioLinkOpenReq(); - - /** - * It requests to close the BT Audio link between phone and BTAA. - * @param aConnectionHandle Handle to the audio connection. - */ - void AudioLinkCloseReq( THCIConnHandle aConnectionHandle ); - - /** - * It requests to activate voice recognition. - */ - void ActivateVoiceRecognitionReq(); - - /** - * It requests to abort voice recognition. - */ - void AbortVoiceRecognitionReq(); - - /** - * It requests status of voice recognition. - */ - void VoiceRecognitionStatusReq(); - - /** - * It requests to query speed dial number. - * @param aIndex A speed dial index. - */ - void QuerySpeedDialNumberReq( TInt aIndex ); - - /** - * It requests to query last dialled number. - */ - void QueryLastDialledVoiceNumberReq(); - - /** - * It notifies about a change in audio accessory mode. - * @param aAccMode The new accessorymode. - */ - void AccessoryModeChangedInd( TBTAccessoryMode aAccMode ); - - /** - * It notifies about a change in BT audio accessory mode. - * @param aDeviceType BT Accessory device's type. - */ - void BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ); - - /** - * It notifies about a change in audio accessory's speaker volume level. - * @param aVolume The new volume level. - */ - void AccessorySpeakerVolumeSetInd( TUint aVolume ); - - /** - * It notifies about a change in BT connection status. - * @param aServiceLevelConnParams A struct containing parameters. - */ - void ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ); -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - /** - * It notifies about a change sms storage status. - * @param aServiceLevelConnParams A struct containing parameters. - */ - void SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ); -#endif // RD_STARTUP_CHANGE - - /** - * This a raw event that is intended for expansion of the event functionality by licensees. - * @param aEvent The event. - * @param aParameter A pointer to the parameter. - */ - void GeneralEventL( const TRegisterEvent& aEvent,TAny* aParameter ); - -#ifndef __ACCESSORY_FW - /** - * It notifies about a change in the status of the handsfree mode. - * @param aStatus The new status. - */ - void HandsfreeModeChanged(EPSHandsFreeMode aMode); - - /** - * Notifies of changes in accessory mode - * @param aMode New accessory mode - */ - void AccessoryModeChangedL( TDosAccessoryMode aMode ); -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - /** - * Notifies if SIM is present or not - * @param aMode SIM present state - */ - void SimPresentStateChangedL( TDosSimPresentState aState ); -#endif //RD_STARTUP_CHANGE - - }; - - -#endif - -// End of file +/* +* 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: Declaration of CTFDosServerEventListener class +* +*/ + + +#ifndef __CTFDOSEVENTLISTENER_H__ +#define __CTFDOSEVENTLISTENER_H__ + +#include + +class CTFDosServerControl; + +NONSHARABLE_CLASS( CTFDosServerEventListener ): public CDosEventListenerBase + { + public: + /** + * Constructor + */ + CTFDosServerEventListener( RDosServer& aServer ); + + /** + * Destructor + */ + virtual ~CTFDosServerEventListener( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerEventListener( const CTFDosServerEventListener& aListener ); + + /** + * Assignment operator is hidden + */ + CTFDosServerEventListener& operator=( const CTFDosServerEventListener& aListener ); + + protected: + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies that a Dos SelfTest has completed. + * @param aSelftTestResult The result of the self test. + */ + void NotifySelfTestStatusL( const TInt aSelfTestResult ); + + /** + * It notifies that the phone side has initiated a shutdown. + */ + void DoMtcInitiatedShutdownL(); + + /** + * It notifies that the phone is on. + */ + void PhonePowerOnL(); +#endif // RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies that the SIM card is ready to be fully used. + * @param aStatus The new status. + */ + void SimReadyL( EPSSimReadyStatus aStatus ); + + /** + * It notifies if the SIM card has been changed. + * @param aValue ETrue if it has been or EFalse otherwise. + */ + void SimChangedL( TBool aValue ); + + /** + * It notifies about a change in the status of the SimLock. + * @param aStatus The new status. + */ + void SimLockStatusL(EPSSimLockStatus aStatus); + /** + * It notifies about a change in the state of the SIM card. + * @param aStatus The new state. + */ + void SimStateL( TDosSimState aState ); + + /** + * It notifies about a change in the status of the calls forwarding settings. + * @param aStatus The new status. + */ + void CallsForwardingStatusL(EPSCallsForwardingStatus aStatus); + /** + * It notifies about a change in the status of the voice mail settings. + * @param aStatus The new status. + */ + void VoiceMailStatusL(EPSVoiceMailStatus aStatus); + + /** + * It notifies about the existance of a fax message in our voice mail. + * @param aValue ETrue or EFalse + */ + void FaxMessageL( TBool aValue ); + + /** + * It notifies about the existance of a E-mail message in our voice mail. + * @param aValue ETrue or EFalse + */ + void EmailMessageL( TBool aValue ); +#endif //RD_STARTUP_CHANGE + + /** + * It notifies about a change in the network bars. + * @param aValue The new value. + */ + // void NetworkBarsL( TInt aValue ); + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change in the status of the security code. + * @param aStatus The new status. + */ + void SecurityCodeL(EPSSecurityCodeStatus aStatus); +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change in the status of the current SIM. + * @param aStatus The new status. + */ + void CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus); +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + /** + * It notifies about a headset button state change + * @param aMode + */ + void HeadsetButtonChangedL(EPSButtonState aState); + + /** + * It notifies about a output volume level changes + * @param aState + */ + void OutputVolumeLevelChangedL( TInt aLevel ); + + /** + * It requests to open a BT Audio link between phone and BT Audio Accessory. + */ + void AudioLinkOpenReq(); + + /** + * It requests to close the BT Audio link between phone and BTAA. + * @param aConnectionHandle Handle to the audio connection. + */ + void AudioLinkCloseReq( THCIConnHandle aConnectionHandle ); + + /** + * It requests to activate voice recognition. + */ + void ActivateVoiceRecognitionReq(); + + /** + * It requests to abort voice recognition. + */ + void AbortVoiceRecognitionReq(); + + /** + * It requests status of voice recognition. + */ + void VoiceRecognitionStatusReq(); + + /** + * It requests to query speed dial number. + * @param aIndex A speed dial index. + */ + void QuerySpeedDialNumberReq( TInt aIndex ); + + /** + * It requests to query last dialled number. + */ + void QueryLastDialledVoiceNumberReq(); + + /** + * It notifies about a change in audio accessory mode. + * @param aAccMode The new accessorymode. + */ + void AccessoryModeChangedInd( TBTAccessoryMode aAccMode ); + + /** + * It notifies about a change in BT audio accessory mode. + * @param aDeviceType BT Accessory device's type. + */ + void BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ); + + /** + * It notifies about a change in audio accessory's speaker volume level. + * @param aVolume The new volume level. + */ + void AccessorySpeakerVolumeSetInd( TUint aVolume ); + + /** + * It notifies about a change in BT connection status. + * @param aServiceLevelConnParams A struct containing parameters. + */ + void ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ); +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + /** + * It notifies about a change sms storage status. + * @param aServiceLevelConnParams A struct containing parameters. + */ + void SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ); +#endif // RD_STARTUP_CHANGE + + /** + * This a raw event that is intended for expansion of the event functionality by licensees. + * @param aEvent The event. + * @param aParameter A pointer to the parameter. + */ + void GeneralEventL( const TRegisterEvent& aEvent,TAny* aParameter ); + +#ifndef __ACCESSORY_FW + /** + * It notifies about a change in the status of the handsfree mode. + * @param aStatus The new status. + */ + void HandsfreeModeChanged(EPSHandsFreeMode aMode); + + /** + * Notifies of changes in accessory mode + * @param aMode New accessory mode + */ + void AccessoryModeChangedL( TDosAccessoryMode aMode ); +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + /** + * Notifies if SIM is present or not + * @param aMode SIM present state + */ + void SimPresentStateChangedL( TDosSimPresentState aState ); +#endif //RD_STARTUP_CHANGE + + }; + + +#endif + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontrol.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,124 +1,124 @@ -/* -* 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: Declaration of CTFDosServerControl class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROL_H__ -#define __CTFDOSSERVERCONTROL_H__ - -#include -#include "ctfstub.h" -#include "mtfdosservercontrol.h" -#include "tfdosservertypes.h" - -struct TTFDosServerControlTestCaseState; -class CTFDosServerEventListener; -class RTFDosExtension; - -const TInt KTFStubTypeDosServerControl = 560; - -NONSHARABLE_CLASS( CTFDosServerControl ): public CTFStub, public MTFDosServerControl - { - public: - /** - * Constructor - */ - CTFDosServerControl( void ); - - /** - * Destructor - */ - virtual ~CTFDosServerControl( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControl( const CTFDosServerControl& aStub ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControl& operator=( const CTFDosServerControl& aStub ); - - public: - /** - * Initializes this stub - */ - void InitializeL( void ); - - public: - /** - * Calls a DosServer function - */ - void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ); - - /** - * Gets the parameter count for given DosServer method - */ - TInt ParameterCount( TTFDosFunction aFunction ) const; - - /** - * Gets the parameter bounds of given DosServer method - */ - TBool ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const; - - /** - * Notifies about a DosServer event - */ - void NotifyDosEvent( TInt aEvent, TInt aParameter ); - - /** - * Closes all DosServer services - */ - void ResetDosServices( void ); - - private: - RDosServer iDosServer; -#ifndef __ACCESSORY_FW - RDosAudio* iDosAudio; - RDosAccessory* iDosAccessory; -#endif //__ACCESSORY_FW -#ifndef RD_STARTUP_CHANGE - RDosSysUtils* iDosSysUtils; - RDosHelper* iDosHelper; - RDosMtc* iDosMtc; - RDosSelfTest* iDosSelfTest; -#endif //RD_STARTUP_CHANGE - RDosSae* iDosSae; -#ifndef __ACCESSORY_FW - RDosBTAudio* iDosBTAudio; -#endif //__ACCESSORY_FW - RTFDosExtension* iDosExtension; - CTFDosServerEventListener* iEventListener; - TBool iInitialized; - }; - -class RTFDosExtension : public RDosExtension - { - public: - /** - * Calls a synchronous RDosExtension::CallFunction - */ - TInt CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); - - /** - * Calls an asynchronous RDosExtension::CallFunction - */ - TInt CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); - }; - -#endif +/* +* 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: Declaration of CTFDosServerControl class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROL_H__ +#define __CTFDOSSERVERCONTROL_H__ + +#include +#include "ctfstub.h" +#include "mtfdosservercontrol.h" +#include "tfdosservertypes.h" + +struct TTFDosServerControlTestCaseState; +class CTFDosServerEventListener; +class RTFDosExtension; + +const TInt KTFStubTypeDosServerControl = 560; + +NONSHARABLE_CLASS( CTFDosServerControl ): public CTFStub, public MTFDosServerControl + { + public: + /** + * Constructor + */ + CTFDosServerControl( void ); + + /** + * Destructor + */ + virtual ~CTFDosServerControl( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControl( const CTFDosServerControl& aStub ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControl& operator=( const CTFDosServerControl& aStub ); + + public: + /** + * Initializes this stub + */ + void InitializeL( void ); + + public: + /** + * Calls a DosServer function + */ + void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ); + + /** + * Gets the parameter count for given DosServer method + */ + TInt ParameterCount( TTFDosFunction aFunction ) const; + + /** + * Gets the parameter bounds of given DosServer method + */ + TBool ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const; + + /** + * Notifies about a DosServer event + */ + void NotifyDosEvent( TInt aEvent, TInt aParameter ); + + /** + * Closes all DosServer services + */ + void ResetDosServices( void ); + + private: + RDosServer iDosServer; +#ifndef __ACCESSORY_FW + RDosAudio* iDosAudio; + RDosAccessory* iDosAccessory; +#endif //__ACCESSORY_FW +#ifndef RD_STARTUP_CHANGE + RDosSysUtils* iDosSysUtils; + RDosHelper* iDosHelper; + RDosMtc* iDosMtc; + RDosSelfTest* iDosSelfTest; +#endif //RD_STARTUP_CHANGE + RDosSae* iDosSae; +#ifndef __ACCESSORY_FW + RDosBTAudio* iDosBTAudio; +#endif //__ACCESSORY_FW + RTFDosExtension* iDosExtension; + CTFDosServerEventListener* iEventListener; + TBool iInitialized; + }; + +class RTFDosExtension : public RDosExtension + { + public: + /** + * Calls a synchronous RDosExtension::CallFunction + */ + TInt CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); + + /** + * Calls an asynchronous RDosExtension::CallFunction + */ + TInt CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam, TInt aParLength, TBool aAutoComplete ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcase.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,165 +1,165 @@ -/* -* 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: Declaration of CTFDosServerControlTestCase class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROLTESTCASE_H__ -#define __CTFDOSSERVERCONTROLTESTCASE_H__ - -#include -#include "ctfstubtestcase.h" -#include "tfdosservertypes.h" - -class CTFATestTimer; -class CTFDosServerControlTestCaseParam; - -/** -* Test case declaration macro -*/ -#define TF_DOS_SERVER_CONTROL_TEST_CASE_L( aCaseId, aCaseStates ) \ - case aCaseId: \ - { \ - CTFDosServerControlTestCaseParam* param = new ( ELeave ) CTFDosServerControlTestCaseParam(); \ - CleanupStack::PushL( param ); \ - param->ConstructL( aCaseStates, sizeof ( aCaseStates ) / sizeof ( TTFDosServerControlTestCaseState ) ); \ - returnValue = new ( ELeave ) CTFDosServerControlTestCase( param ); \ - CleanupStack::Pop(); \ - CleanupStack::PushL( returnValue ); \ - STATIC_CAST( CTFDosServerControlTestCase*, returnValue )->ConstructL(); \ - CleanupStack::Pop(); \ - } \ - break - -NONSHARABLE_CLASS( CTFDosServerControlTestCase ): public CTFStubTestCase, public MTFAActiveTest - { - public: - /** - * Constructor - */ - CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Destructor - */ - ~CTFDosServerControlTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControlTestCase( const CTFDosServerControlTestCase& aStub ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControlTestCase& operator=( const CTFDosServerControlTestCase& aStub ); - - public: - /** - * Notifies about a DosServer event - */ - void NotifyDosEvent( TInt aEvent, TInt aParameter ); - - public: - /** - * Timer callback to cancel test if it takes too long - */ - void ActiveTestRunL( void ); - - protected: - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Initializes this test case - */ - void InitL( void ); - - /** - * Runs this test case - */ - void RunL( void ); - - /** - * Releases this test case - */ - void Teardown( void ); - - protected: - /** - * Completes this test case with given result - */ - void DoCompleteTest( TInt aResult ); - - /** - * Starts the next test case state - */ - void StartNextState( TInt aResult ); - - /** - * Calls the DosServer function of the current test case state - */ - void CallCurrentDosFunctionL( void ); - - /** - * Gets the index of current state - */ - TInt CurrentStateIndex( void ) const; - - /** - * Gets the test case parameters - */ - CTFDosServerControlTestCaseParam& Parameters( void ); - - /** - * Gets the current DosServer function - */ - TTFDosFunction CurrentDosFunction( void ) const; - - /** - * Gets the current argument 1 - */ - TInt CurrentArg1( void ) const; - - /** - * Gets the timer - */ - CTFATestTimer* Timer( void ); - - private: - /** - * Checks a test result - */ - TInt CheckResult( TInt aResult, TBool aIsEvent ); - - private: - CTFDosServerControlTestCaseParam* iParameters; - TTFDosServerControlTestCaseState iCurrentState; - TInt iCurrentStateIndex; - CTFATestTimer* iTimer; - TBool iCleanupWait; - TInt iStoredArg1; - TInt iStoredArg2; - }; - -#endif +/* +* 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: Declaration of CTFDosServerControlTestCase class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROLTESTCASE_H__ +#define __CTFDOSSERVERCONTROLTESTCASE_H__ + +#include +#include "ctfstubtestcase.h" +#include "tfdosservertypes.h" + +class CTFATestTimer; +class CTFDosServerControlTestCaseParam; + +/** +* Test case declaration macro +*/ +#define TF_DOS_SERVER_CONTROL_TEST_CASE_L( aCaseId, aCaseStates ) \ + case aCaseId: \ + { \ + CTFDosServerControlTestCaseParam* param = new ( ELeave ) CTFDosServerControlTestCaseParam(); \ + CleanupStack::PushL( param ); \ + param->ConstructL( aCaseStates, sizeof ( aCaseStates ) / sizeof ( TTFDosServerControlTestCaseState ) ); \ + returnValue = new ( ELeave ) CTFDosServerControlTestCase( param ); \ + CleanupStack::Pop(); \ + CleanupStack::PushL( returnValue ); \ + STATIC_CAST( CTFDosServerControlTestCase*, returnValue )->ConstructL(); \ + CleanupStack::Pop(); \ + } \ + break + +NONSHARABLE_CLASS( CTFDosServerControlTestCase ): public CTFStubTestCase, public MTFAActiveTest + { + public: + /** + * Constructor + */ + CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Destructor + */ + ~CTFDosServerControlTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControlTestCase( const CTFDosServerControlTestCase& aStub ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControlTestCase& operator=( const CTFDosServerControlTestCase& aStub ); + + public: + /** + * Notifies about a DosServer event + */ + void NotifyDosEvent( TInt aEvent, TInt aParameter ); + + public: + /** + * Timer callback to cancel test if it takes too long + */ + void ActiveTestRunL( void ); + + protected: + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Initializes this test case + */ + void InitL( void ); + + /** + * Runs this test case + */ + void RunL( void ); + + /** + * Releases this test case + */ + void Teardown( void ); + + protected: + /** + * Completes this test case with given result + */ + void DoCompleteTest( TInt aResult ); + + /** + * Starts the next test case state + */ + void StartNextState( TInt aResult ); + + /** + * Calls the DosServer function of the current test case state + */ + void CallCurrentDosFunctionL( void ); + + /** + * Gets the index of current state + */ + TInt CurrentStateIndex( void ) const; + + /** + * Gets the test case parameters + */ + CTFDosServerControlTestCaseParam& Parameters( void ); + + /** + * Gets the current DosServer function + */ + TTFDosFunction CurrentDosFunction( void ) const; + + /** + * Gets the current argument 1 + */ + TInt CurrentArg1( void ) const; + + /** + * Gets the timer + */ + CTFATestTimer* Timer( void ); + + private: + /** + * Checks a test result + */ + TInt CheckResult( TInt aResult, TBool aIsEvent ); + + private: + CTFDosServerControlTestCaseParam* iParameters; + TTFDosServerControlTestCaseState iCurrentState; + TInt iCurrentStateIndex; + CTFATestTimer* iTimer; + TBool iCleanupWait; + TInt iStoredArg1; + TInt iStoredArg2; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosservercontroltestcaseparam.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,71 +1,71 @@ -/* -* 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: Declaration of CTFDosServerControlTestCaseParam class -* -*/ - - -#ifndef __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ -#define __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ - -#include -#include "ctfstubtestcaseparam.h" -#include "tfdosservertypes.h" - -NONSHARABLE_CLASS( CTFDosServerControlTestCaseParam ): public CTFStubTestCaseParam - { - public: - /** - * Constructor - */ - CTFDosServerControlTestCaseParam( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ); - - /** - * Destructor - */ - virtual ~CTFDosServerControlTestCaseParam( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFDosServerControlTestCaseParam( const CTFDosServerControlTestCaseParam& aParam ); - - /** - * Assignment operator is hidden - */ - CTFDosServerControlTestCaseParam& operator=( const CTFDosServerControlTestCaseParam& aParam ); - - public: - /** - * Gets the test case states - */ - const TTFDosServerControlTestCaseState* States( void ) const; - - /** - * Gets the state count - */ - TInt StateCount( void ) const; - - private: - TTFDosServerControlTestCaseState* iStates; - TInt iStateCount; - }; - -#endif +/* +* 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: Declaration of CTFDosServerControlTestCaseParam class +* +*/ + + +#ifndef __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ +#define __CTFDOSSERVERCONTROLTESTCASEPARAM_H__ + +#include +#include "ctfstubtestcaseparam.h" +#include "tfdosservertypes.h" + +NONSHARABLE_CLASS( CTFDosServerControlTestCaseParam ): public CTFStubTestCaseParam + { + public: + /** + * Constructor + */ + CTFDosServerControlTestCaseParam( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ); + + /** + * Destructor + */ + virtual ~CTFDosServerControlTestCaseParam( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFDosServerControlTestCaseParam( const CTFDosServerControlTestCaseParam& aParam ); + + /** + * Assignment operator is hidden + */ + CTFDosServerControlTestCaseParam& operator=( const CTFDosServerControlTestCaseParam& aParam ); + + public: + /** + * Gets the test case states + */ + const TTFDosServerControlTestCaseState* States( void ) const; + + /** + * Gets the state count + */ + TInt StateCount( void ) const; + + private: + TTFDosServerControlTestCaseState* iStates; + TInt iStateCount; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosserverplugin.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosserverplugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/ctfdosserverplugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,75 +1,75 @@ -/* -* 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: Declaration of CTFDosServerPlugin class -* -*/ - - -#ifndef __CTFDOSSERVERPLUGIN_H__ -#define __CTFDOSSERVERPLUGIN_H__ - -// INCLUDE FILES -#include "ctfstubmoduleinterface.h" - -// CLASS DECLARATION - -/** -* An implementation of CTFStubModuleInterface. -*/ -NONSHARABLE_CLASS( CTFDosServerPlugin ) : public CTFStubModuleInterface - { - public: // Constructors and destructor - /** - * Two-phased constructor. - * @param aInitParams Initialisation parameters. - * @return The created object. - */ - static CTFDosServerPlugin* NewL( TAny* aInitParams ); - - /** - * Destructor. - */ - ~CTFDosServerPlugin( void ); - - public: // Functions from base classes - /** - * Gets the stub implementation of this plug-in module - */ - CTFStub* GetStubL( void ); - - /** - * Builds the test suite of this plug-in module. - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); - - private: // Functions - /** - * C++ default constructor. - * @param aParams Initialisation parameters. - */ - CTFDosServerPlugin( TAny* aParams ); - - private: // Data - CTFStubModuleInterface::TInterfaceInitParams* iInitParams; - - }; - -#endif //__CTFDOSSERVERPLUGIN_H__ - -// End of File +/* +* 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: Declaration of CTFDosServerPlugin class +* +*/ + + +#ifndef __CTFDOSSERVERPLUGIN_H__ +#define __CTFDOSSERVERPLUGIN_H__ + +// INCLUDE FILES +#include "ctfstubmoduleinterface.h" + +// CLASS DECLARATION + +/** +* An implementation of CTFStubModuleInterface. +*/ +NONSHARABLE_CLASS( CTFDosServerPlugin ) : public CTFStubModuleInterface + { + public: // Constructors and destructor + /** + * Two-phased constructor. + * @param aInitParams Initialisation parameters. + * @return The created object. + */ + static CTFDosServerPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CTFDosServerPlugin( void ); + + public: // Functions from base classes + /** + * Gets the stub implementation of this plug-in module + */ + CTFStub* GetStubL( void ); + + /** + * Builds the test suite of this plug-in module. + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); + + private: // Functions + /** + * C++ default constructor. + * @param aParams Initialisation parameters. + */ + CTFDosServerPlugin( TAny* aParams ); + + private: // Data + CTFStubModuleInterface::TInterfaceInitParams* iInitParams; + + }; + +#endif //__CTFDOSSERVERPLUGIN_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsyenums.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsyenums.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsyenums.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,48 +1,48 @@ -/* -* 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: Declaration of DosServer enumerations -* -*/ - - -#ifndef __DSYENUMS_H__ -#define __DSYENUMS_H__ - -enum TStartupSTResult - { - EStartupSTNotStarted = 0, - EStartupSTNotReady = 1, - EStartupSTFail = 2, - EStartupSTOk = 3 - }; - -enum TSysApMtcStateType - { - ESysApMtcChargingState, - ESysApMtcAlarmState, - ESysApMtcPowerOffState, - ESysApMtcNormalState, - ESysApMtcRfInactiveState - }; - -// RFS Types, must be same as in RFS module -enum TRfsType - { - ERfsNormal = 0, - ERfsDeep = 1 - }; - -#endif // DSYENUMS_H - -// End of file +/* +* 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: Declaration of DosServer enumerations +* +*/ + + +#ifndef __DSYENUMS_H__ +#define __DSYENUMS_H__ + +enum TStartupSTResult + { + EStartupSTNotStarted = 0, + EStartupSTNotReady = 1, + EStartupSTFail = 2, + EStartupSTOk = 3 + }; + +enum TSysApMtcStateType + { + ESysApMtcChargingState, + ESysApMtcAlarmState, + ESysApMtcPowerOffState, + ESysApMtcNormalState, + ESysApMtcRfInactiveState + }; + +// RFS Types, must be same as in RFS module +enum TRfsType + { + ERfsNormal = 0, + ERfsDeep = 1 + }; + +#endif // DSYENUMS_H + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,111 +1,111 @@ -/* -* 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: Declaration of test tool trace macros -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Expression with side effects (from TEST_CASE_TRACE macro) -//lint -e666 - -// Enumeration / enum constant not referenced -//lint -e758 -//lint -e769 - -// Virtual function not referenced -//lint -e1716 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) \ - RDebug::Print a; \ - Logger().Write a; \ - Logger().EndLine() - - #else //#ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) \ - Logger().Write a; \ - Logger().EndLine() - - #endif //#ifdef TEST_CASE_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define TEST_CASE_TRACE( a ) - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of test tool trace macros +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Expression with side effects (from TEST_CASE_TRACE macro) +//lint -e666 + +// Enumeration / enum constant not referenced +//lint -e758 +//lint -e769 + +// Virtual function not referenced +//lint -e1716 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) \ + RDebug::Print a; \ + Logger().Write a; \ + Logger().EndLine() + + #else //#ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) \ + Logger().Write a; \ + Logger().EndLine() + + #endif //#ifdef TEST_CASE_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define TEST_CASE_TRACE( a ) + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/mtfdosservercontrol.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/mtfdosservercontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/mtfdosservercontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,68 +1,68 @@ -/* -* 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: Declaration of MTFDosServerControl class -* -*/ - - -#ifndef __MTFDOSSERVERCONTROL_H__ -#define __MTFDOSSERVERCONTROL_H__ - -#include - -struct TTFDosServerControlTestCaseState; - -NONSHARABLE_CLASS( MTFDosServerControl ) - { - public: - /** - * Constructor - */ - MTFDosServerControl( void ); - - /** - * Destructor - */ - virtual ~MTFDosServerControl( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFDosServerControl( const MTFDosServerControl& aStub ); - - /** - * Assignment operator is hidden - */ - MTFDosServerControl& operator=( const MTFDosServerControl& aStub ); - - public: - /** - * Calls a DosServer function with given parameters - */ - virtual void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) = 0; - - /** - * Notifies the controller about a DosServer event - */ - virtual void NotifyDosEvent( TInt aEvent, TInt aParameter ) = 0; - }; - - -/** -* Gets the DosServer control interface -*/ -IMPORT_C MTFDosServerControl* GetDosServerControl( void ); - -#endif +/* +* 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: Declaration of MTFDosServerControl class +* +*/ + + +#ifndef __MTFDOSSERVERCONTROL_H__ +#define __MTFDOSSERVERCONTROL_H__ + +#include + +struct TTFDosServerControlTestCaseState; + +NONSHARABLE_CLASS( MTFDosServerControl ) + { + public: + /** + * Constructor + */ + MTFDosServerControl( void ); + + /** + * Destructor + */ + virtual ~MTFDosServerControl( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFDosServerControl( const MTFDosServerControl& aStub ); + + /** + * Assignment operator is hidden + */ + MTFDosServerControl& operator=( const MTFDosServerControl& aStub ); + + public: + /** + * Calls a DosServer function with given parameters + */ + virtual void CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) = 0; + + /** + * Notifies the controller about a DosServer event + */ + virtual void NotifyDosEvent( TInt aEvent, TInt aParameter ) = 0; + }; + + +/** +* Gets the DosServer control interface +*/ +IMPORT_C MTFDosServerControl* GetDosServerControl( void ); + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/tfdosservertypes.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/tfdosservertypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/inc/tfdosservertypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,195 +1,195 @@ -/* -* 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: Definition of integration test constants -* -*/ - - -#ifndef __TFDOSSERVERTYPES_H__ -#define __TFDOSSERVERTYPES_H__ - -#include - -enum TTFDosFunction - { - ETFDosFunction_None = 0, - -#ifndef __ACCESSORY_FW - ETFDosAudio_Open = 1, - ETFDosAudio_SetHandsfreeMode = 4, - ETFDosAudio_GetHandsfreeMode = 5, - ETFDosAudio_GetOutputVolume = 19, - ETFDosAudio_SetOutputVolume = 22, - ETFDosAudio_Close = 28, - ETFDosAccessory_Open = 30, - ETFDosAccessory_SetLoopSetModeState = 31, - ETFDosAccessory_GetLoopSetModeState = 32, - ETFDosAccessory_GetAccessoryMode = 33, - ETFDosAccessory_Close = 40, -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - ETFDosSysUtils_Open = 41, - ETFDosSysUtils_GetSimLanguage = 42, - ETFDosSysUtils_SetDosAlarm = 43, - ETFDosSysUtils_PerformDosRfs = 44, - ETFDosSysUtils_Close = 45, - ETFDosHelper_Open = 50, - ETFDosHelper_GetStartupReason = 51, - ETFDosHelper_GetSWStartupReason = 52, - ETFDosHelper_SetSWStartupReason = 53, - ETFDosHelper_HiddenReset = 54, - ETFDosHelper_GetRTCStatus = 55, - ETFDosHelper_GenerateGripEvent = 56, - ETFDosHelper_Close = 57, - ETFDosMtc_Open = 60, - ETFDosMtc_PowerOn = 61, - ETFDosMtc_PowerOff = 62, - ETFDosMtc_DosSync = 63, - ETFDosMtc_ResetGenerate = 64, - ETFDosMtc_SetState = 65, - ETFDosMtc_SetStateFlag = 66, - ETFDosMtc_GetStateFlag = 67, - ETFDosMtc_DosShutdownSync = 68, - ETFDosMtc_Close = 69, - ETFDosSelfTest_Open = 70, - ETFDosSelfTest_PerformSelfTest = 71, - ETFDosSelfTest_Close = 72, -#endif // RD_STARTUP_CHANGE - - ETFDosSae_Open = 90, - ETFDosSae_StartSae = 91, - ETFDosSae_Close = 92, - -#ifndef __ACCESSORY_FW - ETFDosBTAudio_Open = 100, - ETFDosBTAudio_AttachAudioAccessoryReq = 101, - ETFDosBTAudio_CancelAttachReq = 102, - ETFDosBTAudio_DetachAudioAccessoryReq = 103, - ETFDosBTAudio_CancelDetachReq = 104, - ETFDosBTAudio_AudioLinkOpenResp = 105, - ETFDosBTAudio_AudioLinkCloseResp = 106, - ETFDosBTAudio_ActivateVoiceRecognitionResp = 107, - ETFDosBTAudio_AbortVoiceRecognitionResp = 108, - ETFDosBTAudio_VoiceRecognitionStatusResp = 109, - ETFDosBTAudio_QuerySpeedDialNumberResp = 110, - ETFDosBTAudio_QueryLastDialledVoiceNumberResp = 111, - ETFDosBTAudio_AudioLinkOpenInd = 112, - ETFDosBTAudio_AudioLinkCloseInd = 113, - ETFDosBTAudio_VoiceRecognitionStatusInd = 114, - ETFDosBTAudio_Close = 115, -#endif // __ACCESSORY_FW - - ETFDosExtension_Open = 120, - ETFDosExtension_CallFunction = 121, - ETFDosExtension_CallFunctionAndComplete = 122, - ETFDosExtension_Close = 123, - }; - - -enum TTFDosEvent - { - ETFDosEvent_None = 0, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_NotifySelfTestStatus = 1, - ETFDosEvent_DoMtcInitiatedShutdown = 2, - ETFDosEvent_PhonePowerOn = 3, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SimReady = 8, - ETFDosEvent_SimChanged = 9, - ETFDosEvent_SimLockStatus = 10, - ETFDosEvent_SimState = 11, - ETFDosEvent_CallsForwardingStatus = 12, - ETFDosEvent_VoiceMailStatus = 13, - ETFDosEvent_FaxMessage = 14, - ETFDosEvent_EmailMessage = 15, -#endif //RD_STARTUP_CHANGE - - // ETFDosEvent_NetworkBars = 16, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SecurityCode = 17, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_CurrentSimOwnedStatus = 19, -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - ETFDosEvent_AudioLinkOpenReq = 20, - ETFDosEvent_AudioLinkCloseReq = 21, - ETFDosEvent_ActivateVoiceRecognitionReq = 22, - ETFDosEvent_AbortVoiceRecognitionReq = 23, - ETFDosEvent_VoiceRecognitionStatusReq = 24, - ETFDosEvent_QuerySpeedDialNumberReq = 25, - ETFDosEvent_QueryLastDialledVoiceNumberReq = 26, - ETFDosEvent_AccessoryModeChangedInd = 27, - ETFDosEvent_BTAccessoryModeChangedInd = 28, - ETFDosEvent_AccessorySpeakerVolumeSetInd = 29, - ETFDosEvent_ServiceLevelConnEstablishedInd = 30, - ETFDosEvent_AccessoryModeChanged = 31, - ETFDosEvent_HeadsetButtonChanged = 32, - ETFDosEvent_HandsfreeModeChanged = 33, - ETFDosEvent_MicrophoneMuteStateChanged = 34, - ETFDosEvent_OutputVolumeLevelChanged = 35, -#endif - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SmsStorageStatusChanged = 36, -#endif // RD_STARTUP_CHANGE - - ETFDosEvent_General = 39, - -#ifndef RD_STARTUP_CHANGE - ETFDosEvent_SimPresentStateChanged = 40, -#endif //RD_STARTUP_CHANGE - - ETFDosEvent_Synchronized = 10000 - }; - - -enum TTFDosFlags - { - ETFDosFlags_None = 0x00, - ETFDosFlags_IgnoreParameters = 0x01, - ETFDosFlags_IgnoreEventParameters = 0x02, - ETFDosFlags_IgnoreResult = 0x04, - ETFDosFlags_IgnoreUnexpectedEvents = 0x08, - ETFDosFlags_StoreParameters = 0x10, - ETFDosFlags_UseParameters = 0x20, - }; - - -struct TTFDosServerControlTestCaseState - { - TTFDosFunction iDosFunction; - TInt iArg1; - TInt iArg2; - TInt iExpectedResult; - TTFDosEvent iCompletionEvent; - TInt iStateFlags; - }; - -const TInt KTFErrDosServiceMissing = -4001; -const TInt KTFErrDosNoSyncEnd = -4002; -const TInt KTFErrDosUnexpectedEvent = -5000; -const TInt KTFErrDosUnexpectedEventParameter = -6000; -const TInt KTFErrDosUnexpectedArg1 = -7000; -const TInt KTFErrDosUnexpectedArg2 = -8000; -const TInt KTFErrDosUnexpectedResult = -9000; - -#endif +/* +* 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: Definition of integration test constants +* +*/ + + +#ifndef __TFDOSSERVERTYPES_H__ +#define __TFDOSSERVERTYPES_H__ + +#include + +enum TTFDosFunction + { + ETFDosFunction_None = 0, + +#ifndef __ACCESSORY_FW + ETFDosAudio_Open = 1, + ETFDosAudio_SetHandsfreeMode = 4, + ETFDosAudio_GetHandsfreeMode = 5, + ETFDosAudio_GetOutputVolume = 19, + ETFDosAudio_SetOutputVolume = 22, + ETFDosAudio_Close = 28, + ETFDosAccessory_Open = 30, + ETFDosAccessory_SetLoopSetModeState = 31, + ETFDosAccessory_GetLoopSetModeState = 32, + ETFDosAccessory_GetAccessoryMode = 33, + ETFDosAccessory_Close = 40, +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + ETFDosSysUtils_Open = 41, + ETFDosSysUtils_GetSimLanguage = 42, + ETFDosSysUtils_SetDosAlarm = 43, + ETFDosSysUtils_PerformDosRfs = 44, + ETFDosSysUtils_Close = 45, + ETFDosHelper_Open = 50, + ETFDosHelper_GetStartupReason = 51, + ETFDosHelper_GetSWStartupReason = 52, + ETFDosHelper_SetSWStartupReason = 53, + ETFDosHelper_HiddenReset = 54, + ETFDosHelper_GetRTCStatus = 55, + ETFDosHelper_GenerateGripEvent = 56, + ETFDosHelper_Close = 57, + ETFDosMtc_Open = 60, + ETFDosMtc_PowerOn = 61, + ETFDosMtc_PowerOff = 62, + ETFDosMtc_DosSync = 63, + ETFDosMtc_ResetGenerate = 64, + ETFDosMtc_SetState = 65, + ETFDosMtc_SetStateFlag = 66, + ETFDosMtc_GetStateFlag = 67, + ETFDosMtc_DosShutdownSync = 68, + ETFDosMtc_Close = 69, + ETFDosSelfTest_Open = 70, + ETFDosSelfTest_PerformSelfTest = 71, + ETFDosSelfTest_Close = 72, +#endif // RD_STARTUP_CHANGE + + ETFDosSae_Open = 90, + ETFDosSae_StartSae = 91, + ETFDosSae_Close = 92, + +#ifndef __ACCESSORY_FW + ETFDosBTAudio_Open = 100, + ETFDosBTAudio_AttachAudioAccessoryReq = 101, + ETFDosBTAudio_CancelAttachReq = 102, + ETFDosBTAudio_DetachAudioAccessoryReq = 103, + ETFDosBTAudio_CancelDetachReq = 104, + ETFDosBTAudio_AudioLinkOpenResp = 105, + ETFDosBTAudio_AudioLinkCloseResp = 106, + ETFDosBTAudio_ActivateVoiceRecognitionResp = 107, + ETFDosBTAudio_AbortVoiceRecognitionResp = 108, + ETFDosBTAudio_VoiceRecognitionStatusResp = 109, + ETFDosBTAudio_QuerySpeedDialNumberResp = 110, + ETFDosBTAudio_QueryLastDialledVoiceNumberResp = 111, + ETFDosBTAudio_AudioLinkOpenInd = 112, + ETFDosBTAudio_AudioLinkCloseInd = 113, + ETFDosBTAudio_VoiceRecognitionStatusInd = 114, + ETFDosBTAudio_Close = 115, +#endif // __ACCESSORY_FW + + ETFDosExtension_Open = 120, + ETFDosExtension_CallFunction = 121, + ETFDosExtension_CallFunctionAndComplete = 122, + ETFDosExtension_Close = 123, + }; + + +enum TTFDosEvent + { + ETFDosEvent_None = 0, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_NotifySelfTestStatus = 1, + ETFDosEvent_DoMtcInitiatedShutdown = 2, + ETFDosEvent_PhonePowerOn = 3, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SimReady = 8, + ETFDosEvent_SimChanged = 9, + ETFDosEvent_SimLockStatus = 10, + ETFDosEvent_SimState = 11, + ETFDosEvent_CallsForwardingStatus = 12, + ETFDosEvent_VoiceMailStatus = 13, + ETFDosEvent_FaxMessage = 14, + ETFDosEvent_EmailMessage = 15, +#endif //RD_STARTUP_CHANGE + + // ETFDosEvent_NetworkBars = 16, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SecurityCode = 17, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_CurrentSimOwnedStatus = 19, +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + ETFDosEvent_AudioLinkOpenReq = 20, + ETFDosEvent_AudioLinkCloseReq = 21, + ETFDosEvent_ActivateVoiceRecognitionReq = 22, + ETFDosEvent_AbortVoiceRecognitionReq = 23, + ETFDosEvent_VoiceRecognitionStatusReq = 24, + ETFDosEvent_QuerySpeedDialNumberReq = 25, + ETFDosEvent_QueryLastDialledVoiceNumberReq = 26, + ETFDosEvent_AccessoryModeChangedInd = 27, + ETFDosEvent_BTAccessoryModeChangedInd = 28, + ETFDosEvent_AccessorySpeakerVolumeSetInd = 29, + ETFDosEvent_ServiceLevelConnEstablishedInd = 30, + ETFDosEvent_AccessoryModeChanged = 31, + ETFDosEvent_HeadsetButtonChanged = 32, + ETFDosEvent_HandsfreeModeChanged = 33, + ETFDosEvent_MicrophoneMuteStateChanged = 34, + ETFDosEvent_OutputVolumeLevelChanged = 35, +#endif + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SmsStorageStatusChanged = 36, +#endif // RD_STARTUP_CHANGE + + ETFDosEvent_General = 39, + +#ifndef RD_STARTUP_CHANGE + ETFDosEvent_SimPresentStateChanged = 40, +#endif //RD_STARTUP_CHANGE + + ETFDosEvent_Synchronized = 10000 + }; + + +enum TTFDosFlags + { + ETFDosFlags_None = 0x00, + ETFDosFlags_IgnoreParameters = 0x01, + ETFDosFlags_IgnoreEventParameters = 0x02, + ETFDosFlags_IgnoreResult = 0x04, + ETFDosFlags_IgnoreUnexpectedEvents = 0x08, + ETFDosFlags_StoreParameters = 0x10, + ETFDosFlags_UseParameters = 0x20, + }; + + +struct TTFDosServerControlTestCaseState + { + TTFDosFunction iDosFunction; + TInt iArg1; + TInt iArg2; + TInt iExpectedResult; + TTFDosEvent iCompletionEvent; + TInt iStateFlags; + }; + +const TInt KTFErrDosServiceMissing = -4001; +const TInt KTFErrDosNoSyncEnd = -4002; +const TInt KTFErrDosUnexpectedEvent = -5000; +const TInt KTFErrDosUnexpectedEventParameter = -6000; +const TInt KTFErrDosUnexpectedArg1 = -7000; +const TInt KTFErrDosUnexpectedArg2 = -8000; +const TInt KTFErrDosUnexpectedResult = -9000; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdoseventlistener.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdoseventlistener.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdoseventlistener.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,227 +1,227 @@ -/* -* 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: Implementation of CTFDosServerEventListener class -* -*/ - - -#include -#include "dsytesttooltrace.h" -#include "tfdosservertypes.h" -#include "ctfdoseventlistener.h" -#include "mtfdosservercontrol.h" - -CTFDosServerEventListener::CTFDosServerEventListener( RDosServer& aServer ) -: CDosEventListenerBase( aServer ) - { - } - - -CTFDosServerEventListener::~CTFDosServerEventListener( void ) - { - } - - -static void NotifyEvent( TInt aEvent, TInt aParameter ) - { - MTFDosServerControl* control = GetDosServerControl(); - if ( control != NULL ) - { - control->NotifyDosEvent( aEvent, aParameter ); - } - else - { - TRACE_ASSERT_ALWAYS; - } - } - - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::NotifySelfTestStatusL( const TInt aSelfTestResult ) - { - NotifyEvent( ETFDosEvent_NotifySelfTestStatus, aSelfTestResult ); - } - -void CTFDosServerEventListener::DoMtcInitiatedShutdownL() - { - NotifyEvent( ETFDosEvent_DoMtcInitiatedShutdown, 0 ); - } - -void CTFDosServerEventListener::PhonePowerOnL() - { - NotifyEvent( ETFDosEvent_PhonePowerOn, 0 ); - } -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::SimReadyL( EPSSimReadyStatus aStatus ) - { - NotifyEvent( ETFDosEvent_SimReady, aStatus ); - } - -void CTFDosServerEventListener::SimChangedL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_SimChanged, aValue ); - } - - -void CTFDosServerEventListener::SimLockStatusL(EPSSimLockStatus aStatus) - { - NotifyEvent( ETFDosEvent_SimLockStatus, aStatus ); - } - - -void CTFDosServerEventListener::SimStateL( TDosSimState aState ) - { - NotifyEvent( ETFDosEvent_SimState, aState ); - } - - void CTFDosServerEventListener::CallsForwardingStatusL(EPSCallsForwardingStatus aStatus) - { - NotifyEvent( ETFDosEvent_CallsForwardingStatus, aStatus ); - } - - void CTFDosServerEventListener::VoiceMailStatusL(EPSVoiceMailStatus aStatus) - { - NotifyEvent( ETFDosEvent_VoiceMailStatus, aStatus ); - } - -void CTFDosServerEventListener::FaxMessageL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_FaxMessage, aValue ); - } - -void CTFDosServerEventListener::EmailMessageL( TBool aValue ) - { - NotifyEvent( ETFDosEvent_EmailMessage, aValue ); - } -#endif //RD_STARTUP_CHANGE - -/*void CTFDosServerEventListener::NetworkBarsL( TInt aValue ) - { - NotifyEvent( ETFDosEvent_NetworkBars, aValue ); - }*/ - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::SecurityCodeL(EPSSecurityCodeStatus aStatus) - { - NotifyEvent( ETFDosEvent_SecurityCode, aStatus ); - } -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - void CTFDosServerEventListener::CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus) - { - NotifyEvent( ETFDosEvent_CurrentSimOwnedStatus, aStatus ); - } -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW -void CTFDosServerEventListener::AccessoryModeChangedL( TDosAccessoryMode aMode ) - { - NotifyEvent( ETFDosEvent_AccessoryModeChanged, aMode ); - } - - void CTFDosServerEventListener::HeadsetButtonChangedL(EPSButtonState aState) - { - NotifyEvent( ETFDosEvent_HeadsetButtonChanged, aState ); - } - -void CTFDosServerEventListener::OutputVolumeLevelChangedL( TInt aLevel ) - { - NotifyEvent( ETFDosEvent_OutputVolumeLevelChanged, aLevel ); - } - -void CTFDosServerEventListener::AudioLinkOpenReq() - { - NotifyEvent( ETFDosEvent_AudioLinkOpenReq, 0 ); - } - -void CTFDosServerEventListener::AudioLinkCloseReq( THCIConnHandle aConnectionHandle ) - { - NotifyEvent( ETFDosEvent_AudioLinkCloseReq, aConnectionHandle ); - } - -void CTFDosServerEventListener::ActivateVoiceRecognitionReq() - { - NotifyEvent( ETFDosEvent_ActivateVoiceRecognitionReq, 0 ); - } - -void CTFDosServerEventListener::AbortVoiceRecognitionReq() - { - NotifyEvent( ETFDosEvent_AbortVoiceRecognitionReq, 0 ); - } - -void CTFDosServerEventListener::VoiceRecognitionStatusReq() - { - NotifyEvent( ETFDosEvent_VoiceRecognitionStatusReq, 0 ); - } - -void CTFDosServerEventListener::QuerySpeedDialNumberReq( TInt aIndex ) - { - NotifyEvent( ETFDosEvent_QuerySpeedDialNumberReq, aIndex ); - } - -void CTFDosServerEventListener::QueryLastDialledVoiceNumberReq() - { - NotifyEvent( ETFDosEvent_QueryLastDialledVoiceNumberReq, 0 ); - } - -void CTFDosServerEventListener::AccessoryModeChangedInd( TBTAccessoryMode aAccMode ) - { - NotifyEvent( ETFDosEvent_AccessoryModeChangedInd, aAccMode ); - } - -void CTFDosServerEventListener::BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ) - { - NotifyEvent( ETFDosEvent_BTAccessoryModeChangedInd, aDeviceType ); - } - -void CTFDosServerEventListener::AccessorySpeakerVolumeSetInd( TUint aVolume ) - { - NotifyEvent( ETFDosEvent_AccessorySpeakerVolumeSetInd, aVolume ); - } - -void CTFDosServerEventListener::ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ) - { - NotifyEvent( ETFDosEvent_ServiceLevelConnEstablishedInd, ( TInt )&aServiceLevelConnParams ); - } -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ) - { - NotifyEvent( ETFDosEvent_SmsStorageStatusChanged, aStatus ); - } -#endif // RD_STARTUP_CHANGE - -void CTFDosServerEventListener::GeneralEventL( const TRegisterEvent& /*aEvent*/,TAny* /*aParameter*/ ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerEventListener::GeneralEventL() - not implemented" ) ) ); - } - -#ifndef __ACCESSORY_FW - void CTFDosServerEventListener::HandsfreeModeChanged(EPSHandsFreeMode aMode) - { - NotifyEvent( ETFDosEvent_HandsfreeModeChanged, aMode ); - } -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -void CTFDosServerEventListener::SimPresentStateChangedL( TDosSimPresentState aState ) - { - NotifyEvent( ETFDosEvent_SimPresentStateChanged, aState ); - } -#endif //RD_STARTUP_CHANGE - +/* +* 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: Implementation of CTFDosServerEventListener class +* +*/ + + +#include +#include "dsytesttooltrace.h" +#include "tfdosservertypes.h" +#include "ctfdoseventlistener.h" +#include "mtfdosservercontrol.h" + +CTFDosServerEventListener::CTFDosServerEventListener( RDosServer& aServer ) +: CDosEventListenerBase( aServer ) + { + } + + +CTFDosServerEventListener::~CTFDosServerEventListener( void ) + { + } + + +static void NotifyEvent( TInt aEvent, TInt aParameter ) + { + MTFDosServerControl* control = GetDosServerControl(); + if ( control != NULL ) + { + control->NotifyDosEvent( aEvent, aParameter ); + } + else + { + TRACE_ASSERT_ALWAYS; + } + } + + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::NotifySelfTestStatusL( const TInt aSelfTestResult ) + { + NotifyEvent( ETFDosEvent_NotifySelfTestStatus, aSelfTestResult ); + } + +void CTFDosServerEventListener::DoMtcInitiatedShutdownL() + { + NotifyEvent( ETFDosEvent_DoMtcInitiatedShutdown, 0 ); + } + +void CTFDosServerEventListener::PhonePowerOnL() + { + NotifyEvent( ETFDosEvent_PhonePowerOn, 0 ); + } +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::SimReadyL( EPSSimReadyStatus aStatus ) + { + NotifyEvent( ETFDosEvent_SimReady, aStatus ); + } + +void CTFDosServerEventListener::SimChangedL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_SimChanged, aValue ); + } + + +void CTFDosServerEventListener::SimLockStatusL(EPSSimLockStatus aStatus) + { + NotifyEvent( ETFDosEvent_SimLockStatus, aStatus ); + } + + +void CTFDosServerEventListener::SimStateL( TDosSimState aState ) + { + NotifyEvent( ETFDosEvent_SimState, aState ); + } + + void CTFDosServerEventListener::CallsForwardingStatusL(EPSCallsForwardingStatus aStatus) + { + NotifyEvent( ETFDosEvent_CallsForwardingStatus, aStatus ); + } + + void CTFDosServerEventListener::VoiceMailStatusL(EPSVoiceMailStatus aStatus) + { + NotifyEvent( ETFDosEvent_VoiceMailStatus, aStatus ); + } + +void CTFDosServerEventListener::FaxMessageL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_FaxMessage, aValue ); + } + +void CTFDosServerEventListener::EmailMessageL( TBool aValue ) + { + NotifyEvent( ETFDosEvent_EmailMessage, aValue ); + } +#endif //RD_STARTUP_CHANGE + +/*void CTFDosServerEventListener::NetworkBarsL( TInt aValue ) + { + NotifyEvent( ETFDosEvent_NetworkBars, aValue ); + }*/ + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::SecurityCodeL(EPSSecurityCodeStatus aStatus) + { + NotifyEvent( ETFDosEvent_SecurityCode, aStatus ); + } +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + void CTFDosServerEventListener::CurrentSimOwnedStatusL(EPSCurrentSimOwnedSimStatus aStatus) + { + NotifyEvent( ETFDosEvent_CurrentSimOwnedStatus, aStatus ); + } +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW +void CTFDosServerEventListener::AccessoryModeChangedL( TDosAccessoryMode aMode ) + { + NotifyEvent( ETFDosEvent_AccessoryModeChanged, aMode ); + } + + void CTFDosServerEventListener::HeadsetButtonChangedL(EPSButtonState aState) + { + NotifyEvent( ETFDosEvent_HeadsetButtonChanged, aState ); + } + +void CTFDosServerEventListener::OutputVolumeLevelChangedL( TInt aLevel ) + { + NotifyEvent( ETFDosEvent_OutputVolumeLevelChanged, aLevel ); + } + +void CTFDosServerEventListener::AudioLinkOpenReq() + { + NotifyEvent( ETFDosEvent_AudioLinkOpenReq, 0 ); + } + +void CTFDosServerEventListener::AudioLinkCloseReq( THCIConnHandle aConnectionHandle ) + { + NotifyEvent( ETFDosEvent_AudioLinkCloseReq, aConnectionHandle ); + } + +void CTFDosServerEventListener::ActivateVoiceRecognitionReq() + { + NotifyEvent( ETFDosEvent_ActivateVoiceRecognitionReq, 0 ); + } + +void CTFDosServerEventListener::AbortVoiceRecognitionReq() + { + NotifyEvent( ETFDosEvent_AbortVoiceRecognitionReq, 0 ); + } + +void CTFDosServerEventListener::VoiceRecognitionStatusReq() + { + NotifyEvent( ETFDosEvent_VoiceRecognitionStatusReq, 0 ); + } + +void CTFDosServerEventListener::QuerySpeedDialNumberReq( TInt aIndex ) + { + NotifyEvent( ETFDosEvent_QuerySpeedDialNumberReq, aIndex ); + } + +void CTFDosServerEventListener::QueryLastDialledVoiceNumberReq() + { + NotifyEvent( ETFDosEvent_QueryLastDialledVoiceNumberReq, 0 ); + } + +void CTFDosServerEventListener::AccessoryModeChangedInd( TBTAccessoryMode aAccMode ) + { + NotifyEvent( ETFDosEvent_AccessoryModeChangedInd, aAccMode ); + } + +void CTFDosServerEventListener::BTAccessoryModeChangedInd( TBTDeviceType aDeviceType ) + { + NotifyEvent( ETFDosEvent_BTAccessoryModeChangedInd, aDeviceType ); + } + +void CTFDosServerEventListener::AccessorySpeakerVolumeSetInd( TUint aVolume ) + { + NotifyEvent( ETFDosEvent_AccessorySpeakerVolumeSetInd, aVolume ); + } + +void CTFDosServerEventListener::ServiceLevelConnEstablishedInd( TBTServiceLevelConnParams aServiceLevelConnParams ) + { + NotifyEvent( ETFDosEvent_ServiceLevelConnEstablishedInd, ( TInt )&aServiceLevelConnParams ); + } +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::SmsStorageStatusChangedL( TDosSmsStorageStatus aStatus ) + { + NotifyEvent( ETFDosEvent_SmsStorageStatusChanged, aStatus ); + } +#endif // RD_STARTUP_CHANGE + +void CTFDosServerEventListener::GeneralEventL( const TRegisterEvent& /*aEvent*/,TAny* /*aParameter*/ ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerEventListener::GeneralEventL() - not implemented" ) ) ); + } + +#ifndef __ACCESSORY_FW + void CTFDosServerEventListener::HandsfreeModeChanged(EPSHandsFreeMode aMode) + { + NotifyEvent( ETFDosEvent_HandsfreeModeChanged, aMode ); + } +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +void CTFDosServerEventListener::SimPresentStateChangedL( TDosSimPresentState aState ) + { + NotifyEvent( ETFDosEvent_SimPresentStateChanged, aState ); + } +#endif //RD_STARTUP_CHANGE + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontrol.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontrol.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontrol.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,1094 +1,1094 @@ -/* -* 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: Implementation of CTFDosServerControl class -* -*/ - - -// INCLUDE FILES -#ifndef RD_STARTUP_CHANGE -#include -#endif // RD_STARTUP_CHANGE - -#include "ctffactory.h" -#include "tftypes.h" -#include -#include "dsytesttooltrace.h" -#include "dsyenums.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcase.h" -#include "ctfdoseventlistener.h" - - -// ----------------------------------------------------------------------------- -// GetDosServerControl -// ----------------------------------------------------------------------------- -EXPORT_C MTFDosServerControl* GetDosServerControl( void ) - { - CTFStub* stub = CTFFactory::Stub( KTFStubTypeDosServerControl ); - return STATIC_CAST( CTFDosServerControl*, stub ); - } - - -// ----------------------------------------------------------------------------- -// MTFDosServerControl::MTFDosServerControl -// ----------------------------------------------------------------------------- -MTFDosServerControl::MTFDosServerControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFDosServerControl::~MTFDosServerControl -// ----------------------------------------------------------------------------- -MTFDosServerControl::~MTFDosServerControl( void ) - { - } - - -CTFDosServerControl::CTFDosServerControl( void ) -: CTFStub( KTFStubTypeDosServerControl ) - { - } - -//lint -e1740 Pointer not directly deleted by destructor -CTFDosServerControl::~CTFDosServerControl( void ) - { - ResetDosServices(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::~CTFDosServerControl() - DosServer connection closed" ) ) ); - } -//lint +e1740 - -void CTFDosServerControl::InitializeL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL()" ) ) ); - - User::LeaveIfError( iDosServer.Connect() ); - iEventListener = new ( ELeave ) CTFDosServerEventListener( iDosServer ); - TRegisterEvent eventList[] = - { -#ifndef RD_STARTUP_CHANGE - { KNotifySelfTestStatus, sizeof ( TInt ), EQueue }, - { KDoMtcInitiatedShutdown, sizeof ( TInt ), EQueue }, - { KPhonePowerOn, 0, EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - { KSimReady, sizeof ( TInt ), EQueue }, - { KSimChanged, sizeof ( TInt ), EQueue }, - { KSimLockStatus, sizeof ( TInt ), EQueue }, - { KSimState, sizeof ( TInt ), EQueue }, - { KCallsForwardingStatus, sizeof ( TInt ), EQueue }, - { KVoiceMailStatus, sizeof ( TInt ), EQueue }, - { KFaxMessage, sizeof ( TInt ), EQueue }, - { KEmailMessage, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - - // { KNetworkBars, sizeof ( TInt ), EQueue }, - -#ifndef RD_STARTUP_CHANGE - { KSecurityCode, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef RD_STARTUP_CHANGE - { KCurrentSimOwnedStatus, sizeof ( TInt ), EQueue }, -#endif //RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - { KAudioLinkOpenReq, sizeof ( TInt ), EQueue }, - { KAudioLinkCloseReq, sizeof ( TInt ), EQueue }, - { KActivateVoiceRecognitionReq, sizeof ( TInt ), EQueue }, - { KAbortVoiceRecognitionReq, sizeof ( TInt ), EQueue }, - { KVoiceRecognitionStatusReq, sizeof ( TInt ), EQueue }, - { KQuerySpeedDialNumberReq, sizeof ( TInt ), EQueue }, - { KQueryLastDialledVoiceNumberReq, sizeof ( TInt ), EQueue }, - { KAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, - { KBTAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, - { KAccessorySpeakerVolumeSetInd, sizeof ( TInt ), EQueue }, - { KServiceLevelConnEstablishedInd, sizeof ( TInt ), EQueue }, - { KHeadsetButtonChanged, sizeof ( TInt ), EQueue }, - { KHandsfreeModeChanged, sizeof ( TInt ), EQueue }, - { KOutputVolumeLevelChanged, sizeof ( TInt ), EQueue }, -#endif //__ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - { KSmsStorageStatusChanged, sizeof ( TDosSmsStorageStatus ), EQueue }, -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - { KAccessoryModeChanged, sizeof ( TInt ), EQueue } -#endif //__ACCESSORY_FW - }; - iEventListener->StartListeningL( eventList, sizeof ( eventList ) / sizeof ( TRegisterEvent ) ); - iInitialized = ETrue; - - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL - return" ) ) ); - } - -void CTFDosServerControl::ResetDosServices( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices()" ) ) ); - - if ( iEventListener != NULL ) - { - iEventListener->Stop(); - delete iEventListener; - } -#ifndef RD_STARTUP_CHANGE - if ( iDosSysUtils != NULL ) - { - iDosSysUtils->Close(); - iDosSysUtils = NULL; - } - if ( iDosHelper != NULL ) - { - iDosHelper->Close(); - iDosHelper = NULL; - } - if ( iDosMtc != NULL ) - { - iDosMtc->Close(); - iDosMtc = NULL; - } - if ( iDosSelfTest != NULL ) - { - iDosSelfTest->Close(); - iDosSelfTest = NULL; - } -#endif //RD_STARTUP_CHANGE - - if ( iDosSae != NULL ) - { - iDosSae->Close(); - iDosSae = NULL; - } -#ifndef __ACCESSORY_FW - if ( iDosBTAudio != NULL ) - { - iDosBTAudio->Close(); - iDosBTAudio = NULL; - } -#endif //__ACCESSORY_FW - if ( iDosExtension != NULL ) - { - iDosExtension->Close(); - iDosExtension = NULL; - } -#ifndef __ACCESSORY_FW - if ( iDosAccessory != NULL ) - { - iDosAccessory->Close(); - iDosAccessory = NULL; - } - if ( iDosAudio != NULL ) - { - iDosAudio->Close(); - iDosAudio = NULL; - } -#endif //__ACCESSORY_FW - - iDosServer.Close(); - iInitialized = EFalse; - - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices() - Success" ) ) ); - } - -void CTFDosServerControl::CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::CallDosFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); - - // DosServer connection needs to be opened. - if ( !iInitialized ) - { - InitializeL(); - } - - TInt retval = KTFErrDosServiceMissing; - switch ( aParameter.iDosFunction ) - { - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - if ( iDosSysUtils == NULL ) - { - iDosSysUtils = new ( ELeave ) RDosSysUtils(); - retval = iDosSysUtils->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSysUtils_GetSimLanguage: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - retval = iDosSysUtils->GetSimLanguage( aParameter.iArg1 ); - } - break; - case ETFDosSysUtils_SetDosAlarm: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - if ( aParameter.iArg1 != 0 ) - { - TTime time; - time.HomeTime(); - if ( aParameter.iArg1 > 0 ) - { - TTimeIntervalMinutes interval = aParameter.iArg1; - time += interval; - } - else - { - TTimeIntervalMinutes interval = 0 - aParameter.iArg1; - time -= interval; - } - time.RoundUpToNextMinute(); - if ( aParameter.iArg2 != 0 ) - { - TTimeIntervalSeconds interval = aParameter.iArg2; - time += interval; - } - retval = iDosSysUtils->SetDosAlarm( &time ); - } - else - { - retval = iDosSysUtils->SetDosAlarm( NULL ); - } - } - break; - case ETFDosSysUtils_PerformDosRfs: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - } - break; - case ETFDosSysUtils_Close: - TRACE_ASSERT( iDosSysUtils != NULL ); - if ( iDosSysUtils != NULL ) - { - iDosSysUtils->Close(); - delete iDosSysUtils; - iDosSysUtils = NULL; - } - retval = KErrNone; - break; - - case ETFDosHelper_Open: - if ( iDosHelper == NULL ) - { - iDosHelper = new ( ELeave ) RDosHelper(); - retval = iDosHelper->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosHelper_GetStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GetStartupReason( aParameter.iArg1 ); - } - break; - case ETFDosHelper_GetSWStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - TInt16 temp; - retval = iDosHelper->GetSWStartupReason( temp ); - aParameter.iArg1 = temp; - } - break; - case ETFDosHelper_SetSWStartupReason: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->SetSWStartupReason( ( TInt16 )aParameter.iArg1 ); - } - break; - case ETFDosHelper_HiddenReset: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - aParameter.iArg1 = iDosHelper->HiddenReset(); - retval = KErrNone; - } - break; - case ETFDosHelper_GetRTCStatus: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GetRTCStatus( aParameter.iArg1 ); - } - break; - /*case ETFDosHelper_GenerateGripEvent: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - retval = iDosHelper->GenerateGripEvent(); - } - break;*/ - case ETFDosHelper_Close: - TRACE_ASSERT( iDosHelper != NULL ); - if ( iDosHelper != NULL ) - { - iDosHelper->Close(); - delete iDosHelper; - iDosHelper = NULL; - } - retval = KErrNone; - break; - - case ETFDosMtc_Open: - if ( iDosMtc == NULL ) - { - iDosMtc = new ( ELeave ) RDosMtc(); - retval = iDosMtc->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosMtc_PowerOn: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->PowerOn(); - } - break; - case ETFDosMtc_PowerOff: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->PowerOff(); - } - break; - case ETFDosMtc_DosSync: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->DosSync(); - } - break; - case ETFDosMtc_ResetGenerate: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->ResetGenerate(); - } - break; - case ETFDosMtc_SetState: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->SetState( aParameter.iArg1 ); - } - break; - case ETFDosMtc_SetStateFlag: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - retval = iDosMtc->SetStateFlag( ( TDosStateFlag )aParameter.iArg1 ); - } - break; - case ETFDosMtc_GetStateFlag: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - TDosStateFlag flag; - retval = iDosMtc->GetStateFlag( flag ); - aParameter.iArg1 = flag; - } - break; - case ETFDosMtc_Close: - TRACE_ASSERT( iDosMtc != NULL ); - if ( iDosMtc != NULL ) - { - iDosMtc->Close(); - delete iDosMtc; - iDosMtc = NULL; - } - retval = KErrNone; - break; - - case ETFDosSelfTest_Open: - if ( iDosSelfTest == NULL ) - { - iDosSelfTest = new ( ELeave ) RDosSelfTest(); - retval = iDosSelfTest->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSelfTest_PerformSelfTest: - TRACE_ASSERT( iDosSelfTest != NULL ); - if ( iDosSelfTest != NULL ) - { - retval = iDosSelfTest->PerformSelfTest(); - } - break; - case ETFDosSelfTest_Close: - TRACE_ASSERT( iDosSelfTest != NULL ); - if ( iDosSelfTest != NULL ) - { - iDosSelfTest->Close(); - delete iDosSelfTest; - iDosSelfTest = NULL; - } - retval = KErrNone; - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - if ( iDosSae == NULL ) - { - iDosSae = new ( ELeave ) RDosSae(); - retval = iDosSae->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosSae_StartSae: - TRACE_ASSERT( iDosSae != NULL ); - if ( iDosSae != NULL ) - { - retval = iDosSae->StartSae(); - } - break; - case ETFDosSae_Close: - TRACE_ASSERT( iDosSae != NULL ); - if ( iDosSae != NULL ) - { - iDosSae->Close(); - delete iDosSae; - iDosSae = NULL; - } - retval = KErrNone; - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - if ( iDosBTAudio == NULL ) - { - iDosBTAudio = new ( ELeave ) RDosBTAudio(); - retval = iDosBTAudio->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosBTAudio_AttachAudioAccessoryReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_CancelAttachReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_CancelDetachReq: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkOpenResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkCloseResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkOpenInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_AudioLinkCloseInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - } - break; - case ETFDosBTAudio_Close: - TRACE_ASSERT( iDosBTAudio != NULL ); - if ( iDosBTAudio != NULL ) - { - iDosBTAudio->Close(); - delete iDosBTAudio; - iDosBTAudio = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_Open: - if ( iDosExtension == NULL ) - { - iDosExtension = new ( ELeave ) RTFDosExtension(); - retval = iDosExtension->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosExtension_CallFunction: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - retval = iDosExtension->CallSyncDosExtFunction( aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( aParameter.iArg2 ), ETrue ); - } - break; - case ETFDosExtension_CallFunctionAndComplete: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - TRequestStatus status; - retval = iDosExtension->CallAsyncDosExtFunction( status, aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( TInt ), ETrue ); - } - break; - case ETFDosExtension_Close: - TRACE_ASSERT( iDosExtension != NULL ); - if ( iDosExtension != NULL ) - { - iDosExtension->Close(); - delete iDosExtension; - iDosExtension = NULL; - } - retval = KErrNone; - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_Open: - if ( iDosAccessory == NULL ) - { - iDosAccessory = new ( ELeave ) RDosAccessory(); - retval = iDosAccessory->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosAccessory_GetAccessoryMode: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - TDosAccessoryMode acc; - retval = iDosAccessory->GetAccessoryMode( acc ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = acc; - } - } - break; - case ETFDosAccessory_SetLoopSetModeState: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - retval = iDosAccessory->SetLoopSetModeState( ( EPSAccLpsMode )aParameter.iArg1 ); - } - break; - case ETFDosAccessory_GetLoopSetModeState: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - EPSAccLpsMode acc; - retval = iDosAccessory->GetLoopSetModeState( acc ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = acc; - } - } - break; - - case ETFDosAccessory_Close: - TRACE_ASSERT( iDosAccessory != NULL ); - if ( iDosAccessory != NULL ) - { - iDosAccessory->Close(); - delete iDosAccessory; - iDosAccessory = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - -#ifndef __ACCESSORY_FW - case ETFDosAudio_Open: - if ( iDosAudio == NULL ) - { - iDosAudio = new ( ELeave ) RDosAudio(); - retval = iDosAudio->Open( iDosServer ); - } - else - { - retval = KErrNone; - } - break; - case ETFDosAudio_SetHandsfreeMode: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->SetHandsfreeMode( ( EPSHandsFreeMode )aParameter.iArg1 ); - } - break; - case ETFDosAudio_GetHandsfreeMode: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - EPSHandsFreeMode hf; - retval = iDosAudio->GetHandsfreeMode( hf ); - if ( retval == KErrNone ) - { - aParameter.iArg1 = hf; - } - } - break; - - case ETFDosAudio_GetOutputVolume: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->GetOutputVolume( aParameter.iArg1 ); - } - break; - case ETFDosAudio_SetOutputVolume: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - retval = iDosAudio->SetOutputVolume( aParameter.iArg1 ); - } - break; - case ETFDosAudio_Close: - TRACE_ASSERT( iDosAudio != NULL ); - if ( iDosAudio != NULL ) - { - iDosAudio->Close(); - delete iDosAudio; - iDosAudio = NULL; - } - retval = KErrNone; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - User::LeaveIfError( retval ); - } - -// Getters return 0, since they are not used in parameter tests -TInt CTFDosServerControl::ParameterCount( TTFDosFunction aFunction ) const - { - TInt retval = 0; - switch ( aFunction ) - { -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - case ETFDosHelper_Open: - case ETFDosMtc_Open: - case ETFDosSelfTest_Open: - case ETFDosSysUtils_Close: - case ETFDosHelper_Close: - case ETFDosMtc_Close: - case ETFDosSelfTest_Close: -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - case ETFDosSae_Close: - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - case ETFDosBTAudio_Close: -#endif // __ACCESSORY_FW - - case ETFDosExtension_Open: - case ETFDosExtension_Close: - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_Open: - case ETFDosAudio_Open: - case ETFDosAccessory_Close: - case ETFDosAudio_Close: -#endif // __ACCESSORY_FW - break; - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_SetDosAlarm: - case ETFDosSysUtils_PerformDosRfs: - retval = 1; - break; - case ETFDosHelper_GetStartupReason: - case ETFDosHelper_GetSWStartupReason: - break; - case ETFDosHelper_SetSWStartupReason: - retval = 1; - break; - case ETFDosHelper_HiddenReset: - case ETFDosHelper_GetRTCStatus: - //case ETFDosHelper_GenerateGripEvent: - case ETFDosMtc_PowerOn: - case ETFDosMtc_PowerOff: - case ETFDosMtc_DosSync: - case ETFDosMtc_ResetGenerate: - break; - case ETFDosMtc_SetState: - case ETFDosMtc_SetStateFlag: - retval = 1; - break; - case ETFDosMtc_GetStateFlag: - case ETFDosSelfTest_PerformSelfTest: - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_StartSae: - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_AttachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelAttachReq: - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelDetachReq: - break; - case ETFDosBTAudio_AudioLinkOpenResp: - break; - case ETFDosBTAudio_AudioLinkCloseResp: - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - break; - case ETFDosBTAudio_AudioLinkOpenInd: - break; - case ETFDosBTAudio_AudioLinkCloseInd: - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_CallFunction: - break; - case ETFDosExtension_CallFunctionAndComplete: - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_GetAccessoryMode: - break; - case ETFDosAccessory_SetLoopSetModeState: - retval = 1; - break; - case ETFDosAccessory_GetLoopSetModeState: - break; - - case ETFDosAudio_SetHandsfreeMode: - retval = 1; - break; - case ETFDosAudio_GetHandsfreeMode: - break; - - case ETFDosAudio_GetOutputVolume: - break; - case ETFDosAudio_SetOutputVolume: - retval = 1; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - return retval; - } - - -TBool CTFDosServerControl::ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const - { - TBool retval = EFalse; - TRACE_ASSERT( aMin != NULL && aMax != NULL ); - if ( aMin != NULL && aMax != NULL ) - { - switch ( aFunction ) - { -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_Open: - case ETFDosHelper_Open: - case ETFDosMtc_Open: - case ETFDosSelfTest_Open: - case ETFDosSysUtils_Close: - case ETFDosHelper_Close: - case ETFDosMtc_Close: - case ETFDosSelfTest_Close: -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_Open: - case ETFDosExtension_Open: - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_Open: - case ETFDosBTAudio_Close: - case ETFDosAccessory_Open: - case ETFDosAudio_Open: - case ETFDosAccessory_Close: - case ETFDosAudio_Close: -#endif // __ACCESSORY_FW - - case ETFDosSae_Close: - case ETFDosExtension_Close: - break; - -#ifndef RD_STARTUP_CHANGE - case ETFDosSysUtils_GetSimLanguage: - break; - case ETFDosSysUtils_SetDosAlarm: - // Not supported, too many time values to test. - break; - case ETFDosSysUtils_PerformDosRfs: - retval = ETrue; - *aMin = ERfsNormal; - *aMax = ERfsDeep; - break; - - case ETFDosHelper_GetStartupReason: - break; - case ETFDosHelper_GetSWStartupReason: - break; - case ETFDosHelper_SetSWStartupReason: - retval = ETrue; - *aMin = ESWNone; - *aMax = ESWRestoreFactorySetDeep; - break; - case ETFDosHelper_HiddenReset: - break; - case ETFDosHelper_GetRTCStatus: - break; - //case ETFDosHelper_GenerateGripEvent: - // break; - - case ETFDosMtc_PowerOn: - break; - case ETFDosMtc_PowerOff: - break; - case ETFDosMtc_DosSync: - break; - case ETFDosMtc_ResetGenerate: - break; - case ETFDosMtc_SetState: - retval = ETrue; - *aMin = ESysApMtcChargingState; - *aMax = ESysApMtcRfInactiveState; - break; - case ETFDosMtc_SetStateFlag: - retval = ETrue; - *aMin = EDosOfflineStateFlagFalse; - *aMax = EDosOfflineStateFlagTrue; - break; - case ETFDosMtc_GetStateFlag: - break; - - case ETFDosSelfTest_PerformSelfTest: - break; -#endif // RD_STARTUP_CHANGE - - case ETFDosSae_StartSae: - break; - -#ifndef __ACCESSORY_FW - case ETFDosBTAudio_AttachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelAttachReq: - break; - case ETFDosBTAudio_DetachAudioAccessoryReq: - break; - case ETFDosBTAudio_CancelDetachReq: - break; - case ETFDosBTAudio_AudioLinkOpenResp: - break; - case ETFDosBTAudio_AudioLinkCloseResp: - break; - case ETFDosBTAudio_ActivateVoiceRecognitionResp: - break; - case ETFDosBTAudio_AbortVoiceRecognitionResp: - break; - case ETFDosBTAudio_VoiceRecognitionStatusResp: - break; - case ETFDosBTAudio_QuerySpeedDialNumberResp: - break; - case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: - break; - case ETFDosBTAudio_AudioLinkOpenInd: - break; - case ETFDosBTAudio_AudioLinkCloseInd: - break; - case ETFDosBTAudio_VoiceRecognitionStatusInd: - break; -#endif // __ACCESSORY_FW - - case ETFDosExtension_CallFunction: - break; - case ETFDosExtension_CallFunctionAndComplete: - break; - -#ifndef __ACCESSORY_FW - case ETFDosAccessory_GetAccessoryMode: - break; - case ETFDosAccessory_SetLoopSetModeState: - retval = ETrue; - *aMin = EPSAccLpsOff; - *aMax = EPSAccTty; - break; - case ETFDosAccessory_GetLoopSetModeState: - break; - - case ETFDosAudio_SetHandsfreeMode: - retval = ETrue; - *aMin = EPSIhfOff; - *aMax = EPSIhfOn; - break; - case ETFDosAudio_GetHandsfreeMode: - break; - - case ETFDosAudio_GetOutputVolume: - break; - case ETFDosAudio_SetOutputVolume: - retval = ETrue; - *aMin = 0; - *aMax = 9; - break; -#endif // __ACCESSORY_FW - - default: - TRACE_ASSERT_ALWAYS; - break; - } - } - else - { - retval = KErrArgument; - } - return retval; - } - -void CTFDosServerControl::NotifyDosEvent( TInt aEvent, TInt aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent( %d, %d )" ), aEvent, aParameter ) ); - CTFDosServerControlTestCase* testCase = STATIC_CAST( CTFDosServerControlTestCase*, CurrentTestCase() ); - TRACE_ASSERT( testCase != NULL ); - if ( testCase != NULL ) - { - testCase->NotifyDosEvent( aEvent, aParameter ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent - return" ) ) ); - } - - -TInt RTFDosExtension::CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = ETrue ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x)" ), aFunc, aParam, aParLength, aAutoComplete ) ); - TExtensionParPckg package; - package().iFunc = aFunc; - package().iParLength = aParLength; - package().iAutoComplete = aAutoComplete; - TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); - TInt result = CallFunction( package, ptr ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction - return 0x%x" ), result ) ); - return result; - } - - -TInt RTFDosExtension::CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = EFalse ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), &aStatus, aFunc, aParam, aParLength, aAutoComplete ) ); - TExtensionParPckg package; - package().iFunc = aFunc; - package().iParLength = aParLength; - package().iAutoComplete = aAutoComplete; - TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); - CallFunction( aStatus, package, ptr ); - User::WaitForRequest( aStatus ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction - return 0x%x" ), aStatus.Int() ) ); - return aStatus.Int(); - } +/* +* 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: Implementation of CTFDosServerControl class +* +*/ + + +// INCLUDE FILES +#ifndef RD_STARTUP_CHANGE +#include +#endif // RD_STARTUP_CHANGE + +#include "ctffactory.h" +#include "tftypes.h" +#include +#include "dsytesttooltrace.h" +#include "dsyenums.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcase.h" +#include "ctfdoseventlistener.h" + + +// ----------------------------------------------------------------------------- +// GetDosServerControl +// ----------------------------------------------------------------------------- +EXPORT_C MTFDosServerControl* GetDosServerControl( void ) + { + CTFStub* stub = CTFFactory::Stub( KTFStubTypeDosServerControl ); + return STATIC_CAST( CTFDosServerControl*, stub ); + } + + +// ----------------------------------------------------------------------------- +// MTFDosServerControl::MTFDosServerControl +// ----------------------------------------------------------------------------- +MTFDosServerControl::MTFDosServerControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFDosServerControl::~MTFDosServerControl +// ----------------------------------------------------------------------------- +MTFDosServerControl::~MTFDosServerControl( void ) + { + } + + +CTFDosServerControl::CTFDosServerControl( void ) +: CTFStub( KTFStubTypeDosServerControl ) + { + } + +//lint -e1740 Pointer not directly deleted by destructor +CTFDosServerControl::~CTFDosServerControl( void ) + { + ResetDosServices(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::~CTFDosServerControl() - DosServer connection closed" ) ) ); + } +//lint +e1740 + +void CTFDosServerControl::InitializeL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL()" ) ) ); + + User::LeaveIfError( iDosServer.Connect() ); + iEventListener = new ( ELeave ) CTFDosServerEventListener( iDosServer ); + TRegisterEvent eventList[] = + { +#ifndef RD_STARTUP_CHANGE + { KNotifySelfTestStatus, sizeof ( TInt ), EQueue }, + { KDoMtcInitiatedShutdown, sizeof ( TInt ), EQueue }, + { KPhonePowerOn, 0, EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + { KSimReady, sizeof ( TInt ), EQueue }, + { KSimChanged, sizeof ( TInt ), EQueue }, + { KSimLockStatus, sizeof ( TInt ), EQueue }, + { KSimState, sizeof ( TInt ), EQueue }, + { KCallsForwardingStatus, sizeof ( TInt ), EQueue }, + { KVoiceMailStatus, sizeof ( TInt ), EQueue }, + { KFaxMessage, sizeof ( TInt ), EQueue }, + { KEmailMessage, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + + // { KNetworkBars, sizeof ( TInt ), EQueue }, + +#ifndef RD_STARTUP_CHANGE + { KSecurityCode, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef RD_STARTUP_CHANGE + { KCurrentSimOwnedStatus, sizeof ( TInt ), EQueue }, +#endif //RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + { KAudioLinkOpenReq, sizeof ( TInt ), EQueue }, + { KAudioLinkCloseReq, sizeof ( TInt ), EQueue }, + { KActivateVoiceRecognitionReq, sizeof ( TInt ), EQueue }, + { KAbortVoiceRecognitionReq, sizeof ( TInt ), EQueue }, + { KVoiceRecognitionStatusReq, sizeof ( TInt ), EQueue }, + { KQuerySpeedDialNumberReq, sizeof ( TInt ), EQueue }, + { KQueryLastDialledVoiceNumberReq, sizeof ( TInt ), EQueue }, + { KAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, + { KBTAccessoryModeChangedInd, sizeof ( TInt ), EQueue }, + { KAccessorySpeakerVolumeSetInd, sizeof ( TInt ), EQueue }, + { KServiceLevelConnEstablishedInd, sizeof ( TInt ), EQueue }, + { KHeadsetButtonChanged, sizeof ( TInt ), EQueue }, + { KHandsfreeModeChanged, sizeof ( TInt ), EQueue }, + { KOutputVolumeLevelChanged, sizeof ( TInt ), EQueue }, +#endif //__ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + { KSmsStorageStatusChanged, sizeof ( TDosSmsStorageStatus ), EQueue }, +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + { KAccessoryModeChanged, sizeof ( TInt ), EQueue } +#endif //__ACCESSORY_FW + }; + iEventListener->StartListeningL( eventList, sizeof ( eventList ) / sizeof ( TRegisterEvent ) ); + iInitialized = ETrue; + + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::InitializeL - return" ) ) ); + } + +void CTFDosServerControl::ResetDosServices( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices()" ) ) ); + + if ( iEventListener != NULL ) + { + iEventListener->Stop(); + delete iEventListener; + } +#ifndef RD_STARTUP_CHANGE + if ( iDosSysUtils != NULL ) + { + iDosSysUtils->Close(); + iDosSysUtils = NULL; + } + if ( iDosHelper != NULL ) + { + iDosHelper->Close(); + iDosHelper = NULL; + } + if ( iDosMtc != NULL ) + { + iDosMtc->Close(); + iDosMtc = NULL; + } + if ( iDosSelfTest != NULL ) + { + iDosSelfTest->Close(); + iDosSelfTest = NULL; + } +#endif //RD_STARTUP_CHANGE + + if ( iDosSae != NULL ) + { + iDosSae->Close(); + iDosSae = NULL; + } +#ifndef __ACCESSORY_FW + if ( iDosBTAudio != NULL ) + { + iDosBTAudio->Close(); + iDosBTAudio = NULL; + } +#endif //__ACCESSORY_FW + if ( iDosExtension != NULL ) + { + iDosExtension->Close(); + iDosExtension = NULL; + } +#ifndef __ACCESSORY_FW + if ( iDosAccessory != NULL ) + { + iDosAccessory->Close(); + iDosAccessory = NULL; + } + if ( iDosAudio != NULL ) + { + iDosAudio->Close(); + iDosAudio = NULL; + } +#endif //__ACCESSORY_FW + + iDosServer.Close(); + iInitialized = EFalse; + + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerStub::ResetDosServices() - Success" ) ) ); + } + +void CTFDosServerControl::CallDosFunctionL( TTFDosServerControlTestCaseState& aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::CallDosFunctionL(%d, %d, %d)" ), aParameter.iDosFunction, aParameter.iArg1, aParameter.iArg2 ) ); + + // DosServer connection needs to be opened. + if ( !iInitialized ) + { + InitializeL(); + } + + TInt retval = KTFErrDosServiceMissing; + switch ( aParameter.iDosFunction ) + { + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + if ( iDosSysUtils == NULL ) + { + iDosSysUtils = new ( ELeave ) RDosSysUtils(); + retval = iDosSysUtils->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSysUtils_GetSimLanguage: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + retval = iDosSysUtils->GetSimLanguage( aParameter.iArg1 ); + } + break; + case ETFDosSysUtils_SetDosAlarm: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + if ( aParameter.iArg1 != 0 ) + { + TTime time; + time.HomeTime(); + if ( aParameter.iArg1 > 0 ) + { + TTimeIntervalMinutes interval = aParameter.iArg1; + time += interval; + } + else + { + TTimeIntervalMinutes interval = 0 - aParameter.iArg1; + time -= interval; + } + time.RoundUpToNextMinute(); + if ( aParameter.iArg2 != 0 ) + { + TTimeIntervalSeconds interval = aParameter.iArg2; + time += interval; + } + retval = iDosSysUtils->SetDosAlarm( &time ); + } + else + { + retval = iDosSysUtils->SetDosAlarm( NULL ); + } + } + break; + case ETFDosSysUtils_PerformDosRfs: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + } + break; + case ETFDosSysUtils_Close: + TRACE_ASSERT( iDosSysUtils != NULL ); + if ( iDosSysUtils != NULL ) + { + iDosSysUtils->Close(); + delete iDosSysUtils; + iDosSysUtils = NULL; + } + retval = KErrNone; + break; + + case ETFDosHelper_Open: + if ( iDosHelper == NULL ) + { + iDosHelper = new ( ELeave ) RDosHelper(); + retval = iDosHelper->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosHelper_GetStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GetStartupReason( aParameter.iArg1 ); + } + break; + case ETFDosHelper_GetSWStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + TInt16 temp; + retval = iDosHelper->GetSWStartupReason( temp ); + aParameter.iArg1 = temp; + } + break; + case ETFDosHelper_SetSWStartupReason: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->SetSWStartupReason( ( TInt16 )aParameter.iArg1 ); + } + break; + case ETFDosHelper_HiddenReset: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + aParameter.iArg1 = iDosHelper->HiddenReset(); + retval = KErrNone; + } + break; + case ETFDosHelper_GetRTCStatus: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GetRTCStatus( aParameter.iArg1 ); + } + break; + /*case ETFDosHelper_GenerateGripEvent: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + retval = iDosHelper->GenerateGripEvent(); + } + break;*/ + case ETFDosHelper_Close: + TRACE_ASSERT( iDosHelper != NULL ); + if ( iDosHelper != NULL ) + { + iDosHelper->Close(); + delete iDosHelper; + iDosHelper = NULL; + } + retval = KErrNone; + break; + + case ETFDosMtc_Open: + if ( iDosMtc == NULL ) + { + iDosMtc = new ( ELeave ) RDosMtc(); + retval = iDosMtc->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosMtc_PowerOn: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->PowerOn(); + } + break; + case ETFDosMtc_PowerOff: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->PowerOff(); + } + break; + case ETFDosMtc_DosSync: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->DosSync(); + } + break; + case ETFDosMtc_ResetGenerate: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->ResetGenerate(); + } + break; + case ETFDosMtc_SetState: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->SetState( aParameter.iArg1 ); + } + break; + case ETFDosMtc_SetStateFlag: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + retval = iDosMtc->SetStateFlag( ( TDosStateFlag )aParameter.iArg1 ); + } + break; + case ETFDosMtc_GetStateFlag: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + TDosStateFlag flag; + retval = iDosMtc->GetStateFlag( flag ); + aParameter.iArg1 = flag; + } + break; + case ETFDosMtc_Close: + TRACE_ASSERT( iDosMtc != NULL ); + if ( iDosMtc != NULL ) + { + iDosMtc->Close(); + delete iDosMtc; + iDosMtc = NULL; + } + retval = KErrNone; + break; + + case ETFDosSelfTest_Open: + if ( iDosSelfTest == NULL ) + { + iDosSelfTest = new ( ELeave ) RDosSelfTest(); + retval = iDosSelfTest->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSelfTest_PerformSelfTest: + TRACE_ASSERT( iDosSelfTest != NULL ); + if ( iDosSelfTest != NULL ) + { + retval = iDosSelfTest->PerformSelfTest(); + } + break; + case ETFDosSelfTest_Close: + TRACE_ASSERT( iDosSelfTest != NULL ); + if ( iDosSelfTest != NULL ) + { + iDosSelfTest->Close(); + delete iDosSelfTest; + iDosSelfTest = NULL; + } + retval = KErrNone; + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + if ( iDosSae == NULL ) + { + iDosSae = new ( ELeave ) RDosSae(); + retval = iDosSae->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosSae_StartSae: + TRACE_ASSERT( iDosSae != NULL ); + if ( iDosSae != NULL ) + { + retval = iDosSae->StartSae(); + } + break; + case ETFDosSae_Close: + TRACE_ASSERT( iDosSae != NULL ); + if ( iDosSae != NULL ) + { + iDosSae->Close(); + delete iDosSae; + iDosSae = NULL; + } + retval = KErrNone; + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + if ( iDosBTAudio == NULL ) + { + iDosBTAudio = new ( ELeave ) RDosBTAudio(); + retval = iDosBTAudio->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosBTAudio_AttachAudioAccessoryReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_CancelAttachReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_CancelDetachReq: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkOpenResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkCloseResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkOpenInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_AudioLinkCloseInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + } + break; + case ETFDosBTAudio_Close: + TRACE_ASSERT( iDosBTAudio != NULL ); + if ( iDosBTAudio != NULL ) + { + iDosBTAudio->Close(); + delete iDosBTAudio; + iDosBTAudio = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_Open: + if ( iDosExtension == NULL ) + { + iDosExtension = new ( ELeave ) RTFDosExtension(); + retval = iDosExtension->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosExtension_CallFunction: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + retval = iDosExtension->CallSyncDosExtFunction( aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( aParameter.iArg2 ), ETrue ); + } + break; + case ETFDosExtension_CallFunctionAndComplete: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + TRequestStatus status; + retval = iDosExtension->CallAsyncDosExtFunction( status, aParameter.iArg1, ( TAny* )&aParameter.iArg2, sizeof ( TInt ), ETrue ); + } + break; + case ETFDosExtension_Close: + TRACE_ASSERT( iDosExtension != NULL ); + if ( iDosExtension != NULL ) + { + iDosExtension->Close(); + delete iDosExtension; + iDosExtension = NULL; + } + retval = KErrNone; + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_Open: + if ( iDosAccessory == NULL ) + { + iDosAccessory = new ( ELeave ) RDosAccessory(); + retval = iDosAccessory->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosAccessory_GetAccessoryMode: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + TDosAccessoryMode acc; + retval = iDosAccessory->GetAccessoryMode( acc ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = acc; + } + } + break; + case ETFDosAccessory_SetLoopSetModeState: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + retval = iDosAccessory->SetLoopSetModeState( ( EPSAccLpsMode )aParameter.iArg1 ); + } + break; + case ETFDosAccessory_GetLoopSetModeState: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + EPSAccLpsMode acc; + retval = iDosAccessory->GetLoopSetModeState( acc ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = acc; + } + } + break; + + case ETFDosAccessory_Close: + TRACE_ASSERT( iDosAccessory != NULL ); + if ( iDosAccessory != NULL ) + { + iDosAccessory->Close(); + delete iDosAccessory; + iDosAccessory = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + +#ifndef __ACCESSORY_FW + case ETFDosAudio_Open: + if ( iDosAudio == NULL ) + { + iDosAudio = new ( ELeave ) RDosAudio(); + retval = iDosAudio->Open( iDosServer ); + } + else + { + retval = KErrNone; + } + break; + case ETFDosAudio_SetHandsfreeMode: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->SetHandsfreeMode( ( EPSHandsFreeMode )aParameter.iArg1 ); + } + break; + case ETFDosAudio_GetHandsfreeMode: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + EPSHandsFreeMode hf; + retval = iDosAudio->GetHandsfreeMode( hf ); + if ( retval == KErrNone ) + { + aParameter.iArg1 = hf; + } + } + break; + + case ETFDosAudio_GetOutputVolume: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->GetOutputVolume( aParameter.iArg1 ); + } + break; + case ETFDosAudio_SetOutputVolume: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + retval = iDosAudio->SetOutputVolume( aParameter.iArg1 ); + } + break; + case ETFDosAudio_Close: + TRACE_ASSERT( iDosAudio != NULL ); + if ( iDosAudio != NULL ) + { + iDosAudio->Close(); + delete iDosAudio; + iDosAudio = NULL; + } + retval = KErrNone; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + User::LeaveIfError( retval ); + } + +// Getters return 0, since they are not used in parameter tests +TInt CTFDosServerControl::ParameterCount( TTFDosFunction aFunction ) const + { + TInt retval = 0; + switch ( aFunction ) + { +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + case ETFDosHelper_Open: + case ETFDosMtc_Open: + case ETFDosSelfTest_Open: + case ETFDosSysUtils_Close: + case ETFDosHelper_Close: + case ETFDosMtc_Close: + case ETFDosSelfTest_Close: +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + case ETFDosSae_Close: + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + case ETFDosBTAudio_Close: +#endif // __ACCESSORY_FW + + case ETFDosExtension_Open: + case ETFDosExtension_Close: + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_Open: + case ETFDosAudio_Open: + case ETFDosAccessory_Close: + case ETFDosAudio_Close: +#endif // __ACCESSORY_FW + break; + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_SetDosAlarm: + case ETFDosSysUtils_PerformDosRfs: + retval = 1; + break; + case ETFDosHelper_GetStartupReason: + case ETFDosHelper_GetSWStartupReason: + break; + case ETFDosHelper_SetSWStartupReason: + retval = 1; + break; + case ETFDosHelper_HiddenReset: + case ETFDosHelper_GetRTCStatus: + //case ETFDosHelper_GenerateGripEvent: + case ETFDosMtc_PowerOn: + case ETFDosMtc_PowerOff: + case ETFDosMtc_DosSync: + case ETFDosMtc_ResetGenerate: + break; + case ETFDosMtc_SetState: + case ETFDosMtc_SetStateFlag: + retval = 1; + break; + case ETFDosMtc_GetStateFlag: + case ETFDosSelfTest_PerformSelfTest: + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_StartSae: + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_AttachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelAttachReq: + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelDetachReq: + break; + case ETFDosBTAudio_AudioLinkOpenResp: + break; + case ETFDosBTAudio_AudioLinkCloseResp: + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + break; + case ETFDosBTAudio_AudioLinkOpenInd: + break; + case ETFDosBTAudio_AudioLinkCloseInd: + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_CallFunction: + break; + case ETFDosExtension_CallFunctionAndComplete: + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_GetAccessoryMode: + break; + case ETFDosAccessory_SetLoopSetModeState: + retval = 1; + break; + case ETFDosAccessory_GetLoopSetModeState: + break; + + case ETFDosAudio_SetHandsfreeMode: + retval = 1; + break; + case ETFDosAudio_GetHandsfreeMode: + break; + + case ETFDosAudio_GetOutputVolume: + break; + case ETFDosAudio_SetOutputVolume: + retval = 1; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + return retval; + } + + +TBool CTFDosServerControl::ParameterBounds( TTFDosFunction aFunction, TInt* aMin, TInt* aMax ) const + { + TBool retval = EFalse; + TRACE_ASSERT( aMin != NULL && aMax != NULL ); + if ( aMin != NULL && aMax != NULL ) + { + switch ( aFunction ) + { +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_Open: + case ETFDosHelper_Open: + case ETFDosMtc_Open: + case ETFDosSelfTest_Open: + case ETFDosSysUtils_Close: + case ETFDosHelper_Close: + case ETFDosMtc_Close: + case ETFDosSelfTest_Close: +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_Open: + case ETFDosExtension_Open: + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_Open: + case ETFDosBTAudio_Close: + case ETFDosAccessory_Open: + case ETFDosAudio_Open: + case ETFDosAccessory_Close: + case ETFDosAudio_Close: +#endif // __ACCESSORY_FW + + case ETFDosSae_Close: + case ETFDosExtension_Close: + break; + +#ifndef RD_STARTUP_CHANGE + case ETFDosSysUtils_GetSimLanguage: + break; + case ETFDosSysUtils_SetDosAlarm: + // Not supported, too many time values to test. + break; + case ETFDosSysUtils_PerformDosRfs: + retval = ETrue; + *aMin = ERfsNormal; + *aMax = ERfsDeep; + break; + + case ETFDosHelper_GetStartupReason: + break; + case ETFDosHelper_GetSWStartupReason: + break; + case ETFDosHelper_SetSWStartupReason: + retval = ETrue; + *aMin = ESWNone; + *aMax = ESWRestoreFactorySetDeep; + break; + case ETFDosHelper_HiddenReset: + break; + case ETFDosHelper_GetRTCStatus: + break; + //case ETFDosHelper_GenerateGripEvent: + // break; + + case ETFDosMtc_PowerOn: + break; + case ETFDosMtc_PowerOff: + break; + case ETFDosMtc_DosSync: + break; + case ETFDosMtc_ResetGenerate: + break; + case ETFDosMtc_SetState: + retval = ETrue; + *aMin = ESysApMtcChargingState; + *aMax = ESysApMtcRfInactiveState; + break; + case ETFDosMtc_SetStateFlag: + retval = ETrue; + *aMin = EDosOfflineStateFlagFalse; + *aMax = EDosOfflineStateFlagTrue; + break; + case ETFDosMtc_GetStateFlag: + break; + + case ETFDosSelfTest_PerformSelfTest: + break; +#endif // RD_STARTUP_CHANGE + + case ETFDosSae_StartSae: + break; + +#ifndef __ACCESSORY_FW + case ETFDosBTAudio_AttachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelAttachReq: + break; + case ETFDosBTAudio_DetachAudioAccessoryReq: + break; + case ETFDosBTAudio_CancelDetachReq: + break; + case ETFDosBTAudio_AudioLinkOpenResp: + break; + case ETFDosBTAudio_AudioLinkCloseResp: + break; + case ETFDosBTAudio_ActivateVoiceRecognitionResp: + break; + case ETFDosBTAudio_AbortVoiceRecognitionResp: + break; + case ETFDosBTAudio_VoiceRecognitionStatusResp: + break; + case ETFDosBTAudio_QuerySpeedDialNumberResp: + break; + case ETFDosBTAudio_QueryLastDialledVoiceNumberResp: + break; + case ETFDosBTAudio_AudioLinkOpenInd: + break; + case ETFDosBTAudio_AudioLinkCloseInd: + break; + case ETFDosBTAudio_VoiceRecognitionStatusInd: + break; +#endif // __ACCESSORY_FW + + case ETFDosExtension_CallFunction: + break; + case ETFDosExtension_CallFunctionAndComplete: + break; + +#ifndef __ACCESSORY_FW + case ETFDosAccessory_GetAccessoryMode: + break; + case ETFDosAccessory_SetLoopSetModeState: + retval = ETrue; + *aMin = EPSAccLpsOff; + *aMax = EPSAccTty; + break; + case ETFDosAccessory_GetLoopSetModeState: + break; + + case ETFDosAudio_SetHandsfreeMode: + retval = ETrue; + *aMin = EPSIhfOff; + *aMax = EPSIhfOn; + break; + case ETFDosAudio_GetHandsfreeMode: + break; + + case ETFDosAudio_GetOutputVolume: + break; + case ETFDosAudio_SetOutputVolume: + retval = ETrue; + *aMin = 0; + *aMax = 9; + break; +#endif // __ACCESSORY_FW + + default: + TRACE_ASSERT_ALWAYS; + break; + } + } + else + { + retval = KErrArgument; + } + return retval; + } + +void CTFDosServerControl::NotifyDosEvent( TInt aEvent, TInt aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent( %d, %d )" ), aEvent, aParameter ) ); + CTFDosServerControlTestCase* testCase = STATIC_CAST( CTFDosServerControlTestCase*, CurrentTestCase() ); + TRACE_ASSERT( testCase != NULL ); + if ( testCase != NULL ) + { + testCase->NotifyDosEvent( aEvent, aParameter ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControl::NotifyDosEvent - return" ) ) ); + } + + +TInt RTFDosExtension::CallSyncDosExtFunction( const TInt& aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = ETrue ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x)" ), aFunc, aParam, aParLength, aAutoComplete ) ); + TExtensionParPckg package; + package().iFunc = aFunc; + package().iParLength = aParLength; + package().iAutoComplete = aAutoComplete; + TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); + TInt result = CallFunction( package, ptr ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallSyncDosExtFunction - return 0x%x" ), result ) ); + return result; + } + + +TInt RTFDosExtension::CallAsyncDosExtFunction( TRequestStatus& aStatus, TInt aFunc, TAny* aParam = NULL, TInt aParLength = 0, TBool aAutoComplete = EFalse ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), &aStatus, aFunc, aParam, aParLength, aAutoComplete ) ); + TExtensionParPckg package; + package().iFunc = aFunc; + package().iParLength = aParLength; + package().iAutoComplete = aAutoComplete; + TPtr8 ptr( ( TUint8* )aParam, aParLength, aParLength ); + CallFunction( aStatus, package, ptr ); + User::WaitForRequest( aStatus ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - RTFDosExtension::CallAsyncDosExtFunction - return 0x%x" ), aStatus.Int() ) ); + return aStatus.Int(); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontroltestcase.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontroltestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosservercontroltestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,396 +1,396 @@ -/* -* 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: Implementation of CTFDosServerControlTestCase class -* -*/ - - -// INCLUDE FILES -#include "ctfatesttimer.h" -#include "ctfatestlog.h" -#include "tftypes.h" -#include "dsytesttooltrace.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcase.h" -#include "ctfdosservercontroltestcaseparam.h" - -const TInt KTFStateTransitionTimeout = 1000; -const TInt KTFTeardownTimeout = 100000; - - -CTFDosServerControlTestCaseParam::CTFDosServerControlTestCaseParam( void ) - { - } - - -void CTFDosServerControlTestCaseParam::ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ) - { - TRACE_ASSERT( aStates != NULL ); - TRACE_ASSERT( aStateCount > 0 ); - iStates = REINTERPRET_CAST( TTFDosServerControlTestCaseState*, User::Alloc( sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ) ); - User::LeaveIfNull( iStates ); - Mem::Copy( iStates, aStates, sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ); - iStateCount = aStateCount; - } - - -CTFDosServerControlTestCaseParam::~CTFDosServerControlTestCaseParam( void ) - { - User::Free( iStates ); - iStates = NULL; - } - - -const TTFDosServerControlTestCaseState* CTFDosServerControlTestCaseParam::States( void ) const - { - return iStates; - } - - -TInt CTFDosServerControlTestCaseParam::StateCount( void ) const - { - return iStateCount; - } - - -CTFDosServerControlTestCase::CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ) -: CTFStubTestCase( KTFStubTypeDosServerControl ) -, iParameters( aParameters ) - { - TRACE_ASSERT( aParameters != NULL ); - if ( aParameters != NULL ) - { - TRACE_ASSERT( aParameters->States() != NULL ); - TRACE_ASSERT( aParameters->StateCount() > 0 ); - } - } - - -void CTFDosServerControlTestCase::ConstructL( void ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - - -CTFDosServerControlTestCase::~CTFDosServerControlTestCase( void ) - { - delete iParameters; - delete iTimer; - } - - -void CTFDosServerControlTestCase::Log( TInt aDepth ) - { - _LIT( KStart, "DosServer control component, %d states" ); - _LIT( KState, "Flags: %d %d %d %d %d" ); - Logger().WriteList( aDepth, KStart, iParameters->StateCount() ); - for ( TInt i = 0; i < iParameters->StateCount(); i++ ) - { - Logger().WriteList( aDepth + 1, KState, - iParameters->States()[i].iDosFunction, - iParameters->States()[i].iArg1, - iParameters->States()[i].iArg2, - iParameters->States()[i].iExpectedResult, - iParameters->States()[i].iCompletionEvent ); - } - } - - -void CTFDosServerControlTestCase::InitL( void ) - { - iCleanupWait = EFalse; - iCurrentStateIndex = 0; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - } - - -void CTFDosServerControlTestCase::ActiveTestRunL( void ) - { - if ( iCleanupWait ) - { - CActiveScheduler::Stop(); - } - else - { - RunL(); - } - } - - -void CTFDosServerControlTestCase::RunL( void ) - { - TInt result = KErrNone; - TBool syncStart = -1; - if ( iCurrentState.iDosFunction != 0 ) - { - // If the state is the start of synchronized block, the current state - // is changed to the state that represents the next event that should occur. - if ( iCurrentState.iCompletionEvent == ETFDosEvent_Synchronized ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - Starting synchronized block from state %d" ), iCurrentStateIndex + 1 ) ); - syncStart = iCurrentStateIndex++; - TRACE_ASSERT( iCurrentStateIndex < iParameters->StateCount() ); - TTFDosServerControlTestCaseState state( iCurrentState ); - iCurrentState = iParameters->States()[iCurrentStateIndex]; - TRAP( result, STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( state ) ); - } - else - { - TRAP( result, CallCurrentDosFunctionL() ); - } - } - // If the current state does not have a completion event, the transition to next state can be made - // after the result and parameters have been checked. - // If the current state is not a synchronization state and it contains a completion event, - // the state change occurs when the event arrives. - // If CallDSYFunctionL started a synchronized block, the current state should now - // be the end of the synchronized block. Otherwise the events between the synchronized - // states did not occur. - if ( ( syncStart == -1 && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_None ) || - ( syncStart != -1 && syncStart != iCurrentStateIndex && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_Synchronized ) ) - { - if ( syncStart != -1 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block ( states %d-%d )" ), syncStart + 1, iCurrentStateIndex + 1 ) ); - } - result = CheckResult( result, EFalse ); - StartNextState( result ); - } - else - { - // KErrNotSupported result from a synchronized block or a state with a completion event - // is not interpreted as passed. - if ( syncStart != -1 && result == KErrNone ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block missing" ) ) ); - result = KTFErrDosNoSyncEnd; - } - if ( result != KErrNone ) - { - DoCompleteTest( result ); - } - } - } - - -void CTFDosServerControlTestCase::Teardown( void ) - { - // If the test is terminated by a failing stub test case, - // the timer may be left active and thus must be cancelled. - iTimer->Cancel(); - iTimer->After( KTFTeardownTimeout ); // 100-ms timeout to wait for pending events. - iCleanupWait = ETrue; - CActiveScheduler::Start(); - } - - -void CTFDosServerControlTestCase::NotifyDosEvent( TInt aEvent, TInt aParameter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent(%d, %d)" ), aEvent, aParameter ) ); - if ( !IsComplete() ) - { - if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && aParameter == iParameters->States()[iCurrentStateIndex].iExpectedResult ) - { - TInt result = CheckResult( aParameter, ETrue ); - StartNextState( result ); - } - else if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreEventParameters ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected result was unspecified, result was %d" ), aParameter ) ); - StartNextState( KErrNone ); - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Unexpected event: %d, %d" ), aEvent, aParameter ) ); - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected event was: %d, %d" ), iParameters->States()[iCurrentStateIndex].iCompletionEvent, iParameters->States()[iCurrentStateIndex].iExpectedResult ) ); - if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreUnexpectedEvents ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - IgnoreUnexpectedEvents flag is on" ) ) ); - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); - if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent ) - { - DoCompleteTest( KTFErrDosUnexpectedEvent - aEvent ); - } - else - { - DoCompleteTest( KTFErrDosUnexpectedEventParameter - aParameter ); - } - } - } - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Test already finished" ) ) ); - } - } - - -void CTFDosServerControlTestCase::DoCompleteTest( TInt aResult ) - { - iTimer->Cancel(); - CompleteTest( aResult ); - } - - -void CTFDosServerControlTestCase::CallCurrentDosFunctionL( void ) - { - TRACE_ASSERT( iStub != NULL ); - if ( iStub != NULL ) - { - STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( iCurrentState ); - } - else - { - User::Leave( KTFErrNoStub ); - } - } - - -CTFDosServerControlTestCaseParam& CTFDosServerControlTestCase::Parameters( void ) - { - return *iParameters; - } - - -TTFDosFunction CTFDosServerControlTestCase::CurrentDosFunction( void ) const - { - return iCurrentState.iDosFunction; - } - - -TInt CTFDosServerControlTestCase::CurrentArg1( void ) const - { - return iCurrentState.iArg1; - } - - -TInt CTFDosServerControlTestCase::CurrentStateIndex( void ) const - { - return iCurrentStateIndex; - } - - -CTFATestTimer* CTFDosServerControlTestCase::Timer( void ) - { - return iTimer; - } - - -void CTFDosServerControlTestCase::StartNextState( TInt aResult ) - { - if ( aResult != KErrNone ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); - TEST_CASE_TRACE( ( _L( " DSYTESTTEST - CTFDosServerControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); - DoCompleteTest( aResult ); - } - else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) - { - DoCompleteTest( KErrNone ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); - iCurrentStateIndex++; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - // Timer is active if synchronized block was used - if ( !iTimer->IsActive() ) - { - iTimer->After( KTFStateTransitionTimeout ); // Timer calls RunL - } - } - } - - -// Checks that the test results are expected: -// - iExpectedResult matches unless IgnoreResult flag is set or result is KErrNotSupported -// - Test parameters match unless IgnoreParameters flag is set -TInt CTFDosServerControlTestCase::CheckResult( TInt aResult, TBool aIsEvent ) - { - TInt result = aResult; - if ( !aIsEvent && ( aResult == KErrNotSupported ) ) - { - // KErrNotSupported return value from DosServer function is interpreted as passed. - // The parameters are not checked in this case since they may contain arbitrary values. - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - KErrNotSupported -> KErrNone" ) ) ); - result = KErrNone; - } - else - { - // If result is not KErrNotSupported it is compared to the expected result unless - // IgnoreResult flag is set. If the result does not match, the test case fails - if ( ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreResult ) || - ( aResult == iParameters->States()[iCurrentStateIndex].iExpectedResult ) ) - { - if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_StoreParameters ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Parameters stored: %d, %d" ), iCurrentState.iArg1, iCurrentState.iArg2 ) ); - // StoreParameters flag tells that the values from current state are stored to - // be used when a state with UseParameters is encountered - iStoredArg1 = iCurrentState.iArg1; - iStoredArg2 = iCurrentState.iArg2; - result = KErrNone; - } - else if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_UseParameters ) - { - if ( iStoredArg1 != iCurrentState.iArg1 ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 1 ( %d ) did not match %d" ), iStoredArg1, iCurrentState.iArg1 ) ); - result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; - } - else if ( iStoredArg2 != iCurrentState.iArg2 ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 2 ( %d ) did not match %d" ), iStoredArg2, iCurrentState.iArg2 ) ); - result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); - result = KErrNone; - } - } - // The parameters of the current state are changed by the DosServer function if it - // contains output parameters. The changed parameters are compared to the expected - // parameters and if they do not match, the test case is failed. - else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && - ( iParameters->States()[iCurrentStateIndex].iArg1 != iCurrentState.iArg1 ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 1 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg1, iCurrentState.iArg1 ) ); - result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; - } - else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && - ( iParameters->States()[iCurrentStateIndex].iArg2 != iCurrentState.iArg2 ) ) - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 2 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg2, iCurrentState.iArg2 ) ); - result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); - result = KErrNone; - } - } - else - { - TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Unexpected result: %d" ), aResult ) ); - result = KTFErrDosUnexpectedResult + aResult; - } - } - return result; - } - - +/* +* 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: Implementation of CTFDosServerControlTestCase class +* +*/ + + +// INCLUDE FILES +#include "ctfatesttimer.h" +#include "ctfatestlog.h" +#include "tftypes.h" +#include "dsytesttooltrace.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcase.h" +#include "ctfdosservercontroltestcaseparam.h" + +const TInt KTFStateTransitionTimeout = 1000; +const TInt KTFTeardownTimeout = 100000; + + +CTFDosServerControlTestCaseParam::CTFDosServerControlTestCaseParam( void ) + { + } + + +void CTFDosServerControlTestCaseParam::ConstructL( const TTFDosServerControlTestCaseState* aStates, TInt aStateCount ) + { + TRACE_ASSERT( aStates != NULL ); + TRACE_ASSERT( aStateCount > 0 ); + iStates = REINTERPRET_CAST( TTFDosServerControlTestCaseState*, User::Alloc( sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ) ); + User::LeaveIfNull( iStates ); + Mem::Copy( iStates, aStates, sizeof ( TTFDosServerControlTestCaseState ) * aStateCount ); + iStateCount = aStateCount; + } + + +CTFDosServerControlTestCaseParam::~CTFDosServerControlTestCaseParam( void ) + { + User::Free( iStates ); + iStates = NULL; + } + + +const TTFDosServerControlTestCaseState* CTFDosServerControlTestCaseParam::States( void ) const + { + return iStates; + } + + +TInt CTFDosServerControlTestCaseParam::StateCount( void ) const + { + return iStateCount; + } + + +CTFDosServerControlTestCase::CTFDosServerControlTestCase( CTFDosServerControlTestCaseParam* aParameters ) +: CTFStubTestCase( KTFStubTypeDosServerControl ) +, iParameters( aParameters ) + { + TRACE_ASSERT( aParameters != NULL ); + if ( aParameters != NULL ) + { + TRACE_ASSERT( aParameters->States() != NULL ); + TRACE_ASSERT( aParameters->StateCount() > 0 ); + } + } + + +void CTFDosServerControlTestCase::ConstructL( void ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + + +CTFDosServerControlTestCase::~CTFDosServerControlTestCase( void ) + { + delete iParameters; + delete iTimer; + } + + +void CTFDosServerControlTestCase::Log( TInt aDepth ) + { + _LIT( KStart, "DosServer control component, %d states" ); + _LIT( KState, "Flags: %d %d %d %d %d" ); + Logger().WriteList( aDepth, KStart, iParameters->StateCount() ); + for ( TInt i = 0; i < iParameters->StateCount(); i++ ) + { + Logger().WriteList( aDepth + 1, KState, + iParameters->States()[i].iDosFunction, + iParameters->States()[i].iArg1, + iParameters->States()[i].iArg2, + iParameters->States()[i].iExpectedResult, + iParameters->States()[i].iCompletionEvent ); + } + } + + +void CTFDosServerControlTestCase::InitL( void ) + { + iCleanupWait = EFalse; + iCurrentStateIndex = 0; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + } + + +void CTFDosServerControlTestCase::ActiveTestRunL( void ) + { + if ( iCleanupWait ) + { + CActiveScheduler::Stop(); + } + else + { + RunL(); + } + } + + +void CTFDosServerControlTestCase::RunL( void ) + { + TInt result = KErrNone; + TBool syncStart = -1; + if ( iCurrentState.iDosFunction != 0 ) + { + // If the state is the start of synchronized block, the current state + // is changed to the state that represents the next event that should occur. + if ( iCurrentState.iCompletionEvent == ETFDosEvent_Synchronized ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - Starting synchronized block from state %d" ), iCurrentStateIndex + 1 ) ); + syncStart = iCurrentStateIndex++; + TRACE_ASSERT( iCurrentStateIndex < iParameters->StateCount() ); + TTFDosServerControlTestCaseState state( iCurrentState ); + iCurrentState = iParameters->States()[iCurrentStateIndex]; + TRAP( result, STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( state ) ); + } + else + { + TRAP( result, CallCurrentDosFunctionL() ); + } + } + // If the current state does not have a completion event, the transition to next state can be made + // after the result and parameters have been checked. + // If the current state is not a synchronization state and it contains a completion event, + // the state change occurs when the event arrives. + // If CallDSYFunctionL started a synchronized block, the current state should now + // be the end of the synchronized block. Otherwise the events between the synchronized + // states did not occur. + if ( ( syncStart == -1 && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_None ) || + ( syncStart != -1 && syncStart != iCurrentStateIndex && iParameters->States()[iCurrentStateIndex].iCompletionEvent == ETFDosEvent_Synchronized ) ) + { + if ( syncStart != -1 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block ( states %d-%d )" ), syncStart + 1, iCurrentStateIndex + 1 ) ); + } + result = CheckResult( result, EFalse ); + StartNextState( result ); + } + else + { + // KErrNotSupported result from a synchronized block or a state with a completion event + // is not interpreted as passed. + if ( syncStart != -1 && result == KErrNone ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::RunL() - End of synchronized block missing" ) ) ); + result = KTFErrDosNoSyncEnd; + } + if ( result != KErrNone ) + { + DoCompleteTest( result ); + } + } + } + + +void CTFDosServerControlTestCase::Teardown( void ) + { + // If the test is terminated by a failing stub test case, + // the timer may be left active and thus must be cancelled. + iTimer->Cancel(); + iTimer->After( KTFTeardownTimeout ); // 100-ms timeout to wait for pending events. + iCleanupWait = ETrue; + CActiveScheduler::Start(); + } + + +void CTFDosServerControlTestCase::NotifyDosEvent( TInt aEvent, TInt aParameter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent(%d, %d)" ), aEvent, aParameter ) ); + if ( !IsComplete() ) + { + if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && aParameter == iParameters->States()[iCurrentStateIndex].iExpectedResult ) + { + TInt result = CheckResult( aParameter, ETrue ); + StartNextState( result ); + } + else if ( aEvent == iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreEventParameters ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected result was unspecified, result was %d" ), aParameter ) ); + StartNextState( KErrNone ); + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Unexpected event: %d, %d" ), aEvent, aParameter ) ); + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Expected event was: %d, %d" ), iParameters->States()[iCurrentStateIndex].iCompletionEvent, iParameters->States()[iCurrentStateIndex].iExpectedResult ) ); + if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent && ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreUnexpectedEvents ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - IgnoreUnexpectedEvents flag is on" ) ) ); + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); + if ( aEvent != iParameters->States()[iCurrentStateIndex].iCompletionEvent ) + { + DoCompleteTest( KTFErrDosUnexpectedEvent - aEvent ); + } + else + { + DoCompleteTest( KTFErrDosUnexpectedEventParameter - aParameter ); + } + } + } + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::NotifyDosEvent() - Test already finished" ) ) ); + } + } + + +void CTFDosServerControlTestCase::DoCompleteTest( TInt aResult ) + { + iTimer->Cancel(); + CompleteTest( aResult ); + } + + +void CTFDosServerControlTestCase::CallCurrentDosFunctionL( void ) + { + TRACE_ASSERT( iStub != NULL ); + if ( iStub != NULL ) + { + STATIC_CAST( CTFDosServerControl*, iStub )->CallDosFunctionL( iCurrentState ); + } + else + { + User::Leave( KTFErrNoStub ); + } + } + + +CTFDosServerControlTestCaseParam& CTFDosServerControlTestCase::Parameters( void ) + { + return *iParameters; + } + + +TTFDosFunction CTFDosServerControlTestCase::CurrentDosFunction( void ) const + { + return iCurrentState.iDosFunction; + } + + +TInt CTFDosServerControlTestCase::CurrentArg1( void ) const + { + return iCurrentState.iArg1; + } + + +TInt CTFDosServerControlTestCase::CurrentStateIndex( void ) const + { + return iCurrentStateIndex; + } + + +CTFATestTimer* CTFDosServerControlTestCase::Timer( void ) + { + return iTimer; + } + + +void CTFDosServerControlTestCase::StartNextState( TInt aResult ) + { + if ( aResult != KErrNone ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Test case failed: %d" ), aResult ) ); + TEST_CASE_TRACE( ( _L( " DSYTESTTEST - CTFDosServerControlTestCase::StartNextState() - Failed state: %d" ), iCurrentStateIndex + 1 ) ); + DoCompleteTest( aResult ); + } + else if ( iCurrentStateIndex == iParameters->StateCount() - 1 ) + { + DoCompleteTest( KErrNone ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::StartNextState() - Starting state %d" ), iCurrentStateIndex + 2 ) ); + iCurrentStateIndex++; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + // Timer is active if synchronized block was used + if ( !iTimer->IsActive() ) + { + iTimer->After( KTFStateTransitionTimeout ); // Timer calls RunL + } + } + } + + +// Checks that the test results are expected: +// - iExpectedResult matches unless IgnoreResult flag is set or result is KErrNotSupported +// - Test parameters match unless IgnoreParameters flag is set +TInt CTFDosServerControlTestCase::CheckResult( TInt aResult, TBool aIsEvent ) + { + TInt result = aResult; + if ( !aIsEvent && ( aResult == KErrNotSupported ) ) + { + // KErrNotSupported return value from DosServer function is interpreted as passed. + // The parameters are not checked in this case since they may contain arbitrary values. + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - KErrNotSupported -> KErrNone" ) ) ); + result = KErrNone; + } + else + { + // If result is not KErrNotSupported it is compared to the expected result unless + // IgnoreResult flag is set. If the result does not match, the test case fails + if ( ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreResult ) || + ( aResult == iParameters->States()[iCurrentStateIndex].iExpectedResult ) ) + { + if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_StoreParameters ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Parameters stored: %d, %d" ), iCurrentState.iArg1, iCurrentState.iArg2 ) ); + // StoreParameters flag tells that the values from current state are stored to + // be used when a state with UseParameters is encountered + iStoredArg1 = iCurrentState.iArg1; + iStoredArg2 = iCurrentState.iArg2; + result = KErrNone; + } + else if ( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_UseParameters ) + { + if ( iStoredArg1 != iCurrentState.iArg1 ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 1 ( %d ) did not match %d" ), iStoredArg1, iCurrentState.iArg1 ) ); + result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; + } + else if ( iStoredArg2 != iCurrentState.iArg2 ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Stored argument 2 ( %d ) did not match %d" ), iStoredArg2, iCurrentState.iArg2 ) ); + result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); + result = KErrNone; + } + } + // The parameters of the current state are changed by the DosServer function if it + // contains output parameters. The changed parameters are compared to the expected + // parameters and if they do not match, the test case is failed. + else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && + ( iParameters->States()[iCurrentStateIndex].iArg1 != iCurrentState.iArg1 ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 1 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg1, iCurrentState.iArg1 ) ); + result = KTFErrDosUnexpectedArg1 - iCurrentState.iArg1; + } + else if ( !( iParameters->States()[iCurrentStateIndex].iStateFlags & ETFDosFlags_IgnoreParameters ) && + ( iParameters->States()[iCurrentStateIndex].iArg2 != iCurrentState.iArg2 ) ) + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Argument 2 changed from %d to %d" ), iParameters->States()[iCurrentStateIndex].iArg2, iCurrentState.iArg2 ) ); + result = KTFErrDosUnexpectedArg2 - iCurrentState.iArg2; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Success" ) ) ); + result = KErrNone; + } + } + else + { + TEST_CASE_TRACE( ( _L( " DSYTESTTOOL - CTFDosServerControlTestCase::CheckResult - Unexpected result: %d" ), aResult ) ); + result = KTFErrDosUnexpectedResult + aResult; + } + } + return result; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverplugin.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverplugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverplugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,1146 +1,1146 @@ -/* -* 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: Definition of integration test cases -* -*/ - - -// INCLUDE FILES -#include "tftestmacros.h" - -#ifndef RD_STARTUP_CHANGE -#include -#endif // RD_STARTUP_CHANGE - -#include "ctfatestenvironment.h" -#include -#include "dsyenums.h" -#include "dsytesttooltrace.h" -#include "ctfdosserverplugin.h" -#include "ctfdosservercontrol.h" -#include "ctfdosservercontroltestcaseparam.h" -#include "ctfdosservercontroltestcase.h" - -// LOCAL FUNCTIONS -#ifndef __ACCESSORY_FW -static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ); -static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ); -static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ); -static void AudioParameterSuiteL( CTFATestSuite* aSuite ); - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ); -static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ); -static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ); -static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ); -static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ); -#endif // RD_STARTUP_CHANGE - -static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ); - -static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ); - -#ifndef __ACCESSORY_FW -/***************************** AUDIO *********************************/ -// I0002.01 DSY [Handsfree On] -// Sets handsfree mode on. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnStates[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.02 DSY [Handsfree Off] -// Sets handsfree mode off. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffStates[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.03 DSY [Invalid Handsfree 100] -// Tries to set handsfree mode to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetHandsfreeMode( 100 ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidStates[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.07 DSY [Output Volume 0] -// Sets output volume to 0. -// Tested function: -// - RDosAudio::SetOutputVolume( 0 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume0States[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.08 DSY [Output Volume 9] -// Sets output volume to 9. -// Tested function: -// - RDosAudio::SetOutputVolume( 9 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume9States[4] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.09 DSY [Invalid Output Volume 100] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 100 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.10 DSY [Open and Close Audio] -// Opens and closes the audio service. -// Tested function: -// - RDosAudio::Open() -// - RDosAudio::Close() -const TTFDosServerControlTestCaseState KTFAudioOpenCloseStates[2] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.11 DSY [Handsfree On Twice] -// Sets handsfree mode on twice. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnTwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.12 DSY [Handsfree Off Twice] -// Sets handsfree mode off twice. -// Tested function: -// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffTwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.13 DSY [Invalid Handsfree 100 Twice] -// Tries to set handsfree mode to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetHandsfreeMode( 100 ) -const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidTwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.17 DSY [Output Volume 0 Twice] -// Sets output volume to 0 twice. -// Tested function: -// - RDosAudio::SetOutputVolume( 0 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume0TwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.18 DSY [Output Volume 9 Twice] -// Sets output volume to 9 twice. -// Tested function: -// - RDosAudio::SetOutputVolume( 9 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolume9TwiceStates[6] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.19 DSY [Invalid Output Volume 100 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 100 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.22 DSY [Invalid Output Volume -1] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( -1 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.23 DSY [Invalid Output Volume 10] -// Tries to set output volume to invalid value. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 10 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10States[5] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.24 DSY [Invalid Output Volume -1 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( -1 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.25 DSY [Invalid Output Volume 10 Twice] -// Tries to set output volume to invalid value twice. The current value must not change. -// Tested function: -// - RDosAudio::SetOutputVolume( 10 ) -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10TwiceStates[8] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0002.26 DSY [Output Volume 0 - 9] -// Sets and gets output volumes. -// Tested function: -// - RDosAudio::SetOutputVolume -const TTFDosServerControlTestCaseState KTFAudioOutputVolumeStates[20] = - { - { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // __ACCESSORY_FW - - -/***************************** SAE *********************************/ -// I0010.01 DSY [Open and Close SAE] -// Opens and closes the SAE service. -// Tested function: -// - RDosSae::Open() -// - RDosSae::Close() -const TTFDosServerControlTestCaseState KTFSAEOpenCloseStates[2] = - { - { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.04 DSY [Start SAE] -// Starts sae. -// Tested function: -// - RDosSae::StartSae() -const TTFDosServerControlTestCaseState KTFSAEStartSAEStates[3] = - { - { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_StartSae, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#ifndef RD_STARTUP_CHANGE -/***************************** SysUtils *********************************/ -// I0008.01 DSY [Open and Close SysUtils] -// Opens and closes the SysUtils service. -// Tested function: -// - RDosSysUtils::Open() -// - RDosSysUtils::Close() -const TTFDosServerControlTestCaseState KTFSysUtilsOpenCloseStates[2] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.05 DSY [SIM Language] -// Gets SIM language. -// Tested function: -// - RDosSysUtils::GetSimLanguage() -const TTFDosServerControlTestCaseState KTFSysUtilsGetSimLanguageStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_GetSimLanguage, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_IgnoreParameters }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.02 DSY [Set Alarm] -// Sets a DOS alarm 60*24*365 minutes from current time. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.03 DSY [Cancel Alarm] -// Cancels current DOS alarm. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsCancelAlarmStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.04 DSY [Set and Cancel Alarm] -// Sets alarm twice, cancels it twice. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetCancelAlarmStates[6] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365*2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.05 DSY [Invalid Alarm Neg.] -// Sets a DOS alarm ~10 years before current time. Setter should return KErrGeneral -// result if the CMT clock is not ~10 years behind the APE clock. -// Tested function: -// - MDosSysUtilsBaseDSY::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, -( 60*24*365*10 ), 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.06 DSY [Invalid Alarm Sec] -// Sets a DOS alarm 60*24*365 minutes after current time and sets the seconds in the alarm to 30. -// Since alarm cannot contain seconds, setter should return KErrGeneral. -// Tested function: -// - RDosSysUtils::SetDosAlarm() -const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidSecondsStates[3] = - { - { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_SetDosAlarm, 60*24*365, 30, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -/***************************** Helper *********************************/ -// I0010.02 DSY [Open and Close Helper] -// Opens and closes the helper service. -// Tested function: -// - RDosHelper::Open() -// - RDosHelper::Close() -const TTFDosServerControlTestCaseState KTFHelperOpenCloseStates[2] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.06 DSY [Startup Reason] -// Gets the startup reason. -// Tested function: -// - RDosHelper::GetStartupReason() -const TTFDosServerControlTestCaseState KTFHelperGetStartupReasonStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetStartupReason, ENormal, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.07 DSY [SW Startup Reason] -// Sets / gets SW startup reasons. -// Tested function: -// - RDosHelper::SetSWStartupReason() -const TTFDosServerControlTestCaseState KTFHelperSetSWStartupReasonStates[15] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.08 DSY [Hidden Reset] -// Gets hidden reset status. -// Tested function: -// - RDosHelper::HiddenReset() -const TTFDosServerControlTestCaseState KTFHelperHiddenResetStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_HiddenReset, EFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0007.01 DSY [RTC Status] -// Gets the RTC status. -// Tested function: -// - RDosHelper::GetRTCStatus() -const TTFDosServerControlTestCaseState KTFHelperGetRTCStatusStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GetRTCStatus, ETrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0004.01 DSY [Grip Event] -// Generates a grip event. -// Tested function: -// - RDosHelper::GenerateGripEvent -/*const TTFDosServerControlTestCaseState KTFHelperGripEventStates[3] = - { - { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_GenerateGripEvent, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -*/ - -/***************************** MTC *********************************/ -// I0010.03 DSY [Open and Close MTC] -// Opens and closes the MTC service. -// Tested function: -// - RDosMtc::Open() -// - RDosMtc::Close() -const TTFDosServerControlTestCaseState KTFMtcOpenCloseStates[2] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.09 DSY [Offline State True] -// Sets offline state flag to true. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagTrue ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagTrueStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.10 DSY [Offline State False] -// Sets offline state flag to false. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagFalseStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.11 DSY [Invalid Offline State 100] -// Tries to set offline state flag to invalid value. The current value must not change. -// Tested function: -// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) -const TTFDosServerControlTestCaseState KTFMtcStateFlagInvalidStates[5] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosMtc_SetStateFlag, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0010.12 DSY [RF Inactive and Normal States] -// Sets MTC state to RF inactive and then normal. -// Tested function: -// - RDosMtc::SetState( ESysApMtcRfInactiveState ) -// - RDosMtc::SetState( ESysApMtcNormalState ) -const TTFDosServerControlTestCaseState KTFMtcStateRFInactiveNormalStates[4] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcRfInactiveState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -/***************************** SelfTest *********************************/ -// I0009.01 DSY [Open and Close Self Test] -// Opens and closes the self test service. -// Tested function: -// - RDosSelfTest::Open() -// - RDosSelfTest::Close() -const TTFDosServerControlTestCaseState KTFSelfTestOpenCloseStates[2] = - { - { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0009.02 DSY [Perform Self Test] -// Performs self test. -// Tested function: -// - RDosSelfTest::PerformSelfTest() -const TTFDosServerControlTestCaseState KTFSelfTestPerformStates[3] = - { - { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_PerformSelfTest, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // RD_STARTUP_CHANGE - - -#ifndef __ACCESSORY_FW -/***************************** BT Audio *********************************/ -// I0003.01 DSY [Open and Close BT Audio] -// Opens and closes the BT audio service. -// Tested function: -// - RDosBTAudio::Open() -// - RDosBTAudio::Close() -const TTFDosServerControlTestCaseState KTFBTAudioOpenCloseStates[2] = - { - { ETFDosBTAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosBTAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // __ACCESSORY_FW - -/***************************** Extension *********************************/ -// I0005.01 DSY [Open and Close Extension] -// Opens and closes the extension service. -// Tested function: -// - RDosExtension::Open() -// - RDosExtension::Close() -const TTFDosServerControlTestCaseState KTFExtensionOpenCloseStates[2] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0005.02 DSY [Invalid Call Function Sync] -// Tests sync CallFunction with invalid parameter. -// Tested function: -// - RDosExtension::CallFunction() ( sync ) -const TTFDosServerControlTestCaseState KTFExtensionInvalidSyncCallFunctionStates[3] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_CallFunction, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0005.03 DSY [Invalid Call Function Async] -// Tests async CallFunction with invalid parameter. -// Tested function: -// - RDosExtension::CallFunction() ( async ) -const TTFDosServerControlTestCaseState KTFExtensionInvalidAsyncCallFunctionStates[3] = - { - { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_CallFunctionAndComplete, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#ifndef __ACCESSORY_FW -/***************************** Accessory *********************************/ -// I0001.01 DSY [Loopset On] -// Sets loopset mode on. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOn ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOnStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.02 DSY [Loopset Tty] -// Sets loopset mode to tty. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccTty ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetTtyStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.03 DSY [Loopset Off] -// Sets loopset mode off. -// Tested function: -// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOff ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOffStates[4] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.04 DSY [Invalid Loopset 100] -// Tries to set loopset mode to invalid value. The current value must not change -// Tested function: -// - RDosAccessory::SetLoopSetModeState( 100 ) -const TTFDosServerControlTestCaseState KTFAccessoryLoopsetInvalidStates[5] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, - { ETFDosAccessory_SetLoopSetModeState, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.05 DSY [Open and Close Accessory] -// Opens and closes the accessory service. -// Tested function: -// - RDosAccessory::Open() -// - RDosAccessory::Close() -const TTFDosServerControlTestCaseState KTFAccessoryOpenCloseStates[2] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0001.08 DSY [Accessory Mode] -// Tests GetAccessoryMode, which should return EDosAccNotConnected -// Tested function: -// - RDosAccessory::GetAccessoryMode -const TTFDosServerControlTestCaseState KTFAccessoryGetAccessoryModeStates[3] = - { - { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_GetAccessoryMode, EDosAccNotConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -/***************************** BT SAP *********************************/ -// I0012.01 DSY [BT SAP On] -// Sets BT SAP state on -// Tested function: -// - RDosMtc::SetState( 5 ) -const TTFDosServerControlTestCaseState KTFMtcBTSapOnStates[3] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, 5, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; - -// I0012.02 DSY [BT SAP Off] -// Sets BT SAP state off -// Tested function: -// - RDosMtc::SetState( ESysApMtcNormalState ) -const TTFDosServerControlTestCaseState KTFMtcBTSapOffStates[3] = - { - { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, - { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } - }; -#endif // RD_STARTUP_CHANGE - - - -// C++ default constructor can NOT contain any code, that -// might leave. -// -CTFDosServerPlugin::CTFDosServerPlugin( TAny* aInitParams ) -: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) - { - } - -// Two-phased constructor. -CTFDosServerPlugin* CTFDosServerPlugin::NewL( TAny* aInitParams ) - { - return new ( ELeave ) CTFDosServerPlugin( aInitParams ); - } - -// Destructor. -CTFDosServerPlugin::~CTFDosServerPlugin() - { - iInitParams = NULL; - } - - -CTFStub* CTFDosServerPlugin::GetStubL( void ) - { - return new ( ELeave ) CTFDosServerControl(); - } - - -void CTFDosServerPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - // Memory checks are disabled since DSY runs in separate thread and heap. - aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); - TF_START_TEST_DECLARATION_L( aRootSuite ); - // Use case test cases - TF_ADD_TEST_SUITE_L( _L( "Use Case Tests" ) ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SAE" ), SAEUseCaseSuiteL ); - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio" ), AudioUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio Param" ), AudioParameterSuiteL ); -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SysUtils" ), SysUtilsUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Helper" ), HelperUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Self Test" ), SelfTestUseCaseSuiteL ); -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT Audio" ), BTAudioUseCaseSuiteL ); -#endif // __ACCESSORY_FW - - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Extension" ), ExtensionUseCaseSuiteL ); - -#ifndef __ACCESSORY_FW - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory" ), AccessoryUseCaseSuiteL ); -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "MTC" ), MtcUseCaseSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT SAP" ), BluetoothSAPSuiteL ); -#endif // RD_STARTUP_CHANGE - TF_END_TEST_SUITE(); - TF_END_TEST_DECLARATION(); - } - - -MTFStubTestCase* CTFDosServerPlugin::GetStubTestCaseL( TInt aTestCaseId ) - { - TF_START_STUB_TEST_CASES( aTestCaseId ); - -#ifndef __ACCESSORY_FW - //AUDIO - // I0002.10 DSY [Open and Close Audio] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10110, KTFAudioOpenCloseStates ) ; - - // I0002.01 DSY [Handsfree On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAudioHandsfreeOnStates ) ; - - // I0002.02 DSY [Handsfree Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAudioHandsfreeOffStates ) ; - - // I0002.03 DSY [Invalid Handsfree 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAudioHandsfreeInvalidStates ) ; - - // I0002.07 DSY [Output Volume 0] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAudioOutputVolume0States ) ; - - // I0002.08 DSY [Output Volume 9] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAudioOutputVolume9States ) ; - - // I0002.09 DSY [Invalid Output Volume 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10109, KTFAudioOutputVolumeInvalid100States ) ; - - // I0002.11 DSY [Handsfree On Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10111, KTFAudioHandsfreeOnTwiceStates ) ; - - // I0002.12 DSY [Handsfree Off Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10112, KTFAudioHandsfreeOffTwiceStates ) ; - - // I0002.13 DSY [Invalid Handsfree 100 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10113, KTFAudioHandsfreeInvalidTwiceStates ) ; - - // I0002.17 DSY [Output Volume 0 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10117, KTFAudioOutputVolume0TwiceStates ) ; - - // I0002.18 DSY [Output Volume 9 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10118, KTFAudioOutputVolume9TwiceStates ) ; - - // I0002.19 DSY [Invalid Output Volume 100 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10119, KTFAudioOutputVolumeInvalid100TwiceStates ) ; - - // I0002.22 DSY [Invalid Output Volume -1] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10122, KTFAudioOutputVolumeInvalidNeg1States ) ; - - // I0002.23 DSY [Invalid Output Volume 10] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10123, KTFAudioOutputVolumeInvalid10States ) ; - - // I0002.24 DSY [Invalid Output Volume -1 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10124, KTFAudioOutputVolumeInvalidNeg1TwiceStates ) ; - - // I0002.25 DSY [Invalid Output Volume 10 Twice] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10125, KTFAudioOutputVolumeInvalid10TwiceStates ) ; - - // I0002.20 DSY [Audio Regression] - // Case 10120: Uses other test cases - - // I0002.21 DSY [Audio Randomizer] - // Case 10121: Uses other test cases - - // I0002.26 DSY [Output Volume 0 - 9] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10126, KTFAudioOutputVolumeStates ) ; -#endif // __ACCESSORY_FW - - // SAE - // I0010.01 DSY [Open and Close SAE] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10301, KTFSAEOpenCloseStates ) ; - - // I0010.04 DSY [Start SAE] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10302, KTFSAEStartSAEStates ) ; - -#ifndef RD_STARTUP_CHANGE - // SYSUTILS - // I0008.01 DSY [Open and Close SysUtils] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10401, KTFSysUtilsOpenCloseStates ) ; - - // I0010.05 DSY [SIM Language] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10402, KTFSysUtilsGetSimLanguageStates ) ; - - // I0007.02 DSY [Set Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10403, KTFSysUtilsSetAlarmStates ) ; - - // I0007.03 DSY [Cancel Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10404, KTFSysUtilsCancelAlarmStates ) ; - - // I0007.04 DSY [Set and Cancel Alarm] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10405, KTFSysUtilsSetCancelAlarmStates ) ; - - // I0007.05 DSY [Invalid Alarm Neg.] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10406, KTFSysUtilsSetAlarmInvalidStates ) ; - - // I0007.06 DSY [Invalid Alarm Sec] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10407, KTFSysUtilsSetAlarmInvalidSecondsStates ) ; - - //HELPER - // I0010.02 DSY [Open and Close Helper] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10501, KTFHelperOpenCloseStates ) ; - - // I0010.06 DSY [Startup Reason] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10502, KTFHelperGetStartupReasonStates ) ; - - // I0010.07 DSY [SW Startup Reason] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10503, KTFHelperSetSWStartupReasonStates ) ; - - // I0010.08 DSY [Hidden Reset] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10504, KTFHelperHiddenResetStates ) ; - - // I0007.01 DSY [RTC Status] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10505, KTFHelperGetRTCStatusStates ) ; - - // I0004.01 DSY [Grip Event] - // TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10506, KTFHelperGripEventStates ) ; - - //MTC - // I0010.03 DSY [Open and Close MTC] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10601, KTFMtcOpenCloseStates ) ; - - // I0010.09 DSY [Offline State True] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10602, KTFMtcStateFlagTrueStates ) ; - - // I0010.10 DSY [Offline State False] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10603, KTFMtcStateFlagFalseStates ) ; - - // I0010.11 DSY [Invalid Offline State 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10604, KTFMtcStateFlagInvalidStates ) ; - - // I0010.12 DSY [RF Inactive and Normal States] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10605, KTFMtcStateRFInactiveNormalStates ) ; - - // SELFTEST - // I0009.01 DSY [Open and Close Self Test] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10701, KTFSelfTestOpenCloseStates ) ; - - // I0009.02 DSY [Perform Self Test] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10702, KTFSelfTestPerformStates ) ; -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW - - //BT AUDIO - // I0003.01 DSY [Open and Close BT Audio] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10801, KTFBTAudioOpenCloseStates ) ; -#endif // __ACCESSORY_FW - - - // EXTENSION - // I0005.01 DSY [Open and Close Extension] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10901, KTFExtensionOpenCloseStates ) ; - - // I0005.02 DSY [Invalid Call Function Sync] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10902, KTFExtensionInvalidSyncCallFunctionStates ) ; - - // I0005.03 DSY [Invalid Call Function Async] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10903, KTFExtensionInvalidAsyncCallFunctionStates ) ; - - -#ifndef __ACCESSORY_FW - // ACCESSORY - // I0001.05 DSY [Open and Close Accessory] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11005, KTFAccessoryOpenCloseStates ) ; - - // I0001.01 DSY [Loopset On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11001, KTFAccessoryLoopsetOnStates ) ; - - // I0001.02 DSY [Loopset Tty] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11002, KTFAccessoryLoopsetTtyStates ) ; - - // I0001.03 DSY [Loopset Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11003, KTFAccessoryLoopsetOffStates ) ; - - // I0001.04 DSY [Invalid Loopset 100] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11004, KTFAccessoryLoopsetInvalidStates ) ; - - // I0001.08 DSY [Accessory Mode] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11008, KTFAccessoryGetAccessoryModeStates ) ; - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE - // I0012.01 DSY [BT SAP On] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12001, KTFMtcBTSapOnStates ) ; - - // I0012.02 DSY [BT SAP Off] - TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12002, KTFMtcBTSapOffStates ) ; -#endif // RD_STARTUP_CHANGE - - TF_END_STUB_TEST_CASES(); - } - -#ifndef __ACCESSORY_FW -static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10110, _L( "I0002.10 DSY [Open and Close Audio]" ) ); - TF_ADD_TEST_CASE_L( 10101, _L( "I0002.01 DSY [Handsfree On]" ) ); - TF_ADD_TEST_CASE_L( 10102, _L( "I0002.02 DSY [Handsfree Off]" ) ); - TF_ADD_TEST_CASE_L( 10103, _L( "I0002.03 DSY [Invalid Handsfree 100]" ) ); - TF_ADD_TEST_CASE_L( 10107, _L( "I0002.07 DSY [Output Volume 0]" ) ); - TF_ADD_TEST_CASE_L( 10108, _L( "I0002.08 DSY [Output Volume 9]" ) ); - TF_ADD_TEST_CASE_L( 10109, _L( "I0002.09 DSY [Invalid Output Volume 100]" ) ); - TF_ADD_TEST_CASE_L( 10111, _L( "I0002.11 DSY [Handsfree On Twice]" ) ); - TF_ADD_TEST_CASE_L( 10112, _L( "I0002.12 DSY [Handsfree Off Twice]" ) ); - TF_ADD_TEST_CASE_L( 10113, _L( "I0002.13 DSY [Invalid Handsfree 100 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10117, _L( "I0002.17 DSY [Output Volume 0 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10118, _L( "I0002.18 DSY [Output Volume 9 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10119, _L( "I0002.19 DSY [Invalid Output Volume 100 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10122, _L( "I0002.22 DSY [Invalid Output Volume -1]" ) ); - TF_ADD_TEST_CASE_L( 10123, _L( "I0002.23 DSY [Invalid Output Volume 10]" ) ); - TF_ADD_TEST_CASE_L( 10124, _L( "I0002.24 DSY [Invalid Output Volume -1 Twice]" ) ); - TF_ADD_TEST_CASE_L( 10125, _L( "I0002.25 DSY [Invalid Output Volume 10 Twice]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10120, _L( "I0002.20 DSY [Audio Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10121, _L( "I0002.21 DSY [Audio Randomizer]" ), 200 ); - } - -static void AudioParameterSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10126, _L( "I0002.26 DSY [Output Volume 0 - 9]" ) ); - } -#endif // __ACCESSORY_FW - -static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10301, _L( "I0010.01 DSY [Open and Close SAE]" ) ); - // NOTE: In HW SAE has already called StartSAE during boot. -#ifdef TESTS_NO_UI - TF_ADD_TEST_CASE_L( 10302, _L( "I0010.04 DSY [Start SAE]" ) ); -#endif - } - -#ifndef RD_STARTUP_CHANGE -static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10401, _L( "I0008.01 DSY [Open and Close SysUtils]" ) ); - TF_ADD_TEST_CASE_L( 10402, _L( "I0010.05 DSY [SIM Language]" ) ); - TF_ADD_TEST_CASE_L( 10403, _L( "I0007.02 DSY [Set Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10404, _L( "I0007.03 DSY [Cancel Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10405, _L( "I0007.04 DSY [Set and Cancel Alarm]" ) ); - TF_ADD_TEST_CASE_L( 10406, _L( "I0007.05 DSY [Invalid Alarm Neg.]" ) ); - TF_ADD_TEST_CASE_L( 10407, _L( "I0007.06 DSY [Invalid Alarm Sec]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10408, _L( "I0007.07 DSY [SysUtils Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10409, _L( "I0007.08 DSY [SysUtils Randomizer]" ), 200 ); - } - -static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10501, _L( "I0010.02 DSY [Open and Close Helper]" ) ); - TF_ADD_TEST_CASE_L( 10502, _L( "I0010.06 DSY [Startup Reason]" ) ); - TF_ADD_TEST_CASE_L( 10503, _L( "I0010.07 DSY [SW Startup Reason]" ) ); - TF_ADD_TEST_CASE_L( 10504, _L( "I0010.08 DSY [Hidden Reset]" ) ); - TF_ADD_TEST_CASE_L( 10505, _L( "I0007.01 DSY [RTC Status]" ) ); - //TF_ADD_TEST_CASE_L( 10506, _L( "I0004.01 DSY [Grip Event]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10507, _L( "I0010.13 DSY [Helper Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10508, _L( "I0010.14 DSY [Helper Randomizer]" ), 200 ); - } - -static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10601, _L( "I0010.03 DSY [Open and Close MTC]" ) ); - TF_ADD_TEST_CASE_L( 10602, _L( "I0010.09 DSY [Offline State True]" ) ); - TF_ADD_TEST_CASE_L( 10603, _L( "I0010.10 DSY [Offline State False]" ) ); - TF_ADD_TEST_CASE_L( 10604, _L( "I0010.11 DSY [Invalid Offline State 100]" ) ); - TF_ADD_TEST_CASE_L( 10605, _L( "I0010.12 DSY [RF Inactive and Normal States]" ) ); - - TF_ADD_TEST_SUITE_REGRESSION_L( 10606, _L( "I0010.15 DSY [MTC Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 10607, _L( "I0010.16 DSY [MTC Randomizer]" ), 200 ); - } - -static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10701, _L( "I0009.01 DSY [Open and Close Self Test]" ) ); -#ifdef __WINS__ - TF_ADD_TEST_CASE_L( 10702, _L( "I0009.02 DSY [Perform Self Test]" ) ); -#endif - } -#endif // RD_STARTUP_CHANGE - -#ifndef __ACCESSORY_FW -static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10801, _L( "I0003.01 DSY [Open and Close BT Audio]" ) ); - } -#endif // __ACCESSORY_FW - -static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 10901, _L( "I0005.01 DSY [Open and Close Extension]" ) ); - TF_ADD_TEST_CASE_L( 10902, _L( "I0005.02 DSY [Invalid Call Function Sync]" ) ); - TF_ADD_TEST_CASE_L( 10903, _L( "I0005.03 DSY [Invalid Call Function Async]" ) ); - } - -#ifndef __ACCESSORY_FW -static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 11005, _L( "I0001.05 DSY [Open and Close Accessory]" ) ); - TF_ADD_TEST_CASE_L( 11001, _L( "I0001.01 DSY [Loopset On]" ) ); - TF_ADD_TEST_CASE_L( 11002, _L( "I0001.02 DSY [Loopset Tty]" ) ); - TF_ADD_TEST_CASE_L( 11003, _L( "I0001.03 DSY [Loopset Off]" ) ); - TF_ADD_TEST_CASE_L( 11004, _L( "I0001.04 DSY [Invalid Loopset 100]" ) ); - TF_ADD_TEST_CASE_L( 11008, _L( "I0001.08 DSY [Accessory Mode]" ) ) ; - - TF_ADD_TEST_SUITE_REGRESSION_L( 11006, _L( "I0001.06 DSY [Accessory Regression]" ), 3 ); - TF_ADD_TEST_SUITE_RANDOMIZE_L( 11007, _L( "I0001.07 DSY [Accessory Randomizer]" ), 200 ); - } - -#endif // __ACCESSORY_FW - -#ifndef RD_STARTUP_CHANGE -#ifdef __BT_SAP -static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ) - { - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - TF_ADD_TEST_CASE_L( 12001, _L( "I0012.01 DSY [BT SAP On]" ) ) ; - TF_ADD_TEST_CASE_L( 12002, _L( "I0012.02 DSY [BT SAP Off]" ) ) ; - } -#else -#pragma message ( "BT SAP Disabled" ) -static void BluetoothSAPSuiteL( CTFATestSuite* /*aSuite*/ ) - { - } -#endif -#endif // RD_STARTUP_CHANGE - -// End of File +/* +* 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: Definition of integration test cases +* +*/ + + +// INCLUDE FILES +#include "tftestmacros.h" + +#ifndef RD_STARTUP_CHANGE +#include +#endif // RD_STARTUP_CHANGE + +#include "ctfatestenvironment.h" +#include +#include "dsyenums.h" +#include "dsytesttooltrace.h" +#include "ctfdosserverplugin.h" +#include "ctfdosservercontrol.h" +#include "ctfdosservercontroltestcaseparam.h" +#include "ctfdosservercontroltestcase.h" + +// LOCAL FUNCTIONS +#ifndef __ACCESSORY_FW +static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ); +static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ); +static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ); +static void AudioParameterSuiteL( CTFATestSuite* aSuite ); + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ); +static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ); +static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ); +static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ); +static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ); +#endif // RD_STARTUP_CHANGE + +static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ); + +static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ); + +#ifndef __ACCESSORY_FW +/***************************** AUDIO *********************************/ +// I0002.01 DSY [Handsfree On] +// Sets handsfree mode on. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnStates[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.02 DSY [Handsfree Off] +// Sets handsfree mode off. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffStates[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.03 DSY [Invalid Handsfree 100] +// Tries to set handsfree mode to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetHandsfreeMode( 100 ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidStates[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.07 DSY [Output Volume 0] +// Sets output volume to 0. +// Tested function: +// - RDosAudio::SetOutputVolume( 0 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume0States[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.08 DSY [Output Volume 9] +// Sets output volume to 9. +// Tested function: +// - RDosAudio::SetOutputVolume( 9 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume9States[4] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.09 DSY [Invalid Output Volume 100] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 100 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.10 DSY [Open and Close Audio] +// Opens and closes the audio service. +// Tested function: +// - RDosAudio::Open() +// - RDosAudio::Close() +const TTFDosServerControlTestCaseState KTFAudioOpenCloseStates[2] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.11 DSY [Handsfree On Twice] +// Sets handsfree mode on twice. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOn ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOnTwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.12 DSY [Handsfree Off Twice] +// Sets handsfree mode off twice. +// Tested function: +// - RDosAudio::SetHandsfreeMode( ESAIhfOff ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeOffTwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, EPSIhfOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.13 DSY [Invalid Handsfree 100 Twice] +// Tries to set handsfree mode to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetHandsfreeMode( 100 ) +const TTFDosServerControlTestCaseState KTFAudioHandsfreeInvalidTwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetHandsfreeMode, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetHandsfreeMode, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.17 DSY [Output Volume 0 Twice] +// Sets output volume to 0 twice. +// Tested function: +// - RDosAudio::SetOutputVolume( 0 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume0TwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.18 DSY [Output Volume 9 Twice] +// Sets output volume to 9 twice. +// Tested function: +// - RDosAudio::SetOutputVolume( 9 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolume9TwiceStates[6] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.19 DSY [Invalid Output Volume 100 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 100 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid100TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.22 DSY [Invalid Output Volume -1] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( -1 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.23 DSY [Invalid Output Volume 10] +// Tries to set output volume to invalid value. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 10 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10States[5] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.24 DSY [Invalid Output Volume -1 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( -1 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalidNeg1TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, -1, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.25 DSY [Invalid Output Volume 10 Twice] +// Tries to set output volume to invalid value twice. The current value must not change. +// Tested function: +// - RDosAudio::SetOutputVolume( 10 ) +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeInvalid10TwiceStates[8] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAudio_SetOutputVolume, 10, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0002.26 DSY [Output Volume 0 - 9] +// Sets and gets output volumes. +// Tested function: +// - RDosAudio::SetOutputVolume +const TTFDosServerControlTestCaseState KTFAudioOutputVolumeStates[20] = + { + { ETFDosAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 9, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 6, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 4, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_SetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_GetOutputVolume, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // __ACCESSORY_FW + + +/***************************** SAE *********************************/ +// I0010.01 DSY [Open and Close SAE] +// Opens and closes the SAE service. +// Tested function: +// - RDosSae::Open() +// - RDosSae::Close() +const TTFDosServerControlTestCaseState KTFSAEOpenCloseStates[2] = + { + { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.04 DSY [Start SAE] +// Starts sae. +// Tested function: +// - RDosSae::StartSae() +const TTFDosServerControlTestCaseState KTFSAEStartSAEStates[3] = + { + { ETFDosSae_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_StartSae, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSae_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#ifndef RD_STARTUP_CHANGE +/***************************** SysUtils *********************************/ +// I0008.01 DSY [Open and Close SysUtils] +// Opens and closes the SysUtils service. +// Tested function: +// - RDosSysUtils::Open() +// - RDosSysUtils::Close() +const TTFDosServerControlTestCaseState KTFSysUtilsOpenCloseStates[2] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.05 DSY [SIM Language] +// Gets SIM language. +// Tested function: +// - RDosSysUtils::GetSimLanguage() +const TTFDosServerControlTestCaseState KTFSysUtilsGetSimLanguageStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_GetSimLanguage, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_IgnoreParameters }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.02 DSY [Set Alarm] +// Sets a DOS alarm 60*24*365 minutes from current time. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.03 DSY [Cancel Alarm] +// Cancels current DOS alarm. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsCancelAlarmStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.04 DSY [Set and Cancel Alarm] +// Sets alarm twice, cancels it twice. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetCancelAlarmStates[6] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365*2, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.05 DSY [Invalid Alarm Neg.] +// Sets a DOS alarm ~10 years before current time. Setter should return KErrGeneral +// result if the CMT clock is not ~10 years behind the APE clock. +// Tested function: +// - MDosSysUtilsBaseDSY::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, -( 60*24*365*10 ), 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.06 DSY [Invalid Alarm Sec] +// Sets a DOS alarm 60*24*365 minutes after current time and sets the seconds in the alarm to 30. +// Since alarm cannot contain seconds, setter should return KErrGeneral. +// Tested function: +// - RDosSysUtils::SetDosAlarm() +const TTFDosServerControlTestCaseState KTFSysUtilsSetAlarmInvalidSecondsStates[3] = + { + { ETFDosSysUtils_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_SetDosAlarm, 60*24*365, 30, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSysUtils_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +/***************************** Helper *********************************/ +// I0010.02 DSY [Open and Close Helper] +// Opens and closes the helper service. +// Tested function: +// - RDosHelper::Open() +// - RDosHelper::Close() +const TTFDosServerControlTestCaseState KTFHelperOpenCloseStates[2] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.06 DSY [Startup Reason] +// Gets the startup reason. +// Tested function: +// - RDosHelper::GetStartupReason() +const TTFDosServerControlTestCaseState KTFHelperGetStartupReasonStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetStartupReason, ENormal, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.07 DSY [SW Startup Reason] +// Sets / gets SW startup reasons. +// Tested function: +// - RDosHelper::SetSWStartupReason() +const TTFDosServerControlTestCaseState KTFHelperSetSWStartupReasonStates[15] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySet, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWLangSwitch, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWWarrantyTransfer, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWChargerConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetSWStartupReason, ESWRestoreFactorySetDeep, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_SetSWStartupReason, ESWNone, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.08 DSY [Hidden Reset] +// Gets hidden reset status. +// Tested function: +// - RDosHelper::HiddenReset() +const TTFDosServerControlTestCaseState KTFHelperHiddenResetStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_HiddenReset, EFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0007.01 DSY [RTC Status] +// Gets the RTC status. +// Tested function: +// - RDosHelper::GetRTCStatus() +const TTFDosServerControlTestCaseState KTFHelperGetRTCStatusStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GetRTCStatus, ETrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0004.01 DSY [Grip Event] +// Generates a grip event. +// Tested function: +// - RDosHelper::GenerateGripEvent +/*const TTFDosServerControlTestCaseState KTFHelperGripEventStates[3] = + { + { ETFDosHelper_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_GenerateGripEvent, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosHelper_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +*/ + +/***************************** MTC *********************************/ +// I0010.03 DSY [Open and Close MTC] +// Opens and closes the MTC service. +// Tested function: +// - RDosMtc::Open() +// - RDosMtc::Close() +const TTFDosServerControlTestCaseState KTFMtcOpenCloseStates[2] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.09 DSY [Offline State True] +// Sets offline state flag to true. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagTrue ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagTrueStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagTrue, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.10 DSY [Offline State False] +// Sets offline state flag to false. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagFalseStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, EDosOfflineStateFlagFalse, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.11 DSY [Invalid Offline State 100] +// Tries to set offline state flag to invalid value. The current value must not change. +// Tested function: +// - RDosMtc::SetStateFlag( EDosOfflineStateFlagFalse ) +const TTFDosServerControlTestCaseState KTFMtcStateFlagInvalidStates[5] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosMtc_SetStateFlag, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_GetStateFlag, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0010.12 DSY [RF Inactive and Normal States] +// Sets MTC state to RF inactive and then normal. +// Tested function: +// - RDosMtc::SetState( ESysApMtcRfInactiveState ) +// - RDosMtc::SetState( ESysApMtcNormalState ) +const TTFDosServerControlTestCaseState KTFMtcStateRFInactiveNormalStates[4] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcRfInactiveState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +/***************************** SelfTest *********************************/ +// I0009.01 DSY [Open and Close Self Test] +// Opens and closes the self test service. +// Tested function: +// - RDosSelfTest::Open() +// - RDosSelfTest::Close() +const TTFDosServerControlTestCaseState KTFSelfTestOpenCloseStates[2] = + { + { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0009.02 DSY [Perform Self Test] +// Performs self test. +// Tested function: +// - RDosSelfTest::PerformSelfTest() +const TTFDosServerControlTestCaseState KTFSelfTestPerformStates[3] = + { + { ETFDosSelfTest_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_PerformSelfTest, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosSelfTest_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // RD_STARTUP_CHANGE + + +#ifndef __ACCESSORY_FW +/***************************** BT Audio *********************************/ +// I0003.01 DSY [Open and Close BT Audio] +// Opens and closes the BT audio service. +// Tested function: +// - RDosBTAudio::Open() +// - RDosBTAudio::Close() +const TTFDosServerControlTestCaseState KTFBTAudioOpenCloseStates[2] = + { + { ETFDosBTAudio_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosBTAudio_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // __ACCESSORY_FW + +/***************************** Extension *********************************/ +// I0005.01 DSY [Open and Close Extension] +// Opens and closes the extension service. +// Tested function: +// - RDosExtension::Open() +// - RDosExtension::Close() +const TTFDosServerControlTestCaseState KTFExtensionOpenCloseStates[2] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0005.02 DSY [Invalid Call Function Sync] +// Tests sync CallFunction with invalid parameter. +// Tested function: +// - RDosExtension::CallFunction() ( sync ) +const TTFDosServerControlTestCaseState KTFExtensionInvalidSyncCallFunctionStates[3] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_CallFunction, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0005.03 DSY [Invalid Call Function Async] +// Tests async CallFunction with invalid parameter. +// Tested function: +// - RDosExtension::CallFunction() ( async ) +const TTFDosServerControlTestCaseState KTFExtensionInvalidAsyncCallFunctionStates[3] = + { + { ETFDosExtension_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_CallFunctionAndComplete, 854632, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosExtension_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#ifndef __ACCESSORY_FW +/***************************** Accessory *********************************/ +// I0001.01 DSY [Loopset On] +// Sets loopset mode on. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOn ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOnStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOn, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.02 DSY [Loopset Tty] +// Sets loopset mode to tty. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccTty ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetTtyStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccTty, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.03 DSY [Loopset Off] +// Sets loopset mode off. +// Tested function: +// - RDosAccessory::SetLoopSetModeState( ESAAccLpsOff ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetOffStates[4] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_SetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, EPSAccLpsOff, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.04 DSY [Invalid Loopset 100] +// Tries to set loopset mode to invalid value. The current value must not change +// Tested function: +// - RDosAccessory::SetLoopSetModeState( 100 ) +const TTFDosServerControlTestCaseState KTFAccessoryLoopsetInvalidStates[5] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_StoreParameters }, + { ETFDosAccessory_SetLoopSetModeState, 100, 0, KErrGeneral, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetLoopSetModeState, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents | ETFDosFlags_UseParameters }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.05 DSY [Open and Close Accessory] +// Opens and closes the accessory service. +// Tested function: +// - RDosAccessory::Open() +// - RDosAccessory::Close() +const TTFDosServerControlTestCaseState KTFAccessoryOpenCloseStates[2] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0001.08 DSY [Accessory Mode] +// Tests GetAccessoryMode, which should return EDosAccNotConnected +// Tested function: +// - RDosAccessory::GetAccessoryMode +const TTFDosServerControlTestCaseState KTFAccessoryGetAccessoryModeStates[3] = + { + { ETFDosAccessory_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_GetAccessoryMode, EDosAccNotConnected, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosAccessory_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +/***************************** BT SAP *********************************/ +// I0012.01 DSY [BT SAP On] +// Sets BT SAP state on +// Tested function: +// - RDosMtc::SetState( 5 ) +const TTFDosServerControlTestCaseState KTFMtcBTSapOnStates[3] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, 5, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; + +// I0012.02 DSY [BT SAP Off] +// Sets BT SAP state off +// Tested function: +// - RDosMtc::SetState( ESysApMtcNormalState ) +const TTFDosServerControlTestCaseState KTFMtcBTSapOffStates[3] = + { + { ETFDosMtc_Open, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_SetState, ESysApMtcNormalState, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents }, + { ETFDosMtc_Close, 0, 0, KErrNone, ETFDosEvent_None, ETFDosFlags_IgnoreUnexpectedEvents } + }; +#endif // RD_STARTUP_CHANGE + + + +// C++ default constructor can NOT contain any code, that +// might leave. +// +CTFDosServerPlugin::CTFDosServerPlugin( TAny* aInitParams ) +: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) + { + } + +// Two-phased constructor. +CTFDosServerPlugin* CTFDosServerPlugin::NewL( TAny* aInitParams ) + { + return new ( ELeave ) CTFDosServerPlugin( aInitParams ); + } + +// Destructor. +CTFDosServerPlugin::~CTFDosServerPlugin() + { + iInitParams = NULL; + } + + +CTFStub* CTFDosServerPlugin::GetStubL( void ) + { + return new ( ELeave ) CTFDosServerControl(); + } + + +void CTFDosServerPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + // Memory checks are disabled since DSY runs in separate thread and heap. + aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); + TF_START_TEST_DECLARATION_L( aRootSuite ); + // Use case test cases + TF_ADD_TEST_SUITE_L( _L( "Use Case Tests" ) ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SAE" ), SAEUseCaseSuiteL ); + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio" ), AudioUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Audio Param" ), AudioParameterSuiteL ); +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "SysUtils" ), SysUtilsUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Helper" ), HelperUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Self Test" ), SelfTestUseCaseSuiteL ); +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT Audio" ), BTAudioUseCaseSuiteL ); +#endif // __ACCESSORY_FW + + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Extension" ), ExtensionUseCaseSuiteL ); + +#ifndef __ACCESSORY_FW + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory" ), AccessoryUseCaseSuiteL ); +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "MTC" ), MtcUseCaseSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "BT SAP" ), BluetoothSAPSuiteL ); +#endif // RD_STARTUP_CHANGE + TF_END_TEST_SUITE(); + TF_END_TEST_DECLARATION(); + } + + +MTFStubTestCase* CTFDosServerPlugin::GetStubTestCaseL( TInt aTestCaseId ) + { + TF_START_STUB_TEST_CASES( aTestCaseId ); + +#ifndef __ACCESSORY_FW + //AUDIO + // I0002.10 DSY [Open and Close Audio] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10110, KTFAudioOpenCloseStates ) ; + + // I0002.01 DSY [Handsfree On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAudioHandsfreeOnStates ) ; + + // I0002.02 DSY [Handsfree Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAudioHandsfreeOffStates ) ; + + // I0002.03 DSY [Invalid Handsfree 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAudioHandsfreeInvalidStates ) ; + + // I0002.07 DSY [Output Volume 0] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAudioOutputVolume0States ) ; + + // I0002.08 DSY [Output Volume 9] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAudioOutputVolume9States ) ; + + // I0002.09 DSY [Invalid Output Volume 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10109, KTFAudioOutputVolumeInvalid100States ) ; + + // I0002.11 DSY [Handsfree On Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10111, KTFAudioHandsfreeOnTwiceStates ) ; + + // I0002.12 DSY [Handsfree Off Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10112, KTFAudioHandsfreeOffTwiceStates ) ; + + // I0002.13 DSY [Invalid Handsfree 100 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10113, KTFAudioHandsfreeInvalidTwiceStates ) ; + + // I0002.17 DSY [Output Volume 0 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10117, KTFAudioOutputVolume0TwiceStates ) ; + + // I0002.18 DSY [Output Volume 9 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10118, KTFAudioOutputVolume9TwiceStates ) ; + + // I0002.19 DSY [Invalid Output Volume 100 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10119, KTFAudioOutputVolumeInvalid100TwiceStates ) ; + + // I0002.22 DSY [Invalid Output Volume -1] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10122, KTFAudioOutputVolumeInvalidNeg1States ) ; + + // I0002.23 DSY [Invalid Output Volume 10] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10123, KTFAudioOutputVolumeInvalid10States ) ; + + // I0002.24 DSY [Invalid Output Volume -1 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10124, KTFAudioOutputVolumeInvalidNeg1TwiceStates ) ; + + // I0002.25 DSY [Invalid Output Volume 10 Twice] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10125, KTFAudioOutputVolumeInvalid10TwiceStates ) ; + + // I0002.20 DSY [Audio Regression] + // Case 10120: Uses other test cases + + // I0002.21 DSY [Audio Randomizer] + // Case 10121: Uses other test cases + + // I0002.26 DSY [Output Volume 0 - 9] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10126, KTFAudioOutputVolumeStates ) ; +#endif // __ACCESSORY_FW + + // SAE + // I0010.01 DSY [Open and Close SAE] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10301, KTFSAEOpenCloseStates ) ; + + // I0010.04 DSY [Start SAE] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10302, KTFSAEStartSAEStates ) ; + +#ifndef RD_STARTUP_CHANGE + // SYSUTILS + // I0008.01 DSY [Open and Close SysUtils] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10401, KTFSysUtilsOpenCloseStates ) ; + + // I0010.05 DSY [SIM Language] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10402, KTFSysUtilsGetSimLanguageStates ) ; + + // I0007.02 DSY [Set Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10403, KTFSysUtilsSetAlarmStates ) ; + + // I0007.03 DSY [Cancel Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10404, KTFSysUtilsCancelAlarmStates ) ; + + // I0007.04 DSY [Set and Cancel Alarm] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10405, KTFSysUtilsSetCancelAlarmStates ) ; + + // I0007.05 DSY [Invalid Alarm Neg.] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10406, KTFSysUtilsSetAlarmInvalidStates ) ; + + // I0007.06 DSY [Invalid Alarm Sec] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10407, KTFSysUtilsSetAlarmInvalidSecondsStates ) ; + + //HELPER + // I0010.02 DSY [Open and Close Helper] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10501, KTFHelperOpenCloseStates ) ; + + // I0010.06 DSY [Startup Reason] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10502, KTFHelperGetStartupReasonStates ) ; + + // I0010.07 DSY [SW Startup Reason] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10503, KTFHelperSetSWStartupReasonStates ) ; + + // I0010.08 DSY [Hidden Reset] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10504, KTFHelperHiddenResetStates ) ; + + // I0007.01 DSY [RTC Status] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10505, KTFHelperGetRTCStatusStates ) ; + + // I0004.01 DSY [Grip Event] + // TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10506, KTFHelperGripEventStates ) ; + + //MTC + // I0010.03 DSY [Open and Close MTC] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10601, KTFMtcOpenCloseStates ) ; + + // I0010.09 DSY [Offline State True] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10602, KTFMtcStateFlagTrueStates ) ; + + // I0010.10 DSY [Offline State False] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10603, KTFMtcStateFlagFalseStates ) ; + + // I0010.11 DSY [Invalid Offline State 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10604, KTFMtcStateFlagInvalidStates ) ; + + // I0010.12 DSY [RF Inactive and Normal States] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10605, KTFMtcStateRFInactiveNormalStates ) ; + + // SELFTEST + // I0009.01 DSY [Open and Close Self Test] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10701, KTFSelfTestOpenCloseStates ) ; + + // I0009.02 DSY [Perform Self Test] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10702, KTFSelfTestPerformStates ) ; +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW + + //BT AUDIO + // I0003.01 DSY [Open and Close BT Audio] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10801, KTFBTAudioOpenCloseStates ) ; +#endif // __ACCESSORY_FW + + + // EXTENSION + // I0005.01 DSY [Open and Close Extension] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10901, KTFExtensionOpenCloseStates ) ; + + // I0005.02 DSY [Invalid Call Function Sync] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10902, KTFExtensionInvalidSyncCallFunctionStates ) ; + + // I0005.03 DSY [Invalid Call Function Async] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 10903, KTFExtensionInvalidAsyncCallFunctionStates ) ; + + +#ifndef __ACCESSORY_FW + // ACCESSORY + // I0001.05 DSY [Open and Close Accessory] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11005, KTFAccessoryOpenCloseStates ) ; + + // I0001.01 DSY [Loopset On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11001, KTFAccessoryLoopsetOnStates ) ; + + // I0001.02 DSY [Loopset Tty] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11002, KTFAccessoryLoopsetTtyStates ) ; + + // I0001.03 DSY [Loopset Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11003, KTFAccessoryLoopsetOffStates ) ; + + // I0001.04 DSY [Invalid Loopset 100] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11004, KTFAccessoryLoopsetInvalidStates ) ; + + // I0001.08 DSY [Accessory Mode] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 11008, KTFAccessoryGetAccessoryModeStates ) ; + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE + // I0012.01 DSY [BT SAP On] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12001, KTFMtcBTSapOnStates ) ; + + // I0012.02 DSY [BT SAP Off] + TF_DOS_SERVER_CONTROL_TEST_CASE_L( 12002, KTFMtcBTSapOffStates ) ; +#endif // RD_STARTUP_CHANGE + + TF_END_STUB_TEST_CASES(); + } + +#ifndef __ACCESSORY_FW +static void AudioUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10110, _L( "I0002.10 DSY [Open and Close Audio]" ) ); + TF_ADD_TEST_CASE_L( 10101, _L( "I0002.01 DSY [Handsfree On]" ) ); + TF_ADD_TEST_CASE_L( 10102, _L( "I0002.02 DSY [Handsfree Off]" ) ); + TF_ADD_TEST_CASE_L( 10103, _L( "I0002.03 DSY [Invalid Handsfree 100]" ) ); + TF_ADD_TEST_CASE_L( 10107, _L( "I0002.07 DSY [Output Volume 0]" ) ); + TF_ADD_TEST_CASE_L( 10108, _L( "I0002.08 DSY [Output Volume 9]" ) ); + TF_ADD_TEST_CASE_L( 10109, _L( "I0002.09 DSY [Invalid Output Volume 100]" ) ); + TF_ADD_TEST_CASE_L( 10111, _L( "I0002.11 DSY [Handsfree On Twice]" ) ); + TF_ADD_TEST_CASE_L( 10112, _L( "I0002.12 DSY [Handsfree Off Twice]" ) ); + TF_ADD_TEST_CASE_L( 10113, _L( "I0002.13 DSY [Invalid Handsfree 100 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10117, _L( "I0002.17 DSY [Output Volume 0 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10118, _L( "I0002.18 DSY [Output Volume 9 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10119, _L( "I0002.19 DSY [Invalid Output Volume 100 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10122, _L( "I0002.22 DSY [Invalid Output Volume -1]" ) ); + TF_ADD_TEST_CASE_L( 10123, _L( "I0002.23 DSY [Invalid Output Volume 10]" ) ); + TF_ADD_TEST_CASE_L( 10124, _L( "I0002.24 DSY [Invalid Output Volume -1 Twice]" ) ); + TF_ADD_TEST_CASE_L( 10125, _L( "I0002.25 DSY [Invalid Output Volume 10 Twice]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10120, _L( "I0002.20 DSY [Audio Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10121, _L( "I0002.21 DSY [Audio Randomizer]" ), 200 ); + } + +static void AudioParameterSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10126, _L( "I0002.26 DSY [Output Volume 0 - 9]" ) ); + } +#endif // __ACCESSORY_FW + +static void SAEUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10301, _L( "I0010.01 DSY [Open and Close SAE]" ) ); + // NOTE: In HW SAE has already called StartSAE during boot. +#ifdef TESTS_NO_UI + TF_ADD_TEST_CASE_L( 10302, _L( "I0010.04 DSY [Start SAE]" ) ); +#endif + } + +#ifndef RD_STARTUP_CHANGE +static void SysUtilsUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10401, _L( "I0008.01 DSY [Open and Close SysUtils]" ) ); + TF_ADD_TEST_CASE_L( 10402, _L( "I0010.05 DSY [SIM Language]" ) ); + TF_ADD_TEST_CASE_L( 10403, _L( "I0007.02 DSY [Set Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10404, _L( "I0007.03 DSY [Cancel Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10405, _L( "I0007.04 DSY [Set and Cancel Alarm]" ) ); + TF_ADD_TEST_CASE_L( 10406, _L( "I0007.05 DSY [Invalid Alarm Neg.]" ) ); + TF_ADD_TEST_CASE_L( 10407, _L( "I0007.06 DSY [Invalid Alarm Sec]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10408, _L( "I0007.07 DSY [SysUtils Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10409, _L( "I0007.08 DSY [SysUtils Randomizer]" ), 200 ); + } + +static void HelperUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10501, _L( "I0010.02 DSY [Open and Close Helper]" ) ); + TF_ADD_TEST_CASE_L( 10502, _L( "I0010.06 DSY [Startup Reason]" ) ); + TF_ADD_TEST_CASE_L( 10503, _L( "I0010.07 DSY [SW Startup Reason]" ) ); + TF_ADD_TEST_CASE_L( 10504, _L( "I0010.08 DSY [Hidden Reset]" ) ); + TF_ADD_TEST_CASE_L( 10505, _L( "I0007.01 DSY [RTC Status]" ) ); + //TF_ADD_TEST_CASE_L( 10506, _L( "I0004.01 DSY [Grip Event]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10507, _L( "I0010.13 DSY [Helper Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10508, _L( "I0010.14 DSY [Helper Randomizer]" ), 200 ); + } + +static void MtcUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10601, _L( "I0010.03 DSY [Open and Close MTC]" ) ); + TF_ADD_TEST_CASE_L( 10602, _L( "I0010.09 DSY [Offline State True]" ) ); + TF_ADD_TEST_CASE_L( 10603, _L( "I0010.10 DSY [Offline State False]" ) ); + TF_ADD_TEST_CASE_L( 10604, _L( "I0010.11 DSY [Invalid Offline State 100]" ) ); + TF_ADD_TEST_CASE_L( 10605, _L( "I0010.12 DSY [RF Inactive and Normal States]" ) ); + + TF_ADD_TEST_SUITE_REGRESSION_L( 10606, _L( "I0010.15 DSY [MTC Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 10607, _L( "I0010.16 DSY [MTC Randomizer]" ), 200 ); + } + +static void SelfTestUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10701, _L( "I0009.01 DSY [Open and Close Self Test]" ) ); +#ifdef __WINS__ + TF_ADD_TEST_CASE_L( 10702, _L( "I0009.02 DSY [Perform Self Test]" ) ); +#endif + } +#endif // RD_STARTUP_CHANGE + +#ifndef __ACCESSORY_FW +static void BTAudioUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10801, _L( "I0003.01 DSY [Open and Close BT Audio]" ) ); + } +#endif // __ACCESSORY_FW + +static void ExtensionUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 10901, _L( "I0005.01 DSY [Open and Close Extension]" ) ); + TF_ADD_TEST_CASE_L( 10902, _L( "I0005.02 DSY [Invalid Call Function Sync]" ) ); + TF_ADD_TEST_CASE_L( 10903, _L( "I0005.03 DSY [Invalid Call Function Async]" ) ); + } + +#ifndef __ACCESSORY_FW +static void AccessoryUseCaseSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 11005, _L( "I0001.05 DSY [Open and Close Accessory]" ) ); + TF_ADD_TEST_CASE_L( 11001, _L( "I0001.01 DSY [Loopset On]" ) ); + TF_ADD_TEST_CASE_L( 11002, _L( "I0001.02 DSY [Loopset Tty]" ) ); + TF_ADD_TEST_CASE_L( 11003, _L( "I0001.03 DSY [Loopset Off]" ) ); + TF_ADD_TEST_CASE_L( 11004, _L( "I0001.04 DSY [Invalid Loopset 100]" ) ); + TF_ADD_TEST_CASE_L( 11008, _L( "I0001.08 DSY [Accessory Mode]" ) ) ; + + TF_ADD_TEST_SUITE_REGRESSION_L( 11006, _L( "I0001.06 DSY [Accessory Regression]" ), 3 ); + TF_ADD_TEST_SUITE_RANDOMIZE_L( 11007, _L( "I0001.07 DSY [Accessory Randomizer]" ), 200 ); + } + +#endif // __ACCESSORY_FW + +#ifndef RD_STARTUP_CHANGE +#ifdef __BT_SAP +static void BluetoothSAPSuiteL( CTFATestSuite* aSuite ) + { + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + TF_ADD_TEST_CASE_L( 12001, _L( "I0012.01 DSY [BT SAP On]" ) ) ; + TF_ADD_TEST_CASE_L( 12002, _L( "I0012.02 DSY [BT SAP Off]" ) ) ; + } +#else +#pragma message ( "BT SAP Disabled" ) +static void BluetoothSAPSuiteL( CTFATestSuite* /*aSuite*/ ) + { + } +#endif +#endif // RD_STARTUP_CHANGE + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverproxy.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverproxy.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dosservercontrol/src/tfdosserverproxy.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of DosServer control ECom export -* -*/ - - -// INCLUDE FILES -#include -#include -#include "ctfdosserverplugin.h" - -// CONSTANTS -const TImplementationProxy ImplementationTable[] = - { -//lint -e611 Suspicious cast - IMPLEMENTATION_PROXY_ENTRY( 0x10200c77, CTFDosServerPlugin::NewL ) -//lint +e611 - }; - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer && date && time ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), - buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - -// ================= OTHER EXPORTED FUNCTIONS ============== - -// --------------------------------------------------------- -// ImplementationGroupProxy -// Returns: TImplementationProxy*: ?description -// --------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); - - return ImplementationTable; - } - +/* +* 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: Implementation of DosServer control ECom export +* +*/ + + +// INCLUDE FILES +#include +#include +#include "ctfdosserverplugin.h" + +// CONSTANTS +const TImplementationProxy ImplementationTable[] = + { +//lint -e611 Suspicious cast + IMPLEMENTATION_PROXY_ENTRY( 0x10200c77, CTFDosServerPlugin::NewL ) +//lint +e611 + }; + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer && date && time ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), + buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + +// ================= OTHER EXPORTED FUNCTIONS ============== + +// --------------------------------------------------------- +// ImplementationGroupProxy +// Returns: TImplementationProxy*: ?description +// --------------------------------------------------------- +// +EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) + { + aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); + + return ImplementationTable; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BMARM/DSYTFCOREU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BMARM/DSYTFCOREU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BMARM/DSYTFCOREU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,80 +1,80 @@ -EXPORTS - __7CTFStubi @ 1 NONAME R3UNUSED ; CTFStub::CTFStub(int) - AddL__20CTFATestSuiteAdapterR15MTFATestAdapter @ 2 NONAME R3UNUSED ; CTFATestSuiteAdapter::AddL(MTFATestAdapter &) - AddStubTestCaseL__18CTFTestCaseWrapperR15MTFStubTestCase @ 3 NONAME R3UNUSED ; CTFTestCaseWrapper::AddStubTestCaseL(MTFStubTestCase &) - At__13CTFATestSuitei @ 4 NONAME R3UNUSED ; CTFATestSuite::At(int) - CallLocalStubL__10CTFFactoryiPvN32 @ 5 NONAME ; CTFFactory::CallLocalStubL(int, void *, void *, void *, void *) - CallRemoteStubL__10CTFFactoryiPvN32 @ 6 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *) - CallRemoteStubL__10CTFFactoryiPvN32R14TRequestStatus @ 7 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *, TRequestStatus &) - CompleteTest__15CTFStubTestCasei @ 8 NONAME R3UNUSED ; CTFStubTestCase::CompleteTest(int) - ConstructL__14CTFAEntryPoint @ 9 NONAME R3UNUSED ; CTFAEntryPoint::ConstructL(void) - Count__C13CTFATestSuite @ 10 NONAME R3UNUSED ; CTFATestSuite::Count(void) const - CurrentTestCaseID__7CTFStub @ 11 NONAME R3UNUSED ; CTFStub::CurrentTestCaseID(void) - CurrentTestCase__7CTFStub @ 12 NONAME R3UNUSED ; CTFStub::CurrentTestCase(void) - DoSetActive__14CTFAActiveTest @ 13 NONAME R3UNUSED ; CTFAActiveTest::DoSetActive(void) - Environment__8CTFATest @ 14 NONAME R3UNUSED ; CTFATest::Environment(void) - Factory__19CTFATestEnvironment @ 15 NONAME R3UNUSED ; CTFATestEnvironment::Factory(void) - Id__C12CTFATestCase @ 16 NONAME R3UNUSED ; CTFATestCase::Id(void) const - IsComplete__15CTFStubTestCase @ 17 NONAME R3UNUSED ; CTFStubTestCase::IsComplete(void) - Logger__15CTFStubTestCase @ 18 NONAME R3UNUSED ; CTFStubTestCase::Logger(void) - Logger__19CTFATestEnvironment @ 19 NONAME R3UNUSED ; CTFATestEnvironment::Logger(void) - Name__C8CTFATest @ 20 NONAME R3UNUSED ; CTFATest::Name(void) const - NewL__13CTFATestTimerR14MTFAActiveTest @ 21 NONAME R3UNUSED ; CTFATestTimer::NewL(MTFAActiveTest &) - RootSuiteAdapter__14CTFAEntryPoint @ 22 NONAME R3UNUSED ; CTFAEntryPoint::RootSuiteAdapter(void) - RunOnStartup__C12CTFATestCase @ 23 NONAME R3UNUSED ; CTFATestCase::RunOnStartup(void) const - SetCallback__15CTFStubTestCaseR20MTFTestCaseInterface @ 24 NONAME R3UNUSED ; CTFStubTestCase::SetCallback(MTFTestCaseInterface &) - SetEnvironment__18CTFTestCaseWrapperR19CTFATestEnvironment @ 25 NONAME R3UNUSED ; CTFTestCaseWrapper::SetEnvironment(CTFATestEnvironment &) - SetEnvironment__19CTFTestCaseRepeaterR19CTFATestEnvironment @ 26 NONAME R3UNUSED ; CTFTestCaseRepeater::SetEnvironment(CTFATestEnvironment &) - SetEnvironment__8CTFATestR19CTFATestEnvironment @ 27 NONAME R3UNUSED ; CTFATest::SetEnvironment(CTFATestEnvironment &) - SetRunOnStartup__12CTFATestCasei @ 28 NONAME R3UNUSED ; CTFATestCase::SetRunOnStartup(int) - SetStub__15CTFStubTestCaseR7CTFStub @ 29 NONAME R3UNUSED ; CTFStubTestCase::SetStub(CTFStub &) - SetTimeout__12CTFATestCasei @ 30 NONAME R3UNUSED ; CTFATestCase::SetTimeout(int) - SetupL__15CTFStubTestCase @ 31 NONAME R3UNUSED ; CTFStubTestCase::SetupL(void) - Status__14CTFAActiveTest @ 32 NONAME R3UNUSED ; CTFAActiveTest::Status(void) - Stub__10CTFFactoryi @ 33 NONAME R3UNUSED ; CTFFactory::Stub(int) - Timeout__C12CTFATestCase @ 34 NONAME R3UNUSED ; CTFATestCase::Timeout(void) const - Type__15CTFStubTestCase @ 35 NONAME R3UNUSED ; CTFStubTestCase::Type(void) - Type__C12CTFATestCase @ 36 NONAME R3UNUSED ; CTFATestCase::Type(void) const - Type__C13CTFATestSuite @ 37 NONAME R3UNUSED ; CTFATestSuite::Type(void) const - Type__C19CTFATestCaseAdapter @ 38 NONAME R3UNUSED ; CTFATestCaseAdapter::Type(void) const - Type__C20CTFATestSuiteAdapter @ 39 NONAME R3UNUSED ; CTFATestSuiteAdapter::Type(void) const - "_._11CTFATestLog" @ 40 NONAME R3UNUSED ; CTFATestLog::~CTFATestLog(void) - "_._12CTFATestCase" @ 41 NONAME R3UNUSED ; CTFATestCase::~CTFATestCase(void) - "_._13CTFATestSuite" @ 42 NONAME R3UNUSED ; CTFATestSuite::~CTFATestSuite(void) - "_._13CTFATestTimer" @ 43 NONAME R3UNUSED ; CTFATestTimer::~CTFATestTimer(void) - "_._13CTFRemoteStub" @ 44 NONAME R3UNUSED ; CTFRemoteStub::~CTFRemoteStub(void) - "_._14CTFAActiveTest" @ 45 NONAME R3UNUSED ; CTFAActiveTest::~CTFAActiveTest(void) - "_._14CTFAEntryPoint" @ 46 NONAME R3UNUSED ; CTFAEntryPoint::~CTFAEntryPoint(void) - "_._14MTFAActiveTest" @ 47 NONAME R3UNUSED ; MTFAActiveTest::~MTFAActiveTest(void) - "_._15CTFStubTestCase" @ 48 NONAME R3UNUSED ; CTFStubTestCase::~CTFStubTestCase(void) - "_._15MTFATestAdapter" @ 49 NONAME R3UNUSED ; MTFATestAdapter::~MTFATestAdapter(void) - "_._19CTFATestCaseAdapter" @ 50 NONAME R3UNUSED ; CTFATestCaseAdapter::~CTFATestCaseAdapter(void) - "_._19CTFATestEnvironment" @ 51 NONAME R3UNUSED ; CTFATestEnvironment::~CTFATestEnvironment(void) - "_._19MTFATestCaseAdapter" @ 52 NONAME R3UNUSED ; MTFATestCaseAdapter::~MTFATestCaseAdapter(void) - "_._20CTFATestSuiteAdapter" @ 53 NONAME R3UNUSED ; CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) - "_._20CTFStubTestCaseParam" @ 54 NONAME R3UNUSED ; CTFStubTestCaseParam::~CTFStubTestCaseParam(void) - "_._20MTFATestSuiteAdapter" @ 55 NONAME R3UNUSED ; MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) - "_._7CTFStub" @ 56 NONAME R3UNUSED ; CTFStub::~CTFStub(void) - __11CTFATestLog @ 57 NONAME R3UNUSED ; CTFATestLog::CTFATestLog(void) - __12CTFATestCaseiRC7TDesC16 @ 58 NONAME R3UNUSED ; CTFATestCase::CTFATestCase(int, TDesC16 const &) - __13CTFATestSuiteRC7TDesC16 @ 59 NONAME R3UNUSED ; CTFATestSuite::CTFATestSuite(TDesC16 const &) - __13CTFRemoteStubi @ 60 NONAME R3UNUSED ; CTFRemoteStub::CTFRemoteStub(int) - __14CTFAActiveTestR14MTFAActiveTest @ 61 NONAME R3UNUSED ; CTFAActiveTest::CTFAActiveTest(MTFAActiveTest &) - __14CTFAEntryPoint @ 62 NONAME R3UNUSED ; CTFAEntryPoint::CTFAEntryPoint(void) - __14MTFAActiveTest @ 63 NONAME R3UNUSED ; MTFAActiveTest::MTFAActiveTest(void) - __15CTFStubTestCasei @ 64 NONAME R3UNUSED ; CTFStubTestCase::CTFStubTestCase(int) - __15MTFATestAdapter @ 65 NONAME R3UNUSED ; MTFATestAdapter::MTFATestAdapter(void) - __18CTFTestCaseWrapperiRC7TDesC16 @ 66 NONAME R3UNUSED ; CTFTestCaseWrapper::CTFTestCaseWrapper(int, TDesC16 const &) - __19CTFATestCaseAdapterR12CTFATestCase @ 67 NONAME R3UNUSED ; CTFATestCaseAdapter::CTFATestCaseAdapter(CTFATestCase &) - __19CTFATestEnvironmentR11CTFATestLog @ 68 NONAME R3UNUSED ; CTFATestEnvironment::CTFATestEnvironment(CTFATestLog &) - __19CTFTestCaseRepeateriRC7TDesC16P13CTFATestSuiteii @ 69 NONAME ; CTFTestCaseRepeater::CTFTestCaseRepeater(int, TDesC16 const &, CTFATestSuite *, int, int) - __19MTFATestCaseAdapter @ 70 NONAME R3UNUSED ; MTFATestCaseAdapter::MTFATestCaseAdapter(void) - __20CTFATestSuiteAdapterR13CTFATestSuiteP14CTFAEntryPoint @ 71 NONAME R3UNUSED ; CTFATestSuiteAdapter::CTFATestSuiteAdapter(CTFATestSuite &, CTFAEntryPoint *) - __20CTFStubTestCaseParam @ 72 NONAME R3UNUSED ; CTFStubTestCaseParam::CTFStubTestCaseParam(void) - __20MTFATestSuiteAdapter @ 73 NONAME R3UNUSED ; MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) - AddL__13CTFATestSuiteRC8CTFATest @ 74 NONAME R3UNUSED ; CTFATestSuite::AddL(CTFATest const &) - Flags__C12CTFATestCase @ 75 NONAME R3UNUSED ; CTFATestCase::Flags(void) const - SetFlags__12CTFATestCaseUl @ 76 NONAME R3UNUSED ; CTFATestCase::SetFlags(unsigned long) - SetEnvironment__12CTFATestCaseR19CTFATestEnvironment @ 77 NONAME R3UNUSED ; CTFATestCase::SetEnvironment(CTFATestEnvironment &) - SetTestCaseFlags__19CTFATestEnvironmentUl @ 78 NONAME R3UNUSED ; CTFATestEnvironment::SetTestCaseFlags(unsigned long) - +EXPORTS + __7CTFStubi @ 1 NONAME R3UNUSED ; CTFStub::CTFStub(int) + AddL__20CTFATestSuiteAdapterR15MTFATestAdapter @ 2 NONAME R3UNUSED ; CTFATestSuiteAdapter::AddL(MTFATestAdapter &) + AddStubTestCaseL__18CTFTestCaseWrapperR15MTFStubTestCase @ 3 NONAME R3UNUSED ; CTFTestCaseWrapper::AddStubTestCaseL(MTFStubTestCase &) + At__13CTFATestSuitei @ 4 NONAME R3UNUSED ; CTFATestSuite::At(int) + CallLocalStubL__10CTFFactoryiPvN32 @ 5 NONAME ; CTFFactory::CallLocalStubL(int, void *, void *, void *, void *) + CallRemoteStubL__10CTFFactoryiPvN32 @ 6 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *) + CallRemoteStubL__10CTFFactoryiPvN32R14TRequestStatus @ 7 NONAME ; CTFFactory::CallRemoteStubL(int, void *, void *, void *, void *, TRequestStatus &) + CompleteTest__15CTFStubTestCasei @ 8 NONAME R3UNUSED ; CTFStubTestCase::CompleteTest(int) + ConstructL__14CTFAEntryPoint @ 9 NONAME R3UNUSED ; CTFAEntryPoint::ConstructL(void) + Count__C13CTFATestSuite @ 10 NONAME R3UNUSED ; CTFATestSuite::Count(void) const + CurrentTestCaseID__7CTFStub @ 11 NONAME R3UNUSED ; CTFStub::CurrentTestCaseID(void) + CurrentTestCase__7CTFStub @ 12 NONAME R3UNUSED ; CTFStub::CurrentTestCase(void) + DoSetActive__14CTFAActiveTest @ 13 NONAME R3UNUSED ; CTFAActiveTest::DoSetActive(void) + Environment__8CTFATest @ 14 NONAME R3UNUSED ; CTFATest::Environment(void) + Factory__19CTFATestEnvironment @ 15 NONAME R3UNUSED ; CTFATestEnvironment::Factory(void) + Id__C12CTFATestCase @ 16 NONAME R3UNUSED ; CTFATestCase::Id(void) const + IsComplete__15CTFStubTestCase @ 17 NONAME R3UNUSED ; CTFStubTestCase::IsComplete(void) + Logger__15CTFStubTestCase @ 18 NONAME R3UNUSED ; CTFStubTestCase::Logger(void) + Logger__19CTFATestEnvironment @ 19 NONAME R3UNUSED ; CTFATestEnvironment::Logger(void) + Name__C8CTFATest @ 20 NONAME R3UNUSED ; CTFATest::Name(void) const + NewL__13CTFATestTimerR14MTFAActiveTest @ 21 NONAME R3UNUSED ; CTFATestTimer::NewL(MTFAActiveTest &) + RootSuiteAdapter__14CTFAEntryPoint @ 22 NONAME R3UNUSED ; CTFAEntryPoint::RootSuiteAdapter(void) + RunOnStartup__C12CTFATestCase @ 23 NONAME R3UNUSED ; CTFATestCase::RunOnStartup(void) const + SetCallback__15CTFStubTestCaseR20MTFTestCaseInterface @ 24 NONAME R3UNUSED ; CTFStubTestCase::SetCallback(MTFTestCaseInterface &) + SetEnvironment__18CTFTestCaseWrapperR19CTFATestEnvironment @ 25 NONAME R3UNUSED ; CTFTestCaseWrapper::SetEnvironment(CTFATestEnvironment &) + SetEnvironment__19CTFTestCaseRepeaterR19CTFATestEnvironment @ 26 NONAME R3UNUSED ; CTFTestCaseRepeater::SetEnvironment(CTFATestEnvironment &) + SetEnvironment__8CTFATestR19CTFATestEnvironment @ 27 NONAME R3UNUSED ; CTFATest::SetEnvironment(CTFATestEnvironment &) + SetRunOnStartup__12CTFATestCasei @ 28 NONAME R3UNUSED ; CTFATestCase::SetRunOnStartup(int) + SetStub__15CTFStubTestCaseR7CTFStub @ 29 NONAME R3UNUSED ; CTFStubTestCase::SetStub(CTFStub &) + SetTimeout__12CTFATestCasei @ 30 NONAME R3UNUSED ; CTFATestCase::SetTimeout(int) + SetupL__15CTFStubTestCase @ 31 NONAME R3UNUSED ; CTFStubTestCase::SetupL(void) + Status__14CTFAActiveTest @ 32 NONAME R3UNUSED ; CTFAActiveTest::Status(void) + Stub__10CTFFactoryi @ 33 NONAME R3UNUSED ; CTFFactory::Stub(int) + Timeout__C12CTFATestCase @ 34 NONAME R3UNUSED ; CTFATestCase::Timeout(void) const + Type__15CTFStubTestCase @ 35 NONAME R3UNUSED ; CTFStubTestCase::Type(void) + Type__C12CTFATestCase @ 36 NONAME R3UNUSED ; CTFATestCase::Type(void) const + Type__C13CTFATestSuite @ 37 NONAME R3UNUSED ; CTFATestSuite::Type(void) const + Type__C19CTFATestCaseAdapter @ 38 NONAME R3UNUSED ; CTFATestCaseAdapter::Type(void) const + Type__C20CTFATestSuiteAdapter @ 39 NONAME R3UNUSED ; CTFATestSuiteAdapter::Type(void) const + "_._11CTFATestLog" @ 40 NONAME R3UNUSED ; CTFATestLog::~CTFATestLog(void) + "_._12CTFATestCase" @ 41 NONAME R3UNUSED ; CTFATestCase::~CTFATestCase(void) + "_._13CTFATestSuite" @ 42 NONAME R3UNUSED ; CTFATestSuite::~CTFATestSuite(void) + "_._13CTFATestTimer" @ 43 NONAME R3UNUSED ; CTFATestTimer::~CTFATestTimer(void) + "_._13CTFRemoteStub" @ 44 NONAME R3UNUSED ; CTFRemoteStub::~CTFRemoteStub(void) + "_._14CTFAActiveTest" @ 45 NONAME R3UNUSED ; CTFAActiveTest::~CTFAActiveTest(void) + "_._14CTFAEntryPoint" @ 46 NONAME R3UNUSED ; CTFAEntryPoint::~CTFAEntryPoint(void) + "_._14MTFAActiveTest" @ 47 NONAME R3UNUSED ; MTFAActiveTest::~MTFAActiveTest(void) + "_._15CTFStubTestCase" @ 48 NONAME R3UNUSED ; CTFStubTestCase::~CTFStubTestCase(void) + "_._15MTFATestAdapter" @ 49 NONAME R3UNUSED ; MTFATestAdapter::~MTFATestAdapter(void) + "_._19CTFATestCaseAdapter" @ 50 NONAME R3UNUSED ; CTFATestCaseAdapter::~CTFATestCaseAdapter(void) + "_._19CTFATestEnvironment" @ 51 NONAME R3UNUSED ; CTFATestEnvironment::~CTFATestEnvironment(void) + "_._19MTFATestCaseAdapter" @ 52 NONAME R3UNUSED ; MTFATestCaseAdapter::~MTFATestCaseAdapter(void) + "_._20CTFATestSuiteAdapter" @ 53 NONAME R3UNUSED ; CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) + "_._20CTFStubTestCaseParam" @ 54 NONAME R3UNUSED ; CTFStubTestCaseParam::~CTFStubTestCaseParam(void) + "_._20MTFATestSuiteAdapter" @ 55 NONAME R3UNUSED ; MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) + "_._7CTFStub" @ 56 NONAME R3UNUSED ; CTFStub::~CTFStub(void) + __11CTFATestLog @ 57 NONAME R3UNUSED ; CTFATestLog::CTFATestLog(void) + __12CTFATestCaseiRC7TDesC16 @ 58 NONAME R3UNUSED ; CTFATestCase::CTFATestCase(int, TDesC16 const &) + __13CTFATestSuiteRC7TDesC16 @ 59 NONAME R3UNUSED ; CTFATestSuite::CTFATestSuite(TDesC16 const &) + __13CTFRemoteStubi @ 60 NONAME R3UNUSED ; CTFRemoteStub::CTFRemoteStub(int) + __14CTFAActiveTestR14MTFAActiveTest @ 61 NONAME R3UNUSED ; CTFAActiveTest::CTFAActiveTest(MTFAActiveTest &) + __14CTFAEntryPoint @ 62 NONAME R3UNUSED ; CTFAEntryPoint::CTFAEntryPoint(void) + __14MTFAActiveTest @ 63 NONAME R3UNUSED ; MTFAActiveTest::MTFAActiveTest(void) + __15CTFStubTestCasei @ 64 NONAME R3UNUSED ; CTFStubTestCase::CTFStubTestCase(int) + __15MTFATestAdapter @ 65 NONAME R3UNUSED ; MTFATestAdapter::MTFATestAdapter(void) + __18CTFTestCaseWrapperiRC7TDesC16 @ 66 NONAME R3UNUSED ; CTFTestCaseWrapper::CTFTestCaseWrapper(int, TDesC16 const &) + __19CTFATestCaseAdapterR12CTFATestCase @ 67 NONAME R3UNUSED ; CTFATestCaseAdapter::CTFATestCaseAdapter(CTFATestCase &) + __19CTFATestEnvironmentR11CTFATestLog @ 68 NONAME R3UNUSED ; CTFATestEnvironment::CTFATestEnvironment(CTFATestLog &) + __19CTFTestCaseRepeateriRC7TDesC16P13CTFATestSuiteii @ 69 NONAME ; CTFTestCaseRepeater::CTFTestCaseRepeater(int, TDesC16 const &, CTFATestSuite *, int, int) + __19MTFATestCaseAdapter @ 70 NONAME R3UNUSED ; MTFATestCaseAdapter::MTFATestCaseAdapter(void) + __20CTFATestSuiteAdapterR13CTFATestSuiteP14CTFAEntryPoint @ 71 NONAME R3UNUSED ; CTFATestSuiteAdapter::CTFATestSuiteAdapter(CTFATestSuite &, CTFAEntryPoint *) + __20CTFStubTestCaseParam @ 72 NONAME R3UNUSED ; CTFStubTestCaseParam::CTFStubTestCaseParam(void) + __20MTFATestSuiteAdapter @ 73 NONAME R3UNUSED ; MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) + AddL__13CTFATestSuiteRC8CTFATest @ 74 NONAME R3UNUSED ; CTFATestSuite::AddL(CTFATest const &) + Flags__C12CTFATestCase @ 75 NONAME R3UNUSED ; CTFATestCase::Flags(void) const + SetFlags__12CTFATestCaseUl @ 76 NONAME R3UNUSED ; CTFATestCase::SetFlags(unsigned long) + SetEnvironment__12CTFATestCaseR19CTFATestEnvironment @ 77 NONAME R3UNUSED ; CTFATestCase::SetEnvironment(CTFATestEnvironment &) + SetTestCaseFlags__19CTFATestEnvironmentUl @ 78 NONAME R3UNUSED ; CTFATestEnvironment::SetTestCaseFlags(unsigned long) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BWINS/DSYTFCOREU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BWINS/DSYTFCOREU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/BWINS/DSYTFCOREU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,81 +1,81 @@ -EXPORTS - ??0CTFAActiveTest@@QAE@AAVMTFAActiveTest@@@Z @ 1 NONAME ; public: __thiscall CTFAActiveTest::CTFAActiveTest(class MTFAActiveTest &) - ??0CTFAEntryPoint@@IAE@XZ @ 2 NONAME ; protected: __thiscall CTFAEntryPoint::CTFAEntryPoint(void) - ??0CTFATestCase@@IAE@HABVTDesC16@@@Z @ 3 NONAME ; protected: __thiscall CTFATestCase::CTFATestCase(int,class TDesC16 const &) - ??0CTFATestCaseAdapter@@IAE@AAVCTFATestCase@@@Z @ 4 NONAME ; protected: __thiscall CTFATestCaseAdapter::CTFATestCaseAdapter(class CTFATestCase &) - ??0CTFATestEnvironment@@QAE@AAVCTFATestLog@@@Z @ 5 NONAME ; public: __thiscall CTFATestEnvironment::CTFATestEnvironment(class CTFATestLog &) - ??0CTFATestLog@@IAE@XZ @ 6 NONAME ; protected: __thiscall CTFATestLog::CTFATestLog(void) - ??0CTFATestSuite@@QAE@ABVTDesC16@@@Z @ 7 NONAME ; public: __thiscall CTFATestSuite::CTFATestSuite(class TDesC16 const &) - ??0CTFATestSuiteAdapter@@IAE@AAVCTFATestSuite@@PAVCTFAEntryPoint@@@Z @ 8 NONAME ; protected: __thiscall CTFATestSuiteAdapter::CTFATestSuiteAdapter(class CTFATestSuite &,class CTFAEntryPoint *) - ??0CTFRemoteStub@@QAE@H@Z @ 9 NONAME ; public: __thiscall CTFRemoteStub::CTFRemoteStub(int) - ??0CTFStub@@QAE@H@Z @ 10 NONAME ; public: __thiscall CTFStub::CTFStub(int) - ??0CTFStubTestCase@@QAE@H@Z @ 11 NONAME ; public: __thiscall CTFStubTestCase::CTFStubTestCase(int) - ??0CTFStubTestCaseParam@@QAE@XZ @ 12 NONAME ; public: __thiscall CTFStubTestCaseParam::CTFStubTestCaseParam(void) - ??0CTFTestCaseRepeater@@QAE@HABVTDesC16@@PAVCTFATestSuite@@HH@Z @ 13 NONAME ; public: __thiscall CTFTestCaseRepeater::CTFTestCaseRepeater(int,class TDesC16 const &,class CTFATestSuite *,int,int) - ??0CTFTestCaseWrapper@@QAE@HABVTDesC16@@@Z @ 14 NONAME ; public: __thiscall CTFTestCaseWrapper::CTFTestCaseWrapper(int,class TDesC16 const &) - ??0MTFAActiveTest@@QAE@XZ @ 15 NONAME ; public: __thiscall MTFAActiveTest::MTFAActiveTest(void) - ??0MTFATestAdapter@@IAE@XZ @ 16 NONAME ; protected: __thiscall MTFATestAdapter::MTFATestAdapter(void) - ??0MTFATestCaseAdapter@@IAE@XZ @ 17 NONAME ; protected: __thiscall MTFATestCaseAdapter::MTFATestCaseAdapter(void) - ??0MTFATestSuiteAdapter@@IAE@XZ @ 18 NONAME ; protected: __thiscall MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) - ??1CTFAActiveTest@@UAE@XZ @ 19 NONAME ; public: virtual __thiscall CTFAActiveTest::~CTFAActiveTest(void) - ??1CTFAEntryPoint@@UAE@XZ @ 20 NONAME ; public: virtual __thiscall CTFAEntryPoint::~CTFAEntryPoint(void) - ??1CTFATestCase@@MAE@XZ @ 21 NONAME ; protected: virtual __thiscall CTFATestCase::~CTFATestCase(void) - ??1CTFATestCaseAdapter@@UAE@XZ @ 22 NONAME ; public: virtual __thiscall CTFATestCaseAdapter::~CTFATestCaseAdapter(void) - ??1CTFATestEnvironment@@UAE@XZ @ 23 NONAME ; public: virtual __thiscall CTFATestEnvironment::~CTFATestEnvironment(void) - ??1CTFATestLog@@UAE@XZ @ 24 NONAME ; public: virtual __thiscall CTFATestLog::~CTFATestLog(void) - ??1CTFATestSuite@@UAE@XZ @ 25 NONAME ; public: virtual __thiscall CTFATestSuite::~CTFATestSuite(void) - ??1CTFATestSuiteAdapter@@UAE@XZ @ 26 NONAME ; public: virtual __thiscall CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) - ??1CTFATestTimer@@UAE@XZ @ 27 NONAME ; public: virtual __thiscall CTFATestTimer::~CTFATestTimer(void) - ??1CTFRemoteStub@@UAE@XZ @ 28 NONAME ; public: virtual __thiscall CTFRemoteStub::~CTFRemoteStub(void) - ??1CTFStub@@UAE@XZ @ 29 NONAME ; public: virtual __thiscall CTFStub::~CTFStub(void) - ??1CTFStubTestCase@@UAE@XZ @ 30 NONAME ; public: virtual __thiscall CTFStubTestCase::~CTFStubTestCase(void) - ??1CTFStubTestCaseParam@@UAE@XZ @ 31 NONAME ; public: virtual __thiscall CTFStubTestCaseParam::~CTFStubTestCaseParam(void) - ??1MTFAActiveTest@@UAE@XZ @ 32 NONAME ; public: virtual __thiscall MTFAActiveTest::~MTFAActiveTest(void) - ??1MTFATestAdapter@@UAE@XZ @ 33 NONAME ; public: virtual __thiscall MTFATestAdapter::~MTFATestAdapter(void) - ??1MTFATestCaseAdapter@@UAE@XZ @ 34 NONAME ; public: virtual __thiscall MTFATestCaseAdapter::~MTFATestCaseAdapter(void) - ??1MTFATestSuiteAdapter@@UAE@XZ @ 35 NONAME ; public: virtual __thiscall MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) - ?AddL@CTFATestSuite@@QAEXABVCTFATest@@@Z @ 36 NONAME ; public: void __thiscall CTFATestSuite::AddL(class CTFATest const &) - ?AddL@CTFATestSuiteAdapter@@UAEXAAVMTFATestAdapter@@@Z @ 37 NONAME ; public: virtual void __thiscall CTFATestSuiteAdapter::AddL(class MTFATestAdapter &) - ?AddStubTestCaseL@CTFTestCaseWrapper@@QAEXAAVMTFStubTestCase@@@Z @ 38 NONAME ; public: void __thiscall CTFTestCaseWrapper::AddStubTestCaseL(class MTFStubTestCase &) - ?At@CTFATestSuite@@QAEAAVCTFATest@@H@Z @ 39 NONAME ; public: class CTFATest & __thiscall CTFATestSuite::At(int) - ?CallLocalStubL@CTFFactory@@SAXHPAX000@Z @ 40 NONAME ; public: static void __cdecl CTFFactory::CallLocalStubL(int,void *,void *,void *,void *) - ?CallRemoteStubL@CTFFactory@@SAXHPAX000@Z @ 41 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *) - ?CallRemoteStubL@CTFFactory@@SAXHPAX000AAVTRequestStatus@@@Z @ 42 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *,class TRequestStatus &) - ?CompleteTest@CTFStubTestCase@@MAEXH@Z @ 43 NONAME ; protected: virtual void __thiscall CTFStubTestCase::CompleteTest(int) - ?ConstructL@CTFAEntryPoint@@MAEXXZ @ 44 NONAME ; protected: virtual void __thiscall CTFAEntryPoint::ConstructL(void) - ?Count@CTFATestSuite@@QBEHXZ @ 45 NONAME ; public: int __thiscall CTFATestSuite::Count(void)const - ?CurrentTestCase@CTFStub@@QAEPAVMTFStubTestCase@@XZ @ 46 NONAME ; public: class MTFStubTestCase * __thiscall CTFStub::CurrentTestCase(void) - ?CurrentTestCaseID@CTFStub@@QAEHXZ @ 47 NONAME ; public: int __thiscall CTFStub::CurrentTestCaseID(void) - ?DoSetActive@CTFAActiveTest@@QAEXXZ @ 48 NONAME ; public: void __thiscall CTFAActiveTest::DoSetActive(void) - ?Environment@CTFATest@@QAEAAVCTFATestEnvironment@@XZ @ 49 NONAME ; public: class CTFATestEnvironment & __thiscall CTFATest::Environment(void) - ?Factory@CTFATestEnvironment@@QAEPAVCTFFactory@@XZ @ 50 NONAME ; public: class CTFFactory * __thiscall CTFATestEnvironment::Factory(void) - ?Id@CTFATestCase@@QBEHXZ @ 51 NONAME ; public: int __thiscall CTFATestCase::Id(void)const - ?IsComplete@CTFStubTestCase@@UAEHXZ @ 52 NONAME ; public: virtual int __thiscall CTFStubTestCase::IsComplete(void) - ?Logger@CTFATestEnvironment@@QAEAAVCTFATestLog@@XZ @ 53 NONAME ; public: class CTFATestLog & __thiscall CTFATestEnvironment::Logger(void) - ?Logger@CTFStubTestCase@@MAEAAVCTFATestLog@@XZ @ 54 NONAME ; protected: virtual class CTFATestLog & __thiscall CTFStubTestCase::Logger(void) - ?Name@CTFATest@@QBEABVTDesC16@@XZ @ 55 NONAME ; public: class TDesC16 const & __thiscall CTFATest::Name(void)const - ?NewL@CTFATestTimer@@SAPAV1@AAVMTFAActiveTest@@@Z @ 56 NONAME ; public: static class CTFATestTimer * __cdecl CTFATestTimer::NewL(class MTFAActiveTest &) - ?RootSuiteAdapter@CTFAEntryPoint@@QAEPAVMTFATestSuiteAdapter@@XZ @ 57 NONAME ; public: class MTFATestSuiteAdapter * __thiscall CTFAEntryPoint::RootSuiteAdapter(void) - ?RunOnStartup@CTFATestCase@@QBEHXZ @ 58 NONAME ; public: int __thiscall CTFATestCase::RunOnStartup(void)const - ?SetCallback@CTFStubTestCase@@UAEXAAVMTFTestCaseInterface@@@Z @ 59 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetCallback(class MTFTestCaseInterface &) - ?SetEnvironment@CTFATest@@UAEXAAVCTFATestEnvironment@@@Z @ 60 NONAME ; public: virtual void __thiscall CTFATest::SetEnvironment(class CTFATestEnvironment &) - ?SetEnvironment@CTFTestCaseRepeater@@UAEXAAVCTFATestEnvironment@@@Z @ 61 NONAME ; public: virtual void __thiscall CTFTestCaseRepeater::SetEnvironment(class CTFATestEnvironment &) - ?SetEnvironment@CTFTestCaseWrapper@@UAEXAAVCTFATestEnvironment@@@Z @ 62 NONAME ; public: virtual void __thiscall CTFTestCaseWrapper::SetEnvironment(class CTFATestEnvironment &) - ?SetRunOnStartup@CTFATestCase@@QAEXH@Z @ 63 NONAME ; public: void __thiscall CTFATestCase::SetRunOnStartup(int) - ?SetStub@CTFStubTestCase@@UAEXAAVCTFStub@@@Z @ 64 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetStub(class CTFStub &) - ?SetTimeout@CTFATestCase@@QAEXH@Z @ 65 NONAME ; public: void __thiscall CTFATestCase::SetTimeout(int) - ?SetupL@CTFStubTestCase@@UAEXXZ @ 66 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetupL(void) - ?Status@CTFAActiveTest@@QAEAAVTRequestStatus@@XZ @ 67 NONAME ; public: class TRequestStatus & __thiscall CTFAActiveTest::Status(void) - ?Stub@CTFFactory@@SAPAVCTFStub@@H@Z @ 68 NONAME ; public: static class CTFStub * __cdecl CTFFactory::Stub(int) - ?StubControl@CTFFactory@@QAEPAVMTFStubControl@@XZ @ 69 NONAME ; public: class MTFStubControl * __thiscall CTFFactory::StubControl(void) - ?Timeout@CTFATestCase@@QBEHXZ @ 70 NONAME ; public: int __thiscall CTFATestCase::Timeout(void)const - ?Type@CTFATestCase@@UBE?AW4TTFATestType@@XZ @ 71 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCase::Type(void)const - ?Type@CTFATestCaseAdapter@@UBE?AW4TTFATestType@@XZ @ 72 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCaseAdapter::Type(void)const - ?Type@CTFATestSuite@@UBE?AW4TTFATestType@@XZ @ 73 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuite::Type(void)const - ?Type@CTFATestSuiteAdapter@@UBE?AW4TTFATestType@@XZ @ 74 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuiteAdapter::Type(void)const - ?Type@CTFStubTestCase@@UAEHXZ @ 75 NONAME ; public: virtual int __thiscall CTFStubTestCase::Type(void) - ?Flags@CTFATestCase@@QBEKXZ @ 76 NONAME ; public: unsigned long __thiscall CTFATestCase::Flags(void)const - ?SetFlags@CTFATestCase@@QAEXK@Z @ 77 NONAME ; public: void __thiscall CTFATestCase::SetFlags(unsigned long) - ?SetEnvironment@CTFATestCase@@UAEXAAVCTFATestEnvironment@@@Z @ 78 NONAME ; public: virtual void __thiscall CTFATestCase::SetEnvironment(class CTFATestEnvironment &) - ?SetTestCaseFlags@CTFATestEnvironment@@QAEXK@Z @ 79 NONAME ; public: void __thiscall CTFATestEnvironment::SetTestCaseFlags(unsigned long) - +EXPORTS + ??0CTFAActiveTest@@QAE@AAVMTFAActiveTest@@@Z @ 1 NONAME ; public: __thiscall CTFAActiveTest::CTFAActiveTest(class MTFAActiveTest &) + ??0CTFAEntryPoint@@IAE@XZ @ 2 NONAME ; protected: __thiscall CTFAEntryPoint::CTFAEntryPoint(void) + ??0CTFATestCase@@IAE@HABVTDesC16@@@Z @ 3 NONAME ; protected: __thiscall CTFATestCase::CTFATestCase(int,class TDesC16 const &) + ??0CTFATestCaseAdapter@@IAE@AAVCTFATestCase@@@Z @ 4 NONAME ; protected: __thiscall CTFATestCaseAdapter::CTFATestCaseAdapter(class CTFATestCase &) + ??0CTFATestEnvironment@@QAE@AAVCTFATestLog@@@Z @ 5 NONAME ; public: __thiscall CTFATestEnvironment::CTFATestEnvironment(class CTFATestLog &) + ??0CTFATestLog@@IAE@XZ @ 6 NONAME ; protected: __thiscall CTFATestLog::CTFATestLog(void) + ??0CTFATestSuite@@QAE@ABVTDesC16@@@Z @ 7 NONAME ; public: __thiscall CTFATestSuite::CTFATestSuite(class TDesC16 const &) + ??0CTFATestSuiteAdapter@@IAE@AAVCTFATestSuite@@PAVCTFAEntryPoint@@@Z @ 8 NONAME ; protected: __thiscall CTFATestSuiteAdapter::CTFATestSuiteAdapter(class CTFATestSuite &,class CTFAEntryPoint *) + ??0CTFRemoteStub@@QAE@H@Z @ 9 NONAME ; public: __thiscall CTFRemoteStub::CTFRemoteStub(int) + ??0CTFStub@@QAE@H@Z @ 10 NONAME ; public: __thiscall CTFStub::CTFStub(int) + ??0CTFStubTestCase@@QAE@H@Z @ 11 NONAME ; public: __thiscall CTFStubTestCase::CTFStubTestCase(int) + ??0CTFStubTestCaseParam@@QAE@XZ @ 12 NONAME ; public: __thiscall CTFStubTestCaseParam::CTFStubTestCaseParam(void) + ??0CTFTestCaseRepeater@@QAE@HABVTDesC16@@PAVCTFATestSuite@@HH@Z @ 13 NONAME ; public: __thiscall CTFTestCaseRepeater::CTFTestCaseRepeater(int,class TDesC16 const &,class CTFATestSuite *,int,int) + ??0CTFTestCaseWrapper@@QAE@HABVTDesC16@@@Z @ 14 NONAME ; public: __thiscall CTFTestCaseWrapper::CTFTestCaseWrapper(int,class TDesC16 const &) + ??0MTFAActiveTest@@QAE@XZ @ 15 NONAME ; public: __thiscall MTFAActiveTest::MTFAActiveTest(void) + ??0MTFATestAdapter@@IAE@XZ @ 16 NONAME ; protected: __thiscall MTFATestAdapter::MTFATestAdapter(void) + ??0MTFATestCaseAdapter@@IAE@XZ @ 17 NONAME ; protected: __thiscall MTFATestCaseAdapter::MTFATestCaseAdapter(void) + ??0MTFATestSuiteAdapter@@IAE@XZ @ 18 NONAME ; protected: __thiscall MTFATestSuiteAdapter::MTFATestSuiteAdapter(void) + ??1CTFAActiveTest@@UAE@XZ @ 19 NONAME ; public: virtual __thiscall CTFAActiveTest::~CTFAActiveTest(void) + ??1CTFAEntryPoint@@UAE@XZ @ 20 NONAME ; public: virtual __thiscall CTFAEntryPoint::~CTFAEntryPoint(void) + ??1CTFATestCase@@MAE@XZ @ 21 NONAME ; protected: virtual __thiscall CTFATestCase::~CTFATestCase(void) + ??1CTFATestCaseAdapter@@UAE@XZ @ 22 NONAME ; public: virtual __thiscall CTFATestCaseAdapter::~CTFATestCaseAdapter(void) + ??1CTFATestEnvironment@@UAE@XZ @ 23 NONAME ; public: virtual __thiscall CTFATestEnvironment::~CTFATestEnvironment(void) + ??1CTFATestLog@@UAE@XZ @ 24 NONAME ; public: virtual __thiscall CTFATestLog::~CTFATestLog(void) + ??1CTFATestSuite@@UAE@XZ @ 25 NONAME ; public: virtual __thiscall CTFATestSuite::~CTFATestSuite(void) + ??1CTFATestSuiteAdapter@@UAE@XZ @ 26 NONAME ; public: virtual __thiscall CTFATestSuiteAdapter::~CTFATestSuiteAdapter(void) + ??1CTFATestTimer@@UAE@XZ @ 27 NONAME ; public: virtual __thiscall CTFATestTimer::~CTFATestTimer(void) + ??1CTFRemoteStub@@UAE@XZ @ 28 NONAME ; public: virtual __thiscall CTFRemoteStub::~CTFRemoteStub(void) + ??1CTFStub@@UAE@XZ @ 29 NONAME ; public: virtual __thiscall CTFStub::~CTFStub(void) + ??1CTFStubTestCase@@UAE@XZ @ 30 NONAME ; public: virtual __thiscall CTFStubTestCase::~CTFStubTestCase(void) + ??1CTFStubTestCaseParam@@UAE@XZ @ 31 NONAME ; public: virtual __thiscall CTFStubTestCaseParam::~CTFStubTestCaseParam(void) + ??1MTFAActiveTest@@UAE@XZ @ 32 NONAME ; public: virtual __thiscall MTFAActiveTest::~MTFAActiveTest(void) + ??1MTFATestAdapter@@UAE@XZ @ 33 NONAME ; public: virtual __thiscall MTFATestAdapter::~MTFATestAdapter(void) + ??1MTFATestCaseAdapter@@UAE@XZ @ 34 NONAME ; public: virtual __thiscall MTFATestCaseAdapter::~MTFATestCaseAdapter(void) + ??1MTFATestSuiteAdapter@@UAE@XZ @ 35 NONAME ; public: virtual __thiscall MTFATestSuiteAdapter::~MTFATestSuiteAdapter(void) + ?AddL@CTFATestSuite@@QAEXABVCTFATest@@@Z @ 36 NONAME ; public: void __thiscall CTFATestSuite::AddL(class CTFATest const &) + ?AddL@CTFATestSuiteAdapter@@UAEXAAVMTFATestAdapter@@@Z @ 37 NONAME ; public: virtual void __thiscall CTFATestSuiteAdapter::AddL(class MTFATestAdapter &) + ?AddStubTestCaseL@CTFTestCaseWrapper@@QAEXAAVMTFStubTestCase@@@Z @ 38 NONAME ; public: void __thiscall CTFTestCaseWrapper::AddStubTestCaseL(class MTFStubTestCase &) + ?At@CTFATestSuite@@QAEAAVCTFATest@@H@Z @ 39 NONAME ; public: class CTFATest & __thiscall CTFATestSuite::At(int) + ?CallLocalStubL@CTFFactory@@SAXHPAX000@Z @ 40 NONAME ; public: static void __cdecl CTFFactory::CallLocalStubL(int,void *,void *,void *,void *) + ?CallRemoteStubL@CTFFactory@@SAXHPAX000@Z @ 41 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *) + ?CallRemoteStubL@CTFFactory@@SAXHPAX000AAVTRequestStatus@@@Z @ 42 NONAME ; public: static void __cdecl CTFFactory::CallRemoteStubL(int,void *,void *,void *,void *,class TRequestStatus &) + ?CompleteTest@CTFStubTestCase@@MAEXH@Z @ 43 NONAME ; protected: virtual void __thiscall CTFStubTestCase::CompleteTest(int) + ?ConstructL@CTFAEntryPoint@@MAEXXZ @ 44 NONAME ; protected: virtual void __thiscall CTFAEntryPoint::ConstructL(void) + ?Count@CTFATestSuite@@QBEHXZ @ 45 NONAME ; public: int __thiscall CTFATestSuite::Count(void)const + ?CurrentTestCase@CTFStub@@QAEPAVMTFStubTestCase@@XZ @ 46 NONAME ; public: class MTFStubTestCase * __thiscall CTFStub::CurrentTestCase(void) + ?CurrentTestCaseID@CTFStub@@QAEHXZ @ 47 NONAME ; public: int __thiscall CTFStub::CurrentTestCaseID(void) + ?DoSetActive@CTFAActiveTest@@QAEXXZ @ 48 NONAME ; public: void __thiscall CTFAActiveTest::DoSetActive(void) + ?Environment@CTFATest@@QAEAAVCTFATestEnvironment@@XZ @ 49 NONAME ; public: class CTFATestEnvironment & __thiscall CTFATest::Environment(void) + ?Factory@CTFATestEnvironment@@QAEPAVCTFFactory@@XZ @ 50 NONAME ; public: class CTFFactory * __thiscall CTFATestEnvironment::Factory(void) + ?Id@CTFATestCase@@QBEHXZ @ 51 NONAME ; public: int __thiscall CTFATestCase::Id(void)const + ?IsComplete@CTFStubTestCase@@UAEHXZ @ 52 NONAME ; public: virtual int __thiscall CTFStubTestCase::IsComplete(void) + ?Logger@CTFATestEnvironment@@QAEAAVCTFATestLog@@XZ @ 53 NONAME ; public: class CTFATestLog & __thiscall CTFATestEnvironment::Logger(void) + ?Logger@CTFStubTestCase@@MAEAAVCTFATestLog@@XZ @ 54 NONAME ; protected: virtual class CTFATestLog & __thiscall CTFStubTestCase::Logger(void) + ?Name@CTFATest@@QBEABVTDesC16@@XZ @ 55 NONAME ; public: class TDesC16 const & __thiscall CTFATest::Name(void)const + ?NewL@CTFATestTimer@@SAPAV1@AAVMTFAActiveTest@@@Z @ 56 NONAME ; public: static class CTFATestTimer * __cdecl CTFATestTimer::NewL(class MTFAActiveTest &) + ?RootSuiteAdapter@CTFAEntryPoint@@QAEPAVMTFATestSuiteAdapter@@XZ @ 57 NONAME ; public: class MTFATestSuiteAdapter * __thiscall CTFAEntryPoint::RootSuiteAdapter(void) + ?RunOnStartup@CTFATestCase@@QBEHXZ @ 58 NONAME ; public: int __thiscall CTFATestCase::RunOnStartup(void)const + ?SetCallback@CTFStubTestCase@@UAEXAAVMTFTestCaseInterface@@@Z @ 59 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetCallback(class MTFTestCaseInterface &) + ?SetEnvironment@CTFATest@@UAEXAAVCTFATestEnvironment@@@Z @ 60 NONAME ; public: virtual void __thiscall CTFATest::SetEnvironment(class CTFATestEnvironment &) + ?SetEnvironment@CTFTestCaseRepeater@@UAEXAAVCTFATestEnvironment@@@Z @ 61 NONAME ; public: virtual void __thiscall CTFTestCaseRepeater::SetEnvironment(class CTFATestEnvironment &) + ?SetEnvironment@CTFTestCaseWrapper@@UAEXAAVCTFATestEnvironment@@@Z @ 62 NONAME ; public: virtual void __thiscall CTFTestCaseWrapper::SetEnvironment(class CTFATestEnvironment &) + ?SetRunOnStartup@CTFATestCase@@QAEXH@Z @ 63 NONAME ; public: void __thiscall CTFATestCase::SetRunOnStartup(int) + ?SetStub@CTFStubTestCase@@UAEXAAVCTFStub@@@Z @ 64 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetStub(class CTFStub &) + ?SetTimeout@CTFATestCase@@QAEXH@Z @ 65 NONAME ; public: void __thiscall CTFATestCase::SetTimeout(int) + ?SetupL@CTFStubTestCase@@UAEXXZ @ 66 NONAME ; public: virtual void __thiscall CTFStubTestCase::SetupL(void) + ?Status@CTFAActiveTest@@QAEAAVTRequestStatus@@XZ @ 67 NONAME ; public: class TRequestStatus & __thiscall CTFAActiveTest::Status(void) + ?Stub@CTFFactory@@SAPAVCTFStub@@H@Z @ 68 NONAME ; public: static class CTFStub * __cdecl CTFFactory::Stub(int) + ?StubControl@CTFFactory@@QAEPAVMTFStubControl@@XZ @ 69 NONAME ; public: class MTFStubControl * __thiscall CTFFactory::StubControl(void) + ?Timeout@CTFATestCase@@QBEHXZ @ 70 NONAME ; public: int __thiscall CTFATestCase::Timeout(void)const + ?Type@CTFATestCase@@UBE?AW4TTFATestType@@XZ @ 71 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCase::Type(void)const + ?Type@CTFATestCaseAdapter@@UBE?AW4TTFATestType@@XZ @ 72 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestCaseAdapter::Type(void)const + ?Type@CTFATestSuite@@UBE?AW4TTFATestType@@XZ @ 73 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuite::Type(void)const + ?Type@CTFATestSuiteAdapter@@UBE?AW4TTFATestType@@XZ @ 74 NONAME ; public: virtual enum TTFATestType __thiscall CTFATestSuiteAdapter::Type(void)const + ?Type@CTFStubTestCase@@UAEHXZ @ 75 NONAME ; public: virtual int __thiscall CTFStubTestCase::Type(void) + ?Flags@CTFATestCase@@QBEKXZ @ 76 NONAME ; public: unsigned long __thiscall CTFATestCase::Flags(void)const + ?SetFlags@CTFATestCase@@QAEXK@Z @ 77 NONAME ; public: void __thiscall CTFATestCase::SetFlags(unsigned long) + ?SetEnvironment@CTFATestCase@@UAEXAAVCTFATestEnvironment@@@Z @ 78 NONAME ; public: virtual void __thiscall CTFATestCase::SetEnvironment(class CTFATestEnvironment &) + ?SetTestCaseFlags@CTFATestEnvironment@@QAEXK@Z @ 79 NONAME ; public: void __thiscall CTFATestEnvironment::SetTestCaseFlags(unsigned long) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/EABI/dsytfcoreU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/EABI/dsytfcoreU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/EABI/dsytfcoreU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,178 +1,178 @@ -EXPORTS - _ZN10CTFFactory14CallLocalStubLEiPvS0_S0_S0_ @ 1 NONAME - _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_ @ 2 NONAME - _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_R14TRequestStatus @ 3 NONAME - _ZN10CTFFactory4StubEi @ 4 NONAME - _ZN11CTFATestLogC2Ev @ 5 NONAME - _ZN11CTFATestLogD0Ev @ 6 NONAME - _ZN11CTFATestLogD1Ev @ 7 NONAME - _ZN11CTFATestLogD2Ev @ 8 NONAME - _ZN12CTFATestCase10SetTimeoutEi @ 9 NONAME - _ZN12CTFATestCase14SetEnvironmentER19CTFATestEnvironment @ 10 NONAME - _ZN12CTFATestCase15SetRunOnStartupEi @ 11 NONAME - _ZN12CTFATestCase8SetFlagsEm @ 12 NONAME - _ZN12CTFATestCaseC2EiRK7TDesC16 @ 13 NONAME - _ZN12CTFATestCaseD0Ev @ 14 NONAME - _ZN12CTFATestCaseD1Ev @ 15 NONAME - _ZN12CTFATestCaseD2Ev @ 16 NONAME - _ZN13CTFATestSuite2AtEi @ 17 NONAME - _ZN13CTFATestSuite4AddLERK8CTFATest @ 18 NONAME - _ZN13CTFATestSuiteC1ERK7TDesC16 @ 19 NONAME - _ZN13CTFATestSuiteC2ERK7TDesC16 @ 20 NONAME - _ZN13CTFATestSuiteD0Ev @ 21 NONAME - _ZN13CTFATestSuiteD1Ev @ 22 NONAME - _ZN13CTFATestSuiteD2Ev @ 23 NONAME - _ZN13CTFATestTimer4NewLER14MTFAActiveTest @ 24 NONAME - _ZN13CTFATestTimerD0Ev @ 25 NONAME - _ZN13CTFATestTimerD1Ev @ 26 NONAME - _ZN13CTFATestTimerD2Ev @ 27 NONAME - _ZN13CTFRemoteStubC2Ei @ 28 NONAME - _ZN13CTFRemoteStubD0Ev @ 29 NONAME - _ZN13CTFRemoteStubD1Ev @ 30 NONAME - _ZN13CTFRemoteStubD2Ev @ 31 NONAME - _ZN14CTFAActiveTest11DoSetActiveEv @ 32 NONAME - _ZN14CTFAActiveTest6StatusEv @ 33 NONAME - _ZN14CTFAActiveTestC1ER14MTFAActiveTest @ 34 NONAME - _ZN14CTFAActiveTestC2ER14MTFAActiveTest @ 35 NONAME - _ZN14CTFAActiveTestD0Ev @ 36 NONAME - _ZN14CTFAActiveTestD1Ev @ 37 NONAME - _ZN14CTFAActiveTestD2Ev @ 38 NONAME - _ZN14CTFAEntryPoint10ConstructLEv @ 39 NONAME - _ZN14CTFAEntryPoint16RootSuiteAdapterEv @ 40 NONAME - _ZN14CTFAEntryPointC2Ev @ 41 NONAME - _ZN14CTFAEntryPointD0Ev @ 42 NONAME - _ZN14CTFAEntryPointD1Ev @ 43 NONAME - _ZN14CTFAEntryPointD2Ev @ 44 NONAME - _ZN14MTFAActiveTestC2Ev @ 45 NONAME - _ZN14MTFAActiveTestD0Ev @ 46 NONAME - _ZN14MTFAActiveTestD1Ev @ 47 NONAME - _ZN14MTFAActiveTestD2Ev @ 48 NONAME - _ZN15CTFStubTestCase10IsCompleteEv @ 49 NONAME - _ZN15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 50 NONAME - _ZN15CTFStubTestCase12CompleteTestEi @ 51 NONAME - _ZN15CTFStubTestCase4TypeEv @ 52 NONAME - _ZN15CTFStubTestCase6LoggerEv @ 53 NONAME - _ZN15CTFStubTestCase6SetupLEv @ 54 NONAME - _ZN15CTFStubTestCase7SetStubER7CTFStub @ 55 NONAME - _ZN15CTFStubTestCaseC2Ei @ 56 NONAME - _ZN15CTFStubTestCaseD0Ev @ 57 NONAME - _ZN15CTFStubTestCaseD1Ev @ 58 NONAME - _ZN15CTFStubTestCaseD2Ev @ 59 NONAME - _ZN15MTFATestAdapterC2Ev @ 60 NONAME - _ZN15MTFATestAdapterD0Ev @ 61 NONAME - _ZN15MTFATestAdapterD1Ev @ 62 NONAME - _ZN15MTFATestAdapterD2Ev @ 63 NONAME - _ZN18CTFTestCaseWrapper14SetEnvironmentER19CTFATestEnvironment @ 64 NONAME - _ZN18CTFTestCaseWrapper16AddStubTestCaseLER15MTFStubTestCase @ 65 NONAME - _ZN18CTFTestCaseWrapperC1EiRK7TDesC16 @ 66 NONAME - _ZN18CTFTestCaseWrapperC2EiRK7TDesC16 @ 67 NONAME - _ZN19CTFATestCaseAdapterC1ER12CTFATestCase @ 68 NONAME - _ZN19CTFATestCaseAdapterC2ER12CTFATestCase @ 69 NONAME - _ZN19CTFATestCaseAdapterD0Ev @ 70 NONAME - _ZN19CTFATestCaseAdapterD1Ev @ 71 NONAME - _ZN19CTFATestCaseAdapterD2Ev @ 72 NONAME - _ZN19CTFATestEnvironment16SetTestCaseFlagsEm @ 73 NONAME - _ZN19CTFATestEnvironment6LoggerEv @ 74 NONAME - _ZN19CTFATestEnvironment7FactoryEv @ 75 NONAME - _ZN19CTFATestEnvironmentC1ER11CTFATestLog @ 76 NONAME - _ZN19CTFATestEnvironmentC2ER11CTFATestLog @ 77 NONAME - _ZN19CTFATestEnvironmentD0Ev @ 78 NONAME - _ZN19CTFATestEnvironmentD1Ev @ 79 NONAME - _ZN19CTFATestEnvironmentD2Ev @ 80 NONAME - _ZN19CTFTestCaseRepeater14SetEnvironmentER19CTFATestEnvironment @ 81 NONAME - _ZN19CTFTestCaseRepeaterC1EiRK7TDesC16P13CTFATestSuiteii @ 82 NONAME - _ZN19CTFTestCaseRepeaterC2EiRK7TDesC16P13CTFATestSuiteii @ 83 NONAME - _ZN19MTFATestCaseAdapterC2Ev @ 84 NONAME - _ZN19MTFATestCaseAdapterD0Ev @ 85 NONAME - _ZN19MTFATestCaseAdapterD1Ev @ 86 NONAME - _ZN19MTFATestCaseAdapterD2Ev @ 87 NONAME - _ZN20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 88 NONAME - _ZN20CTFATestSuiteAdapterC1ER13CTFATestSuiteP14CTFAEntryPoint @ 89 NONAME - _ZN20CTFATestSuiteAdapterC2ER13CTFATestSuiteP14CTFAEntryPoint @ 90 NONAME - _ZN20CTFATestSuiteAdapterD0Ev @ 91 NONAME - _ZN20CTFATestSuiteAdapterD1Ev @ 92 NONAME - _ZN20CTFATestSuiteAdapterD2Ev @ 93 NONAME - _ZN20CTFStubTestCaseParamC1Ev @ 94 NONAME - _ZN20CTFStubTestCaseParamC2Ev @ 95 NONAME - _ZN20CTFStubTestCaseParamD0Ev @ 96 NONAME - _ZN20CTFStubTestCaseParamD1Ev @ 97 NONAME - _ZN20CTFStubTestCaseParamD2Ev @ 98 NONAME - _ZN20MTFATestSuiteAdapterC2Ev @ 99 NONAME - _ZN20MTFATestSuiteAdapterD0Ev @ 100 NONAME - _ZN20MTFATestSuiteAdapterD1Ev @ 101 NONAME - _ZN20MTFATestSuiteAdapterD2Ev @ 102 NONAME - _ZN7CTFStub15CurrentTestCaseEv @ 103 NONAME - _ZN7CTFStub17CurrentTestCaseIDEv @ 104 NONAME - _ZN7CTFStubC2Ei @ 105 NONAME - _ZN7CTFStubD0Ev @ 106 NONAME - _ZN7CTFStubD1Ev @ 107 NONAME - _ZN7CTFStubD2Ev @ 108 NONAME - _ZN8CTFATest11EnvironmentEv @ 109 NONAME - _ZN8CTFATest14SetEnvironmentER19CTFATestEnvironment @ 110 NONAME - _ZNK12CTFATestCase12RunOnStartupEv @ 111 NONAME - _ZNK12CTFATestCase2IdEv @ 112 NONAME - _ZNK12CTFATestCase4TypeEv @ 113 NONAME - _ZNK12CTFATestCase5FlagsEv @ 114 NONAME - _ZNK12CTFATestCase7TimeoutEv @ 115 NONAME - _ZNK13CTFATestSuite4TypeEv @ 116 NONAME - _ZNK13CTFATestSuite5CountEv @ 117 NONAME - _ZNK19CTFATestCaseAdapter4TypeEv @ 118 NONAME - _ZNK20CTFATestSuiteAdapter4TypeEv @ 119 NONAME - _ZNK8CTFATest4NameEv @ 120 NONAME - _ZTI10CTFFactory @ 121 NONAME ; ## - _ZTI11CTFATestLog @ 122 NONAME ; ## - _ZTI12CTFATestCase @ 123 NONAME ; ## - _ZTI13CTFATestSuite @ 124 NONAME ; ## - _ZTI13CTFATestTimer @ 125 NONAME ; ## - _ZTI13CTFRemoteStub @ 126 NONAME ; ## - _ZTI14CTFAActiveTest @ 127 NONAME ; ## - _ZTI14CTFAEntryPoint @ 128 NONAME ; ## - _ZTI14MTFAActiveTest @ 129 NONAME ; ## - _ZTI15CTFStubTestCase @ 130 NONAME ; ## - _ZTI15MTFATestAdapter @ 131 NONAME ; ## - _ZTI18CTFTestCaseWrapper @ 132 NONAME ; ## - _ZTI19CTFATestCaseAdapter @ 133 NONAME ; ## - _ZTI19CTFATestEnvironment @ 134 NONAME ; ## - _ZTI19CTFTestCaseRepeater @ 135 NONAME ; ## - _ZTI19MTFATestCaseAdapter @ 136 NONAME ; ## - _ZTI20CTFATestSuiteAdapter @ 137 NONAME ; ## - _ZTI20CTFStubTestCaseParam @ 138 NONAME ; ## - _ZTI20MTFATestSuiteAdapter @ 139 NONAME ; ## - _ZTI7CTFStub @ 140 NONAME ; ## - _ZTI8CTFATest @ 141 NONAME ; ## - _ZTV10CTFFactory @ 142 NONAME ; ## - _ZTV11CTFATestLog @ 143 NONAME ; ## - _ZTV12CTFATestCase @ 144 NONAME ; ## - _ZTV13CTFATestSuite @ 145 NONAME ; ## - _ZTV13CTFATestTimer @ 146 NONAME ; ## - _ZTV13CTFRemoteStub @ 147 NONAME ; ## - _ZTV14CTFAActiveTest @ 148 NONAME ; ## - _ZTV14CTFAEntryPoint @ 149 NONAME ; ## - _ZTV14MTFAActiveTest @ 150 NONAME ; ## - _ZTV15CTFStubTestCase @ 151 NONAME ; ## - _ZTV15MTFATestAdapter @ 152 NONAME ; ## - _ZTV18CTFTestCaseWrapper @ 153 NONAME ; ## - _ZTV19CTFATestCaseAdapter @ 154 NONAME ; ## - _ZTV19CTFATestEnvironment @ 155 NONAME ; ## - _ZTV19CTFTestCaseRepeater @ 156 NONAME ; ## - _ZTV19MTFATestCaseAdapter @ 157 NONAME ; ## - _ZTV20CTFATestSuiteAdapter @ 158 NONAME ; ## - _ZTV20CTFStubTestCaseParam @ 159 NONAME ; ## - _ZTV20MTFATestSuiteAdapter @ 160 NONAME ; ## - _ZTV7CTFStub @ 161 NONAME ; ## - _ZTV8CTFATest @ 162 NONAME ; ## - _ZThn4_N15CTFStubTestCase10IsCompleteEv @ 163 NONAME ; ## - _ZThn4_N15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 164 NONAME ; ## - _ZThn4_N15CTFStubTestCase4TypeEv @ 165 NONAME ; ## - _ZThn4_N15CTFStubTestCase6SetupLEv @ 166 NONAME ; ## - _ZThn4_N15CTFStubTestCase7SetStubER7CTFStub @ 167 NONAME ; ## - _ZThn4_N15CTFStubTestCaseD0Ev @ 168 NONAME ; ## - _ZThn4_N15CTFStubTestCaseD1Ev @ 169 NONAME ; ## - _ZThn4_N19CTFATestCaseAdapterD0Ev @ 170 NONAME ; ## - _ZThn4_N19CTFATestCaseAdapterD1Ev @ 171 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 172 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapterD0Ev @ 173 NONAME ; ## - _ZThn4_N20CTFATestSuiteAdapterD1Ev @ 174 NONAME ; ## - _ZThn4_NK19CTFATestCaseAdapter4TypeEv @ 175 NONAME ; ## - _ZThn4_NK20CTFATestSuiteAdapter4TypeEv @ 176 NONAME ; ## - +EXPORTS + _ZN10CTFFactory14CallLocalStubLEiPvS0_S0_S0_ @ 1 NONAME + _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_ @ 2 NONAME + _ZN10CTFFactory15CallRemoteStubLEiPvS0_S0_S0_R14TRequestStatus @ 3 NONAME + _ZN10CTFFactory4StubEi @ 4 NONAME + _ZN11CTFATestLogC2Ev @ 5 NONAME + _ZN11CTFATestLogD0Ev @ 6 NONAME + _ZN11CTFATestLogD1Ev @ 7 NONAME + _ZN11CTFATestLogD2Ev @ 8 NONAME + _ZN12CTFATestCase10SetTimeoutEi @ 9 NONAME + _ZN12CTFATestCase14SetEnvironmentER19CTFATestEnvironment @ 10 NONAME + _ZN12CTFATestCase15SetRunOnStartupEi @ 11 NONAME + _ZN12CTFATestCase8SetFlagsEm @ 12 NONAME + _ZN12CTFATestCaseC2EiRK7TDesC16 @ 13 NONAME + _ZN12CTFATestCaseD0Ev @ 14 NONAME + _ZN12CTFATestCaseD1Ev @ 15 NONAME + _ZN12CTFATestCaseD2Ev @ 16 NONAME + _ZN13CTFATestSuite2AtEi @ 17 NONAME + _ZN13CTFATestSuite4AddLERK8CTFATest @ 18 NONAME + _ZN13CTFATestSuiteC1ERK7TDesC16 @ 19 NONAME + _ZN13CTFATestSuiteC2ERK7TDesC16 @ 20 NONAME + _ZN13CTFATestSuiteD0Ev @ 21 NONAME + _ZN13CTFATestSuiteD1Ev @ 22 NONAME + _ZN13CTFATestSuiteD2Ev @ 23 NONAME + _ZN13CTFATestTimer4NewLER14MTFAActiveTest @ 24 NONAME + _ZN13CTFATestTimerD0Ev @ 25 NONAME + _ZN13CTFATestTimerD1Ev @ 26 NONAME + _ZN13CTFATestTimerD2Ev @ 27 NONAME + _ZN13CTFRemoteStubC2Ei @ 28 NONAME + _ZN13CTFRemoteStubD0Ev @ 29 NONAME + _ZN13CTFRemoteStubD1Ev @ 30 NONAME + _ZN13CTFRemoteStubD2Ev @ 31 NONAME + _ZN14CTFAActiveTest11DoSetActiveEv @ 32 NONAME + _ZN14CTFAActiveTest6StatusEv @ 33 NONAME + _ZN14CTFAActiveTestC1ER14MTFAActiveTest @ 34 NONAME + _ZN14CTFAActiveTestC2ER14MTFAActiveTest @ 35 NONAME + _ZN14CTFAActiveTestD0Ev @ 36 NONAME + _ZN14CTFAActiveTestD1Ev @ 37 NONAME + _ZN14CTFAActiveTestD2Ev @ 38 NONAME + _ZN14CTFAEntryPoint10ConstructLEv @ 39 NONAME + _ZN14CTFAEntryPoint16RootSuiteAdapterEv @ 40 NONAME + _ZN14CTFAEntryPointC2Ev @ 41 NONAME + _ZN14CTFAEntryPointD0Ev @ 42 NONAME + _ZN14CTFAEntryPointD1Ev @ 43 NONAME + _ZN14CTFAEntryPointD2Ev @ 44 NONAME + _ZN14MTFAActiveTestC2Ev @ 45 NONAME + _ZN14MTFAActiveTestD0Ev @ 46 NONAME + _ZN14MTFAActiveTestD1Ev @ 47 NONAME + _ZN14MTFAActiveTestD2Ev @ 48 NONAME + _ZN15CTFStubTestCase10IsCompleteEv @ 49 NONAME + _ZN15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 50 NONAME + _ZN15CTFStubTestCase12CompleteTestEi @ 51 NONAME + _ZN15CTFStubTestCase4TypeEv @ 52 NONAME + _ZN15CTFStubTestCase6LoggerEv @ 53 NONAME + _ZN15CTFStubTestCase6SetupLEv @ 54 NONAME + _ZN15CTFStubTestCase7SetStubER7CTFStub @ 55 NONAME + _ZN15CTFStubTestCaseC2Ei @ 56 NONAME + _ZN15CTFStubTestCaseD0Ev @ 57 NONAME + _ZN15CTFStubTestCaseD1Ev @ 58 NONAME + _ZN15CTFStubTestCaseD2Ev @ 59 NONAME + _ZN15MTFATestAdapterC2Ev @ 60 NONAME + _ZN15MTFATestAdapterD0Ev @ 61 NONAME + _ZN15MTFATestAdapterD1Ev @ 62 NONAME + _ZN15MTFATestAdapterD2Ev @ 63 NONAME + _ZN18CTFTestCaseWrapper14SetEnvironmentER19CTFATestEnvironment @ 64 NONAME + _ZN18CTFTestCaseWrapper16AddStubTestCaseLER15MTFStubTestCase @ 65 NONAME + _ZN18CTFTestCaseWrapperC1EiRK7TDesC16 @ 66 NONAME + _ZN18CTFTestCaseWrapperC2EiRK7TDesC16 @ 67 NONAME + _ZN19CTFATestCaseAdapterC1ER12CTFATestCase @ 68 NONAME + _ZN19CTFATestCaseAdapterC2ER12CTFATestCase @ 69 NONAME + _ZN19CTFATestCaseAdapterD0Ev @ 70 NONAME + _ZN19CTFATestCaseAdapterD1Ev @ 71 NONAME + _ZN19CTFATestCaseAdapterD2Ev @ 72 NONAME + _ZN19CTFATestEnvironment16SetTestCaseFlagsEm @ 73 NONAME + _ZN19CTFATestEnvironment6LoggerEv @ 74 NONAME + _ZN19CTFATestEnvironment7FactoryEv @ 75 NONAME + _ZN19CTFATestEnvironmentC1ER11CTFATestLog @ 76 NONAME + _ZN19CTFATestEnvironmentC2ER11CTFATestLog @ 77 NONAME + _ZN19CTFATestEnvironmentD0Ev @ 78 NONAME + _ZN19CTFATestEnvironmentD1Ev @ 79 NONAME + _ZN19CTFATestEnvironmentD2Ev @ 80 NONAME + _ZN19CTFTestCaseRepeater14SetEnvironmentER19CTFATestEnvironment @ 81 NONAME + _ZN19CTFTestCaseRepeaterC1EiRK7TDesC16P13CTFATestSuiteii @ 82 NONAME + _ZN19CTFTestCaseRepeaterC2EiRK7TDesC16P13CTFATestSuiteii @ 83 NONAME + _ZN19MTFATestCaseAdapterC2Ev @ 84 NONAME + _ZN19MTFATestCaseAdapterD0Ev @ 85 NONAME + _ZN19MTFATestCaseAdapterD1Ev @ 86 NONAME + _ZN19MTFATestCaseAdapterD2Ev @ 87 NONAME + _ZN20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 88 NONAME + _ZN20CTFATestSuiteAdapterC1ER13CTFATestSuiteP14CTFAEntryPoint @ 89 NONAME + _ZN20CTFATestSuiteAdapterC2ER13CTFATestSuiteP14CTFAEntryPoint @ 90 NONAME + _ZN20CTFATestSuiteAdapterD0Ev @ 91 NONAME + _ZN20CTFATestSuiteAdapterD1Ev @ 92 NONAME + _ZN20CTFATestSuiteAdapterD2Ev @ 93 NONAME + _ZN20CTFStubTestCaseParamC1Ev @ 94 NONAME + _ZN20CTFStubTestCaseParamC2Ev @ 95 NONAME + _ZN20CTFStubTestCaseParamD0Ev @ 96 NONAME + _ZN20CTFStubTestCaseParamD1Ev @ 97 NONAME + _ZN20CTFStubTestCaseParamD2Ev @ 98 NONAME + _ZN20MTFATestSuiteAdapterC2Ev @ 99 NONAME + _ZN20MTFATestSuiteAdapterD0Ev @ 100 NONAME + _ZN20MTFATestSuiteAdapterD1Ev @ 101 NONAME + _ZN20MTFATestSuiteAdapterD2Ev @ 102 NONAME + _ZN7CTFStub15CurrentTestCaseEv @ 103 NONAME + _ZN7CTFStub17CurrentTestCaseIDEv @ 104 NONAME + _ZN7CTFStubC2Ei @ 105 NONAME + _ZN7CTFStubD0Ev @ 106 NONAME + _ZN7CTFStubD1Ev @ 107 NONAME + _ZN7CTFStubD2Ev @ 108 NONAME + _ZN8CTFATest11EnvironmentEv @ 109 NONAME + _ZN8CTFATest14SetEnvironmentER19CTFATestEnvironment @ 110 NONAME + _ZNK12CTFATestCase12RunOnStartupEv @ 111 NONAME + _ZNK12CTFATestCase2IdEv @ 112 NONAME + _ZNK12CTFATestCase4TypeEv @ 113 NONAME + _ZNK12CTFATestCase5FlagsEv @ 114 NONAME + _ZNK12CTFATestCase7TimeoutEv @ 115 NONAME + _ZNK13CTFATestSuite4TypeEv @ 116 NONAME + _ZNK13CTFATestSuite5CountEv @ 117 NONAME + _ZNK19CTFATestCaseAdapter4TypeEv @ 118 NONAME + _ZNK20CTFATestSuiteAdapter4TypeEv @ 119 NONAME + _ZNK8CTFATest4NameEv @ 120 NONAME + _ZTI10CTFFactory @ 121 NONAME ; ## + _ZTI11CTFATestLog @ 122 NONAME ; ## + _ZTI12CTFATestCase @ 123 NONAME ; ## + _ZTI13CTFATestSuite @ 124 NONAME ; ## + _ZTI13CTFATestTimer @ 125 NONAME ; ## + _ZTI13CTFRemoteStub @ 126 NONAME ; ## + _ZTI14CTFAActiveTest @ 127 NONAME ; ## + _ZTI14CTFAEntryPoint @ 128 NONAME ; ## + _ZTI14MTFAActiveTest @ 129 NONAME ; ## + _ZTI15CTFStubTestCase @ 130 NONAME ; ## + _ZTI15MTFATestAdapter @ 131 NONAME ; ## + _ZTI18CTFTestCaseWrapper @ 132 NONAME ; ## + _ZTI19CTFATestCaseAdapter @ 133 NONAME ; ## + _ZTI19CTFATestEnvironment @ 134 NONAME ; ## + _ZTI19CTFTestCaseRepeater @ 135 NONAME ; ## + _ZTI19MTFATestCaseAdapter @ 136 NONAME ; ## + _ZTI20CTFATestSuiteAdapter @ 137 NONAME ; ## + _ZTI20CTFStubTestCaseParam @ 138 NONAME ; ## + _ZTI20MTFATestSuiteAdapter @ 139 NONAME ; ## + _ZTI7CTFStub @ 140 NONAME ; ## + _ZTI8CTFATest @ 141 NONAME ; ## + _ZTV10CTFFactory @ 142 NONAME ; ## + _ZTV11CTFATestLog @ 143 NONAME ; ## + _ZTV12CTFATestCase @ 144 NONAME ; ## + _ZTV13CTFATestSuite @ 145 NONAME ; ## + _ZTV13CTFATestTimer @ 146 NONAME ; ## + _ZTV13CTFRemoteStub @ 147 NONAME ; ## + _ZTV14CTFAActiveTest @ 148 NONAME ; ## + _ZTV14CTFAEntryPoint @ 149 NONAME ; ## + _ZTV14MTFAActiveTest @ 150 NONAME ; ## + _ZTV15CTFStubTestCase @ 151 NONAME ; ## + _ZTV15MTFATestAdapter @ 152 NONAME ; ## + _ZTV18CTFTestCaseWrapper @ 153 NONAME ; ## + _ZTV19CTFATestCaseAdapter @ 154 NONAME ; ## + _ZTV19CTFATestEnvironment @ 155 NONAME ; ## + _ZTV19CTFTestCaseRepeater @ 156 NONAME ; ## + _ZTV19MTFATestCaseAdapter @ 157 NONAME ; ## + _ZTV20CTFATestSuiteAdapter @ 158 NONAME ; ## + _ZTV20CTFStubTestCaseParam @ 159 NONAME ; ## + _ZTV20MTFATestSuiteAdapter @ 160 NONAME ; ## + _ZTV7CTFStub @ 161 NONAME ; ## + _ZTV8CTFATest @ 162 NONAME ; ## + _ZThn4_N15CTFStubTestCase10IsCompleteEv @ 163 NONAME ; ## + _ZThn4_N15CTFStubTestCase11SetCallbackER20MTFTestCaseInterface @ 164 NONAME ; ## + _ZThn4_N15CTFStubTestCase4TypeEv @ 165 NONAME ; ## + _ZThn4_N15CTFStubTestCase6SetupLEv @ 166 NONAME ; ## + _ZThn4_N15CTFStubTestCase7SetStubER7CTFStub @ 167 NONAME ; ## + _ZThn4_N15CTFStubTestCaseD0Ev @ 168 NONAME ; ## + _ZThn4_N15CTFStubTestCaseD1Ev @ 169 NONAME ; ## + _ZThn4_N19CTFATestCaseAdapterD0Ev @ 170 NONAME ; ## + _ZThn4_N19CTFATestCaseAdapterD1Ev @ 171 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapter4AddLER15MTFATestAdapter @ 172 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapterD0Ev @ 173 NONAME ; ## + _ZThn4_N20CTFATestSuiteAdapterD1Ev @ 174 NONAME ; ## + _ZThn4_NK19CTFATestCaseAdapter4TypeEv @ 175 NONAME ; ## + _ZThn4_NK20CTFATestSuiteAdapter4TypeEv @ 176 NONAME ; ## + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/bld.inf --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,21 +1,21 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dsytfcore -* -*/ - - -PRJ_MMPFILES -dsytfcore.mmp - +/* +* Copyright (c) 2002-2006 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: Build information file for project dsytfcore +* +*/ + + +PRJ_MMPFILES +dsytfcore.mmp + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/dsytfcore.mmp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/dsytfcore.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/group/dsytfcore.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,62 +1,62 @@ -/* -* Copyright (c) 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: Declaration of dsytfcore module -* -*/ - - -#include - -// INCLUDE FILES -// Build target -TARGET dsytfcore.dll -TARGETTYPE dll -UID 0x1000008D 0x101FB44A - -CAPABILITY CAP_GENERAL_DLL - -// Include paths -USERINCLUDE ../inc - -SOURCEPATH ../src -SOURCE tfaentrypoint.cpp -SOURCE tfatest.cpp -SOURCE tfatestcase.cpp -SOURCE tfatestenvironment.cpp -SOURCE tfatestsuite.cpp -SOURCE tfatesttimer.cpp -SOURCE tfaactivetest.cpp -SOURCE tfactivescheduler.cpp -SOURCE tfatestsuiteadapter.cpp -SOURCE tfatestcaseadapter.cpp -SOURCE tffactory.cpp -SOURCE tfstub.cpp -SOURCE tfremotestub.cpp -SOURCE tfstubcontrol.cpp -SOURCE tftestcasewrapper.cpp -SOURCE tfstubtestcase.cpp -SOURCE tftestcaserepeater.cpp -SOURCE tftestserver.cpp - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -// Dependencies to system components -LIBRARY euser.lib -LIBRARY ecom.lib - -//MACRO COMPONENT_TRACE_FLAG -MACRO TEST_NAME_TRACE_FLAG - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dsytfcore module +* +*/ + + +#include + +// INCLUDE FILES +// Build target +TARGET dsytfcore.dll +TARGETTYPE dll +UID 0x1000008D 0x101FB44A + +CAPABILITY CAP_GENERAL_DLL + +// Include paths +USERINCLUDE ../inc + +SOURCEPATH ../src +SOURCE tfaentrypoint.cpp +SOURCE tfatest.cpp +SOURCE tfatestcase.cpp +SOURCE tfatestenvironment.cpp +SOURCE tfatestsuite.cpp +SOURCE tfatesttimer.cpp +SOURCE tfaactivetest.cpp +SOURCE tfactivescheduler.cpp +SOURCE tfatestsuiteadapter.cpp +SOURCE tfatestcaseadapter.cpp +SOURCE tffactory.cpp +SOURCE tfstub.cpp +SOURCE tfremotestub.cpp +SOURCE tfstubcontrol.cpp +SOURCE tftestcasewrapper.cpp +SOURCE tfstubtestcase.cpp +SOURCE tftestcaserepeater.cpp +SOURCE tftestserver.cpp + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +// Dependencies to system components +LIBRARY euser.lib +LIBRARY ecom.lib + +//MACRO COMPONENT_TRACE_FLAG +MACRO TEST_NAME_TRACE_FLAG + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaactivetest.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaactivetest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaactivetest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,81 +1,81 @@ -/* -* 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: Declaration of CTFAActiveTest class -* -*/ - - -#ifndef __CTFAACTIVETEST_H__ -#define __CTFAACTIVETEST_H__ - -#include - -class MTFAActiveTest; - -/** -* Provides the Symbian active object functionality to classes -* that cannot inherit from CActive. -*/ -class CTFAActiveTest : public CActive - { - public: - /** - * Constructor - * @param aCallback ActiveTestRunL of the callback is called from RunL of this object - */ - IMPORT_C CTFAActiveTest( MTFAActiveTest& aCallback ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFAActiveTest( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAActiveTest( const CTFAActiveTest& aTimer ); - - /** - * Assignment operator is hidden - */ - CTFAActiveTest& operator=( const CTFAActiveTest& aTimer ); - - protected: - /** - * Calls ActiveTestRunL of callback interface - */ - void RunL( void ); - - /** - * Calls ActiveTestCancel of callback interface - */ - virtual void DoCancel( void ); - - public: - /** - * Returns the status of this object - */ - IMPORT_C TRequestStatus& Status( void ); - - /** - * Calls SetActive of this object - */ - IMPORT_C void DoSetActive( void ); - - private: - MTFAActiveTest& iCallback; - }; - -#endif +/* +* 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: Declaration of CTFAActiveTest class +* +*/ + + +#ifndef __CTFAACTIVETEST_H__ +#define __CTFAACTIVETEST_H__ + +#include + +class MTFAActiveTest; + +/** +* Provides the Symbian active object functionality to classes +* that cannot inherit from CActive. +*/ +class CTFAActiveTest : public CActive + { + public: + /** + * Constructor + * @param aCallback ActiveTestRunL of the callback is called from RunL of this object + */ + IMPORT_C CTFAActiveTest( MTFAActiveTest& aCallback ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFAActiveTest( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAActiveTest( const CTFAActiveTest& aTimer ); + + /** + * Assignment operator is hidden + */ + CTFAActiveTest& operator=( const CTFAActiveTest& aTimer ); + + protected: + /** + * Calls ActiveTestRunL of callback interface + */ + void RunL( void ); + + /** + * Calls ActiveTestCancel of callback interface + */ + virtual void DoCancel( void ); + + public: + /** + * Returns the status of this object + */ + IMPORT_C TRequestStatus& Status( void ); + + /** + * Calls SetActive of this object + */ + IMPORT_C void DoSetActive( void ); + + private: + MTFAActiveTest& iCallback; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfactivescheduler.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfactivescheduler.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfactivescheduler.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,58 +1,58 @@ -/* -* 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: Declaration of CTFActiveScheduler class -* -*/ - - -#ifndef __CTFACTIVESCHEDULER_H__ -#define __CTFACTIVESCHEDULER_H__ - -#include - -/** -* Active scheduler that does not panic when error occurs in RunL -*/ -NONSHARABLE_CLASS( CTFActiveScheduler ): public CActiveScheduler - { - public: - /** - * Constructor - */ - CTFActiveScheduler( void ); - - /** - * Destructor - */ - ~CTFActiveScheduler( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFActiveScheduler( const CTFActiveScheduler& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFActiveScheduler& operator=( const CTFActiveScheduler& aAdapter ); - - protected: - /** - * Called if RunL leaves - */ - void Error( TInt aError ) const; - }; - -#endif +/* +* 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: Declaration of CTFActiveScheduler class +* +*/ + + +#ifndef __CTFACTIVESCHEDULER_H__ +#define __CTFACTIVESCHEDULER_H__ + +#include + +/** +* Active scheduler that does not panic when error occurs in RunL +*/ +NONSHARABLE_CLASS( CTFActiveScheduler ): public CActiveScheduler + { + public: + /** + * Constructor + */ + CTFActiveScheduler( void ); + + /** + * Destructor + */ + ~CTFActiveScheduler( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFActiveScheduler( const CTFActiveScheduler& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFActiveScheduler& operator=( const CTFActiveScheduler& aAdapter ); + + protected: + /** + * Called if RunL leaves + */ + void Error( TInt aError ) const; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaentrypoint.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaentrypoint.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfaentrypoint.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,120 +1,120 @@ -/* -* 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: Declaration of CTFAEntryPoint class -* -*/ - - -#ifndef __CTFAENTRYPOINT_H__ -#define __CTFAENTRYPOINT_H__ - -#include - -class CTFATestSuite; -class CTFATestCase; -class CTFATestEnvironment; -class MTFATestSuiteAdapter; -class MTFATestCaseAdapter; -class MTFATestCaseInterface; - -/** -* Entry point is inherited in the adapter DLL. ConstructL builds the test suite -* and adapter suite. -*/ -//NONSHARABLE_CLASS( CTFAEntryPoint ): public CBase -class CTFAEntryPoint : public CBase - { - protected: - /** - * Default constructor - */ - IMPORT_C CTFAEntryPoint( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~CTFAEntryPoint( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAEntryPoint( const CTFAEntryPoint& aEntryPoint ); - - /** - * Assignment operator is hidden - */ - CTFAEntryPoint& operator=( const CTFAEntryPoint& aEntryPoint ); - - public: - /** - * Returns the root test suite adapter - */ - IMPORT_C MTFATestSuiteAdapter* RootSuiteAdapter( void ); - - protected: - /** - * Symbian constructor - */ - IMPORT_C virtual void ConstructL( void ); - - protected: - /** - * Creates a test suite adapter for the given test suite. - * The returned object is freed by the test framework - * @param CTFATestSuite& aSuite The test suite - * @param TBool aRoot A flag that determines if the test suite is the root suite - * @return The adapter object - */ - virtual MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) = 0; - - /** - * Creates a test case adapter for given test case. - * The returned object is freed by the test framework - * @param CTFATestCase& aCase The test case - * @return The adapter object - */ - virtual MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ) = 0; - - /** - * Creates the test environment object. - * The returned object is freed by the test framework - */ - virtual CTFATestEnvironment* CreateEnvironmentL( void ) = 0; - - private: - /** - * Creates adapter objects for the given test suite. This is called recursively for - * each test suite within the given test suite. - * @param CTFATestSuite& aSuite The test suite - * @param MTFATestSuiteAdapter& aAdapter The adapter suite - */ - void BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ); - - /** - * Called when the startup timer set in ConstructL fires - * @param aParameter Not used - * @return EFalse so that timer does not continue - */ - static TInt TimerCallback( TAny* aParameter ); - - private: - CTFATestSuite* iRootSuite; - MTFATestSuiteAdapter* iRootSuiteAdapter; - CTFATestEnvironment* iEnvironment; - TInt iDepth; - }; - -#endif +/* +* 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: Declaration of CTFAEntryPoint class +* +*/ + + +#ifndef __CTFAENTRYPOINT_H__ +#define __CTFAENTRYPOINT_H__ + +#include + +class CTFATestSuite; +class CTFATestCase; +class CTFATestEnvironment; +class MTFATestSuiteAdapter; +class MTFATestCaseAdapter; +class MTFATestCaseInterface; + +/** +* Entry point is inherited in the adapter DLL. ConstructL builds the test suite +* and adapter suite. +*/ +//NONSHARABLE_CLASS( CTFAEntryPoint ): public CBase +class CTFAEntryPoint : public CBase + { + protected: + /** + * Default constructor + */ + IMPORT_C CTFAEntryPoint( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~CTFAEntryPoint( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAEntryPoint( const CTFAEntryPoint& aEntryPoint ); + + /** + * Assignment operator is hidden + */ + CTFAEntryPoint& operator=( const CTFAEntryPoint& aEntryPoint ); + + public: + /** + * Returns the root test suite adapter + */ + IMPORT_C MTFATestSuiteAdapter* RootSuiteAdapter( void ); + + protected: + /** + * Symbian constructor + */ + IMPORT_C virtual void ConstructL( void ); + + protected: + /** + * Creates a test suite adapter for the given test suite. + * The returned object is freed by the test framework + * @param CTFATestSuite& aSuite The test suite + * @param TBool aRoot A flag that determines if the test suite is the root suite + * @return The adapter object + */ + virtual MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) = 0; + + /** + * Creates a test case adapter for given test case. + * The returned object is freed by the test framework + * @param CTFATestCase& aCase The test case + * @return The adapter object + */ + virtual MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ) = 0; + + /** + * Creates the test environment object. + * The returned object is freed by the test framework + */ + virtual CTFATestEnvironment* CreateEnvironmentL( void ) = 0; + + private: + /** + * Creates adapter objects for the given test suite. This is called recursively for + * each test suite within the given test suite. + * @param CTFATestSuite& aSuite The test suite + * @param MTFATestSuiteAdapter& aAdapter The adapter suite + */ + void BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ); + + /** + * Called when the startup timer set in ConstructL fires + * @param aParameter Not used + * @return EFalse so that timer does not continue + */ + static TInt TimerCallback( TAny* aParameter ); + + private: + CTFATestSuite* iRootSuite; + MTFATestSuiteAdapter* iRootSuiteAdapter; + CTFATestEnvironment* iEnvironment; + TInt iDepth; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatest.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,83 +1,83 @@ -/* -* 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: Declaration of CTFATest class -* -*/ - - -#ifndef __CTFATEST_H__ -#define __CTFATEST_H__ - -#include -#include "tftypes.h" - -class CTFATestEnvironment; - -/** -* Abstract base class for test cases and test suites -*/ -class CTFATest : public CBase - { - protected: - /** - * Constructor - * @param aName The name of the test object - */ - CTFATest( const TDesC& aName ); - - public: - /** - * Destructor - */ - virtual ~CTFATest( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATest( const CTFATest& aTest ); - - /** - * Assignment operator is hidden - */ - CTFATest& operator=( const CTFATest& aTest ); - - public: - /** - * Returns the name - */ - IMPORT_C const TDesC& Name( void ) const; - - /** - * Sets the test environment - */ - IMPORT_C virtual void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - /** - * Gets the test environment - */ - IMPORT_C CTFATestEnvironment &Environment( void ); - - public: - /** - * Returns the type of this test object - */ - virtual TTFATestType Type( void ) const = 0; - - private: - CTFATestEnvironment *iEnvironment ; - TBuf iName; - }; - -#endif +/* +* 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: Declaration of CTFATest class +* +*/ + + +#ifndef __CTFATEST_H__ +#define __CTFATEST_H__ + +#include +#include "tftypes.h" + +class CTFATestEnvironment; + +/** +* Abstract base class for test cases and test suites +*/ +class CTFATest : public CBase + { + protected: + /** + * Constructor + * @param aName The name of the test object + */ + CTFATest( const TDesC& aName ); + + public: + /** + * Destructor + */ + virtual ~CTFATest( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATest( const CTFATest& aTest ); + + /** + * Assignment operator is hidden + */ + CTFATest& operator=( const CTFATest& aTest ); + + public: + /** + * Returns the name + */ + IMPORT_C const TDesC& Name( void ) const; + + /** + * Sets the test environment + */ + IMPORT_C virtual void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + /** + * Gets the test environment + */ + IMPORT_C CTFATestEnvironment &Environment( void ); + + public: + /** + * Returns the type of this test object + */ + virtual TTFATestType Type( void ) const = 0; + + private: + CTFATestEnvironment *iEnvironment ; + TBuf iName; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcase.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,128 +1,128 @@ -/* -* 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: Declaration of CTFATestCase class -* -*/ - - -#ifndef __CTFATESTCASE_H__ -#define __CTFATESTCASE_H__ - -#include "ctfatest.h" - -/** -* Abstract base class for test cases -*/ -class CTFATestCase : public CTFATest - { - protected: - /** - * Constructor - * @param aCaseId The test case ID - * @param aName The name of the test case - */ - IMPORT_C CTFATestCase( TInt aCaseId, const TDesC& aName ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFATestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestCase( const CTFATestCase& aCase ); - - /** - * Assignment operator is hidden - */ - CTFATestCase& operator=( const CTFATestCase& aCase ); - - public: - /** - * Returns the test case ID - */ - IMPORT_C TInt Id( void ) const; - - /** - * Returns ETFATestTypeCase. Subclasses override this if needed. - */ - IMPORT_C TTFATestType Type( void ) const; - - /** - * Sets a new test timeout. Default timeout is 30 seconds. - */ - IMPORT_C void SetTimeout( TInt aTimeout ); - - /** - * Sets a autorun on startup flag. This adapter library runs - * the test case automatically on startup if this flag is set. - */ - IMPORT_C void SetRunOnStartup( TBool aFlag ); - - /** - * Returns the test timeout - */ - IMPORT_C TInt Timeout( void ) const; - - /** - * Returns the autorun flag - */ - IMPORT_C TBool RunOnStartup( void ) const; - - /** - * Sets the test case flags - */ - IMPORT_C void SetFlags( TUint32 aFlags ); - - /** - * Returns the test case flags - */ - IMPORT_C TUint32 Flags( void ) const; - - /** - * Sets the test environment - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Logs this test case - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Initializes this test case - */ - virtual void SetupL( void ) = 0; - - /** - * Runs this test case - */ - virtual void RunTestL( void ) = 0; - - /** - * Closes this test case - */ - virtual void Teardown( void ) = 0; - - private: - TInt iCaseId; - TInt iTimeout; - TBool iRunOnStartup; - TUint32 iFlags; - }; - -#endif +/* +* 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: Declaration of CTFATestCase class +* +*/ + + +#ifndef __CTFATESTCASE_H__ +#define __CTFATESTCASE_H__ + +#include "ctfatest.h" + +/** +* Abstract base class for test cases +*/ +class CTFATestCase : public CTFATest + { + protected: + /** + * Constructor + * @param aCaseId The test case ID + * @param aName The name of the test case + */ + IMPORT_C CTFATestCase( TInt aCaseId, const TDesC& aName ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFATestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestCase( const CTFATestCase& aCase ); + + /** + * Assignment operator is hidden + */ + CTFATestCase& operator=( const CTFATestCase& aCase ); + + public: + /** + * Returns the test case ID + */ + IMPORT_C TInt Id( void ) const; + + /** + * Returns ETFATestTypeCase. Subclasses override this if needed. + */ + IMPORT_C TTFATestType Type( void ) const; + + /** + * Sets a new test timeout. Default timeout is 30 seconds. + */ + IMPORT_C void SetTimeout( TInt aTimeout ); + + /** + * Sets a autorun on startup flag. This adapter library runs + * the test case automatically on startup if this flag is set. + */ + IMPORT_C void SetRunOnStartup( TBool aFlag ); + + /** + * Returns the test timeout + */ + IMPORT_C TInt Timeout( void ) const; + + /** + * Returns the autorun flag + */ + IMPORT_C TBool RunOnStartup( void ) const; + + /** + * Sets the test case flags + */ + IMPORT_C void SetFlags( TUint32 aFlags ); + + /** + * Returns the test case flags + */ + IMPORT_C TUint32 Flags( void ) const; + + /** + * Sets the test environment + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Logs this test case + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Initializes this test case + */ + virtual void SetupL( void ) = 0; + + /** + * Runs this test case + */ + virtual void RunTestL( void ) = 0; + + /** + * Closes this test case + */ + virtual void Teardown( void ) = 0; + + private: + TInt iCaseId; + TInt iTimeout; + TBool iRunOnStartup; + TUint32 iFlags; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcaseadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of CTFATestCaseAdapter class -* -*/ - - -#ifndef __CTFATESTCASEADAPTER_H__ -#define __CTFATESTCASEADAPTER_H__ - -#include -#include "mtfatestcaseadapter.h" - -class CTFATestCase; - -/** -* Base class for test case adapters. This is implemented in the adapter DLL. -*/ -//NONSHARABLE_CLASS( CTFATestCaseAdapter ): public CBase, public MTFATestCaseAdapter -class CTFATestCaseAdapter : public CBase, public MTFATestCaseAdapter - { - protected: - /** - * Constructor - * @param aTestCase The test case wrapped into this adapter - */ - IMPORT_C CTFATestCaseAdapter( CTFATestCase& aTestCase ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestCaseAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestCaseAdapter( const CTFATestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFATestCaseAdapter& operator=( const CTFATestCaseAdapter& aAdapter ); - - public: - /** - * Returns the type of test case wrapped into this adapter - */ - IMPORT_C TTFATestType Type( void ) const; - - protected: - /** - * The wrapped test case is available to subclasses - */ - CTFATestCase& iTestCase; - }; - -#endif +/* +* 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: Declaration of CTFATestCaseAdapter class +* +*/ + + +#ifndef __CTFATESTCASEADAPTER_H__ +#define __CTFATESTCASEADAPTER_H__ + +#include +#include "mtfatestcaseadapter.h" + +class CTFATestCase; + +/** +* Base class for test case adapters. This is implemented in the adapter DLL. +*/ +//NONSHARABLE_CLASS( CTFATestCaseAdapter ): public CBase, public MTFATestCaseAdapter +class CTFATestCaseAdapter : public CBase, public MTFATestCaseAdapter + { + protected: + /** + * Constructor + * @param aTestCase The test case wrapped into this adapter + */ + IMPORT_C CTFATestCaseAdapter( CTFATestCase& aTestCase ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestCaseAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestCaseAdapter( const CTFATestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFATestCaseAdapter& operator=( const CTFATestCaseAdapter& aAdapter ); + + public: + /** + * Returns the type of test case wrapped into this adapter + */ + IMPORT_C TTFATestType Type( void ) const; + + protected: + /** + * The wrapped test case is available to subclasses + */ + CTFATestCase& iTestCase; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestenvironment.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestenvironment.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestenvironment.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Declaration of CTFATestEnvironment class -* -*/ - - -#ifndef __CTFATESTENVIRONMENT_H__ -#define __CTFATESTENVIRONMENT_H__ - -#include - -class CTFATestLog; -class CTFFactory; -class CTFActiveScheduler; - -/** -* Test environment contains common data available to all test cases. This -* is an abstract base class and needs to be implemeted in the adapter DLL. -*/ -//NONSHARABLE_CLASS( CTFATestEnvironment ): public CBase -class CTFATestEnvironment : public CBase - { - public: - /** - * Constructor - * @param aLogger The test logger - */ - IMPORT_C CTFATestEnvironment( CTFATestLog& aLogger ); - - /** - * Destructor - */ - IMPORT_C ~CTFATestEnvironment( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestEnvironment( const CTFATestEnvironment& aCase ); - - /** - * Assignment operator is hidden - */ - CTFATestEnvironment& operator=( const CTFATestEnvironment& aCase ); - - public: - /** - * Returns the test logger - */ - IMPORT_C CTFATestLog& Logger( void ); - - /** - * Gets the factory object - */ - IMPORT_C CTFFactory* Factory( void ); - - /** - * Sets global test case flags. - * These can be overridden by test-specific flags. - */ - IMPORT_C void SetTestCaseFlags( TUint32 aTestCaseFlags ); - - public: - /** - * Sets the factory object - */ - void SetFactory( CTFFactory* aFactory ); - - /** - * Stores the active scheduler of the test framework. - */ - void SetScheduler( CTFActiveScheduler* aScheduler ); - - /** - * Gets the test case flags - */ - TUint32 TestCaseFlags( void ) const; - - private: - CTFFactory* iFactory; - CTFActiveScheduler* iScheduler; - CTFATestLog* iLogger; - TUint32 iTestCaseFlags; - }; - -#endif +/* +* 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: Declaration of CTFATestEnvironment class +* +*/ + + +#ifndef __CTFATESTENVIRONMENT_H__ +#define __CTFATESTENVIRONMENT_H__ + +#include + +class CTFATestLog; +class CTFFactory; +class CTFActiveScheduler; + +/** +* Test environment contains common data available to all test cases. This +* is an abstract base class and needs to be implemeted in the adapter DLL. +*/ +//NONSHARABLE_CLASS( CTFATestEnvironment ): public CBase +class CTFATestEnvironment : public CBase + { + public: + /** + * Constructor + * @param aLogger The test logger + */ + IMPORT_C CTFATestEnvironment( CTFATestLog& aLogger ); + + /** + * Destructor + */ + IMPORT_C ~CTFATestEnvironment( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestEnvironment( const CTFATestEnvironment& aCase ); + + /** + * Assignment operator is hidden + */ + CTFATestEnvironment& operator=( const CTFATestEnvironment& aCase ); + + public: + /** + * Returns the test logger + */ + IMPORT_C CTFATestLog& Logger( void ); + + /** + * Gets the factory object + */ + IMPORT_C CTFFactory* Factory( void ); + + /** + * Sets global test case flags. + * These can be overridden by test-specific flags. + */ + IMPORT_C void SetTestCaseFlags( TUint32 aTestCaseFlags ); + + public: + /** + * Sets the factory object + */ + void SetFactory( CTFFactory* aFactory ); + + /** + * Stores the active scheduler of the test framework. + */ + void SetScheduler( CTFActiveScheduler* aScheduler ); + + /** + * Gets the test case flags + */ + TUint32 TestCaseFlags( void ) const; + + private: + CTFFactory* iFactory; + CTFActiveScheduler* iScheduler; + CTFATestLog* iLogger; + TUint32 iTestCaseFlags; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestlog.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestlog.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestlog.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,136 +1,136 @@ -/* -* 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: Declaration of CTFATestLog class -* -*/ - - -#ifndef __CTFATESTLOG_H__ -#define __CTFATESTLOG_H__ - -#include - -/** -* Logger styles -*/ -enum TTFLogStyle - { - ETFLogStyleNormal = 0, - ETFLogStyleBold = 1, - ETFLogStyleItalic = 2 - }; - -/** -* Abstraction for test logger. The implementation is in the adapter DLL -*/ -class CTFATestLog : public CBase - { - protected: - /** - * Constructor - */ - IMPORT_C CTFATestLog( void ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestLog( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestLog( const CTFATestLog& aLog ); - - /** - * Assignment operator is hidden - */ - CTFATestLog& operator=( const CTFATestLog& aLog ); - - public: - /** - * Writes data to log - */ - virtual void Write( const TDesC& aDes ) = 0; - - /** - * Writes data to log - */ - virtual void Write( const TDesC8& aDes ) = 0; - - /** - * Writes formatted data to log - */ - virtual void Write( TRefByValue aDes, ... ) = 0; - - /** - * Writes formatted data to log - */ - virtual void Write( TRefByValue aDes, ... ) = 0; - - /** - * Writes a block of data to log. If HTML logging is used, this - * wraps the data into
- */ - virtual void WriteBlock( const TDesC& aDes ) = 0; - - /** - * Writes a block of data to log. If HTML logging is used, this - * wraps the data into
- */ - virtual void WriteBlock( const TDesC8& aDes ) = 0; - - /** - * Writes an end-of-line character into log. - */ - virtual void EndLine( void ) = 0; - - /** - * Starts a new chapter - */ - virtual void StartChapter( void ) = 0; - - /** - * Starts a list - */ - virtual void StartList( void ) = 0; - - /** - * Writes formatted data into a list at given depth - */ - virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; - - /** - * Writes formatted data into a list at given depth - */ - virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; - - /** - * Ends a list - */ - virtual void EndList( void ) = 0; - - /** - * Sets current logging style - */ - virtual void SetStyle( TTFLogStyle aStyle ) = 0; - - /** - * Sets current logging color - */ - virtual void SetColor( TUint32 aColor ) = 0; - }; - -#endif +/* +* 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: Declaration of CTFATestLog class +* +*/ + + +#ifndef __CTFATESTLOG_H__ +#define __CTFATESTLOG_H__ + +#include + +/** +* Logger styles +*/ +enum TTFLogStyle + { + ETFLogStyleNormal = 0, + ETFLogStyleBold = 1, + ETFLogStyleItalic = 2 + }; + +/** +* Abstraction for test logger. The implementation is in the adapter DLL +*/ +class CTFATestLog : public CBase + { + protected: + /** + * Constructor + */ + IMPORT_C CTFATestLog( void ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestLog( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestLog( const CTFATestLog& aLog ); + + /** + * Assignment operator is hidden + */ + CTFATestLog& operator=( const CTFATestLog& aLog ); + + public: + /** + * Writes data to log + */ + virtual void Write( const TDesC& aDes ) = 0; + + /** + * Writes data to log + */ + virtual void Write( const TDesC8& aDes ) = 0; + + /** + * Writes formatted data to log + */ + virtual void Write( TRefByValue aDes, ... ) = 0; + + /** + * Writes formatted data to log + */ + virtual void Write( TRefByValue aDes, ... ) = 0; + + /** + * Writes a block of data to log. If HTML logging is used, this + * wraps the data into
+ */ + virtual void WriteBlock( const TDesC& aDes ) = 0; + + /** + * Writes a block of data to log. If HTML logging is used, this + * wraps the data into
+ */ + virtual void WriteBlock( const TDesC8& aDes ) = 0; + + /** + * Writes an end-of-line character into log. + */ + virtual void EndLine( void ) = 0; + + /** + * Starts a new chapter + */ + virtual void StartChapter( void ) = 0; + + /** + * Starts a list + */ + virtual void StartList( void ) = 0; + + /** + * Writes formatted data into a list at given depth + */ + virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; + + /** + * Writes formatted data into a list at given depth + */ + virtual void WriteList( TInt aDepth, TRefByValue aDes, ... ) = 0; + + /** + * Ends a list + */ + virtual void EndList( void ) = 0; + + /** + * Sets current logging style + */ + virtual void SetStyle( TTFLogStyle aStyle ) = 0; + + /** + * Sets current logging color + */ + virtual void SetColor( TUint32 aColor ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuite.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuite.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuite.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,78 +1,78 @@ -/* -* 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: Declaration of CTFATestSuite class -* -*/ - - -#ifndef __CTFATESTSUITE_H__ -#define __CTFATESTSUITE_H__ - -#include "ctfatest.h" - -/** -* Test suite implementation. A test suite may contain other test suites -* and test cases. -*/ -class CTFATestSuite : public CTFATest - { - public: - /** - * Constructor - * @param aName The test suite name - */ - IMPORT_C CTFATestSuite( const TDesC& aName ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFATestSuite( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestSuite( const CTFATestSuite& aSuite ); - - /** - * Assignment operator is hidden - */ - CTFATestSuite& operator=( const CTFATestSuite& aSuite ); - - public: - /** - * Adds a test or sub-suite to this suite - */ - IMPORT_C void AddL( const CTFATest& aTest ); - - /** - * Returns ETFATestTypeSuite - */ - IMPORT_C TTFATestType Type( void ) const; - - /** - * Returns the number of test cases and sub-suites within this suite - */ - IMPORT_C TInt Count( void ) const; - - /** - * Returns the test case or sub-suite at given index - */ - IMPORT_C CTFATest& At( TInt aIndex ); - - private: - RPointerArray iTests; - }; - -#endif +/* +* 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: Declaration of CTFATestSuite class +* +*/ + + +#ifndef __CTFATESTSUITE_H__ +#define __CTFATESTSUITE_H__ + +#include "ctfatest.h" + +/** +* Test suite implementation. A test suite may contain other test suites +* and test cases. +*/ +class CTFATestSuite : public CTFATest + { + public: + /** + * Constructor + * @param aName The test suite name + */ + IMPORT_C CTFATestSuite( const TDesC& aName ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFATestSuite( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestSuite( const CTFATestSuite& aSuite ); + + /** + * Assignment operator is hidden + */ + CTFATestSuite& operator=( const CTFATestSuite& aSuite ); + + public: + /** + * Adds a test or sub-suite to this suite + */ + IMPORT_C void AddL( const CTFATest& aTest ); + + /** + * Returns ETFATestTypeSuite + */ + IMPORT_C TTFATestType Type( void ) const; + + /** + * Returns the number of test cases and sub-suites within this suite + */ + IMPORT_C TInt Count( void ) const; + + /** + * Returns the test case or sub-suite at given index + */ + IMPORT_C CTFATest& At( TInt aIndex ); + + private: + RPointerArray iTests; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuiteadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* 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: Declaration of CTFATestSuiteAdapter class -* -*/ - - -#ifndef __CTFATESTSUITEADAPTER_H__ -#define __CTFATESTSUITEADAPTER_H__ - -#include -#include "mtfatestsuiteadapter.h" - -class CTFATestSuite; -class CTFAEntryPoint; - -/** -* Base class for test suite adapter implementations -*/ -//NONSHARABLE_CLASS( CTFATestSuiteAdapter ): public CBase, public MTFATestSuiteAdapter -class CTFATestSuiteAdapter : public CBase, public MTFATestSuiteAdapter - { - protected: - /** - * Constructor - * @param aTestSuite The test suite to be wrapped into this adapter - * @param aEntryPoint The entry point object. The entry point is non-NULL - * if this adapter is the root adapter. The root adapter stores the entry - * point and deletes it in its destructor. - */ - IMPORT_C CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - public: - /** - * Destructor - */ - IMPORT_C ~CTFATestSuiteAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFATestSuiteAdapter( const CTFATestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFATestSuiteAdapter& operator=( const CTFATestSuiteAdapter& aAdapter ); - - public: - /** - * Adds a test adapter to this suite. The adapter may be a sub-suite or a test case - */ - IMPORT_C virtual void AddL( MTFATestAdapter& aAdapter ); - - public: - /** - * Returns ETFATestTypeSuite - */ - IMPORT_C TTFATestType Type( void ) const; - - protected: - CTFATestSuite& iTestSuite; - RPointerArray iTests; - CTFAEntryPoint* iEntryPoint; - }; - -#endif +/* +* 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: Declaration of CTFATestSuiteAdapter class +* +*/ + + +#ifndef __CTFATESTSUITEADAPTER_H__ +#define __CTFATESTSUITEADAPTER_H__ + +#include +#include "mtfatestsuiteadapter.h" + +class CTFATestSuite; +class CTFAEntryPoint; + +/** +* Base class for test suite adapter implementations +*/ +//NONSHARABLE_CLASS( CTFATestSuiteAdapter ): public CBase, public MTFATestSuiteAdapter +class CTFATestSuiteAdapter : public CBase, public MTFATestSuiteAdapter + { + protected: + /** + * Constructor + * @param aTestSuite The test suite to be wrapped into this adapter + * @param aEntryPoint The entry point object. The entry point is non-NULL + * if this adapter is the root adapter. The root adapter stores the entry + * point and deletes it in its destructor. + */ + IMPORT_C CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + public: + /** + * Destructor + */ + IMPORT_C ~CTFATestSuiteAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFATestSuiteAdapter( const CTFATestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFATestSuiteAdapter& operator=( const CTFATestSuiteAdapter& aAdapter ); + + public: + /** + * Adds a test adapter to this suite. The adapter may be a sub-suite or a test case + */ + IMPORT_C virtual void AddL( MTFATestAdapter& aAdapter ); + + public: + /** + * Returns ETFATestTypeSuite + */ + IMPORT_C TTFATestType Type( void ) const; + + protected: + CTFATestSuite& iTestSuite; + RPointerArray iTests; + CTFAEntryPoint* iEntryPoint; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatesttimer.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatesttimer.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfatesttimer.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,69 +1,69 @@ -/* -* 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: Declaration of CTFATestTimer class -* -*/ - - -#ifndef __CTFATESTTIMER_H__ -#define __CTFATESTTIMER_H__ - -#include - -class MTFAActiveTest; - -/** -* A timer utility class -*/ -class CTFATestTimer : public CTimer - { - public: - /** - * Creates a new timer. - * @param aCallback ActiveTestRunL of the callback interface is called when timer completes - */ - IMPORT_C static CTFATestTimer* NewL( MTFAActiveTest& aCallback ); - - /** - * Destructor - */ - IMPORT_C ~CTFATestTimer( void ); - - private: - /** - * Constructor - */ - CTFATestTimer( MTFAActiveTest& aCallback ); - - /** - * Copy constructor is hidden - */ - CTFATestTimer( const CTFATestTimer& aTimer ); - - /** - * Assignment operator is hidden - */ - CTFATestTimer& operator=( const CTFATestTimer& aTimer ); - - protected: - /** - * Called by active scheduler. Calls ActiveTestRunL of the callback interface. - */ - void RunL( void ); - - private: - MTFAActiveTest& iCallback; - }; - -#endif +/* +* 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: Declaration of CTFATestTimer class +* +*/ + + +#ifndef __CTFATESTTIMER_H__ +#define __CTFATESTTIMER_H__ + +#include + +class MTFAActiveTest; + +/** +* A timer utility class +*/ +class CTFATestTimer : public CTimer + { + public: + /** + * Creates a new timer. + * @param aCallback ActiveTestRunL of the callback interface is called when timer completes + */ + IMPORT_C static CTFATestTimer* NewL( MTFAActiveTest& aCallback ); + + /** + * Destructor + */ + IMPORT_C ~CTFATestTimer( void ); + + private: + /** + * Constructor + */ + CTFATestTimer( MTFAActiveTest& aCallback ); + + /** + * Copy constructor is hidden + */ + CTFATestTimer( const CTFATestTimer& aTimer ); + + /** + * Assignment operator is hidden + */ + CTFATestTimer& operator=( const CTFATestTimer& aTimer ); + + protected: + /** + * Called by active scheduler. Calls ActiveTestRunL of the callback interface. + */ + void RunL( void ); + + private: + MTFAActiveTest& iCallback; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctffactory.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctffactory.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctffactory.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,144 +1,144 @@ -/* -* 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: Declaration of CTFFactory class -* -*/ - - -#ifndef __CTFFACTORY_H__ -#define __CTFFACTORY_H__ - -#include -#include "ctfstubmoduleinterface.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFATestSuite; -class CTFStubControl; -class CTFStub; -class CTFTestServer; - -/** -* CTFFactory is a singleton class stored in thread-local storage of the test framework. -* The entry point calls BuildTestSuiteL when the test framework DLL is loaded. -* BuildTestSuiteL loads the plug-in modules and fetches the test cases from them. -*/ -class CTFFactory : public CBase - { - public: - /** - * Creates a new CTFFactory - */ - static CTFFactory* NewL( void ); - - /** - * Destructor - */ - ~CTFFactory( void ); - - private: - /** - * C++ constructor - */ - CTFFactory( void ); - - /** - * Symbian constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFFactory( const CTFFactory& aFactory ); - - /** - * Assignment operator is hidden - */ - CTFFactory& operator=( const CTFFactory& aFactory ); - - public: - /** - * Gets the stub that has the given plug-in module stub type identifier - */ - IMPORT_C static CTFStub* Stub( TInt aType ); - - /** - * Calls a stub in remote process asynchronously. - */ - IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); - - /** - * Calls a stub in remote process synchronously. - */ - IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - /** - * Calls a stub in local process. This can be used to generate a RMessage object to the stub. - */ - IMPORT_C static void CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - public: - /** - * Returns the stub controller interface. - */ - IMPORT_C MTFStubControl* StubControl( void ); - - /** - * Loads the plug-in modules and uses them to create test cases. - * @param aRootSuite The root test suite - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the stub that has the given plug-in module stub type identifier - */ - CTFStub* InternalStub( TInt aType ); - - private: - /** - * Loads the plug-in modules and uses them to create test cases. - */ - void BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ); - - /** - * Initializes the test cases of given test suite. This is called - * for each test suite obtained from plug-in modules. - */ - void InitializeTestCasesL( CTFATestSuite* aSuite ); - - /** - * Thread function for the test server - * @param aData Pointer to this factory - * @return Symbian error code - */ - static TInt ServerThreadFunction( TAny* aData ); - static void ServerThreadFunctionL( CTFFactory* aFactory ); - - /** - * Thread function for calls to the local the test server - * @param aData Pointer to this factory - * @return Symbian error code - */ - static TInt LocalThreadFunction( TAny* aData ); - static void LocalThreadFunctionL( struct TTFThreadParam* aData ); - - protected: - CTFStubControl* iStubControl; - RImplInfoPtrArray iPluginInfos ; - RPointerArray iPlugins; - CTFTestServer* iTestServer; - }; - -#endif +/* +* 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: Declaration of CTFFactory class +* +*/ + + +#ifndef __CTFFACTORY_H__ +#define __CTFFACTORY_H__ + +#include +#include "ctfstubmoduleinterface.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFATestSuite; +class CTFStubControl; +class CTFStub; +class CTFTestServer; + +/** +* CTFFactory is a singleton class stored in thread-local storage of the test framework. +* The entry point calls BuildTestSuiteL when the test framework DLL is loaded. +* BuildTestSuiteL loads the plug-in modules and fetches the test cases from them. +*/ +class CTFFactory : public CBase + { + public: + /** + * Creates a new CTFFactory + */ + static CTFFactory* NewL( void ); + + /** + * Destructor + */ + ~CTFFactory( void ); + + private: + /** + * C++ constructor + */ + CTFFactory( void ); + + /** + * Symbian constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFFactory( const CTFFactory& aFactory ); + + /** + * Assignment operator is hidden + */ + CTFFactory& operator=( const CTFFactory& aFactory ); + + public: + /** + * Gets the stub that has the given plug-in module stub type identifier + */ + IMPORT_C static CTFStub* Stub( TInt aType ); + + /** + * Calls a stub in remote process asynchronously. + */ + IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); + + /** + * Calls a stub in remote process synchronously. + */ + IMPORT_C static void CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + /** + * Calls a stub in local process. This can be used to generate a RMessage object to the stub. + */ + IMPORT_C static void CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + public: + /** + * Returns the stub controller interface. + */ + IMPORT_C MTFStubControl* StubControl( void ); + + /** + * Loads the plug-in modules and uses them to create test cases. + * @param aRootSuite The root test suite + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the stub that has the given plug-in module stub type identifier + */ + CTFStub* InternalStub( TInt aType ); + + private: + /** + * Loads the plug-in modules and uses them to create test cases. + */ + void BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ); + + /** + * Initializes the test cases of given test suite. This is called + * for each test suite obtained from plug-in modules. + */ + void InitializeTestCasesL( CTFATestSuite* aSuite ); + + /** + * Thread function for the test server + * @param aData Pointer to this factory + * @return Symbian error code + */ + static TInt ServerThreadFunction( TAny* aData ); + static void ServerThreadFunctionL( CTFFactory* aFactory ); + + /** + * Thread function for calls to the local the test server + * @param aData Pointer to this factory + * @return Symbian error code + */ + static TInt LocalThreadFunction( TAny* aData ); + static void LocalThreadFunctionL( struct TTFThreadParam* aData ); + + protected: + CTFStubControl* iStubControl; + RImplInfoPtrArray iPluginInfos ; + RPointerArray iPlugins; + CTFTestServer* iTestServer; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfremotestub.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfremotestub.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfremotestub.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of CTFRemoteStub class -* -*/ - - -#ifndef __CTFREMOTESTUB_H__ -#define __CTFREMOTESTUB_H__ - -#include "ctfstub.h" - -class CTFRemoteStub : public CTFStub - { - public: - /** - * Constructor - * @param aStubType The plug-in module identifier - */ - IMPORT_C CTFRemoteStub( TInt aStubType ); - - /** - * Destructor - */ - IMPORT_C ~CTFRemoteStub( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFRemoteStub( const CTFStub& aStub ); - - /** - * Assignment operator is hidden - */ - CTFRemoteStub& operator=( const CTFStub& aStub ); - - public: - /** - * Return ETrue - */ - TBool IsRemoteStub( void ) { return ETrue; } - - /** - * Processes a message and completes it. It is not necessary to - * complete the message immediately. - */ - virtual void ProcessMessageAndCompleteL( const RMessage2& aMessage ) = 0; - - /** - * Notifies the stub that the asynchronous message passed to - * ProcessMessageAndCompleteL has been completed with given - * status. This can be used to complete the test case. - */ - virtual void MessageCompleteL( TInt aResult ) = 0; - }; - - -#endif +/* +* 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: Declaration of CTFRemoteStub class +* +*/ + + +#ifndef __CTFREMOTESTUB_H__ +#define __CTFREMOTESTUB_H__ + +#include "ctfstub.h" + +class CTFRemoteStub : public CTFStub + { + public: + /** + * Constructor + * @param aStubType The plug-in module identifier + */ + IMPORT_C CTFRemoteStub( TInt aStubType ); + + /** + * Destructor + */ + IMPORT_C ~CTFRemoteStub( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFRemoteStub( const CTFStub& aStub ); + + /** + * Assignment operator is hidden + */ + CTFRemoteStub& operator=( const CTFStub& aStub ); + + public: + /** + * Return ETrue + */ + TBool IsRemoteStub( void ) { return ETrue; } + + /** + * Processes a message and completes it. It is not necessary to + * complete the message immediately. + */ + virtual void ProcessMessageAndCompleteL( const RMessage2& aMessage ) = 0; + + /** + * Notifies the stub that the asynchronous message passed to + * ProcessMessageAndCompleteL has been completed with given + * status. This can be used to complete the test case. + */ + virtual void MessageCompleteL( TInt aResult ) = 0; + }; + + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstub.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstub.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstub.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,94 +1,94 @@ -/* -* 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: Declaration of CTFStub class -* -*/ - - -#ifndef __CTFSTUB_H__ -#define __CTFSTUB_H__ - -#include - -class MTFStubInterface; -class MTFStubTestCase; - -/** -* Base class that needs to be implemented in the plug-in modules -*/ -class CTFStub : public CBase - { - public: - /** - * Constructor - * @param aStubType The plug-in module identifier - */ - IMPORT_C CTFStub( TInt aStubType ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStub( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStub( const CTFStub& aStub ); - - /** - * Assignment operator is hidden - */ - CTFStub& operator=( const CTFStub& aStub ); - - public: - /** - * Called when this stub has been added to the controller. - */ - virtual void InitializeL( void ) = 0; - - /** - * Called by the factory to determine if this stub - * is an instance of CTFRemoteStub class. - */ - virtual TBool IsRemoteStub( void ) { return EFalse; } - - /** - * Returns the plug-in specific part from currently active test case - */ - IMPORT_C MTFStubTestCase* CurrentTestCase( void ); - - /** - * Returns the ID of the currently executing test case - */ - IMPORT_C TInt CurrentTestCaseID( void ); - - public: - /** - * Gets the type passed to constructor - */ - TInt Type( void ) const; - - /** - * Sets the controller callback interface. This is called by - * the framework after the stub has been obtained from the plug-in module. - */ - void SetStubControl( MTFStubInterface* aStubControl ); - - private: - TInt iStubType; - MTFStubInterface* iStubControl; - }; - -#endif +/* +* 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: Declaration of CTFStub class +* +*/ + + +#ifndef __CTFSTUB_H__ +#define __CTFSTUB_H__ + +#include + +class MTFStubInterface; +class MTFStubTestCase; + +/** +* Base class that needs to be implemented in the plug-in modules +*/ +class CTFStub : public CBase + { + public: + /** + * Constructor + * @param aStubType The plug-in module identifier + */ + IMPORT_C CTFStub( TInt aStubType ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStub( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStub( const CTFStub& aStub ); + + /** + * Assignment operator is hidden + */ + CTFStub& operator=( const CTFStub& aStub ); + + public: + /** + * Called when this stub has been added to the controller. + */ + virtual void InitializeL( void ) = 0; + + /** + * Called by the factory to determine if this stub + * is an instance of CTFRemoteStub class. + */ + virtual TBool IsRemoteStub( void ) { return EFalse; } + + /** + * Returns the plug-in specific part from currently active test case + */ + IMPORT_C MTFStubTestCase* CurrentTestCase( void ); + + /** + * Returns the ID of the currently executing test case + */ + IMPORT_C TInt CurrentTestCaseID( void ); + + public: + /** + * Gets the type passed to constructor + */ + TInt Type( void ) const; + + /** + * Sets the controller callback interface. This is called by + * the framework after the stub has been obtained from the plug-in module. + */ + void SetStubControl( MTFStubInterface* aStubControl ); + + private: + TInt iStubType; + MTFStubInterface* iStubControl; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubcontrol.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,99 +1,99 @@ -/* -* 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: Declaration of CTFStubControl class -* -*/ - - -#ifndef __CTFSTUBCONTROL_H__ -#define __CTFSTUBCONTROL_H__ - -#include -#include "mtfstubinterface.h" -#include "mtfstubcontrol.h" - -/** -* Stub controller contains a list of CTFStub objects obtained from the plug-in modules -*/ -NONSHARABLE_CLASS( CTFStubControl ): public CBase, public MTFStubInterface, public MTFStubControl - { - public: - /** - * Creates a stub controller - */ - static CTFStubControl* NewL( void ); - - /** - * Destructor - */ - virtual ~CTFStubControl( void ); - - private: - /** - * Default constructor - */ - CTFStubControl( void ); - - /** - * Copy constructor is hidden - */ - CTFStubControl( const CTFStubControl& aControl ); - - /** - * Assignment operator is hidden - */ - CTFStubControl& operator=( const CTFStubControl& aControl ); - - public: - /** - * Sets the currently executing test case - */ - void SetCurrentTestCase( MTFTestCase* aTestCase ); - - /** - * Returns the stub object that has the given plug-in module identifier - */ - CTFStub* Stub( TInt aStubType ); - - /** - * Adds a stub to this controller - */ - void AddStubL( CTFStub& aStub ); - - /** - * Returns the stub count - */ - TInt Count( void ) const; - - /** - * Returns the stub object at the given index - */ - CTFStub* StubAt( TInt aIndex ); - - /** - * Returns the plug-in specific part from the currently executing test case - */ - MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ); - - /** - * Returns the ID of the currently executing test case - */ - TInt CurrentTestCaseID( void ); - - private: - RPointerArray iStubs; - MTFTestCase* iCurrentTestCase; - }; - -#endif +/* +* 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: Declaration of CTFStubControl class +* +*/ + + +#ifndef __CTFSTUBCONTROL_H__ +#define __CTFSTUBCONTROL_H__ + +#include +#include "mtfstubinterface.h" +#include "mtfstubcontrol.h" + +/** +* Stub controller contains a list of CTFStub objects obtained from the plug-in modules +*/ +NONSHARABLE_CLASS( CTFStubControl ): public CBase, public MTFStubInterface, public MTFStubControl + { + public: + /** + * Creates a stub controller + */ + static CTFStubControl* NewL( void ); + + /** + * Destructor + */ + virtual ~CTFStubControl( void ); + + private: + /** + * Default constructor + */ + CTFStubControl( void ); + + /** + * Copy constructor is hidden + */ + CTFStubControl( const CTFStubControl& aControl ); + + /** + * Assignment operator is hidden + */ + CTFStubControl& operator=( const CTFStubControl& aControl ); + + public: + /** + * Sets the currently executing test case + */ + void SetCurrentTestCase( MTFTestCase* aTestCase ); + + /** + * Returns the stub object that has the given plug-in module identifier + */ + CTFStub* Stub( TInt aStubType ); + + /** + * Adds a stub to this controller + */ + void AddStubL( CTFStub& aStub ); + + /** + * Returns the stub count + */ + TInt Count( void ) const; + + /** + * Returns the stub object at the given index + */ + CTFStub* StubAt( TInt aIndex ); + + /** + * Returns the plug-in specific part from the currently executing test case + */ + MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ); + + /** + * Returns the ID of the currently executing test case + */ + TInt CurrentTestCaseID( void ); + + private: + RPointerArray iStubs; + MTFTestCase* iCurrentTestCase; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,106 +1,106 @@ -/* -* 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: Declaration of CTFStubModuleInterface class -* -*/ - - -#ifndef __CTFSTUBMODULEINTERFACE_H__ -#define __CTFSTUBMODULEINTERFACE_H__ - -// INCLUDES -#include -#include -#include -#include "ctfstub.h" -#include "ctfatestsuite.h" - -// MACROS - -// CONSTANTS -const TUid KCTFStubModuleInterfaceUid = { 0x10200c7d }; - -// CLASS DECLARATION - -/** -* An abstract base class being representative of the concrete class which -* the client wishes to use. -*/ -NONSHARABLE_CLASS( CTFStubModuleInterface ): public CBase - { - public: // Data types - /** - * For passing initialisation parameters to the derived class - * constructor. - */ - struct TInterfaceInitParams - { - TInt integer; - const TDesC* descriptor; - }; - - public: // Constructors and destructor - /** - * Two-phased constructor. - * @param aMatchString Resolver parameters. - * @return The created object. - */ - static CTFStubModuleInterface* NewL( const TDesC8& aMatchString ); - - /** - * Destructor - */ - virtual ~CTFStubModuleInterface(); - - public: // New functions - /** - * Request a list of all available implementations which satisfy - * this given interface. - * @param aImplInfoArray A pointer to the available implementations. - */ - static void ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ); - - public: // Virtual functions to be implemented - /** - * Gets the stub implementation of this plug-in module - */ - virtual CTFStub* GetStubL( void ) = 0; - - /** - * Builds the test suite of this plug-in module. - */ - virtual void BuildTestSuiteL( CTFATestSuite* aRootSuite ) = 0; - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - virtual MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ) = 0; - - protected: // Constructor - /** - * C++ default constructor. - */ - inline CTFStubModuleInterface( void ); - - private: // Data - TUid iDtor_ID_Key; - - }; - -// INLINE FUNCTIONS -#include "ctfstubmoduleinterface.inl" - -#endif // __CTFSTUBMODULEINTERFACE_H__ - -// End of File +/* +* 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: Declaration of CTFStubModuleInterface class +* +*/ + + +#ifndef __CTFSTUBMODULEINTERFACE_H__ +#define __CTFSTUBMODULEINTERFACE_H__ + +// INCLUDES +#include +#include +#include +#include "ctfstub.h" +#include "ctfatestsuite.h" + +// MACROS + +// CONSTANTS +const TUid KCTFStubModuleInterfaceUid = { 0x10200c7d }; + +// CLASS DECLARATION + +/** +* An abstract base class being representative of the concrete class which +* the client wishes to use. +*/ +NONSHARABLE_CLASS( CTFStubModuleInterface ): public CBase + { + public: // Data types + /** + * For passing initialisation parameters to the derived class + * constructor. + */ + struct TInterfaceInitParams + { + TInt integer; + const TDesC* descriptor; + }; + + public: // Constructors and destructor + /** + * Two-phased constructor. + * @param aMatchString Resolver parameters. + * @return The created object. + */ + static CTFStubModuleInterface* NewL( const TDesC8& aMatchString ); + + /** + * Destructor + */ + virtual ~CTFStubModuleInterface(); + + public: // New functions + /** + * Request a list of all available implementations which satisfy + * this given interface. + * @param aImplInfoArray A pointer to the available implementations. + */ + static void ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ); + + public: // Virtual functions to be implemented + /** + * Gets the stub implementation of this plug-in module + */ + virtual CTFStub* GetStubL( void ) = 0; + + /** + * Builds the test suite of this plug-in module. + */ + virtual void BuildTestSuiteL( CTFATestSuite* aRootSuite ) = 0; + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + virtual MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ) = 0; + + protected: // Constructor + /** + * C++ default constructor. + */ + inline CTFStubModuleInterface( void ); + + private: // Data + TUid iDtor_ID_Key; + + }; + +// INLINE FUNCTIONS +#include "ctfstubmoduleinterface.inl" + +#endif // __CTFSTUBMODULEINTERFACE_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.inl --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.inl Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubmoduleinterface.inl Thu Jul 01 11:20:10 2010 +0300 @@ -1,67 +1,67 @@ -/* -* Copyright (c) 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: Declaration of CTFStubModuleInterface inline functions -* -*/ - - -// ================= MEMBER FUNCTIONS ======================= - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::CTFStubModuleInterface -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface::CTFStubModuleInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::NewL -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface* CTFStubModuleInterface::NewL( const TDesC8& aMatchString ) - { - TEComResolverParams resolverParams; - resolverParams.SetDataType( aMatchString ); - resolverParams.SetWildcardMatch( ETrue ); - - TInterfaceInitParams initParams; - initParams.integer = 0; - initParams.descriptor = NULL; - - return REINTERPRET_CAST( CTFStubModuleInterface*, - REComSession::CreateImplementationL( - KCTFStubModuleInterfaceUid, _FOFF( CTFStubModuleInterface, iDtor_ID_Key ), - &initParams, - resolverParams ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubModuleInterface::~CTFStubModuleInterface -// ----------------------------------------------------------------------------- -inline CTFStubModuleInterface::~CTFStubModuleInterface( void ) - { - REComSession::DestroyedImplementation( iDtor_ID_Key ); - } - - -// --------------------------------------------------------- -// CTFStubModuleInterface::ListAllImplementationsL -// --------------------------------------------------------- -inline void CTFStubModuleInterface::ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ) - { - REComSession::ListImplementationsL( KCTFStubModuleInterfaceUid, aImplInfoArray ); - } - -// End of File +/* +* Copyright (c) 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: Declaration of CTFStubModuleInterface inline functions +* +*/ + + +// ================= MEMBER FUNCTIONS ======================= + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::CTFStubModuleInterface +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface::CTFStubModuleInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::NewL +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface* CTFStubModuleInterface::NewL( const TDesC8& aMatchString ) + { + TEComResolverParams resolverParams; + resolverParams.SetDataType( aMatchString ); + resolverParams.SetWildcardMatch( ETrue ); + + TInterfaceInitParams initParams; + initParams.integer = 0; + initParams.descriptor = NULL; + + return REINTERPRET_CAST( CTFStubModuleInterface*, + REComSession::CreateImplementationL( + KCTFStubModuleInterfaceUid, _FOFF( CTFStubModuleInterface, iDtor_ID_Key ), + &initParams, + resolverParams ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubModuleInterface::~CTFStubModuleInterface +// ----------------------------------------------------------------------------- +inline CTFStubModuleInterface::~CTFStubModuleInterface( void ) + { + REComSession::DestroyedImplementation( iDtor_ID_Key ); + } + + +// --------------------------------------------------------- +// CTFStubModuleInterface::ListAllImplementationsL +// --------------------------------------------------------- +inline void CTFStubModuleInterface::ListAllImplementationsL( RImplInfoPtrArray& aImplInfoArray ) + { + REComSession::ListImplementationsL( KCTFStubModuleInterfaceUid, aImplInfoArray ); + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcase.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,126 +1,126 @@ -/* -* 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: Declaration of CTFStubTestCase class -* -*/ - - -#ifndef __CTFSTUBTESTCASE_H__ -#define __CTFSTUBTESTCASE_H__ - -#include -#include "mtfstubtestcase.h" - -class CTFATestLog; - -/** -* Base class for plug-in specific test case implementations -*/ -class CTFStubTestCase : public CBase, public MTFStubTestCase - { - public: - /** - * Constructor - * @param aTestCaseType The plug-in module identifier - */ - IMPORT_C CTFStubTestCase( TInt aTestCaseType ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStubTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStubTestCase( const CTFStubTestCase& aCase ); - - /** - * Assignment operator is hidden - */ - CTFStubTestCase& operator=( const CTFStubTestCase& aCase ); - - public: - /** - * Sets the callback interface that is used to complete the plug-in specific test case - */ - IMPORT_C virtual void SetCallback( MTFTestCaseInterface& aCallback ); - - /** - * Returns the type passed into constructor - */ - IMPORT_C virtual TInt Type( void ); - - /** - * Initializes this test case. The subclass can add initialization - * code into the InitL method, which is called from this method. - */ - IMPORT_C virtual void SetupL( void ); - - /** - * Returns ETrue if CompleteTest has been called. EFalse otherwise - */ - IMPORT_C virtual TBool IsComplete( void ); - - /** - * Stores the stub into iStub variable accessible to subclasses - */ - IMPORT_C virtual void SetStub( CTFStub& aStub ); - - protected: - /** - * Called by subclasses to complete the test - */ - IMPORT_C virtual void CompleteTest( TInt aTestResult ); - - /** - * Returns the test case logger - */ - IMPORT_C virtual CTFATestLog& Logger( void ); - - protected: - /** - * Logs this test case - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Subclass initialization code - */ - virtual void InitL( void ) = 0; - - /** - * Runs the test case - */ - virtual void RunL( void ) = 0; - - /** - * Closes this test case - */ - virtual void Teardown( void ) = 0; - - protected: - /** - * Stub object is accessible to subclasses - */ - CTFStub* iStub; - - private: - MTFTestCaseInterface* iCallback; - TInt iTestCaseType; - TBool iComplete; - }; - -#endif +/* +* 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: Declaration of CTFStubTestCase class +* +*/ + + +#ifndef __CTFSTUBTESTCASE_H__ +#define __CTFSTUBTESTCASE_H__ + +#include +#include "mtfstubtestcase.h" + +class CTFATestLog; + +/** +* Base class for plug-in specific test case implementations +*/ +class CTFStubTestCase : public CBase, public MTFStubTestCase + { + public: + /** + * Constructor + * @param aTestCaseType The plug-in module identifier + */ + IMPORT_C CTFStubTestCase( TInt aTestCaseType ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStubTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStubTestCase( const CTFStubTestCase& aCase ); + + /** + * Assignment operator is hidden + */ + CTFStubTestCase& operator=( const CTFStubTestCase& aCase ); + + public: + /** + * Sets the callback interface that is used to complete the plug-in specific test case + */ + IMPORT_C virtual void SetCallback( MTFTestCaseInterface& aCallback ); + + /** + * Returns the type passed into constructor + */ + IMPORT_C virtual TInt Type( void ); + + /** + * Initializes this test case. The subclass can add initialization + * code into the InitL method, which is called from this method. + */ + IMPORT_C virtual void SetupL( void ); + + /** + * Returns ETrue if CompleteTest has been called. EFalse otherwise + */ + IMPORT_C virtual TBool IsComplete( void ); + + /** + * Stores the stub into iStub variable accessible to subclasses + */ + IMPORT_C virtual void SetStub( CTFStub& aStub ); + + protected: + /** + * Called by subclasses to complete the test + */ + IMPORT_C virtual void CompleteTest( TInt aTestResult ); + + /** + * Returns the test case logger + */ + IMPORT_C virtual CTFATestLog& Logger( void ); + + protected: + /** + * Logs this test case + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Subclass initialization code + */ + virtual void InitL( void ) = 0; + + /** + * Runs the test case + */ + virtual void RunL( void ) = 0; + + /** + * Closes this test case + */ + virtual void Teardown( void ) = 0; + + protected: + /** + * Stub object is accessible to subclasses + */ + CTFStub* iStub; + + private: + MTFTestCaseInterface* iCallback; + TInt iTestCaseType; + TBool iComplete; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcaseparam.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcaseparam.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctfstubtestcaseparam.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,52 +1,52 @@ -/* -* 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: Declaration of CTFStubTestCaseParam class -* -*/ - - -#ifndef __CTFSTUBTESTCASEPARAM_H__ -#define __CTFSTUBTESTCASEPARAM_H__ - -#include - -/** -* Root class for plug-in specific test case parameters -*/ -class CTFStubTestCaseParam : public CBase - { - public: - /** - * Default constructor - */ - IMPORT_C CTFStubTestCaseParam( void ); - - /** - * Destructor - */ - IMPORT_C virtual ~CTFStubTestCaseParam( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFStubTestCaseParam( const CTFStubTestCaseParam& aParam ); - - /** - * Assignment operator is hidden - */ - CTFStubTestCaseParam& operator=( const CTFStubTestCaseParam& aParam ); - }; - -#endif +/* +* 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: Declaration of CTFStubTestCaseParam class +* +*/ + + +#ifndef __CTFSTUBTESTCASEPARAM_H__ +#define __CTFSTUBTESTCASEPARAM_H__ + +#include + +/** +* Root class for plug-in specific test case parameters +*/ +class CTFStubTestCaseParam : public CBase + { + public: + /** + * Default constructor + */ + IMPORT_C CTFStubTestCaseParam( void ); + + /** + * Destructor + */ + IMPORT_C virtual ~CTFStubTestCaseParam( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFStubTestCaseParam( const CTFStubTestCaseParam& aParam ); + + /** + * Assignment operator is hidden + */ + CTFStubTestCaseParam& operator=( const CTFStubTestCaseParam& aParam ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcaserepeater.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcaserepeater.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcaserepeater.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,105 +1,105 @@ -/* -* 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: Declaration of CTFTestCaseRepeater classes -* -*/ - - -#ifndef __CTFTESTCASEREPEATER_H__ -#define __CTFTESTCASEREPEATER_H__ - -#include "ctfatestcase.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFATestSuite; -class CTFATestLog; - -/** -* Implementation of repeater and randomizer test cases. -*/ -class CTFTestCaseRepeater : public CTFATestCase - { - public: - /** - * Constructor - * @param aCaseId The test case ID - * @param aName The test case name - * @param aSuite The test suite which contains the tests to be run with this repeater - * @param aRepeatCount Number of times to run tests - * @param aRandomRepeat If ETrue, tests are run in random order - */ - IMPORT_C CTFTestCaseRepeater( TInt aCaseId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ); - - /** - * Destructor - */ - virtual ~CTFTestCaseRepeater( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFTestCaseRepeater( const CTFTestCaseRepeater& aCase ); - - /** - * Assignment operator is hidden - */ - CTFTestCaseRepeater& operator=( const CTFTestCaseRepeater& aCase ); - - public: - /** - * Sets the test environment to this test case - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Returns ETFTestTypeStubRepeater - */ - TTFATestType Type( void ) const; - - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Prepares each test case within the test suite - */ - void SetupL( void ); - - /** - * Runs the test cases - */ - void RunTestL( void ); - - /** - * Closes each test case within the test suite - */ - void Teardown( void ); - - private: - /** - * Returns the test logger - */ - CTFATestLog& Logger( void ); - - private: - CTFATestSuite* iSuite; - TInt iRepeatCount; - TBool iRandomRepeat; - }; - -#endif +/* +* 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: Declaration of CTFTestCaseRepeater classes +* +*/ + + +#ifndef __CTFTESTCASEREPEATER_H__ +#define __CTFTESTCASEREPEATER_H__ + +#include "ctfatestcase.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFATestSuite; +class CTFATestLog; + +/** +* Implementation of repeater and randomizer test cases. +*/ +class CTFTestCaseRepeater : public CTFATestCase + { + public: + /** + * Constructor + * @param aCaseId The test case ID + * @param aName The test case name + * @param aSuite The test suite which contains the tests to be run with this repeater + * @param aRepeatCount Number of times to run tests + * @param aRandomRepeat If ETrue, tests are run in random order + */ + IMPORT_C CTFTestCaseRepeater( TInt aCaseId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ); + + /** + * Destructor + */ + virtual ~CTFTestCaseRepeater( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFTestCaseRepeater( const CTFTestCaseRepeater& aCase ); + + /** + * Assignment operator is hidden + */ + CTFTestCaseRepeater& operator=( const CTFTestCaseRepeater& aCase ); + + public: + /** + * Sets the test environment to this test case + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Returns ETFTestTypeStubRepeater + */ + TTFATestType Type( void ) const; + + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Prepares each test case within the test suite + */ + void SetupL( void ); + + /** + * Runs the test cases + */ + void RunTestL( void ); + + /** + * Closes each test case within the test suite + */ + void Teardown( void ); + + private: + /** + * Returns the test logger + */ + CTFATestLog& Logger( void ); + + private: + CTFATestSuite* iSuite; + TInt iRepeatCount; + TBool iRandomRepeat; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcasewrapper.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcasewrapper.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestcasewrapper.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,132 +1,132 @@ -/* -* 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: Declaration of CTFTestCaseWrapper classes -* -*/ - - -#ifndef __CTFTESTCASEWRAPPER_H__ -#define __CTFTESTCASEWRAPPER_H__ - -#include "ctfatestcase.h" -#include "mtftestcase.h" -#include "mtftestcaseinterface.h" -#include "mtfaactivetest.h" - -class MTFStubControl; -class MTFStubTestCase; -class CTFFactory; -class CTFATestTimer; - -/** -* Implementation of a test case that contains plug-in specific parts. -*/ -class CTFTestCaseWrapper : public CTFATestCase, public MTFTestCase, public MTFTestCaseInterface, public MTFAActiveTest - { - public: - /** - * Constructor. - * @param aCaseId The test case identifier - * @param aName The name of the test case - */ - IMPORT_C CTFTestCaseWrapper( TInt aCaseId, const TDesC& aName ); - - /** - * Destructor - */ - virtual ~CTFTestCaseWrapper( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFTestCaseWrapper( const CTFTestCaseWrapper& aCase ); - - /** - * Assignment operator is hidden - */ - CTFTestCaseWrapper& operator=( const CTFTestCaseWrapper& aCase ); - - public: - /** - * Adds a plug-in specific part to this test case - */ - IMPORT_C void AddStubTestCaseL( MTFStubTestCase& aTestCase ); - - /** - * Sets the test environment to this test case - */ - IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); - - public: - /** - * Returns the plug-in specific part that has the given plug-in identifier - */ - MTFStubTestCase* TestCase( TInt aTestCaseType ); - - /** - * Returns the ID of this test case - */ - TInt TestCaseID( void ) const; - - /** - * Called by the plug-in specific parts when they complete - */ - void TestComplete( TInt aTestResult ); - - /** - * Returns the test case logger - */ - CTFATestLog& Logger( void ); - - /** - * Logs this test case - */ - void Log( TInt aDepth ); - - /** - * Initializes this test case - */ - void SetupL( void ); - - /** - * Runs this test case - */ - void RunTestL( void ); - - /** - * Closes this test case - */ - void Teardown( void ); - - /** - * Returns ETFTestTypeStubWrapper - */ - TTFATestType Type( void ) const; - - /** - * Timeout handler - */ - void ActiveTestRunL( void ); - - private: - MTFStubControl* iStubControl; - CTFFactory* iFactory; - CTFATestTimer* iTimer; - RPointerArray iTestCases; - TBool iWaitStarted; - TInt iTestResult; - }; - -#endif +/* +* 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: Declaration of CTFTestCaseWrapper classes +* +*/ + + +#ifndef __CTFTESTCASEWRAPPER_H__ +#define __CTFTESTCASEWRAPPER_H__ + +#include "ctfatestcase.h" +#include "mtftestcase.h" +#include "mtftestcaseinterface.h" +#include "mtfaactivetest.h" + +class MTFStubControl; +class MTFStubTestCase; +class CTFFactory; +class CTFATestTimer; + +/** +* Implementation of a test case that contains plug-in specific parts. +*/ +class CTFTestCaseWrapper : public CTFATestCase, public MTFTestCase, public MTFTestCaseInterface, public MTFAActiveTest + { + public: + /** + * Constructor. + * @param aCaseId The test case identifier + * @param aName The name of the test case + */ + IMPORT_C CTFTestCaseWrapper( TInt aCaseId, const TDesC& aName ); + + /** + * Destructor + */ + virtual ~CTFTestCaseWrapper( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFTestCaseWrapper( const CTFTestCaseWrapper& aCase ); + + /** + * Assignment operator is hidden + */ + CTFTestCaseWrapper& operator=( const CTFTestCaseWrapper& aCase ); + + public: + /** + * Adds a plug-in specific part to this test case + */ + IMPORT_C void AddStubTestCaseL( MTFStubTestCase& aTestCase ); + + /** + * Sets the test environment to this test case + */ + IMPORT_C void SetEnvironment( CTFATestEnvironment& aEnvironment ); + + public: + /** + * Returns the plug-in specific part that has the given plug-in identifier + */ + MTFStubTestCase* TestCase( TInt aTestCaseType ); + + /** + * Returns the ID of this test case + */ + TInt TestCaseID( void ) const; + + /** + * Called by the plug-in specific parts when they complete + */ + void TestComplete( TInt aTestResult ); + + /** + * Returns the test case logger + */ + CTFATestLog& Logger( void ); + + /** + * Logs this test case + */ + void Log( TInt aDepth ); + + /** + * Initializes this test case + */ + void SetupL( void ); + + /** + * Runs this test case + */ + void RunTestL( void ); + + /** + * Closes this test case + */ + void Teardown( void ); + + /** + * Returns ETFTestTypeStubWrapper + */ + TTFATestType Type( void ) const; + + /** + * Timeout handler + */ + void ActiveTestRunL( void ); + + private: + MTFStubControl* iStubControl; + CTFFactory* iFactory; + CTFATestTimer* iTimer; + RPointerArray iTestCases; + TBool iWaitStarted; + TInt iTestResult; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestserver.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/ctftestserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,142 +1,142 @@ -/* -* 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: Declaration of test server classes -* -*/ - - -#ifndef __CTFTESTSERVER_H__ -#define __CTFTESTSERVER_H__ - -#include - -class CTFFactory; - - -_LIT( KTFRemoteTestServerName, "TESTFRAMEWORK_REMOTESERVER" ); -_LIT( KTFLocalTestServerName, "TESTFRAMEWORK_LOCALSERVER" ); - -NONSHARABLE_CLASS( RTFTestServer ): public RSessionBase - { - public: - /** - * Connects to the test server - * @param aLocal If ETrue, connects to local server. Otherwise to remote server - * @return TInt - */ - TInt Connect( TBool aLocal ); - - /** - * Posts a RMessage asynchronously to test server with the given parameters - */ - void PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const; - - /** - * Posts a RMessage synchronously to test server with the given parameters - */ - TInt PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const; - - /** - * Posts a completion message to the test server - */ - void PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const; - - /** - * Posts a shutdown message to the test server - */ - void PostShutdownMessage() const; - }; - - -NONSHARABLE_CLASS( CTFTestServerWrapper ): public CActive - { - public: - /** - * Constructor - */ - CTFTestServerWrapper( void ); - - /** - * Destructor - */ - ~CTFTestServerWrapper( void ); - - /** - * Posts a remote message to the test server and completes the status when response is received. - * This object is deleted when the server responds. - */ - void PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); - - /** - * Posts a local message to the test server and completes the status when response is received. - * This object is deleted when the server responds. - */ - void PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); - - protected: - /** - * Called when test server completes the message - */ - void RunL( void ); - - /** - * Called to cancel the message passed to test server - */ - void DoCancel( void ); - - private: - TRequestStatus* iCallerStatus; - TInt iStubType; - RTFTestServer iClient; - TInt iState; - }; - - -NONSHARABLE_CLASS( CTFTestSession ): public CSession2 - { - public: - /** - * Constructor - */ - CTFTestSession( CTFFactory* aFactory ); - - /** - * Called by server to process the given message - */ - void ServiceL( const RMessage2& aMessage ); - - private: - CTFFactory* iFactory; - }; - - -NONSHARABLE_CLASS( CTFTestServer ): public CServer2 - { - public: - /** - * Constructor - */ - CTFTestServer( CTFFactory* aFactory ); - - /** - * Creates a new server session - */ - CSession2* NewSessionL( const TVersion& aVersion, const RMessage2& aMessage ) const; - - private: - CTFFactory* iFactory; - }; - - -#endif +/* +* 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: Declaration of test server classes +* +*/ + + +#ifndef __CTFTESTSERVER_H__ +#define __CTFTESTSERVER_H__ + +#include + +class CTFFactory; + + +_LIT( KTFRemoteTestServerName, "TESTFRAMEWORK_REMOTESERVER" ); +_LIT( KTFLocalTestServerName, "TESTFRAMEWORK_LOCALSERVER" ); + +NONSHARABLE_CLASS( RTFTestServer ): public RSessionBase + { + public: + /** + * Connects to the test server + * @param aLocal If ETrue, connects to local server. Otherwise to remote server + * @return TInt + */ + TInt Connect( TBool aLocal ); + + /** + * Posts a RMessage asynchronously to test server with the given parameters + */ + void PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const; + + /** + * Posts a RMessage synchronously to test server with the given parameters + */ + TInt PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const; + + /** + * Posts a completion message to the test server + */ + void PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const; + + /** + * Posts a shutdown message to the test server + */ + void PostShutdownMessage() const; + }; + + +NONSHARABLE_CLASS( CTFTestServerWrapper ): public CActive + { + public: + /** + * Constructor + */ + CTFTestServerWrapper( void ); + + /** + * Destructor + */ + ~CTFTestServerWrapper( void ); + + /** + * Posts a remote message to the test server and completes the status when response is received. + * This object is deleted when the server responds. + */ + void PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ); + + /** + * Posts a local message to the test server and completes the status when response is received. + * This object is deleted when the server responds. + */ + void PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ); + + protected: + /** + * Called when test server completes the message + */ + void RunL( void ); + + /** + * Called to cancel the message passed to test server + */ + void DoCancel( void ); + + private: + TRequestStatus* iCallerStatus; + TInt iStubType; + RTFTestServer iClient; + TInt iState; + }; + + +NONSHARABLE_CLASS( CTFTestSession ): public CSession2 + { + public: + /** + * Constructor + */ + CTFTestSession( CTFFactory* aFactory ); + + /** + * Called by server to process the given message + */ + void ServiceL( const RMessage2& aMessage ); + + private: + CTFFactory* iFactory; + }; + + +NONSHARABLE_CLASS( CTFTestServer ): public CServer2 + { + public: + /** + * Constructor + */ + CTFTestServer( CTFFactory* aFactory ); + + /** + * Creates a new server session + */ + CSession2* NewSessionL( const TVersion& aVersion, const RMessage2& aMessage ) const; + + private: + CTFFactory* iFactory; + }; + + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,85 +1,85 @@ -/* -* 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: Declaration of test tool trace macros -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of test tool trace macros +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfaactivetest.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfaactivetest.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfaactivetest.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,63 +1,63 @@ -/* -* 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: Declaration of MTFAActiveTest class -* -*/ - - -#ifndef __MTFAACTIVETEST_H__ -#define __MTFAACTIVETEST_H__ - -#include - -/** -* Callback interface for test cases that contain active objects. -*/ -class MTFAActiveTest - { - public: - /** - * Default constructor - */ - IMPORT_C MTFAActiveTest(); - - /** - * Destructor - */ - IMPORT_C virtual ~MTFAActiveTest( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFAActiveTest( const MTFAActiveTest& aTest ); - - /** - * Assignment operator is hidden - */ - MTFAActiveTest& operator=( const MTFAActiveTest& aTest ); - - public: - /** - * Called from CActive::RunL - */ - virtual void ActiveTestRunL( void ) = 0; - - /** - * Called from CActive::DoCancel - */ - virtual void ActiveTestCancel( void ) {} - }; - -#endif +/* +* 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: Declaration of MTFAActiveTest class +* +*/ + + +#ifndef __MTFAACTIVETEST_H__ +#define __MTFAACTIVETEST_H__ + +#include + +/** +* Callback interface for test cases that contain active objects. +*/ +class MTFAActiveTest + { + public: + /** + * Default constructor + */ + IMPORT_C MTFAActiveTest(); + + /** + * Destructor + */ + IMPORT_C virtual ~MTFAActiveTest( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFAActiveTest( const MTFAActiveTest& aTest ); + + /** + * Assignment operator is hidden + */ + MTFAActiveTest& operator=( const MTFAActiveTest& aTest ); + + public: + /** + * Called from CActive::RunL + */ + virtual void ActiveTestRunL( void ) = 0; + + /** + * Called from CActive::DoCancel + */ + virtual void ActiveTestCancel( void ) {} + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,59 +1,59 @@ -/* -* 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: Declaration of MTFATestAdapter class -* -*/ - - -#ifndef __MTFATESTADAPTER_H__ -#define __MTFATESTADAPTER_H__ - -#include "tftypes.h" - -/** -* Root interface for test adapter implementations -*/ -class MTFATestAdapter - { - protected: - /** - * Default constructor - */ - IMPORT_C MTFATestAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestAdapter( const MTFATestAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestAdapter& operator=( const MTFATestAdapter& aAdapter ); - - public: - /** - * Returns the type of the test case wrapped into this adapter - */ - virtual TTFATestType Type( void ) const = 0; - }; - -#endif +/* +* 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: Declaration of MTFATestAdapter class +* +*/ + + +#ifndef __MTFATESTADAPTER_H__ +#define __MTFATESTADAPTER_H__ + +#include "tftypes.h" + +/** +* Root interface for test adapter implementations +*/ +class MTFATestAdapter + { + protected: + /** + * Default constructor + */ + IMPORT_C MTFATestAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestAdapter( const MTFATestAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestAdapter& operator=( const MTFATestAdapter& aAdapter ); + + public: + /** + * Returns the type of the test case wrapped into this adapter + */ + virtual TTFATestType Type( void ) const = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestcaseadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,53 +1,53 @@ -/* -* 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: Declaration of MTFATestCaseAdapter class -* -*/ - - -#ifndef __MTFATESTCASEADAPTER_H__ -#define __MTFATESTCASEADAPTER_H__ - -#include "mtfatestadapter.h" - -/** -* Test case adapter is implemented by the adapter libraries. -*/ -class MTFATestCaseAdapter : public MTFATestAdapter - { - protected: - /** - * Constructor - */ - IMPORT_C MTFATestCaseAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestCaseAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestCaseAdapter( const MTFATestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestCaseAdapter& operator=( const MTFATestCaseAdapter& aAdapter ); - }; - -#endif +/* +* 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: Declaration of MTFATestCaseAdapter class +* +*/ + + +#ifndef __MTFATESTCASEADAPTER_H__ +#define __MTFATESTCASEADAPTER_H__ + +#include "mtfatestadapter.h" + +/** +* Test case adapter is implemented by the adapter libraries. +*/ +class MTFATestCaseAdapter : public MTFATestAdapter + { + protected: + /** + * Constructor + */ + IMPORT_C MTFATestCaseAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestCaseAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestCaseAdapter( const MTFATestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestCaseAdapter& operator=( const MTFATestCaseAdapter& aAdapter ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestsuiteadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfatestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,60 +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 "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: Declaration of MTFATestSuiteAdapter class -* -*/ - - -#ifndef __MTFATESTSUITEADAPTER_H__ -#define __MTFATESTSUITEADAPTER_H__ - -#include "mtfatestadapter.h" - -/** -* Test suite adapter interface is implemented by the adapter libraries -*/ -//NONSHARABLE_CLASS( MTFATestSuiteAdapter ): public MTFATestAdapter -class MTFATestSuiteAdapter : public MTFATestAdapter - { - protected: - /** - * Constructor - */ - IMPORT_C MTFATestSuiteAdapter( void ); - - public: - /** - * Destructor - */ - IMPORT_C virtual ~MTFATestSuiteAdapter( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFATestSuiteAdapter( const MTFATestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - MTFATestSuiteAdapter& operator=( const MTFATestSuiteAdapter& aAdapter ); - - public: - /** - * Adds a test case adapter to this suite - */ - virtual void AddL( MTFATestAdapter& aAdapter ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFATestSuiteAdapter class +* +*/ + + +#ifndef __MTFATESTSUITEADAPTER_H__ +#define __MTFATESTSUITEADAPTER_H__ + +#include "mtfatestadapter.h" + +/** +* Test suite adapter interface is implemented by the adapter libraries +*/ +//NONSHARABLE_CLASS( MTFATestSuiteAdapter ): public MTFATestAdapter +class MTFATestSuiteAdapter : public MTFATestAdapter + { + protected: + /** + * Constructor + */ + IMPORT_C MTFATestSuiteAdapter( void ); + + public: + /** + * Destructor + */ + IMPORT_C virtual ~MTFATestSuiteAdapter( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFATestSuiteAdapter( const MTFATestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + MTFATestSuiteAdapter& operator=( const MTFATestSuiteAdapter& aAdapter ); + + public: + /** + * Adds a test case adapter to this suite + */ + virtual void AddL( MTFATestAdapter& aAdapter ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubcontrol.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubcontrol.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubcontrol.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,65 +1,65 @@ -/* -* 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: Declaration of MTFStubControl class -* -*/ - - -#ifndef __MTFSTUBCONTROL_H__ -#define __MTFSTUBCONTROL_H__ - -class MTFTestCase; -class CTFStub; - -/** -* Interface to the stub controller implementation -*/ -NONSHARABLE_CLASS( MTFStubControl ) - { - protected: - /** - * Default constructor - */ - MTFStubControl( void ); - - public: - /** - * Destructor - */ - virtual ~MTFStubControl( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubControl( const MTFStubControl& aControl ); - - /** - * Assignment operator is hidden - */ - MTFStubControl& operator=( const MTFStubControl& aControl ); - - public: - /** - * Sets the currently executing test case - */ - virtual void SetCurrentTestCase( MTFTestCase* aTestCase ) = 0; - - /** - * Gets the stub which has the given plug-in module identifier - */ - virtual CTFStub* Stub( TInt aStubType ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubControl class +* +*/ + + +#ifndef __MTFSTUBCONTROL_H__ +#define __MTFSTUBCONTROL_H__ + +class MTFTestCase; +class CTFStub; + +/** +* Interface to the stub controller implementation +*/ +NONSHARABLE_CLASS( MTFStubControl ) + { + protected: + /** + * Default constructor + */ + MTFStubControl( void ); + + public: + /** + * Destructor + */ + virtual ~MTFStubControl( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubControl( const MTFStubControl& aControl ); + + /** + * Assignment operator is hidden + */ + MTFStubControl& operator=( const MTFStubControl& aControl ); + + public: + /** + * Sets the currently executing test case + */ + virtual void SetCurrentTestCase( MTFTestCase* aTestCase ) = 0; + + /** + * Gets the stub which has the given plug-in module identifier + */ + virtual CTFStub* Stub( TInt aStubType ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubinterface.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,66 +1,66 @@ -/* -* 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: Declaration of MTFStubInterface class -* -*/ - - -#ifndef __MTFSTUBINTERFACE_H__ -#define __MTFSTUBINTERFACE_H__ - -class MTFStubTestCase; - -/** -* Interface to obtain the current plug-in specific test case from -* the test case controller. -*/ -NONSHARABLE_CLASS( MTFStubInterface ) - { - protected: - /** - * Constructor - */ - MTFStubInterface( void ); - - public: - /** - * Destructor - */ - virtual ~MTFStubInterface( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubInterface( const MTFStubInterface& aInterface ); - - /** - * Assignment operator is hidden - */ - MTFStubInterface& operator=( const MTFStubInterface& aInterface ); - - public: - /** - * Returns a plug-in specific part of the currently executing test case. - * @param aTestCaseType The identifier of the plug-in module - */ - virtual MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ) = 0; - - /** - * Returns the ID of currently executing test case - */ - virtual TInt CurrentTestCaseID( void ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubInterface class +* +*/ + + +#ifndef __MTFSTUBINTERFACE_H__ +#define __MTFSTUBINTERFACE_H__ + +class MTFStubTestCase; + +/** +* Interface to obtain the current plug-in specific test case from +* the test case controller. +*/ +NONSHARABLE_CLASS( MTFStubInterface ) + { + protected: + /** + * Constructor + */ + MTFStubInterface( void ); + + public: + /** + * Destructor + */ + virtual ~MTFStubInterface( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubInterface( const MTFStubInterface& aInterface ); + + /** + * Assignment operator is hidden + */ + MTFStubInterface& operator=( const MTFStubInterface& aInterface ); + + public: + /** + * Returns a plug-in specific part of the currently executing test case. + * @param aTestCaseType The identifier of the plug-in module + */ + virtual MTFStubTestCase* CurrentTestCase( TInt aTestCaseType ) = 0; + + /** + * Returns the ID of currently executing test case + */ + virtual TInt CurrentTestCaseID( void ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubtestcase.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubtestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtfstubtestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Declaration of MTFStubTestCase class -* -*/ - - -#ifndef __MTFSTUBTESTCASE_H__ -#define __MTFSTUBTESTCASE_H__ - -class MTFTestCaseInterface; -class CTFStub; - -/** -* Interface that is implemented to add plug-in specific parts to test cases. -*/ -NONSHARABLE_CLASS( MTFStubTestCase ) - { - protected: - /** - * Default constructor - */ - MTFStubTestCase( void ); - - public: - /** - * Destructor is virtual so that framework can delete this object - */ - virtual ~MTFStubTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFStubTestCase( const MTFStubTestCase& aCase ); - - /** - * Assignment operator is hidden - */ - MTFStubTestCase& operator=( const MTFStubTestCase& aCase ); - - public: - /** - * Sets the callback interface. This is called by the framework - * when an instance of MTFStubTestCase is returned via the plug-in - * interface - */ - virtual void SetCallback( MTFTestCaseInterface& aCallback ) = 0; - - /** - * Returns the test case type. This must return the same type as the - * CTFStub implementation within a plug-in module. - */ - virtual TInt Type( void ) = 0; - - /** - * Writes this object to log at given logger depth. - */ - virtual void Log( TInt aDepth ) = 0; - - /** - * Initializes this test case - */ - virtual void SetupL( void ) = 0; - - /** - * Runs this test case - */ - virtual void RunL( void ) = 0; - - /** - * Releases resources allocated to this test case - */ - virtual void Teardown( void ) = 0; - - /** - * Determines if this test case has completed - */ - virtual TBool IsComplete( void ) = 0; - - /** - * Sets the stub object of the plug-in module to this test case - */ - virtual void SetStub( CTFStub& aStub ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFStubTestCase class +* +*/ + + +#ifndef __MTFSTUBTESTCASE_H__ +#define __MTFSTUBTESTCASE_H__ + +class MTFTestCaseInterface; +class CTFStub; + +/** +* Interface that is implemented to add plug-in specific parts to test cases. +*/ +NONSHARABLE_CLASS( MTFStubTestCase ) + { + protected: + /** + * Default constructor + */ + MTFStubTestCase( void ); + + public: + /** + * Destructor is virtual so that framework can delete this object + */ + virtual ~MTFStubTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFStubTestCase( const MTFStubTestCase& aCase ); + + /** + * Assignment operator is hidden + */ + MTFStubTestCase& operator=( const MTFStubTestCase& aCase ); + + public: + /** + * Sets the callback interface. This is called by the framework + * when an instance of MTFStubTestCase is returned via the plug-in + * interface + */ + virtual void SetCallback( MTFTestCaseInterface& aCallback ) = 0; + + /** + * Returns the test case type. This must return the same type as the + * CTFStub implementation within a plug-in module. + */ + virtual TInt Type( void ) = 0; + + /** + * Writes this object to log at given logger depth. + */ + virtual void Log( TInt aDepth ) = 0; + + /** + * Initializes this test case + */ + virtual void SetupL( void ) = 0; + + /** + * Runs this test case + */ + virtual void RunL( void ) = 0; + + /** + * Releases resources allocated to this test case + */ + virtual void Teardown( void ) = 0; + + /** + * Determines if this test case has completed + */ + virtual TBool IsComplete( void ) = 0; + + /** + * Sets the stub object of the plug-in module to this test case + */ + virtual void SetStub( CTFStub& aStub ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcase.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,73 +1,73 @@ -/* -* 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: Declaration of MTFTestCase class -* -*/ - - -#ifndef __MTFTESTCASE_H__ -#define __MTFTESTCASE_H__ - -#include "tftypes.h" - -class MTFStubTestCase; - -/** -* Interface for test cases that are divided into different plug-in modules. -*/ -NONSHARABLE_CLASS( MTFTestCase ) - { - protected: - /** - * Default constructor - */ - MTFTestCase( void ); - - public: - /** - * Destructor - */ - virtual ~MTFTestCase( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFTestCase( const MTFTestCase& aCase ); - - /** - * Assignement operator is hidden - */ - MTFTestCase& operator=( const MTFTestCase& aCase ); - - public: - /** - * Returns the plug-in specific part that has the given type - * @param aTestCaseType The type - */ - virtual MTFStubTestCase* TestCase( TInt aTestCaseType ) = 0; - - /** - * Returns the test type. This is the same function - * as in CTFATest abstract base class. - */ - virtual TTFATestType Type( void ) const = 0; - - /** - * Returns the test case ID of this test case - */ - virtual TInt TestCaseID( void ) const = 0; - }; - -#endif +/* +* 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: Declaration of MTFTestCase class +* +*/ + + +#ifndef __MTFTESTCASE_H__ +#define __MTFTESTCASE_H__ + +#include "tftypes.h" + +class MTFStubTestCase; + +/** +* Interface for test cases that are divided into different plug-in modules. +*/ +NONSHARABLE_CLASS( MTFTestCase ) + { + protected: + /** + * Default constructor + */ + MTFTestCase( void ); + + public: + /** + * Destructor + */ + virtual ~MTFTestCase( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFTestCase( const MTFTestCase& aCase ); + + /** + * Assignement operator is hidden + */ + MTFTestCase& operator=( const MTFTestCase& aCase ); + + public: + /** + * Returns the plug-in specific part that has the given type + * @param aTestCaseType The type + */ + virtual MTFStubTestCase* TestCase( TInt aTestCaseType ) = 0; + + /** + * Returns the test type. This is the same function + * as in CTFATest abstract base class. + */ + virtual TTFATestType Type( void ) const = 0; + + /** + * Returns the test case ID of this test case + */ + virtual TInt TestCaseID( void ) const = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcaseinterface.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcaseinterface.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/mtftestcaseinterface.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,70 +1,70 @@ -/* -* 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: Declaration of MTFTestCaseInterface class -* -*/ - - -#ifndef __MTFTESTCASEINTERFACE_H__ -#define __MTFTESTCASEINTERFACE_H__ - -#include - -class CTFATestLog; - -/** -* MTFTestCaseInterface is a callback interface that is given to stub test case implementations -* when they are initialized. -*/ -NONSHARABLE_CLASS( MTFTestCaseInterface) - { - protected: - /** - * Default constructor - */ - MTFTestCaseInterface( void ); - - public: - /** - * Destructor - */ - virtual ~MTFTestCaseInterface( void ); - - private: - /** - * Copy constructor is hidden - */ - MTFTestCaseInterface( const MTFTestCaseInterface& aInterface ); - - /** - * Assignment operator is hidden - */ - MTFTestCaseInterface& operator=( const MTFTestCaseInterface& aInterface ); - - public: - /** - * Called by the stub test case implementation to notify that the test is complete. - * This can be called multiple times, but the first error result will become the test - * result. - * @param aTestResult The test result - */ - virtual void TestComplete( TInt aTestResult ) = 0; - - /** - * Returns the test case logger. - */ - virtual CTFATestLog& Logger( void ) = 0; - }; - -#endif +/* +* 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: Declaration of MTFTestCaseInterface class +* +*/ + + +#ifndef __MTFTESTCASEINTERFACE_H__ +#define __MTFTESTCASEINTERFACE_H__ + +#include + +class CTFATestLog; + +/** +* MTFTestCaseInterface is a callback interface that is given to stub test case implementations +* when they are initialized. +*/ +NONSHARABLE_CLASS( MTFTestCaseInterface) + { + protected: + /** + * Default constructor + */ + MTFTestCaseInterface( void ); + + public: + /** + * Destructor + */ + virtual ~MTFTestCaseInterface( void ); + + private: + /** + * Copy constructor is hidden + */ + MTFTestCaseInterface( const MTFTestCaseInterface& aInterface ); + + /** + * Assignment operator is hidden + */ + MTFTestCaseInterface& operator=( const MTFTestCaseInterface& aInterface ); + + public: + /** + * Called by the stub test case implementation to notify that the test is complete. + * This can be called multiple times, but the first error result will become the test + * result. + * @param aTestResult The test result + */ + virtual void TestComplete( TInt aTestResult ) = 0; + + /** + * Returns the test case logger. + */ + virtual CTFATestLog& Logger( void ) = 0; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/tftypes.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/tftypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/inc/tftypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,80 +1,80 @@ -/* -* 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: Declaration of test tool constants -* -*/ - - -#ifndef __TFTYPES_H__ -#define __TFTYPES_H__ - -#include - -/** -* Test framework test case types -*/ -enum TTFATestType - { - ETFATestTypeCase = 1, - ETFATestTypeSuite = 2, - ETFTestTypeStubWrapper = 3, - ETFTestTypeStubRepeater = 4 - }; - -/** -* Test framework panic codes -*/ -enum TTFPanic - { - ETFPanicInvalidTestName = 1, - ETFPanicInvalidTestCaseNumber = 2, - ETFPanicTlsExists = 3, - ETFPanicTlsMissing = 4, - ETFPanicFactory = 5, - ETFPanicDuplicateCase = 6, - ETFPanicStubMissing = 7, - ETFPanicDuplicateStub = 8, - ETFPanicComponentMissing = 9, - ETFPanicInvalidStubType = 10 - }; - -/** -* Test case flags -*/ -enum TTFTestCaseFlags - { - ETFMayLeakMemory = 1, - ETFMayLeakRequests = 2, - ETFMayLeakHandles = 4 - }; - -/** -* Panic category -*/ -_LIT( KTFName, "Test Framework" ); - -/** -* Maximum test case name length -*/ -const TInt KTFAMaxTestNameLength = 128; - -/** -* Test case error codes -*/ -const TInt KTFErrIgnore = -10000; -const TInt KTFErrTestNotActive = -10001; -const TInt KTFErrNoTestCase = -10002; -const TInt KTFErrNoStub = -10003; - -#endif +/* +* 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: Declaration of test tool constants +* +*/ + + +#ifndef __TFTYPES_H__ +#define __TFTYPES_H__ + +#include + +/** +* Test framework test case types +*/ +enum TTFATestType + { + ETFATestTypeCase = 1, + ETFATestTypeSuite = 2, + ETFTestTypeStubWrapper = 3, + ETFTestTypeStubRepeater = 4 + }; + +/** +* Test framework panic codes +*/ +enum TTFPanic + { + ETFPanicInvalidTestName = 1, + ETFPanicInvalidTestCaseNumber = 2, + ETFPanicTlsExists = 3, + ETFPanicTlsMissing = 4, + ETFPanicFactory = 5, + ETFPanicDuplicateCase = 6, + ETFPanicStubMissing = 7, + ETFPanicDuplicateStub = 8, + ETFPanicComponentMissing = 9, + ETFPanicInvalidStubType = 10 + }; + +/** +* Test case flags +*/ +enum TTFTestCaseFlags + { + ETFMayLeakMemory = 1, + ETFMayLeakRequests = 2, + ETFMayLeakHandles = 4 + }; + +/** +* Panic category +*/ +_LIT( KTFName, "Test Framework" ); + +/** +* Maximum test case name length +*/ +const TInt KTFAMaxTestNameLength = 128; + +/** +* Test case error codes +*/ +const TInt KTFErrIgnore = -10000; +const TInt KTFErrTestNotActive = -10001; +const TInt KTFErrNoTestCase = -10002; +const TInt KTFErrNoStub = -10003; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaactivetest.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaactivetest.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaactivetest.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,98 +1,98 @@ -/* -* 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: Implementation of CTFAActiveTest class -* -*/ - - -// INCLUDE FILES -#include "ctfaactivetest.h" -#include "mtfaactivetest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// MTFAActiveTest::MTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C MTFAActiveTest::MTFAActiveTest( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFAActiveTest::~MTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C MTFAActiveTest::~MTFAActiveTest( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::CTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C CTFAActiveTest::CTFAActiveTest( MTFAActiveTest& aCallback ) -: CActive( EPriorityNormal ) -, iCallback( aCallback ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::~CTFAActiveTest -// ----------------------------------------------------------------------------- -EXPORT_C CTFAActiveTest::~CTFAActiveTest( void ) - { - Cancel(); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::RunL -// ----------------------------------------------------------------------------- -void CTFAActiveTest::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL()" ) ) ); - iCallback.ActiveTestRunL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::DoCancel -// ----------------------------------------------------------------------------- -void CTFAActiveTest::DoCancel( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel()" ) ) ); - iCallback.ActiveTestCancel(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::Status -// ----------------------------------------------------------------------------- -EXPORT_C TRequestStatus& CTFAActiveTest::Status( void ) - { - return iStatus; - } - - -// ----------------------------------------------------------------------------- -// CTFAActiveTest::DoSetActive -// ----------------------------------------------------------------------------- -EXPORT_C void CTFAActiveTest::DoSetActive( void ) - { - CActive::SetActive(); - } - +/* +* 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: Implementation of CTFAActiveTest class +* +*/ + + +// INCLUDE FILES +#include "ctfaactivetest.h" +#include "mtfaactivetest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// MTFAActiveTest::MTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C MTFAActiveTest::MTFAActiveTest( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFAActiveTest::~MTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C MTFAActiveTest::~MTFAActiveTest( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::CTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C CTFAActiveTest::CTFAActiveTest( MTFAActiveTest& aCallback ) +: CActive( EPriorityNormal ) +, iCallback( aCallback ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::~CTFAActiveTest +// ----------------------------------------------------------------------------- +EXPORT_C CTFAActiveTest::~CTFAActiveTest( void ) + { + Cancel(); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::RunL +// ----------------------------------------------------------------------------- +void CTFAActiveTest::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL()" ) ) ); + iCallback.ActiveTestRunL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::RunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::DoCancel +// ----------------------------------------------------------------------------- +void CTFAActiveTest::DoCancel( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel()" ) ) ); + iCallback.ActiveTestCancel(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAActiveTest::DoCancel - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::Status +// ----------------------------------------------------------------------------- +EXPORT_C TRequestStatus& CTFAActiveTest::Status( void ) + { + return iStatus; + } + + +// ----------------------------------------------------------------------------- +// CTFAActiveTest::DoSetActive +// ----------------------------------------------------------------------------- +EXPORT_C void CTFAActiveTest::DoSetActive( void ) + { + CActive::SetActive(); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfactivescheduler.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfactivescheduler.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfactivescheduler.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,55 +1,55 @@ -/* -* 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: Implementation of CTFActiveScheduler class -* -*/ - - -// INCLUDE FILES -#include "ctfactivescheduler.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::CTFActiveScheduler -// ----------------------------------------------------------------------------- -CTFActiveScheduler::CTFActiveScheduler( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::~CTFActiveScheduler -// ----------------------------------------------------------------------------- -CTFActiveScheduler::~CTFActiveScheduler( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFActiveScheduler::Error -// ----------------------------------------------------------------------------- -#if defined ( COMPONENT_TRACE_FLAG ) && defined ( _DEBUG ) -void CTFActiveScheduler::Error( TInt aError ) const - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFActiveScheduler::Error(0x%x)" ), aError ) ); - TRACE_ASSERT_ALWAYS; - } -#else -void CTFActiveScheduler::Error( TInt /*aError*/ ) const - { - TRACE_ASSERT_ALWAYS; - } -#endif - - +/* +* 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: Implementation of CTFActiveScheduler class +* +*/ + + +// INCLUDE FILES +#include "ctfactivescheduler.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::CTFActiveScheduler +// ----------------------------------------------------------------------------- +CTFActiveScheduler::CTFActiveScheduler( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::~CTFActiveScheduler +// ----------------------------------------------------------------------------- +CTFActiveScheduler::~CTFActiveScheduler( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFActiveScheduler::Error +// ----------------------------------------------------------------------------- +#if defined ( COMPONENT_TRACE_FLAG ) && defined ( _DEBUG ) +void CTFActiveScheduler::Error( TInt aError ) const + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFActiveScheduler::Error(0x%x)" ), aError ) ); + TRACE_ASSERT_ALWAYS; + } +#else +void CTFActiveScheduler::Error( TInt /*aError*/ ) const + { + TRACE_ASSERT_ALWAYS; + } +#endif + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaentrypoint.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaentrypoint.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfaentrypoint.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,184 +1,184 @@ -/* -* 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: Implementation of CTFAEntryPoint class -* -*/ - - -// INCLUDE FILES -#include "ctfatestenvironment.h" -#include "ctfatestlog.h" -#include "ctfatestsuite.h" -#include "ctfatestcase.h" -#include "ctffactory.h" -#include "ctfaentrypoint.h" -#include "ctfatestcaseadapter.h" -#include "ctfatestsuiteadapter.h" -#include "dsytesttooltrace.h" -#include "ctfactivescheduler.h" - -// 2-second timer is used to wait for asynchronous startup tasks -// performed by tested components. -const TInt KTFStartupWait = 2000000; - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), - buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::CTFAEntryPoint -// ----------------------------------------------------------------------------- -EXPORT_C CTFAEntryPoint::CTFAEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::~CTFAEntryPoint -// ----------------------------------------------------------------------------- -EXPORT_C CTFAEntryPoint::~CTFAEntryPoint( void ) - { - delete iRootSuite; - delete iEnvironment; - // The root suite adapter is deleted by the test framework. - // This object is deleted by the root suite adapter. - iRootSuiteAdapter = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::RootSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter* CTFAEntryPoint::RootSuiteAdapter( void ) - { - return iRootSuiteAdapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::TimerCallback -// ----------------------------------------------------------------------------- -TInt CTFAEntryPoint::TimerCallback( TAny* ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback()" ) ) ); - CActiveScheduler::Stop(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback - return 0x%x" ), EFalse ) ); - return EFalse; - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::ConstructL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFAEntryPoint::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL()" ) ) ); - iRootSuite = new ( ELeave ) CTFATestSuite( _L( "Root" ) ); - iRootSuiteAdapter = CreateSuiteAdapterLC( *iRootSuite, ETrue ); - CleanupStack::Pop(); - iEnvironment = CreateEnvironmentL(); - if ( CActiveScheduler::Current() == NULL ) - { - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CActiveScheduler::Install( scheduler ); - iEnvironment->SetScheduler( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler installed" ) ) ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler was already installed" ) ) ); - } - CTFFactory* factory = CTFFactory::NewL(); - iEnvironment->SetFactory( factory ); - iRootSuite->SetEnvironment( *iEnvironment ); - factory->BuildTestSuiteL( iRootSuite ); - iEnvironment->Logger().Write( _L( "Test suite built:" ) ); - iEnvironment->Logger().StartList(); - BuildAdapterSuiteL( *iRootSuite, *iRootSuiteAdapter ); - iEnvironment->Logger().EndList(); - CPeriodic* timer = CPeriodic::NewL( EPriorityNormal ); - // Waits for the tested modules to perform asynchronous startup tasks - timer->Start( TTimeIntervalMicroSeconds32( KTFStartupWait ), - TTimeIntervalMicroSeconds32( KTFStartupWait ), TCallBack( TimerCallback, NULL ) ); - CActiveScheduler::Start(); - delete timer; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAEntryPoint::BuildAdapterSuiteL -// ----------------------------------------------------------------------------- -void CTFAEntryPoint::BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL(0x%x, 0x%x)" ), &aSuite, &aAdapter ) ); - _LIT( KRoot, "%S" ); - iEnvironment->Logger().WriteList( iDepth++, KRoot, &aSuite.Name() ); - for ( TInt i = 0; i < aSuite.Count(); i++ ) - { - CTFATest* test = &aSuite.At( i ); - if ( test->Type() == ETFATestTypeSuite ) - { - //lint -e826 Suspicious pointer-to-pointer conversion - CTFATestSuite* suite = STATIC_CAST( CTFATestSuite*, test ); - //lint +e826 - MTFATestSuiteAdapter* adapter = CreateSuiteAdapterLC( *suite, EFalse ); - aAdapter.AddL( *adapter ); - BuildAdapterSuiteL( *suite, *adapter ); - CleanupStack::Pop(); - } - else - { - //lint -e826 Suspicious pointer-to-pointer conversion - CTFATestCase* testCase = STATIC_CAST( CTFATestCase*, test ); - //lint +e826 - testCase->Log( iDepth ); - MTFATestCaseAdapter* adapter = CreateTestAdapterLC( *testCase ); - aAdapter.AddL( *adapter ); - CleanupStack::Pop(); - } - } - iDepth--; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL - return void" ) ) ); - } - +/* +* 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: Implementation of CTFAEntryPoint class +* +*/ + + +// INCLUDE FILES +#include "ctfatestenvironment.h" +#include "ctfatestlog.h" +#include "ctfatestsuite.h" +#include "ctfatestcase.h" +#include "ctffactory.h" +#include "ctfaentrypoint.h" +#include "ctfatestcaseadapter.h" +#include "ctfatestsuiteadapter.h" +#include "dsytesttooltrace.h" +#include "ctfactivescheduler.h" + +// 2-second timer is used to wait for asynchronous startup tasks +// performed by tested components. +const TInt KTFStartupWait = 2000000; + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), + buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::CTFAEntryPoint +// ----------------------------------------------------------------------------- +EXPORT_C CTFAEntryPoint::CTFAEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::~CTFAEntryPoint +// ----------------------------------------------------------------------------- +EXPORT_C CTFAEntryPoint::~CTFAEntryPoint( void ) + { + delete iRootSuite; + delete iEnvironment; + // The root suite adapter is deleted by the test framework. + // This object is deleted by the root suite adapter. + iRootSuiteAdapter = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::RootSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter* CTFAEntryPoint::RootSuiteAdapter( void ) + { + return iRootSuiteAdapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::TimerCallback +// ----------------------------------------------------------------------------- +TInt CTFAEntryPoint::TimerCallback( TAny* ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback()" ) ) ); + CActiveScheduler::Stop(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::TimerCallback - return 0x%x" ), EFalse ) ); + return EFalse; + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::ConstructL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFAEntryPoint::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL()" ) ) ); + iRootSuite = new ( ELeave ) CTFATestSuite( _L( "Root" ) ); + iRootSuiteAdapter = CreateSuiteAdapterLC( *iRootSuite, ETrue ); + CleanupStack::Pop(); + iEnvironment = CreateEnvironmentL(); + if ( CActiveScheduler::Current() == NULL ) + { + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CActiveScheduler::Install( scheduler ); + iEnvironment->SetScheduler( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler installed" ) ) ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL() - Active scheduler was already installed" ) ) ); + } + CTFFactory* factory = CTFFactory::NewL(); + iEnvironment->SetFactory( factory ); + iRootSuite->SetEnvironment( *iEnvironment ); + factory->BuildTestSuiteL( iRootSuite ); + iEnvironment->Logger().Write( _L( "Test suite built:" ) ); + iEnvironment->Logger().StartList(); + BuildAdapterSuiteL( *iRootSuite, *iRootSuiteAdapter ); + iEnvironment->Logger().EndList(); + CPeriodic* timer = CPeriodic::NewL( EPriorityNormal ); + // Waits for the tested modules to perform asynchronous startup tasks + timer->Start( TTimeIntervalMicroSeconds32( KTFStartupWait ), + TTimeIntervalMicroSeconds32( KTFStartupWait ), TCallBack( TimerCallback, NULL ) ); + CActiveScheduler::Start(); + delete timer; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAEntryPoint::BuildAdapterSuiteL +// ----------------------------------------------------------------------------- +void CTFAEntryPoint::BuildAdapterSuiteL( CTFATestSuite& aSuite, MTFATestSuiteAdapter& aAdapter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL(0x%x, 0x%x)" ), &aSuite, &aAdapter ) ); + _LIT( KRoot, "%S" ); + iEnvironment->Logger().WriteList( iDepth++, KRoot, &aSuite.Name() ); + for ( TInt i = 0; i < aSuite.Count(); i++ ) + { + CTFATest* test = &aSuite.At( i ); + if ( test->Type() == ETFATestTypeSuite ) + { + //lint -e826 Suspicious pointer-to-pointer conversion + CTFATestSuite* suite = STATIC_CAST( CTFATestSuite*, test ); + //lint +e826 + MTFATestSuiteAdapter* adapter = CreateSuiteAdapterLC( *suite, EFalse ); + aAdapter.AddL( *adapter ); + BuildAdapterSuiteL( *suite, *adapter ); + CleanupStack::Pop(); + } + else + { + //lint -e826 Suspicious pointer-to-pointer conversion + CTFATestCase* testCase = STATIC_CAST( CTFATestCase*, test ); + //lint +e826 + testCase->Log( iDepth ); + MTFATestCaseAdapter* adapter = CreateTestAdapterLC( *testCase ); + aAdapter.AddL( *adapter ); + CleanupStack::Pop(); + } + } + iDepth--; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAEntryPoint::BuildAdapterSuiteL - return void" ) ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatest.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatest.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatest.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,69 +1,69 @@ -/* -* 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: Implementation of CTFATest class -* -*/ - - -// INCLUDE FILES -#include "ctfatest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATest::CTFATest -// ----------------------------------------------------------------------------- -CTFATest::CTFATest( const TDesC& aName ) - { - TRACE_ASSERT( aName.Length() > 0 && aName.Length() < KTFAMaxTestNameLength ); - __ASSERT_ALWAYS( aName.Length() > 0, User::Panic( KTFName, ETFPanicInvalidTestName ) ); - __ASSERT_ALWAYS( aName.Length() < KTFAMaxTestNameLength, User::Panic( KTFName, ETFPanicInvalidTestName ) ); - iName.Copy( aName ); - } - - -// ----------------------------------------------------------------------------- -// CTFATest::~CTFATest -// ----------------------------------------------------------------------------- -CTFATest::~CTFATest( void ) - { - iEnvironment = NULL; - } - - -// ----------------------------------------------------------------------------- -// TDesC& CTFATest::Name -// ----------------------------------------------------------------------------- -EXPORT_C const TDesC& CTFATest::Name( void ) const - { - return iName; - } - - -// ----------------------------------------------------------------------------- -// CTFATest::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATest::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - iEnvironment = &aEnvironment; - } - - -// ----------------------------------------------------------------------------- -// CTFATest::Environment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment& CTFATest::Environment( void ) - { - return *iEnvironment; - } - +/* +* 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: Implementation of CTFATest class +* +*/ + + +// INCLUDE FILES +#include "ctfatest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATest::CTFATest +// ----------------------------------------------------------------------------- +CTFATest::CTFATest( const TDesC& aName ) + { + TRACE_ASSERT( aName.Length() > 0 && aName.Length() < KTFAMaxTestNameLength ); + __ASSERT_ALWAYS( aName.Length() > 0, User::Panic( KTFName, ETFPanicInvalidTestName ) ); + __ASSERT_ALWAYS( aName.Length() < KTFAMaxTestNameLength, User::Panic( KTFName, ETFPanicInvalidTestName ) ); + iName.Copy( aName ); + } + + +// ----------------------------------------------------------------------------- +// CTFATest::~CTFATest +// ----------------------------------------------------------------------------- +CTFATest::~CTFATest( void ) + { + iEnvironment = NULL; + } + + +// ----------------------------------------------------------------------------- +// TDesC& CTFATest::Name +// ----------------------------------------------------------------------------- +EXPORT_C const TDesC& CTFATest::Name( void ) const + { + return iName; + } + + +// ----------------------------------------------------------------------------- +// CTFATest::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATest::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + iEnvironment = &aEnvironment; + } + + +// ----------------------------------------------------------------------------- +// CTFATest::Environment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment& CTFATest::Environment( void ) + { + return *iEnvironment; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcase.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,128 +1,128 @@ -/* -* 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: Implementation of CTFATestCase class -* -*/ - - -// INCLUDE FILES -#include "ctfatestcase.h" -#include "ctfatestenvironment.h" -#include "dsytesttooltrace.h" - -const TInt KDefaultTestTimeout = 30; - -// ----------------------------------------------------------------------------- -// CTFATestCase::CTFATestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCase::CTFATestCase( TInt aCaseId, const TDesC& aName ) -: CTFATest( aName ) -, iCaseId( aCaseId ) -, iTimeout( KDefaultTestTimeout ) - { - TRACE_ASSERT( aCaseId > 0 ); - __ASSERT_ALWAYS( aCaseId > 0, User::Panic( KTFName, ETFPanicInvalidTestCaseNumber ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::~CTFATestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCase::~CTFATestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestCase::Type( void ) const - { - return ETFATestTypeCase; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Id -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestCase::Id( void ) const - { - return iCaseId; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetTimeout -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetTimeout( TInt aTimeout ) - { - iTimeout = aTimeout; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetRunOnStartup -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetRunOnStartup( TBool aFlag ) - { - iRunOnStartup = aFlag; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Timeout -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestCase::Timeout( void ) const - { - return iTimeout; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::RunOnStartup -// ----------------------------------------------------------------------------- -EXPORT_C TBool CTFATestCase::RunOnStartup( void ) const - { - return iRunOnStartup; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetFlags -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetFlags( TUint32 aFlags ) - { - iFlags = aFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::Flags -// ----------------------------------------------------------------------------- -EXPORT_C TUint32 CTFATestCase::Flags( void ) const - { - return iFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestCase::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestCase::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATest::SetEnvironment( aEnvironment ); - iFlags = aEnvironment.TestCaseFlags(); - } - - +/* +* 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: Implementation of CTFATestCase class +* +*/ + + +// INCLUDE FILES +#include "ctfatestcase.h" +#include "ctfatestenvironment.h" +#include "dsytesttooltrace.h" + +const TInt KDefaultTestTimeout = 30; + +// ----------------------------------------------------------------------------- +// CTFATestCase::CTFATestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCase::CTFATestCase( TInt aCaseId, const TDesC& aName ) +: CTFATest( aName ) +, iCaseId( aCaseId ) +, iTimeout( KDefaultTestTimeout ) + { + TRACE_ASSERT( aCaseId > 0 ); + __ASSERT_ALWAYS( aCaseId > 0, User::Panic( KTFName, ETFPanicInvalidTestCaseNumber ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::~CTFATestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCase::~CTFATestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestCase::Type( void ) const + { + return ETFATestTypeCase; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Id +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestCase::Id( void ) const + { + return iCaseId; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetTimeout +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetTimeout( TInt aTimeout ) + { + iTimeout = aTimeout; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetRunOnStartup +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetRunOnStartup( TBool aFlag ) + { + iRunOnStartup = aFlag; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Timeout +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestCase::Timeout( void ) const + { + return iTimeout; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::RunOnStartup +// ----------------------------------------------------------------------------- +EXPORT_C TBool CTFATestCase::RunOnStartup( void ) const + { + return iRunOnStartup; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetFlags +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetFlags( TUint32 aFlags ) + { + iFlags = aFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::Flags +// ----------------------------------------------------------------------------- +EXPORT_C TUint32 CTFATestCase::Flags( void ) const + { + return iFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestCase::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestCase::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATest::SetEnvironment( aEnvironment ); + iFlags = aEnvironment.TestCaseFlags(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcaseadapter.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcaseadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestcaseadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* 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: Implementation of CTFATestCaseAdapter class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "ctfatestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// MTFATestAdapter::MTFATestAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestAdapter::MTFATestAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestAdapter::~MTFATestAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestAdapter::~MTFATestAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestCaseAdapter::MTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestCaseAdapter::MTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestCaseAdapter::~MTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestCaseAdapter::~MTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::CTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCaseAdapter::CTFATestCaseAdapter( CTFATestCase& aTestCase ) -: iTestCase( aTestCase ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::~CTFATestCaseAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestCaseAdapter::~CTFATestCaseAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestCaseAdapter::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestCaseAdapter::Type( void ) const - { - return ETFATestTypeCase; - } - +/* +* 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: Implementation of CTFATestCaseAdapter class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "ctfatestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// MTFATestAdapter::MTFATestAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestAdapter::MTFATestAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestAdapter::~MTFATestAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestAdapter::~MTFATestAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestCaseAdapter::MTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestCaseAdapter::MTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestCaseAdapter::~MTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestCaseAdapter::~MTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::CTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCaseAdapter::CTFATestCaseAdapter( CTFATestCase& aTestCase ) +: iTestCase( aTestCase ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::~CTFATestCaseAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestCaseAdapter::~CTFATestCaseAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestCaseAdapter::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestCaseAdapter::Type( void ) const + { + return ETFATestTypeCase; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestenvironment.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestenvironment.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestenvironment.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,119 +1,119 @@ -/* -* 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: Implementation of CTFATestEnvironment class -* -*/ - - -// INCLUDE FILES -#include "ctfatestlog.h" -#include "ctfatestenvironment.h" -#include "ctffactory.h" -#include "ctfactivescheduler.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestLog::CTFATestLog -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog::CTFATestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestLog::~CTFATestLog -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog::~CTFATestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::CTFATestEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment::CTFATestEnvironment( CTFATestLog& aLogger ) -: iLogger( &aLogger ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::~CTFATestEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestEnvironment::~CTFATestEnvironment( void ) - { - delete iFactory; - if ( iScheduler ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestEnvironment::~CTFATestEnvironment() - Deleting active scheduler" ) ) ); - CActiveScheduler::Install( NULL ); - delete iScheduler; - } - delete iLogger; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetFactory -// ----------------------------------------------------------------------------- -void CTFATestEnvironment::SetFactory( CTFFactory* aFactory ) - { - iFactory = aFactory; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::Factory -// ----------------------------------------------------------------------------- -EXPORT_C CTFFactory* CTFATestEnvironment::Factory( void ) - { - return iFactory; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetScheduler -// ----------------------------------------------------------------------------- -void CTFATestEnvironment::SetScheduler( CTFActiveScheduler* aScheduler ) - { - iScheduler = aScheduler; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::Logger -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog& CTFATestEnvironment::Logger( void ) - { - return *iLogger; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::SetTestCaseFlags -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestEnvironment::SetTestCaseFlags( TUint32 aTestCaseFlags ) - { - iTestCaseFlags = aTestCaseFlags; - } - - -// ----------------------------------------------------------------------------- -// CTFATestEnvironment::TestCaseFlags -// ----------------------------------------------------------------------------- -TUint32 CTFATestEnvironment::TestCaseFlags( void ) const - { - return iTestCaseFlags; - } - +/* +* 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: Implementation of CTFATestEnvironment class +* +*/ + + +// INCLUDE FILES +#include "ctfatestlog.h" +#include "ctfatestenvironment.h" +#include "ctffactory.h" +#include "ctfactivescheduler.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestLog::CTFATestLog +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog::CTFATestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestLog::~CTFATestLog +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog::~CTFATestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::CTFATestEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment::CTFATestEnvironment( CTFATestLog& aLogger ) +: iLogger( &aLogger ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::~CTFATestEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestEnvironment::~CTFATestEnvironment( void ) + { + delete iFactory; + if ( iScheduler ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestEnvironment::~CTFATestEnvironment() - Deleting active scheduler" ) ) ); + CActiveScheduler::Install( NULL ); + delete iScheduler; + } + delete iLogger; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetFactory +// ----------------------------------------------------------------------------- +void CTFATestEnvironment::SetFactory( CTFFactory* aFactory ) + { + iFactory = aFactory; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::Factory +// ----------------------------------------------------------------------------- +EXPORT_C CTFFactory* CTFATestEnvironment::Factory( void ) + { + return iFactory; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetScheduler +// ----------------------------------------------------------------------------- +void CTFATestEnvironment::SetScheduler( CTFActiveScheduler* aScheduler ) + { + iScheduler = aScheduler; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::Logger +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog& CTFATestEnvironment::Logger( void ) + { + return *iLogger; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::SetTestCaseFlags +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestEnvironment::SetTestCaseFlags( TUint32 aTestCaseFlags ) + { + iTestCaseFlags = aTestCaseFlags; + } + + +// ----------------------------------------------------------------------------- +// CTFATestEnvironment::TestCaseFlags +// ----------------------------------------------------------------------------- +TUint32 CTFATestEnvironment::TestCaseFlags( void ) const + { + return iTestCaseFlags; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuite.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuite.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuite.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of CTFATestSuite class -* -*/ - - -// INCLUDE FILES -#include "ctfatestsuite.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestSuite::CTFATestSuite -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuite::CTFATestSuite( const TDesC& aName ) -: CTFATest( aName ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::~CTFATestSuite -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuite::~CTFATestSuite( void ) - { - // Deletes all test cases and sub-suites - iTests.ResetAndDestroy(); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestSuite::Type( void ) const - { - return ETFATestTypeSuite; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::Count -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFATestSuite::Count( void ) const - { - return iTests.Count(); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::At -// ----------------------------------------------------------------------------- -EXPORT_C CTFATest& CTFATestSuite::At( TInt aIndex ) - { - TRACE_ASSERT( aIndex >= 0 && aIndex < iTests.Count() ); - return *(iTests[aIndex]); - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuite::AddL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestSuite::AddL( const CTFATest& aTest ) - { - User::LeaveIfError( iTests.Append( &aTest ) ); - } - +/* +* 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: Implementation of CTFATestSuite class +* +*/ + + +// INCLUDE FILES +#include "ctfatestsuite.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestSuite::CTFATestSuite +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuite::CTFATestSuite( const TDesC& aName ) +: CTFATest( aName ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::~CTFATestSuite +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuite::~CTFATestSuite( void ) + { + // Deletes all test cases and sub-suites + iTests.ResetAndDestroy(); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestSuite::Type( void ) const + { + return ETFATestTypeSuite; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::Count +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFATestSuite::Count( void ) const + { + return iTests.Count(); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::At +// ----------------------------------------------------------------------------- +EXPORT_C CTFATest& CTFATestSuite::At( TInt aIndex ) + { + TRACE_ASSERT( aIndex >= 0 && aIndex < iTests.Count() ); + return *(iTests[aIndex]); + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuite::AddL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestSuite::AddL( const CTFATest& aTest ) + { + User::LeaveIfError( iTests.Append( &aTest ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuiteadapter.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuiteadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatestsuiteadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,77 +1,77 @@ -/* -* 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: Implementation of CTFATestSuiteAdapter class -* -*/ - - -// INCLUDE FILES -#include "ctfatestsuite.h" -#include "dsytesttooltrace.h" -#include "ctfatestsuiteadapter.h" -#include "ctfaentrypoint.h" - -// ----------------------------------------------------------------------------- -// MTFATestSuiteAdapter::MTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter::MTFATestSuiteAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFATestSuiteAdapter::~MTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C MTFATestSuiteAdapter::~MTFATestSuiteAdapter( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::CTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuiteAdapter::CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) -: iTestSuite( aTestSuite ) -, iEntryPoint( aEntryPoint ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::~CTFATestSuiteAdapter -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestSuiteAdapter::~CTFATestSuiteAdapter( void ) - { - iTests.ResetAndDestroy(); - // The entry point is non-NULL if this is the root suite - delete iEntryPoint; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::Type -// ----------------------------------------------------------------------------- -EXPORT_C TTFATestType CTFATestSuiteAdapter::Type( void ) const - { - return ETFATestTypeSuite; - } - - -// ----------------------------------------------------------------------------- -// CTFATestSuiteAdapter::AddL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFATestSuiteAdapter::AddL( MTFATestAdapter& aAdapter ) - { - User::LeaveIfError( iTests.Append( &aAdapter ) ); - } +/* +* 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: Implementation of CTFATestSuiteAdapter class +* +*/ + + +// INCLUDE FILES +#include "ctfatestsuite.h" +#include "dsytesttooltrace.h" +#include "ctfatestsuiteadapter.h" +#include "ctfaentrypoint.h" + +// ----------------------------------------------------------------------------- +// MTFATestSuiteAdapter::MTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter::MTFATestSuiteAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFATestSuiteAdapter::~MTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C MTFATestSuiteAdapter::~MTFATestSuiteAdapter( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::CTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuiteAdapter::CTFATestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) +: iTestSuite( aTestSuite ) +, iEntryPoint( aEntryPoint ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::~CTFATestSuiteAdapter +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestSuiteAdapter::~CTFATestSuiteAdapter( void ) + { + iTests.ResetAndDestroy(); + // The entry point is non-NULL if this is the root suite + delete iEntryPoint; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::Type +// ----------------------------------------------------------------------------- +EXPORT_C TTFATestType CTFATestSuiteAdapter::Type( void ) const + { + return ETFATestTypeSuite; + } + + +// ----------------------------------------------------------------------------- +// CTFATestSuiteAdapter::AddL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFATestSuiteAdapter::AddL( MTFATestAdapter& aAdapter ) + { + User::LeaveIfError( iTests.Append( &aAdapter ) ); + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatesttimer.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatesttimer.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfatesttimer.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,66 +1,66 @@ -/* -* 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: Implementation of CTFATestTimer class -* -*/ - - -// INCLUDE FILES -#include "ctfatesttimer.h" -#include "mtfaactivetest.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFATestTimer::NewL -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestTimer* CTFATestTimer::NewL( MTFAActiveTest& aCallback ) - { - CTFATestTimer* timer = new ( ELeave ) CTFATestTimer( aCallback ); - CleanupStack::PushL( timer ); - timer->ConstructL(); - CleanupStack::Pop( timer ); - return timer; - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::CTFATestTimer -// ----------------------------------------------------------------------------- -CTFATestTimer::CTFATestTimer( MTFAActiveTest& aCallback ) -: CTimer( EPriorityNormal ) -, iCallback( aCallback ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::~CTFATestTimer -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestTimer::~CTFATestTimer( void ) - { - // CTimer calls Cancel - } - - -// ----------------------------------------------------------------------------- -// CTFATestTimer::RunL -// ----------------------------------------------------------------------------- -void CTFATestTimer::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL()" ) ) ); - iCallback.ActiveTestRunL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL - return void" ) ) ); - } - +/* +* 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: Implementation of CTFATestTimer class +* +*/ + + +// INCLUDE FILES +#include "ctfatesttimer.h" +#include "mtfaactivetest.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFATestTimer::NewL +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestTimer* CTFATestTimer::NewL( MTFAActiveTest& aCallback ) + { + CTFATestTimer* timer = new ( ELeave ) CTFATestTimer( aCallback ); + CleanupStack::PushL( timer ); + timer->ConstructL(); + CleanupStack::Pop( timer ); + return timer; + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::CTFATestTimer +// ----------------------------------------------------------------------------- +CTFATestTimer::CTFATestTimer( MTFAActiveTest& aCallback ) +: CTimer( EPriorityNormal ) +, iCallback( aCallback ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::~CTFATestTimer +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestTimer::~CTFATestTimer( void ) + { + // CTimer calls Cancel + } + + +// ----------------------------------------------------------------------------- +// CTFATestTimer::RunL +// ----------------------------------------------------------------------------- +void CTFATestTimer::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL()" ) ) ); + iCallback.ActiveTestRunL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFATestTimer::RunL - return void" ) ) ); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tffactory.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tffactory.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tffactory.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,407 +1,407 @@ -/* -* 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: Implementation of CTFFactory class -* -*/ - - -// INCLUDE FILES -#include "tftypes.h" -#include "ctffactory.h" -#include "ctfstub.h" -#include "ctfatestenvironment.h" -#include "ctftestcasewrapper.h" -#include "ctfremotestub.h" -#include "ctftestserver.h" -#include "dsytesttooltrace.h" -#include "ctfstubcontrol.h" -#include "ctfactivescheduler.h" - -struct TTFThreadParam - { - RSemaphore* iSemaphore; - TInt iStubType; - TAny* iMessageData1; - TAny* iMessageData2; - TAny* iMessageData3; - TAny* iMessageData4; - }; - -// ----------------------------------------------------------------------------- -// CTFFactory::NewL -// ----------------------------------------------------------------------------- -CTFFactory* CTFFactory::NewL( void ) - { - CTFFactory* factory = new ( ELeave ) CTFFactory(); - CleanupStack::PushL( factory ); - factory->ConstructL(); - CleanupStack::Pop( factory ); - return factory; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CTFFactory -// ----------------------------------------------------------------------------- -CTFFactory::CTFFactory( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ServerThreadFunctionL -// ----------------------------------------------------------------------------- -void CTFFactory::ServerThreadFunctionL( CTFFactory* aFactory ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL(0x%x)" ), aFactory ) ); - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CleanupStack::PushL( scheduler ); - CActiveScheduler::Install( scheduler ); - CTFTestServer* testServer = new ( ELeave ) CTFTestServer( aFactory ); - CleanupStack::PushL( testServer ); - testServer->StartL( KTFRemoteTestServerName ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - Entering scheduler" ) ) ); - CActiveScheduler::Start(); - CleanupStack::PopAndDestroy( testServer ); - CleanupStack::PopAndDestroy( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ServerThreadFunction -// ----------------------------------------------------------------------------- -TInt CTFFactory::ServerThreadFunction( TAny* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction(0x%x)" ), aData ) ); - CTrapCleanup* cleanup = CTrapCleanup::New(); - if ( cleanup != NULL ) - { - TRAPD( err, ServerThreadFunctionL( ( CTFFactory* )aData ) ); - TRACE_ASSERT( err == KErrNone ); - if( err != KErrNone ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - error" ) ) ); - } - delete cleanup; - } - else - { - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - return 0" ) ) ); - return KErrNone; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::ConstructL -// ----------------------------------------------------------------------------- -void CTFFactory::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL()" ) ) ); - TAny* nullPtr = Dll::Tls(); - TRACE_ASSERT( nullPtr == NULL ); - __ASSERT_ALWAYS( nullPtr == NULL, User::Panic( KTFName, ETFPanicTlsExists ) ); - iStubControl = CTFStubControl::NewL(); - Dll::SetTls( this ); - // Starts the local test server - iTestServer = new ( ELeave ) CTFTestServer( this ); - iTestServer->StartL( KTFLocalTestServerName ); - // Starts the remote test server - RThread thread; - User::LeaveIfError( thread.Create( _L( "SERVERTHREAD" ), - ServerThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, this ) ); - thread.Resume(); - thread.Close(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL - return" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::~CTFFactory -// ----------------------------------------------------------------------------- -CTFFactory::~CTFFactory( void ) - { - // Stub control deletes the stubs. Stub destructors - // may access this object, so this is not removed - // from tls before stubs are deleted. - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory()" ) ) ); - delete iStubControl; - Dll::SetTls( NULL ); - iPlugins.ResetAndDestroy(); - iPluginInfos.ResetAndDestroy(); - // Close local server - delete iTestServer; - // Close remote server - RTFTestServer server; - if ( server.Connect( EFalse ) == KErrNone ) - { - server.PostShutdownMessage(); - server.Close(); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::Stub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub* CTFFactory::Stub( TInt aType ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub(0x%x)" ), aType ) ); - CTFStub* stub = NULL; - CTFFactory* factory = STATIC_CAST( CTFFactory*, Dll::Tls() ); - if ( factory != NULL ) - { - CTFStubControl* control = factory->iStubControl; - stub = control->Stub( aType ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub - return 0x%x" ), stub ) ); - return stub; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::InternalStub -// ----------------------------------------------------------------------------- -CTFStub* CTFFactory::InternalStub( TInt aType ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub(0x%x)" ), aType ) ); - CTFStub* stub = iStubControl->Stub( aType ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub - return 0x%x" ), stub ) ); - return stub; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallRemoteStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, &aStatus ) ); - CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); - CleanupStack::PushL( wrapper ); - wrapper->PostMessageLD( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, aStatus ); - CleanupStack::Pop( wrapper ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallRemoteStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - RTFTestServer server; - User::LeaveIfError( server.Connect( EFalse ) ); - TInt result = server.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ); - server.Close(); - User::LeaveIfError( result ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::LocalThreadFunctionL -// ----------------------------------------------------------------------------- -void CTFFactory::LocalThreadFunctionL( TTFThreadParam* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL(0x%x)" ), aData ) ); - // These need to be copied before the semaphore is signalled, since the calling thread - // deletes the TTFThreadParameter structure after it exits RSemaphore.Wait() - TInt stubType = aData->iStubType; - TAny* data1 = aData->iMessageData1; - TAny* data2 = aData->iMessageData2; - TAny* data3 = aData->iMessageData3; - TAny* data4 = aData->iMessageData4; - aData->iSemaphore->Signal(); - CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); - CleanupStack::PushL( scheduler ); - CActiveScheduler::Install( scheduler ); - CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); - CleanupStack::PushL( wrapper ); - wrapper->PostLocalMessageL( stubType, data1, data2, data3, data4 ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - Entering scheduler" ) ) ); - CActiveScheduler::Start(); - CleanupStack::PopAndDestroy( wrapper ); - CleanupStack::PopAndDestroy( scheduler ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::LocalThreadFunction -// ----------------------------------------------------------------------------- -TInt CTFFactory::LocalThreadFunction( TAny* aData ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction(0x%x)" ), aData ) ); - TRACE_ASSERT( aData ); - CTrapCleanup* cleanup = CTrapCleanup::New(); - if ( cleanup != NULL ) - { - TRAPD( err, LocalThreadFunctionL( ( TTFThreadParam* )aData ) ); - TRACE_ASSERT( err == KErrNone ); - if( err != KErrNone ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - error" ) ) ); - } - delete cleanup; - } - else - { - // Semaphore must be signalled anyway - ( ( TTFThreadParam* )aData )->iSemaphore->Signal(); - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - return 0x%x" ), KErrNone ) ); - return KErrNone; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::CallLocalStubL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFFactory::CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - TTFThreadParam param; - RSemaphore semaphore; - User::LeaveIfError( semaphore.CreateLocal( 0 ) ); - CleanupClosePushL( semaphore ); - RThread thread; - param.iSemaphore = &semaphore; - param.iStubType = aStubType; - param.iMessageData1 = aMessageData1; - param.iMessageData2 = aMessageData2; - param.iMessageData3 = aMessageData3; - param.iMessageData4 = aMessageData4; - User::LeaveIfError( thread.Create( _L( "DUMMYTHREAD" ), LocalThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, ¶m ) ); - thread.Resume(); - semaphore.Wait(); - CleanupStack::PopAndDestroy( &semaphore ); - thread.Close(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::StubControl -// ----------------------------------------------------------------------------- -MTFStubControl* CTFFactory::StubControl( void ) - { - return iStubControl; - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::BuildTestSuiteL -// ----------------------------------------------------------------------------- -void CTFFactory::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL(0x%x)" ), aRootSuite ) ); - CTFStubModuleInterface::ListAllImplementationsL( iPluginInfos ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - Found %d plug-ins" ), iPluginInfos.Count() ) ); - for ( TInt i = 0; i < iPluginInfos.Count(); i++ ) - { - CTFStubModuleInterface *stubIF = CTFStubModuleInterface::NewL( iPluginInfos[i]->DataType() ); - CleanupStack::PushL( stubIF ); - User::LeaveIfError( iPlugins.Append( stubIF ) ); - CleanupStack::Pop( stubIF ); - } - BuildSuiteFromModulesL( aRootSuite ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::BuildSuiteFromModulesL -// ----------------------------------------------------------------------------- -void CTFFactory::BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL(0x%x)" ), aRootSuite ) ); - TInt index; - // Adds stubs from every module - for ( index = 0; index < iPlugins.Count(); index++ ) - { - CTFStub* stub = iPlugins[index]->GetStubL(); - if ( stub != NULL ) - { - CleanupStack::PushL( stub ); - iStubControl->AddStubL( *stub ); - CleanupStack::Pop( stub ); - } - } - // Initializes the stubs - for ( index = 0; index < iStubControl->Count(); index++ ) - { - CTFStub* stub = iStubControl->StubAt( index ); - stub->InitializeL(); - } - // Adds test cases from every module - for ( index = 0; index < iPlugins.Count(); index++ ) - { - iPlugins[index]->BuildTestSuiteL( aRootSuite ); - } - // Initializes test cases - InitializeTestCasesL( aRootSuite ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFFactory::InitializeTestCasesL -// ----------------------------------------------------------------------------- -void CTFFactory::InitializeTestCasesL( CTFATestSuite* aSuite ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL(0x%x)" ), aSuite ) ); - for ( TInt i = 0; i < aSuite->Count(); i++ ) - { - CTFATest* test = &aSuite->At( i ); - if ( test->Type() == ETFATestTypeSuite ) - { - //lint -e826 Suspicious pointer-to-pointer conversion - InitializeTestCasesL( STATIC_CAST( CTFATestSuite*, test ) ); - //lint +e826 - } - else if ( test->Type() == ETFTestTypeStubWrapper ) - { - for ( TInt j = 0; j < iPlugins.Count(); j++ ) - { - MTFStubTestCase* stubCase = iPlugins[j]->GetStubTestCaseL( - STATIC_CAST( CTFATestCase*, test )->Id() ); - if ( stubCase != NULL ) - { - CleanupStack::PushL( stubCase ); - STATIC_CAST( CTFTestCaseWrapper*, test )->AddStubTestCaseL( *stubCase ); - CleanupStack::Pop( stubCase ); - } - } - } - else if ( test->Type() == ETFTestTypeStubRepeater ) - { - // Repeaters do not contain stub-specific parts - } - else - { - // Unrecognized test types are not handled - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL - return void" ) ) ); - } - - - - +/* +* 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: Implementation of CTFFactory class +* +*/ + + +// INCLUDE FILES +#include "tftypes.h" +#include "ctffactory.h" +#include "ctfstub.h" +#include "ctfatestenvironment.h" +#include "ctftestcasewrapper.h" +#include "ctfremotestub.h" +#include "ctftestserver.h" +#include "dsytesttooltrace.h" +#include "ctfstubcontrol.h" +#include "ctfactivescheduler.h" + +struct TTFThreadParam + { + RSemaphore* iSemaphore; + TInt iStubType; + TAny* iMessageData1; + TAny* iMessageData2; + TAny* iMessageData3; + TAny* iMessageData4; + }; + +// ----------------------------------------------------------------------------- +// CTFFactory::NewL +// ----------------------------------------------------------------------------- +CTFFactory* CTFFactory::NewL( void ) + { + CTFFactory* factory = new ( ELeave ) CTFFactory(); + CleanupStack::PushL( factory ); + factory->ConstructL(); + CleanupStack::Pop( factory ); + return factory; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CTFFactory +// ----------------------------------------------------------------------------- +CTFFactory::CTFFactory( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ServerThreadFunctionL +// ----------------------------------------------------------------------------- +void CTFFactory::ServerThreadFunctionL( CTFFactory* aFactory ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL(0x%x)" ), aFactory ) ); + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CleanupStack::PushL( scheduler ); + CActiveScheduler::Install( scheduler ); + CTFTestServer* testServer = new ( ELeave ) CTFTestServer( aFactory ); + CleanupStack::PushL( testServer ); + testServer->StartL( KTFRemoteTestServerName ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - Entering scheduler" ) ) ); + CActiveScheduler::Start(); + CleanupStack::PopAndDestroy( testServer ); + CleanupStack::PopAndDestroy( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunctionL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ServerThreadFunction +// ----------------------------------------------------------------------------- +TInt CTFFactory::ServerThreadFunction( TAny* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction(0x%x)" ), aData ) ); + CTrapCleanup* cleanup = CTrapCleanup::New(); + if ( cleanup != NULL ) + { + TRAPD( err, ServerThreadFunctionL( ( CTFFactory* )aData ) ); + TRACE_ASSERT( err == KErrNone ); + if( err != KErrNone ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - error" ) ) ); + } + delete cleanup; + } + else + { + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ServerThreadFunction - return 0" ) ) ); + return KErrNone; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::ConstructL +// ----------------------------------------------------------------------------- +void CTFFactory::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL()" ) ) ); + TAny* nullPtr = Dll::Tls(); + TRACE_ASSERT( nullPtr == NULL ); + __ASSERT_ALWAYS( nullPtr == NULL, User::Panic( KTFName, ETFPanicTlsExists ) ); + iStubControl = CTFStubControl::NewL(); + Dll::SetTls( this ); + // Starts the local test server + iTestServer = new ( ELeave ) CTFTestServer( this ); + iTestServer->StartL( KTFLocalTestServerName ); + // Starts the remote test server + RThread thread; + User::LeaveIfError( thread.Create( _L( "SERVERTHREAD" ), + ServerThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, this ) ); + thread.Resume(); + thread.Close(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::ConstructL - return" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::~CTFFactory +// ----------------------------------------------------------------------------- +CTFFactory::~CTFFactory( void ) + { + // Stub control deletes the stubs. Stub destructors + // may access this object, so this is not removed + // from tls before stubs are deleted. + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory()" ) ) ); + delete iStubControl; + Dll::SetTls( NULL ); + iPlugins.ResetAndDestroy(); + iPluginInfos.ResetAndDestroy(); + // Close local server + delete iTestServer; + // Close remote server + RTFTestServer server; + if ( server.Connect( EFalse ) == KErrNone ) + { + server.PostShutdownMessage(); + server.Close(); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::~CTFFactory - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::Stub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub* CTFFactory::Stub( TInt aType ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub(0x%x)" ), aType ) ); + CTFStub* stub = NULL; + CTFFactory* factory = STATIC_CAST( CTFFactory*, Dll::Tls() ); + if ( factory != NULL ) + { + CTFStubControl* control = factory->iStubControl; + stub = control->Stub( aType ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::Stub - return 0x%x" ), stub ) ); + return stub; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::InternalStub +// ----------------------------------------------------------------------------- +CTFStub* CTFFactory::InternalStub( TInt aType ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub(0x%x)" ), aType ) ); + CTFStub* stub = iStubControl->Stub( aType ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InternalStub - return 0x%x" ), stub ) ); + return stub; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallRemoteStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, &aStatus ) ); + CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); + CleanupStack::PushL( wrapper ); + wrapper->PostMessageLD( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, aStatus ); + CleanupStack::Pop( wrapper ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallRemoteStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallRemoteStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + RTFTestServer server; + User::LeaveIfError( server.Connect( EFalse ) ); + TInt result = server.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ); + server.Close(); + User::LeaveIfError( result ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallRemoteStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::LocalThreadFunctionL +// ----------------------------------------------------------------------------- +void CTFFactory::LocalThreadFunctionL( TTFThreadParam* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL(0x%x)" ), aData ) ); + // These need to be copied before the semaphore is signalled, since the calling thread + // deletes the TTFThreadParameter structure after it exits RSemaphore.Wait() + TInt stubType = aData->iStubType; + TAny* data1 = aData->iMessageData1; + TAny* data2 = aData->iMessageData2; + TAny* data3 = aData->iMessageData3; + TAny* data4 = aData->iMessageData4; + aData->iSemaphore->Signal(); + CTFActiveScheduler* scheduler = new ( ELeave ) CTFActiveScheduler(); + CleanupStack::PushL( scheduler ); + CActiveScheduler::Install( scheduler ); + CTFTestServerWrapper* wrapper = new ( ELeave ) CTFTestServerWrapper(); + CleanupStack::PushL( wrapper ); + wrapper->PostLocalMessageL( stubType, data1, data2, data3, data4 ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - Entering scheduler" ) ) ); + CActiveScheduler::Start(); + CleanupStack::PopAndDestroy( wrapper ); + CleanupStack::PopAndDestroy( scheduler ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunctionL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::LocalThreadFunction +// ----------------------------------------------------------------------------- +TInt CTFFactory::LocalThreadFunction( TAny* aData ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction(0x%x)" ), aData ) ); + TRACE_ASSERT( aData ); + CTrapCleanup* cleanup = CTrapCleanup::New(); + if ( cleanup != NULL ) + { + TRAPD( err, LocalThreadFunctionL( ( TTFThreadParam* )aData ) ); + TRACE_ASSERT( err == KErrNone ); + if( err != KErrNone ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - error" ) ) ); + } + delete cleanup; + } + else + { + // Semaphore must be signalled anyway + ( ( TTFThreadParam* )aData )->iSemaphore->Signal(); + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::LocalThreadFunction - return 0x%x" ), KErrNone ) ); + return KErrNone; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::CallLocalStubL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFFactory::CallLocalStubL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + TTFThreadParam param; + RSemaphore semaphore; + User::LeaveIfError( semaphore.CreateLocal( 0 ) ); + CleanupClosePushL( semaphore ); + RThread thread; + param.iSemaphore = &semaphore; + param.iStubType = aStubType; + param.iMessageData1 = aMessageData1; + param.iMessageData2 = aMessageData2; + param.iMessageData3 = aMessageData3; + param.iMessageData4 = aMessageData4; + User::LeaveIfError( thread.Create( _L( "DUMMYTHREAD" ), LocalThreadFunction, KDefaultStackSize, KMinHeapSize, 0x50000, ¶m ) ); + thread.Resume(); + semaphore.Wait(); + CleanupStack::PopAndDestroy( &semaphore ); + thread.Close(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::CallLocalStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::StubControl +// ----------------------------------------------------------------------------- +MTFStubControl* CTFFactory::StubControl( void ) + { + return iStubControl; + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::BuildTestSuiteL +// ----------------------------------------------------------------------------- +void CTFFactory::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL(0x%x)" ), aRootSuite ) ); + CTFStubModuleInterface::ListAllImplementationsL( iPluginInfos ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - Found %d plug-ins" ), iPluginInfos.Count() ) ); + for ( TInt i = 0; i < iPluginInfos.Count(); i++ ) + { + CTFStubModuleInterface *stubIF = CTFStubModuleInterface::NewL( iPluginInfos[i]->DataType() ); + CleanupStack::PushL( stubIF ); + User::LeaveIfError( iPlugins.Append( stubIF ) ); + CleanupStack::Pop( stubIF ); + } + BuildSuiteFromModulesL( aRootSuite ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildTestSuiteL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::BuildSuiteFromModulesL +// ----------------------------------------------------------------------------- +void CTFFactory::BuildSuiteFromModulesL( CTFATestSuite* aRootSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL(0x%x)" ), aRootSuite ) ); + TInt index; + // Adds stubs from every module + for ( index = 0; index < iPlugins.Count(); index++ ) + { + CTFStub* stub = iPlugins[index]->GetStubL(); + if ( stub != NULL ) + { + CleanupStack::PushL( stub ); + iStubControl->AddStubL( *stub ); + CleanupStack::Pop( stub ); + } + } + // Initializes the stubs + for ( index = 0; index < iStubControl->Count(); index++ ) + { + CTFStub* stub = iStubControl->StubAt( index ); + stub->InitializeL(); + } + // Adds test cases from every module + for ( index = 0; index < iPlugins.Count(); index++ ) + { + iPlugins[index]->BuildTestSuiteL( aRootSuite ); + } + // Initializes test cases + InitializeTestCasesL( aRootSuite ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::BuildSuiteFromModulesL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFFactory::InitializeTestCasesL +// ----------------------------------------------------------------------------- +void CTFFactory::InitializeTestCasesL( CTFATestSuite* aSuite ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL(0x%x)" ), aSuite ) ); + for ( TInt i = 0; i < aSuite->Count(); i++ ) + { + CTFATest* test = &aSuite->At( i ); + if ( test->Type() == ETFATestTypeSuite ) + { + //lint -e826 Suspicious pointer-to-pointer conversion + InitializeTestCasesL( STATIC_CAST( CTFATestSuite*, test ) ); + //lint +e826 + } + else if ( test->Type() == ETFTestTypeStubWrapper ) + { + for ( TInt j = 0; j < iPlugins.Count(); j++ ) + { + MTFStubTestCase* stubCase = iPlugins[j]->GetStubTestCaseL( + STATIC_CAST( CTFATestCase*, test )->Id() ); + if ( stubCase != NULL ) + { + CleanupStack::PushL( stubCase ); + STATIC_CAST( CTFTestCaseWrapper*, test )->AddStubTestCaseL( *stubCase ); + CleanupStack::Pop( stubCase ); + } + } + } + else if ( test->Type() == ETFTestTypeStubRepeater ) + { + // Repeaters do not contain stub-specific parts + } + else + { + // Unrecognized test types are not handled + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFFactory::InitializeTestCasesL - return void" ) ) ); + } + + + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfremotestub.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfremotestub.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfremotestub.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,40 +1,40 @@ -/* -* 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: Implementation of CTFRemoteStub class -* -*/ - - -// INCLUDE FILES -#include "ctfremotestub.h" -#include "tftypes.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFRemoteStub::CTFRemoteStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFRemoteStub::CTFRemoteStub( TInt aStubType ) -: CTFStub( aStubType ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFRemoteStub::~CTFRemoteStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFRemoteStub::~CTFRemoteStub( void ) - { - } - - +/* +* 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: Implementation of CTFRemoteStub class +* +*/ + + +// INCLUDE FILES +#include "ctfremotestub.h" +#include "tftypes.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFRemoteStub::CTFRemoteStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFRemoteStub::CTFRemoteStub( TInt aStubType ) +: CTFStub( aStubType ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFRemoteStub::~CTFRemoteStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFRemoteStub::~CTFRemoteStub( void ) + { + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstub.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstub.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstub.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,82 +1,82 @@ -/* -* 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: Implementation of CTFStub class -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "tftypes.h" -#include "mtfstubinterface.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFStub::CTFStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub::CTFStub( TInt aStubType ) -: iStubType( aStubType ) - { - TRACE_ASSERT( iStubType > 0 ); - __ASSERT_ALWAYS( iStubType > 0, User::Panic( KTFName, ETFPanicInvalidStubType ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStub::~CTFStub -// ----------------------------------------------------------------------------- -EXPORT_C CTFStub::~CTFStub( void ) - { - iStubControl = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::Type -// ----------------------------------------------------------------------------- -TInt CTFStub::Type( void ) const - { - return iStubType; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::SetStubControl -// ----------------------------------------------------------------------------- -void CTFStub::SetStubControl( MTFStubInterface* aStubControl ) - { - iStubControl = aStubControl; - } - - -// ----------------------------------------------------------------------------- -// CTFStub::CurrentTestCase -// ----------------------------------------------------------------------------- -EXPORT_C MTFStubTestCase* CTFStub::CurrentTestCase( void ) - { - TRACE_ASSERT( iStubControl != NULL ); - return iStubControl->CurrentTestCase( iStubType ); - } - - -// ----------------------------------------------------------------------------- -// CTFStub::CurrentTestCaseID -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFStub::CurrentTestCaseID( void ) - { - TRACE_ASSERT( iStubControl != NULL ); - return iStubControl->CurrentTestCaseID(); - } - - +/* +* 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: Implementation of CTFStub class +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "tftypes.h" +#include "mtfstubinterface.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFStub::CTFStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub::CTFStub( TInt aStubType ) +: iStubType( aStubType ) + { + TRACE_ASSERT( iStubType > 0 ); + __ASSERT_ALWAYS( iStubType > 0, User::Panic( KTFName, ETFPanicInvalidStubType ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStub::~CTFStub +// ----------------------------------------------------------------------------- +EXPORT_C CTFStub::~CTFStub( void ) + { + iStubControl = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::Type +// ----------------------------------------------------------------------------- +TInt CTFStub::Type( void ) const + { + return iStubType; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::SetStubControl +// ----------------------------------------------------------------------------- +void CTFStub::SetStubControl( MTFStubInterface* aStubControl ) + { + iStubControl = aStubControl; + } + + +// ----------------------------------------------------------------------------- +// CTFStub::CurrentTestCase +// ----------------------------------------------------------------------------- +EXPORT_C MTFStubTestCase* CTFStub::CurrentTestCase( void ) + { + TRACE_ASSERT( iStubControl != NULL ); + return iStubControl->CurrentTestCase( iStubType ); + } + + +// ----------------------------------------------------------------------------- +// CTFStub::CurrentTestCaseID +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFStub::CurrentTestCaseID( void ) + { + TRACE_ASSERT( iStubControl != NULL ); + return iStubControl->CurrentTestCaseID(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubcontrol.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubcontrol.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubcontrol.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,202 +1,202 @@ -/* -* 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: Implementation of CTFStubControl class -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "tftypes.h" -#include "mtftestcase.h" -#include "dsytesttooltrace.h" -#include "ctfstubcontrol.h" - -// ----------------------------------------------------------------------------- -// MTFStubInterface::MTFStubInterface -// ----------------------------------------------------------------------------- -MTFStubInterface::MTFStubInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubInterface::~MTFStubInterface -// ----------------------------------------------------------------------------- -MTFStubInterface::~MTFStubInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubControl::MTFStubControl -// ----------------------------------------------------------------------------- -MTFStubControl::MTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubControl::~MTFStubControl -// ----------------------------------------------------------------------------- -MTFStubControl::~MTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::NewL -// ----------------------------------------------------------------------------- -CTFStubControl* CTFStubControl::NewL( void ) - { - CTFStubControl* control = new ( ELeave ) CTFStubControl(); - return control; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CTFStubControl -// ----------------------------------------------------------------------------- -CTFStubControl::CTFStubControl( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::~CTFStubControl -// ----------------------------------------------------------------------------- -CTFStubControl::~CTFStubControl( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl()" ) ) ); - // Stubs are deleted in reverse order they were added. - // The stub needs to be removed from the array before deletion, - // since the stub destructor may call the Stub method that - // accesses the array. - TInt i( iStubs.Count() - 1 ); - while ( i >= 0 ) - { - CTFStub* stub = iStubs[i]; - iStubs.Remove( i ); - delete stub; - i--; - } - iStubs.Reset(); - iCurrentTestCase = NULL; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CurrentTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase* CTFStubControl::CurrentTestCase( TInt aTestCaseId ) - { - MTFStubTestCase* retval; - if ( iCurrentTestCase != NULL ) - { - retval = iCurrentTestCase->TestCase( aTestCaseId ); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCase - No test case available" ) ) ); - retval = NULL; - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::CurrentTestCaseID -// ----------------------------------------------------------------------------- -TInt CTFStubControl::CurrentTestCaseID( void ) - { - TInt retval; - if ( iCurrentTestCase != NULL ) - { - retval = iCurrentTestCase->TestCaseID(); - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCaseID - No test case available" ) ) ); - retval = -1; - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::SetCurrentTestCase -// ----------------------------------------------------------------------------- -void CTFStubControl::SetCurrentTestCase( MTFTestCase* aTestCase ) - { - iCurrentTestCase = aTestCase; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::AddStubL -// ----------------------------------------------------------------------------- -void CTFStubControl::AddStubL( CTFStub& aStub ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL(0x%x)" ), &aStub ) ); - for ( TInt i = 0; i < iStubs.Count(); i++ ) - { - if ( iStubs[i]->Type() == aStub.Type() ) - { - TRACE_ASSERT_ALWAYS; - User::Panic( KTFName, ETFPanicDuplicateStub ); - } - } - User::LeaveIfError( iStubs.Append( &aStub ) ); - aStub.SetStubControl( this ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::Stub -// ----------------------------------------------------------------------------- -CTFStub* CTFStubControl::Stub( TInt aStubType ) - { - CTFStub* retval = NULL; - for ( TInt i = 0; i < iStubs.Count(); i++ ) - { - if ( iStubs[i]->Type() == aStubType ) - { - retval = iStubs[i]; - i = iStubs.Count(); - } - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::Count -// ----------------------------------------------------------------------------- -TInt CTFStubControl::Count( void ) const - { - return iStubs.Count(); - } - - -// ----------------------------------------------------------------------------- -// CTFStubControl::StubAt -// ----------------------------------------------------------------------------- -CTFStub* CTFStubControl::StubAt( TInt aIndex ) - { - TRACE_ASSERT( aIndex >= 0 && aIndex < iStubs.Count() ); - return iStubs[aIndex]; - } - +/* +* 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: Implementation of CTFStubControl class +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "tftypes.h" +#include "mtftestcase.h" +#include "dsytesttooltrace.h" +#include "ctfstubcontrol.h" + +// ----------------------------------------------------------------------------- +// MTFStubInterface::MTFStubInterface +// ----------------------------------------------------------------------------- +MTFStubInterface::MTFStubInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubInterface::~MTFStubInterface +// ----------------------------------------------------------------------------- +MTFStubInterface::~MTFStubInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubControl::MTFStubControl +// ----------------------------------------------------------------------------- +MTFStubControl::MTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubControl::~MTFStubControl +// ----------------------------------------------------------------------------- +MTFStubControl::~MTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::NewL +// ----------------------------------------------------------------------------- +CTFStubControl* CTFStubControl::NewL( void ) + { + CTFStubControl* control = new ( ELeave ) CTFStubControl(); + return control; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CTFStubControl +// ----------------------------------------------------------------------------- +CTFStubControl::CTFStubControl( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::~CTFStubControl +// ----------------------------------------------------------------------------- +CTFStubControl::~CTFStubControl( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl()" ) ) ); + // Stubs are deleted in reverse order they were added. + // The stub needs to be removed from the array before deletion, + // since the stub destructor may call the Stub method that + // accesses the array. + TInt i( iStubs.Count() - 1 ); + while ( i >= 0 ) + { + CTFStub* stub = iStubs[i]; + iStubs.Remove( i ); + delete stub; + i--; + } + iStubs.Reset(); + iCurrentTestCase = NULL; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::~CTFStubControl - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CurrentTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase* CTFStubControl::CurrentTestCase( TInt aTestCaseId ) + { + MTFStubTestCase* retval; + if ( iCurrentTestCase != NULL ) + { + retval = iCurrentTestCase->TestCase( aTestCaseId ); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCase - No test case available" ) ) ); + retval = NULL; + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::CurrentTestCaseID +// ----------------------------------------------------------------------------- +TInt CTFStubControl::CurrentTestCaseID( void ) + { + TInt retval; + if ( iCurrentTestCase != NULL ) + { + retval = iCurrentTestCase->TestCaseID(); + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::CurrentTestCaseID - No test case available" ) ) ); + retval = -1; + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::SetCurrentTestCase +// ----------------------------------------------------------------------------- +void CTFStubControl::SetCurrentTestCase( MTFTestCase* aTestCase ) + { + iCurrentTestCase = aTestCase; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::AddStubL +// ----------------------------------------------------------------------------- +void CTFStubControl::AddStubL( CTFStub& aStub ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL(0x%x)" ), &aStub ) ); + for ( TInt i = 0; i < iStubs.Count(); i++ ) + { + if ( iStubs[i]->Type() == aStub.Type() ) + { + TRACE_ASSERT_ALWAYS; + User::Panic( KTFName, ETFPanicDuplicateStub ); + } + } + User::LeaveIfError( iStubs.Append( &aStub ) ); + aStub.SetStubControl( this ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubControl::AddStubL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::Stub +// ----------------------------------------------------------------------------- +CTFStub* CTFStubControl::Stub( TInt aStubType ) + { + CTFStub* retval = NULL; + for ( TInt i = 0; i < iStubs.Count(); i++ ) + { + if ( iStubs[i]->Type() == aStubType ) + { + retval = iStubs[i]; + i = iStubs.Count(); + } + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::Count +// ----------------------------------------------------------------------------- +TInt CTFStubControl::Count( void ) const + { + return iStubs.Count(); + } + + +// ----------------------------------------------------------------------------- +// CTFStubControl::StubAt +// ----------------------------------------------------------------------------- +CTFStub* CTFStubControl::StubAt( TInt aIndex ) + { + TRACE_ASSERT( aIndex >= 0 && aIndex < iStubs.Count() ); + return iStubs[aIndex]; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubtestcase.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubtestcase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tfstubtestcase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,145 +1,145 @@ -/* -* 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: Implementation of CTFStubTestCase and CTFStubTestCaseParam classes -* -*/ - - -// INCLUDE FILES -#include "mtftestcaseinterface.h" -#include "ctfstubtestcase.h" -#include "ctfstubtestcaseparam.h" -#include "dsytesttooltrace.h" - -// ----------------------------------------------------------------------------- -// CTFStubTestCaseParam::CTFStubTestCaseParam -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCaseParam::CTFStubTestCaseParam( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCaseParam::~CTFStubTestCaseParam -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCaseParam::~CTFStubTestCaseParam( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubTestCase::MTFStubTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase::MTFStubTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFStubTestCase::~MTFStubTestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase::~MTFStubTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::CTFStubTestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCase::CTFStubTestCase( TInt aTestCaseType ) -: iTestCaseType( aTestCaseType ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::~CTFStubTestCase -// ----------------------------------------------------------------------------- -EXPORT_C CTFStubTestCase::~CTFStubTestCase( void ) - { - iStub = NULL; - iCallback = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetCallback -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetCallback( MTFTestCaseInterface& aCallback ) - { - iCallback = &aCallback; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::Type -// ----------------------------------------------------------------------------- -EXPORT_C TInt CTFStubTestCase::Type( void ) - { - return iTestCaseType; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetupL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL()" ) ) ); - iComplete = EFalse; - InitL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::IsComplete -// ----------------------------------------------------------------------------- -EXPORT_C TBool CTFStubTestCase::IsComplete( void ) - { - return iComplete; - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::CompleteTest -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::CompleteTest( TInt aTestResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::CompleteTest(%d)" ), aTestResult ) ); - if ( !iComplete || aTestResult != KErrNone ) - { - iComplete = ETrue; - iCallback->TestComplete( aTestResult ); - } - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::Logger -// ----------------------------------------------------------------------------- -EXPORT_C CTFATestLog& CTFStubTestCase::Logger( void ) - { - return iCallback->Logger(); - } - - -// ----------------------------------------------------------------------------- -// CTFStubTestCase::SetStub -// ----------------------------------------------------------------------------- -EXPORT_C void CTFStubTestCase::SetStub( CTFStub& aStub ) - { - iStub = &aStub; - } - +/* +* 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: Implementation of CTFStubTestCase and CTFStubTestCaseParam classes +* +*/ + + +// INCLUDE FILES +#include "mtftestcaseinterface.h" +#include "ctfstubtestcase.h" +#include "ctfstubtestcaseparam.h" +#include "dsytesttooltrace.h" + +// ----------------------------------------------------------------------------- +// CTFStubTestCaseParam::CTFStubTestCaseParam +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCaseParam::CTFStubTestCaseParam( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCaseParam::~CTFStubTestCaseParam +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCaseParam::~CTFStubTestCaseParam( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubTestCase::MTFStubTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase::MTFStubTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFStubTestCase::~MTFStubTestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase::~MTFStubTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::CTFStubTestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCase::CTFStubTestCase( TInt aTestCaseType ) +: iTestCaseType( aTestCaseType ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::~CTFStubTestCase +// ----------------------------------------------------------------------------- +EXPORT_C CTFStubTestCase::~CTFStubTestCase( void ) + { + iStub = NULL; + iCallback = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetCallback +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetCallback( MTFTestCaseInterface& aCallback ) + { + iCallback = &aCallback; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::Type +// ----------------------------------------------------------------------------- +EXPORT_C TInt CTFStubTestCase::Type( void ) + { + return iTestCaseType; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetupL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL()" ) ) ); + iComplete = EFalse; + InitL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::IsComplete +// ----------------------------------------------------------------------------- +EXPORT_C TBool CTFStubTestCase::IsComplete( void ) + { + return iComplete; + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::CompleteTest +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::CompleteTest( TInt aTestResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFStubTestCase::CompleteTest(%d)" ), aTestResult ) ); + if ( !iComplete || aTestResult != KErrNone ) + { + iComplete = ETrue; + iCallback->TestComplete( aTestResult ); + } + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::Logger +// ----------------------------------------------------------------------------- +EXPORT_C CTFATestLog& CTFStubTestCase::Logger( void ) + { + return iCallback->Logger(); + } + + +// ----------------------------------------------------------------------------- +// CTFStubTestCase::SetStub +// ----------------------------------------------------------------------------- +EXPORT_C void CTFStubTestCase::SetStub( CTFStub& aStub ) + { + iStub = &aStub; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcaserepeater.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcaserepeater.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcaserepeater.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,232 +1,232 @@ -/* -* 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: Implementation of CTFATestCaseRepeater class -* -*/ - - -// INCLUDE FILES -#include -#include "tftypes.h" -#include "ctfatestenvironment.h" -#include "ctfatestlog.h" -#include "ctfatestsuite.h" -#include "ctftestcasewrapper.h" -#include "ctftestcaserepeater.h" -#include "dsytesttooltrace.h" - -// Default 30-s timeout is expected for each test case -const TInt KTFDefaultTimeout = 30; - -// Each test case is run 3 * aRepeatCount times. The default 30-s timer -// is expected for each test case. -const TInt KTFLoopCount = 3; - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::CTFTestCaseRepeater -// ----------------------------------------------------------------------------- -EXPORT_C CTFTestCaseRepeater::CTFTestCaseRepeater( TInt aId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ) -: CTFATestCase( aId, aName ) -, iSuite( aSuite ) -, iRepeatCount( aRepeatCount ) -, iRandomRepeat( aRandomRepeat ) - { - if ( aSuite != NULL ) - { - if ( iRandomRepeat ) - { - SetTimeout( aRepeatCount * aSuite->Count() * KTFDefaultTimeout ); - } - else - { - SetTimeout( aRepeatCount * aSuite->Count() * KTFLoopCount * KTFDefaultTimeout ); - } - } - else - { - TRACE_ASSERT_ALWAYS; - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::~CTFTestCaseRepeater -// ----------------------------------------------------------------------------- -CTFTestCaseRepeater::~CTFTestCaseRepeater( void ) - { - iSuite = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseRepeater::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATestCase::SetEnvironment( aEnvironment ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Log -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::Log( TInt aDepth ) - { - _LIT ( KCaseDesc, "Case %d: %S" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::SetupL -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL()" ) ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::RunTestL -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::RunTestL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL()" ) ) ); - if ( iSuite != NULL ) - { - RHeap& heap = User::Heap(); - TInt heapSizeStart = 0; - TInt heapCountStart = 0; - TInt err; - heapCountStart = heap.AllocSize( heapSizeStart ); - if ( iRandomRepeat ) - { - TTime time; - time.HomeTime(); - TInt64 seed = time.Int64(); - for ( TInt i = 0; i < iRepeatCount; i++ ) - { - TInt index = Math::Rand( seed ) % iSuite->Count(); - CTFATest& test = iSuite->At( index ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - else - { - i--; - } - } - } - else - { - TInt i; - TInt j; - // Run each test repeat count times. - for ( i = 0; i < iSuite->Count(); i++ ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - for ( j = 0; j < iRepeatCount; j++ ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - // Run the entire test suite repeat count times starting from the last test. - for ( j = 0; j < iRepeatCount; j++ ) - { - for ( i = iSuite->Count() - 1; i >= 0; i-- ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - // Run the entire test suite repeat count times starting from the first test. - for ( j = 0; j < iRepeatCount; j++ ) - { - for ( i = 0; i < iSuite->Count(); i++ ) - { - CTFATest& test = iSuite->At( i ); - // The test suites and repeater test cases are not run - if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) - { - STATIC_CAST( CTFATestCase*, &test )->SetupL(); - TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); - STATIC_CAST( CTFATestCase*, &test )->Teardown(); - User::LeaveIfError( err ); - } - } - } - } - TInt heapSizeEnd; - TInt heapCountEnd = heap.AllocSize( heapSizeEnd ); - if ( heapCountEnd != heapCountStart ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Allocated memory %d times: Total %d bytes\r\n" ), heapCountEnd - heapCountStart, heapSizeEnd - heapSizeStart ) ); - } - } - else - { - TRACE_ASSERT_ALWAYS; - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Teardown -// ----------------------------------------------------------------------------- -void CTFTestCaseRepeater::Teardown( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown()" ) ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFTestCaseRepeater::Type( void ) const - { - return ( TTFATestType )ETFTestTypeStubRepeater; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseRepeater::Logger -// ----------------------------------------------------------------------------- -CTFATestLog& CTFTestCaseRepeater::Logger( void ) - { - return Environment().Logger(); - } - - +/* +* 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: Implementation of CTFATestCaseRepeater class +* +*/ + + +// INCLUDE FILES +#include +#include "tftypes.h" +#include "ctfatestenvironment.h" +#include "ctfatestlog.h" +#include "ctfatestsuite.h" +#include "ctftestcasewrapper.h" +#include "ctftestcaserepeater.h" +#include "dsytesttooltrace.h" + +// Default 30-s timeout is expected for each test case +const TInt KTFDefaultTimeout = 30; + +// Each test case is run 3 * aRepeatCount times. The default 30-s timer +// is expected for each test case. +const TInt KTFLoopCount = 3; + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::CTFTestCaseRepeater +// ----------------------------------------------------------------------------- +EXPORT_C CTFTestCaseRepeater::CTFTestCaseRepeater( TInt aId, const TDesC& aName, CTFATestSuite* aSuite, TInt aRepeatCount, TBool aRandomRepeat ) +: CTFATestCase( aId, aName ) +, iSuite( aSuite ) +, iRepeatCount( aRepeatCount ) +, iRandomRepeat( aRandomRepeat ) + { + if ( aSuite != NULL ) + { + if ( iRandomRepeat ) + { + SetTimeout( aRepeatCount * aSuite->Count() * KTFDefaultTimeout ); + } + else + { + SetTimeout( aRepeatCount * aSuite->Count() * KTFLoopCount * KTFDefaultTimeout ); + } + } + else + { + TRACE_ASSERT_ALWAYS; + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::~CTFTestCaseRepeater +// ----------------------------------------------------------------------------- +CTFTestCaseRepeater::~CTFTestCaseRepeater( void ) + { + iSuite = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseRepeater::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATestCase::SetEnvironment( aEnvironment ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Log +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::Log( TInt aDepth ) + { + _LIT ( KCaseDesc, "Case %d: %S" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::SetupL +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL()" ) ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::RunTestL +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::RunTestL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL()" ) ) ); + if ( iSuite != NULL ) + { + RHeap& heap = User::Heap(); + TInt heapSizeStart = 0; + TInt heapCountStart = 0; + TInt err; + heapCountStart = heap.AllocSize( heapSizeStart ); + if ( iRandomRepeat ) + { + TTime time; + time.HomeTime(); + TInt64 seed = time.Int64(); + for ( TInt i = 0; i < iRepeatCount; i++ ) + { + TInt index = Math::Rand( seed ) % iSuite->Count(); + CTFATest& test = iSuite->At( index ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + else + { + i--; + } + } + } + else + { + TInt i; + TInt j; + // Run each test repeat count times. + for ( i = 0; i < iSuite->Count(); i++ ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + for ( j = 0; j < iRepeatCount; j++ ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + // Run the entire test suite repeat count times starting from the last test. + for ( j = 0; j < iRepeatCount; j++ ) + { + for ( i = iSuite->Count() - 1; i >= 0; i-- ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + // Run the entire test suite repeat count times starting from the first test. + for ( j = 0; j < iRepeatCount; j++ ) + { + for ( i = 0; i < iSuite->Count(); i++ ) + { + CTFATest& test = iSuite->At( i ); + // The test suites and repeater test cases are not run + if ( test.Type() != ETFTestTypeStubRepeater && test.Type() != ETFATestTypeSuite ) + { + STATIC_CAST( CTFATestCase*, &test )->SetupL(); + TRAP( err, STATIC_CAST( CTFATestCase*, &test )->RunTestL() ); + STATIC_CAST( CTFATestCase*, &test )->Teardown(); + User::LeaveIfError( err ); + } + } + } + } + TInt heapSizeEnd; + TInt heapCountEnd = heap.AllocSize( heapSizeEnd ); + if ( heapCountEnd != heapCountStart ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Allocated memory %d times: Total %d bytes\r\n" ), heapCountEnd - heapCountStart, heapSizeEnd - heapSizeStart ) ); + } + } + else + { + TRACE_ASSERT_ALWAYS; + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Teardown +// ----------------------------------------------------------------------------- +void CTFTestCaseRepeater::Teardown( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown()" ) ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseRepeater::Teardown - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFTestCaseRepeater::Type( void ) const + { + return ( TTFATestType )ETFTestTypeStubRepeater; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseRepeater::Logger +// ----------------------------------------------------------------------------- +CTFATestLog& CTFTestCaseRepeater::Logger( void ) + { + return Environment().Logger(); + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcasewrapper.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcasewrapper.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestcasewrapper.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,321 +1,321 @@ -/* -* 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: Implementation of CTFATestCaseWrapper class -* -*/ - - -// INCLUDE FILES -#include "ctfatestlog.h" -#include "mtfstubtestcase.h" -#include "ctffactory.h" -#include "ctfatestenvironment.h" -#include "tftypes.h" -#include "ctftestcasewrapper.h" -#include "ctfatesttimer.h" -#include "dsytesttooltrace.h" -#include "mtfstubcontrol.h" - -// ----------------------------------------------------------------------------- -// MTFTestCaseInterface::MTFTestCaseInterface -// ----------------------------------------------------------------------------- -MTFTestCaseInterface::MTFTestCaseInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCaseInterface::~MTFTestCaseInterface -// ----------------------------------------------------------------------------- -MTFTestCaseInterface::~MTFTestCaseInterface( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCase::MTFTestCase -// ----------------------------------------------------------------------------- -MTFTestCase::MTFTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// MTFTestCase::~MTFTestCase -// ----------------------------------------------------------------------------- -MTFTestCase::~MTFTestCase( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::CTFTestCaseWrapper -// ----------------------------------------------------------------------------- -EXPORT_C CTFTestCaseWrapper::CTFTestCaseWrapper( TInt aId, const TDesC& aName ) -: CTFATestCase( aId, aName ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::~CTFTestCaseWrapper -// ----------------------------------------------------------------------------- -CTFTestCaseWrapper::~CTFTestCaseWrapper( void ) - { - // Deletes the stub test cases - delete iTimer; - iTestCases.ResetAndDestroy(); - iStubControl = NULL; - iFactory = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::SetEnvironment -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseWrapper::SetEnvironment( CTFATestEnvironment& aEnvironment ) - { - CTFATestCase::SetEnvironment( aEnvironment ); - iFactory = aEnvironment.Factory(); - TRACE_ASSERT( iFactory != NULL ); - __ASSERT_ALWAYS( iFactory != NULL, User::Panic( KTFName, ETFPanicFactory ) ); - iStubControl = iFactory->StubControl(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestCaseID -// ----------------------------------------------------------------------------- -TInt CTFTestCaseWrapper::TestCaseID( void ) const - { - return Id(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestCase -// ----------------------------------------------------------------------------- -MTFStubTestCase* CTFTestCaseWrapper::TestCase( TInt aTestCaseType ) - { - MTFStubTestCase* retval = NULL; - for ( TInt i = 0; i < iTestCases.Count() && retval == NULL; i++ ) - { - MTFStubTestCase* testcase = iTestCases[i]; - if ( testcase->Type() == aTestCaseType ) - { - retval = testcase; - } - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::AddStubTestCaseL -// ----------------------------------------------------------------------------- -EXPORT_C void CTFTestCaseWrapper::AddStubTestCaseL( MTFStubTestCase& aTestCase ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL(0x%x)" ), &aTestCase ) ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( iTestCases[i]->Type() == aTestCase.Type() ) - { - TRACE_ASSERT_ALWAYS; - User::Panic( KTFName, ETFPanicDuplicateCase ); - } - } - if ( iTimer == NULL ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - User::LeaveIfError( iTestCases.Append( &aTestCase ) ); - aTestCase.SetCallback( *this ); - CTFStub* stub = iStubControl->Stub( aTestCase.Type () ); - TRACE_ASSERT( stub != NULL ); - __ASSERT_ALWAYS( stub != NULL, User::Panic( KTFName, ETFPanicStubMissing ) ); - aTestCase.SetStub( *stub ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Log -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::Log( TInt aDepth ) - { - if ( iTestCases.Count() > 0 ) - { - _LIT ( KCaseDesc, "Case %d: %S, %d components" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name(), iTestCases.Count() ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->Log( aDepth + 1 ); - } - } - else - { - _LIT( KCaseDesc, "Case %d: %S, no components" ); - Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::SetupL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::SetupL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL()" ) ) ); - iTestResult = KErrNone; - iStubControl->SetCurrentTestCase( this ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - TRAPD( err, iTestCases[i]->SetupL() ); - if ( err != KErrNone ) - { - // If one setup leaves, the previous ones need to be torn down - for ( TInt j = 0; j < i; j++ ) - { - iTestCases[j]->Teardown(); - } - i = iTestCases.Count(); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::RunTestL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::RunTestL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL()" ) ) ); -#ifdef _DEBUG -#ifdef TEST_NAME_TRACE_FLAG - RDebug::Print( _L( " DSYTESTTOOL - Running test case [%S]" ), &Name() ); -#endif -#endif - TBool needsToWait = EFalse; - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->RunL(); - if ( !iTestCases[i]->IsComplete() ) - { - needsToWait = ETrue; - } - } - if ( iTestResult == KErrNone && needsToWait ) - { - iWaitStarted = ETrue; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Test case [%S] in active wait" ), &Name() ) ); - iTimer->After( TTimeIntervalMicroSeconds32( Timeout() * 1000000L ) ); - CActiveScheduler::Start(); - } -#ifdef _DEBUG -#ifdef TEST_NAME_TRACE_FLAG - RDebug::Print( _L( " DSYTESTTOOL - Test case [%S] finished with %d" ), &Name(), iTestResult ); -#endif -#endif - User::LeaveIfError( iTestResult ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::ActiveTestRunL -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::ActiveTestRunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL()" ) ) ); - TestComplete( KErrTimedOut ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Teardown -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::Teardown( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown()" ) ) ); - iTimer->Cancel(); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - iTestCases[i]->Teardown(); - } - iStubControl->SetCurrentTestCase( NULL ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::TestComplete -// ----------------------------------------------------------------------------- -void CTFTestCaseWrapper::TestComplete( TInt aTestResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete(%d)" ), aTestResult ) ); - if ( aTestResult != KErrNone ) - { - if ( iTestResult == KErrNone ) - { - iTestResult = aTestResult; - } - else - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - Multiple errors, new error ignored. Current = %d, new = %d" ), iTestResult, aTestResult ) ); - } - } - if ( iWaitStarted ) - { - TBool canStop = ETrue; - // If the test fails, it can be terminated. - if ( iTestResult == KErrNone ) - { - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( !iTestCases[i]->IsComplete() ) - { - canStop = EFalse; - } - } - } - if ( canStop ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - End active wait" ) ) ); - CActiveScheduler::Stop(); - iWaitStarted = EFalse; - } - } - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Logger -// ----------------------------------------------------------------------------- -CTFATestLog& CTFTestCaseWrapper::Logger( void ) - { - return Environment().Logger(); - } - - -// ----------------------------------------------------------------------------- -// CTFTestCaseWrapper::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFTestCaseWrapper::Type( void ) const - { - return ( TTFATestType )ETFTestTypeStubWrapper; - } - - +/* +* 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: Implementation of CTFATestCaseWrapper class +* +*/ + + +// INCLUDE FILES +#include "ctfatestlog.h" +#include "mtfstubtestcase.h" +#include "ctffactory.h" +#include "ctfatestenvironment.h" +#include "tftypes.h" +#include "ctftestcasewrapper.h" +#include "ctfatesttimer.h" +#include "dsytesttooltrace.h" +#include "mtfstubcontrol.h" + +// ----------------------------------------------------------------------------- +// MTFTestCaseInterface::MTFTestCaseInterface +// ----------------------------------------------------------------------------- +MTFTestCaseInterface::MTFTestCaseInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCaseInterface::~MTFTestCaseInterface +// ----------------------------------------------------------------------------- +MTFTestCaseInterface::~MTFTestCaseInterface( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCase::MTFTestCase +// ----------------------------------------------------------------------------- +MTFTestCase::MTFTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// MTFTestCase::~MTFTestCase +// ----------------------------------------------------------------------------- +MTFTestCase::~MTFTestCase( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::CTFTestCaseWrapper +// ----------------------------------------------------------------------------- +EXPORT_C CTFTestCaseWrapper::CTFTestCaseWrapper( TInt aId, const TDesC& aName ) +: CTFATestCase( aId, aName ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::~CTFTestCaseWrapper +// ----------------------------------------------------------------------------- +CTFTestCaseWrapper::~CTFTestCaseWrapper( void ) + { + // Deletes the stub test cases + delete iTimer; + iTestCases.ResetAndDestroy(); + iStubControl = NULL; + iFactory = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::SetEnvironment +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseWrapper::SetEnvironment( CTFATestEnvironment& aEnvironment ) + { + CTFATestCase::SetEnvironment( aEnvironment ); + iFactory = aEnvironment.Factory(); + TRACE_ASSERT( iFactory != NULL ); + __ASSERT_ALWAYS( iFactory != NULL, User::Panic( KTFName, ETFPanicFactory ) ); + iStubControl = iFactory->StubControl(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestCaseID +// ----------------------------------------------------------------------------- +TInt CTFTestCaseWrapper::TestCaseID( void ) const + { + return Id(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestCase +// ----------------------------------------------------------------------------- +MTFStubTestCase* CTFTestCaseWrapper::TestCase( TInt aTestCaseType ) + { + MTFStubTestCase* retval = NULL; + for ( TInt i = 0; i < iTestCases.Count() && retval == NULL; i++ ) + { + MTFStubTestCase* testcase = iTestCases[i]; + if ( testcase->Type() == aTestCaseType ) + { + retval = testcase; + } + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::AddStubTestCaseL +// ----------------------------------------------------------------------------- +EXPORT_C void CTFTestCaseWrapper::AddStubTestCaseL( MTFStubTestCase& aTestCase ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL(0x%x)" ), &aTestCase ) ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( iTestCases[i]->Type() == aTestCase.Type() ) + { + TRACE_ASSERT_ALWAYS; + User::Panic( KTFName, ETFPanicDuplicateCase ); + } + } + if ( iTimer == NULL ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + User::LeaveIfError( iTestCases.Append( &aTestCase ) ); + aTestCase.SetCallback( *this ); + CTFStub* stub = iStubControl->Stub( aTestCase.Type () ); + TRACE_ASSERT( stub != NULL ); + __ASSERT_ALWAYS( stub != NULL, User::Panic( KTFName, ETFPanicStubMissing ) ); + aTestCase.SetStub( *stub ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::AddStubTestCaseL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Log +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::Log( TInt aDepth ) + { + if ( iTestCases.Count() > 0 ) + { + _LIT ( KCaseDesc, "Case %d: %S, %d components" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name(), iTestCases.Count() ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->Log( aDepth + 1 ); + } + } + else + { + _LIT( KCaseDesc, "Case %d: %S, no components" ); + Environment().Logger().WriteList( aDepth, KCaseDesc, Id(), &Name() ); + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::SetupL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::SetupL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL()" ) ) ); + iTestResult = KErrNone; + iStubControl->SetCurrentTestCase( this ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + TRAPD( err, iTestCases[i]->SetupL() ); + if ( err != KErrNone ) + { + // If one setup leaves, the previous ones need to be torn down + for ( TInt j = 0; j < i; j++ ) + { + iTestCases[j]->Teardown(); + } + i = iTestCases.Count(); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::SetupL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::RunTestL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::RunTestL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL()" ) ) ); +#ifdef _DEBUG +#ifdef TEST_NAME_TRACE_FLAG + RDebug::Print( _L( " DSYTESTTOOL - Running test case [%S]" ), &Name() ); +#endif +#endif + TBool needsToWait = EFalse; + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->RunL(); + if ( !iTestCases[i]->IsComplete() ) + { + needsToWait = ETrue; + } + } + if ( iTestResult == KErrNone && needsToWait ) + { + iWaitStarted = ETrue; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - Test case [%S] in active wait" ), &Name() ) ); + iTimer->After( TTimeIntervalMicroSeconds32( Timeout() * 1000000L ) ); + CActiveScheduler::Start(); + } +#ifdef _DEBUG +#ifdef TEST_NAME_TRACE_FLAG + RDebug::Print( _L( " DSYTESTTOOL - Test case [%S] finished with %d" ), &Name(), iTestResult ); +#endif +#endif + User::LeaveIfError( iTestResult ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::ActiveTestRunL +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::ActiveTestRunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL()" ) ) ); + TestComplete( KErrTimedOut ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::ActiveTestRunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Teardown +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::Teardown( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown()" ) ) ); + iTimer->Cancel(); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + iTestCases[i]->Teardown(); + } + iStubControl->SetCurrentTestCase( NULL ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::Teardown - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::TestComplete +// ----------------------------------------------------------------------------- +void CTFTestCaseWrapper::TestComplete( TInt aTestResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete(%d)" ), aTestResult ) ); + if ( aTestResult != KErrNone ) + { + if ( iTestResult == KErrNone ) + { + iTestResult = aTestResult; + } + else + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - Multiple errors, new error ignored. Current = %d, new = %d" ), iTestResult, aTestResult ) ); + } + } + if ( iWaitStarted ) + { + TBool canStop = ETrue; + // If the test fails, it can be terminated. + if ( iTestResult == KErrNone ) + { + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( !iTestCases[i]->IsComplete() ) + { + canStop = EFalse; + } + } + } + if ( canStop ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestCaseWrapper::TestComplete() - End active wait" ) ) ); + CActiveScheduler::Stop(); + iWaitStarted = EFalse; + } + } + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Logger +// ----------------------------------------------------------------------------- +CTFATestLog& CTFTestCaseWrapper::Logger( void ) + { + return Environment().Logger(); + } + + +// ----------------------------------------------------------------------------- +// CTFTestCaseWrapper::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFTestCaseWrapper::Type( void ) const + { + return ( TTFATestType )ETFTestTypeStubWrapper; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestserver.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfcore/src/tftestserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,248 +1,248 @@ -/* -* 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: Implementation of test server classes -* -*/ - - -// INCLUDE FILES -#include "ctfstub.h" -#include "ctfremotestub.h" -#include "ctffactory.h" -#include "dsytesttooltrace.h" -#include "ctftestserver.h" - -const TInt KTFStateRunning = 1; -const TInt KTFStateCompleting = 2; - -// ----------------------------------------------------------------------------- -// RTFTestServer::Connect -// ----------------------------------------------------------------------------- -TInt RTFTestServer::Connect( TBool aLocal ) - { - TInt retval; - if ( aLocal ) - { - retval = CreateSession( KTFLocalTestServerName, TVersion( 1, 0, 0 ) ); - } - else - { - retval = CreateSession( KTFRemoteTestServerName, TVersion( 1, 0, 0 ) ); - } - return retval; - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const - { - SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ), aStatus ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostMessage -// ----------------------------------------------------------------------------- -TInt RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const - { - return SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostCompletionMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const - { - SendReceive( 0, TIpcArgs( aStubType, aResult ), aStatus ); - } - - -// ----------------------------------------------------------------------------- -// RTFTestServer::PostShutdownMessage -// ----------------------------------------------------------------------------- -void RTFTestServer::PostShutdownMessage() const - { - SendReceive( 0, TIpcArgs( -1 ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::CTFTestServerWrapper -// ----------------------------------------------------------------------------- -CTFTestServerWrapper::CTFTestServerWrapper( void ) - : CActive( EPriorityNormal ) - { - CActiveScheduler::Add( this ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::~CTFTestServerWrapper -// ----------------------------------------------------------------------------- -CTFTestServerWrapper::~CTFTestServerWrapper( void ) - { - iClient.Close(); - iCallerStatus = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::PostMessageLD -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, &aStatus ) ); - iStubType = aStubType; - aStatus = KRequestPending; - iCallerStatus = &aStatus; - User::LeaveIfError( iClient.Connect( EFalse ) ); - iState = KTFStateCompleting; - iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); - SetActive(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::PostLocalMessageL -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostLocalMessageL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); - iStubType = aStubType; - User::LeaveIfError( iClient.Connect( ETrue ) ); - iState = KTFStateRunning; - iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); - SetActive(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::RunL -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::RunL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL()" ) ) ); - if ( iState == KTFStateRunning ) - { - iState = KTFStateCompleting; - iClient.PostCompletionMessage( iStubType, iStatus.Int(), iStatus ); - SetActive(); - } - else - { - if ( iCallerStatus != NULL ) - { - User::RequestComplete( iCallerStatus, iStatus.Int() ); - delete this; - } - else - { - CActiveScheduler::Stop(); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServerWrapper::DoCancel -// ----------------------------------------------------------------------------- -void CTFTestServerWrapper::DoCancel( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestSession::CTFTestSession -// ----------------------------------------------------------------------------- -CTFTestSession::CTFTestSession( CTFFactory* aFactory ) - : iFactory( aFactory ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestSession::ServiceL -// ----------------------------------------------------------------------------- -void CTFTestSession::ServiceL( const RMessage2& aMessage ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL(0x%x)" ), &aMessage ) ); - if ( aMessage.Function() != 0 ) - { - CTFStub* stub = iFactory->InternalStub( aMessage.Function() ); - if ( stub != NULL && stub->IsRemoteStub() ) - { - TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->ProcessMessageAndCompleteL( aMessage ) ); - if ( err != KErrNone ) - { - aMessage.Complete( err ); - } - } - else - { - aMessage.Complete( KErrNotSupported ); - } - } - else - { - if ( aMessage.Int0() == -1 ) - { - CActiveScheduler::Stop(); - aMessage.Complete( KErrNone ); - } - else - { - CTFStub* stub = iFactory->InternalStub( aMessage.Int0() ); - if ( stub && stub->IsRemoteStub() ) - { - TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->MessageCompleteL( aMessage.Int1() ) ); - aMessage.Complete( err ); - } - else - { - aMessage.Complete( KErrNotSupported ); - } - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFTestServer::CTFTestServer -// ----------------------------------------------------------------------------- -CTFTestServer::CTFTestServer( CTFFactory* aFactory ) - : CServer2( EPriorityNormal ) - , iFactory( aFactory ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFTestServer::NewSessionL -// ----------------------------------------------------------------------------- -CSession2* CTFTestServer::NewSessionL( const TVersion& /*aVersion*/, const RMessage2& /*aMessage*/ ) const - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL()" ) ) ); - CSession2* retval = new ( ELeave ) CTFTestSession( iFactory ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL - return 0x%x" ), retval ) ); - return retval; - } - - +/* +* 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: Implementation of test server classes +* +*/ + + +// INCLUDE FILES +#include "ctfstub.h" +#include "ctfremotestub.h" +#include "ctffactory.h" +#include "dsytesttooltrace.h" +#include "ctftestserver.h" + +const TInt KTFStateRunning = 1; +const TInt KTFStateCompleting = 2; + +// ----------------------------------------------------------------------------- +// RTFTestServer::Connect +// ----------------------------------------------------------------------------- +TInt RTFTestServer::Connect( TBool aLocal ) + { + TInt retval; + if ( aLocal ) + { + retval = CreateSession( KTFLocalTestServerName, TVersion( 1, 0, 0 ) ); + } + else + { + retval = CreateSession( KTFRemoteTestServerName, TVersion( 1, 0, 0 ) ); + } + return retval; + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) const + { + SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ), aStatus ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostMessage +// ----------------------------------------------------------------------------- +TInt RTFTestServer::PostMessage( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) const + { + return SendReceive( aStubType, TIpcArgs( aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostCompletionMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostCompletionMessage( TInt aStubType, TInt aResult, TRequestStatus& aStatus ) const + { + SendReceive( 0, TIpcArgs( aStubType, aResult ), aStatus ); + } + + +// ----------------------------------------------------------------------------- +// RTFTestServer::PostShutdownMessage +// ----------------------------------------------------------------------------- +void RTFTestServer::PostShutdownMessage() const + { + SendReceive( 0, TIpcArgs( -1 ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::CTFTestServerWrapper +// ----------------------------------------------------------------------------- +CTFTestServerWrapper::CTFTestServerWrapper( void ) + : CActive( EPriorityNormal ) + { + CActiveScheduler::Add( this ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::~CTFTestServerWrapper +// ----------------------------------------------------------------------------- +CTFTestServerWrapper::~CTFTestServerWrapper( void ) + { + iClient.Close(); + iCallerStatus = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::PostMessageLD +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::PostMessageLD( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4, TRequestStatus& aStatus ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, &aStatus ) ); + iStubType = aStubType; + aStatus = KRequestPending; + iCallerStatus = &aStatus; + User::LeaveIfError( iClient.Connect( EFalse ) ); + iState = KTFStateCompleting; + iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); + SetActive(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageLD - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::PostLocalMessageL +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::PostLocalMessageL( TInt aStubType, TAny* aMessageData1, TAny* aMessageData2, TAny* aMessageData3, TAny* aMessageData4 ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostLocalMessageL(0x%x, 0x%x, 0x%x, 0x%x, 0x%x)" ), aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4 ) ); + iStubType = aStubType; + User::LeaveIfError( iClient.Connect( ETrue ) ); + iState = KTFStateRunning; + iClient.PostMessage( aStubType, aMessageData1, aMessageData2, aMessageData3, aMessageData4, iStatus ); + SetActive(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::PostMessageL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::RunL +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::RunL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL()" ) ) ); + if ( iState == KTFStateRunning ) + { + iState = KTFStateCompleting; + iClient.PostCompletionMessage( iStubType, iStatus.Int(), iStatus ); + SetActive(); + } + else + { + if ( iCallerStatus != NULL ) + { + User::RequestComplete( iCallerStatus, iStatus.Int() ); + delete this; + } + else + { + CActiveScheduler::Stop(); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServerWrapper::RunL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServerWrapper::DoCancel +// ----------------------------------------------------------------------------- +void CTFTestServerWrapper::DoCancel( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestSession::CTFTestSession +// ----------------------------------------------------------------------------- +CTFTestSession::CTFTestSession( CTFFactory* aFactory ) + : iFactory( aFactory ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestSession::ServiceL +// ----------------------------------------------------------------------------- +void CTFTestSession::ServiceL( const RMessage2& aMessage ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL(0x%x)" ), &aMessage ) ); + if ( aMessage.Function() != 0 ) + { + CTFStub* stub = iFactory->InternalStub( aMessage.Function() ); + if ( stub != NULL && stub->IsRemoteStub() ) + { + TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->ProcessMessageAndCompleteL( aMessage ) ); + if ( err != KErrNone ) + { + aMessage.Complete( err ); + } + } + else + { + aMessage.Complete( KErrNotSupported ); + } + } + else + { + if ( aMessage.Int0() == -1 ) + { + CActiveScheduler::Stop(); + aMessage.Complete( KErrNone ); + } + else + { + CTFStub* stub = iFactory->InternalStub( aMessage.Int0() ); + if ( stub && stub->IsRemoteStub() ) + { + TRAPD( err, STATIC_CAST( CTFRemoteStub*, stub )->MessageCompleteL( aMessage.Int1() ) ); + aMessage.Complete( err ); + } + else + { + aMessage.Complete( KErrNotSupported ); + } + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestSession::ServiceL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFTestServer::CTFTestServer +// ----------------------------------------------------------------------------- +CTFTestServer::CTFTestServer( CTFFactory* aFactory ) + : CServer2( EPriorityNormal ) + , iFactory( aFactory ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFTestServer::NewSessionL +// ----------------------------------------------------------------------------- +CSession2* CTFTestServer::NewSessionL( const TVersion& /*aVersion*/, const RMessage2& /*aMessage*/ ) const + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL()" ) ) ); + CSession2* retval = new ( ELeave ) CTFTestSession( iFactory ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFTestServer::NewSessionL - return 0x%x" ), retval ) ); + return retval; + } + + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BMARM/DSYTFSTIFADAPTERU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - LibEntryL__Fv @ 1 NONAME R3UNUSED ; LibEntryL(void) - +EXPORTS + LibEntryL__Fv @ 1 NONAME R3UNUSED ; LibEntryL(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/BWINS/DSYTFSTIFADAPTERU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - ?LibEntryL@@YAPAVCTestModuleBase@@XZ @ 1 NONAME ; class CTestModuleBase * __cdecl LibEntryL(void) - +EXPORTS + ?LibEntryL@@YAPAVCTestModuleBase@@XZ @ 1 NONAME ; class CTestModuleBase * __cdecl LibEntryL(void) + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,3 @@ -EXPORTS - _Z9LibEntryLv @ 1 NONAME - +EXPORTS + _Z9LibEntryLv @ 1 NONAME + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/conf/accessorytestcontrol.cfg --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/conf/accessorytestcontrol.cfg Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/conf/accessorytestcontrol.cfg Thu Jul 01 11:20:10 2010 +0300 @@ -1,10 +1,10 @@ -[Define] -// Add general definitions here -ETrue 1 -EFalse 0 -[Enddefine] - -[StifSettings] -// Add stif settings here -CheckHeapBalance= on -[EndStifSettings] +[Define] +// Add general definitions here +ETrue 1 +EFalse 0 +[Enddefine] + +[StifSettings] +// Add stif settings here +CheckHeapBalance= on +[EndStifSettings] diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/bld.inf --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,25 +1,25 @@ -/* -* Copyright (c) 2002-2006 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: Build information file for project dsystifadapter -* -*/ - -PRJ_TESTEXPORTS -../init/accessorytestcontrol.ini /epoc32/winscw/c/TestFramework/accessorytestcontrol.ini -../conf/accessorytestcontrol.cfg /epoc32/winscw/c/TestFramework/accessorytestcontrol.cfg - -PRJ_TESTMMPFILES -../../dsytfcore/group/dsytfcore.mmp -dsytfstifadapter.mmp +/* +* Copyright (c) 2002-2006 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: Build information file for project dsystifadapter +* +*/ + +PRJ_TESTEXPORTS +../init/accessorytestcontrol.ini /epoc32/winscw/c/TestFramework/accessorytestcontrol.ini +../conf/accessorytestcontrol.cfg /epoc32/winscw/c/TestFramework/accessorytestcontrol.cfg + +PRJ_TESTMMPFILES +../../dsytfcore/group/dsytfcore.mmp +dsytfstifadapter.mmp ../../accessorytestcontrolplugin/group/AccessoryTestControl.mmp \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/dsytfstifadapter.mmp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/dsytfstifadapter.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/group/dsytfstifadapter.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,54 +1,54 @@ -/* -* Copyright (c) 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: Declaration of dsytfstifadapter module -* -*/ - - -#include - -// INCLUDE FILES -// Build target -TARGET dsytfstifadapter.dll -TARGETTYPE dll -TARGETPATH SHARED_LIB_DIR - -UID 0x1000008D 0x101FB3E7 - -CAPABILITY CAP_GENERAL_DLL - -// Source files -SOURCEPATH ../src -SOURCE tfastifentrypoint.cpp -SOURCE tfastiftestcaseadapter.cpp -SOURCE tfastiftestsuiteadapter.cpp -SOURCE tfastiftestsuiteadapterroot.cpp -SOURCE tfastiftestenvironment.cpp -SOURCE tfastiftestlog.cpp - -// Include paths -USERINCLUDE ../inc -USERINCLUDE ../../dsytfcore/inc - -// System include macro -OS_LAYER_SYSTEMINCLUDE - -// Dependencies to system components -LIBRARY euser.lib -LIBRARY dsytfcore.lib -LIBRARY stiftestinterface.lib - -//MACRO COMPONENT_TRACE_FLAG - -SMPSAFE +/* +* Copyright (c) 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: Declaration of dsytfstifadapter module +* +*/ + + +#include + +// INCLUDE FILES +// Build target +TARGET dsytfstifadapter.dll +TARGETTYPE dll +TARGETPATH SHARED_LIB_DIR + +UID 0x1000008D 0x101FB3E7 + +CAPABILITY CAP_GENERAL_DLL + +// Source files +SOURCEPATH ../src +SOURCE tfastifentrypoint.cpp +SOURCE tfastiftestcaseadapter.cpp +SOURCE tfastiftestsuiteadapter.cpp +SOURCE tfastiftestsuiteadapterroot.cpp +SOURCE tfastiftestenvironment.cpp +SOURCE tfastiftestlog.cpp + +// Include paths +USERINCLUDE ../inc +USERINCLUDE ../../dsytfcore/inc + +// System include macro +OS_LAYER_SYSTEMINCLUDE + +// Dependencies to system components +LIBRARY euser.lib +LIBRARY dsytfcore.lib +LIBRARY stiftestinterface.lib + +//MACRO COMPONENT_TRACE_FLAG + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/dsytesttooltrace.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/dsytesttooltrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/dsytesttooltrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,89 +1,89 @@ -/* -* 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: Declaration of DSY test tool traces -* -*/ - - -#ifndef DSYTESTTOOLTRACE_H -#define DSYTESTTOOLTRACE_H - - - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Variable number of arguments -//lint -esym(960, 69) - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_ALWAYS - #define COMPONENT_TRACE( a ) - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - - - -#endif //#ifndef DSYTESTTOOLTRACE_H - - -// End of File +/* +* 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: Declaration of DSY test tool traces +* +*/ + + +#ifndef DSYTESTTOOLTRACE_H +#define DSYTESTTOOLTRACE_H + + + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Variable number of arguments +//lint -esym(960, 69) + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + void TraceAssertFunc( const TDesC8& aFile, TInt aLine ); + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_ALWAYS + #define COMPONENT_TRACE( a ) + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + + + +#endif //#ifndef DSYTESTTOOLTRACE_H + + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastifentrypoint.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastifentrypoint.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastifentrypoint.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,75 +1,75 @@ -/* -* 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: Declaration of CTFAStifEntryPoint class -* -*/ - - -#ifndef __TFASTIFENTRYPOINT_H__ -#define __TFASTIFENTRYPOINT_H__ - -#include "ctfaentrypoint.h" - -NONSHARABLE_CLASS( CTFAStifEntryPoint ): public CTFAEntryPoint - { - public: - /** - * Creates a new entry point. Called from LibEntry - */ - static CTFAStifEntryPoint* NewL( void ); - - /** - * Destructor - */ - virtual ~CTFAStifEntryPoint( void ); - - private: - /** - * Constructor - */ - CTFAStifEntryPoint( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifEntryPoint( const CTFAStifEntryPoint& aEntry ); - - /** - * Assignment operator is hidden - */ - CTFAStifEntryPoint& operator=( const CTFAStifEntryPoint& aEntry ); - - public: - /** - * Creates a STIF test suite adapter. - */ - MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ); - - /** - * Creates a STIF test case adapter. - */ - MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ); - - /** - * Creates STIF test environment. - */ - CTFATestEnvironment* CreateEnvironmentL( void ); - }; - -#endif +/* +* 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: Declaration of CTFAStifEntryPoint class +* +*/ + + +#ifndef __TFASTIFENTRYPOINT_H__ +#define __TFASTIFENTRYPOINT_H__ + +#include "ctfaentrypoint.h" + +NONSHARABLE_CLASS( CTFAStifEntryPoint ): public CTFAEntryPoint + { + public: + /** + * Creates a new entry point. Called from LibEntry + */ + static CTFAStifEntryPoint* NewL( void ); + + /** + * Destructor + */ + virtual ~CTFAStifEntryPoint( void ); + + private: + /** + * Constructor + */ + CTFAStifEntryPoint( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifEntryPoint( const CTFAStifEntryPoint& aEntry ); + + /** + * Assignment operator is hidden + */ + CTFAStifEntryPoint& operator=( const CTFAStifEntryPoint& aEntry ); + + public: + /** + * Creates a STIF test suite adapter. + */ + MTFATestSuiteAdapter* CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ); + + /** + * Creates a STIF test case adapter. + */ + MTFATestCaseAdapter* CreateTestAdapterLC( CTFATestCase& aCase ); + + /** + * Creates STIF test environment. + */ + CTFATestEnvironment* CreateEnvironmentL( void ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestcaseadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestcaseadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestcaseadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,82 +1,82 @@ -/* -* 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: Declaration of CTFAStifTestCaseAdapter class -* -*/ - - -#ifndef __TFASTIFTESTCASEADAPTER_H__ -#define __TFASTIFTESTCASEADAPTER_H__ - -#include -#include "ctfatestcaseadapter.h" - -class CTFATestCase; - -NONSHARABLE_CLASS( CTFAStifTestCaseAdapter ): public CTFATestCaseAdapter - { - public: - /** - * Creates a new test case adapter - */ - static CTFAStifTestCaseAdapter* NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); - - /** - * Destructor - */ - virtual ~CTFAStifTestCaseAdapter( void ); - - private: - /** - * Constructor - */ - CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestCaseAdapter( const CTFAStifTestCaseAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestCaseAdapter& operator=( const CTFAStifTestCaseAdapter& aAdapter ); - - public: - /** - * Determines if the case is run on startup - */ - TBool RunOnStartup( void ) const; - - /** - * Returns the STIF-TF test info - */ - TTestCaseInfo TestInfo( void ) const; - - /** - * Runs this test - */ - void RunTestL( TTestResult& aResult ); - - private: - TTestCaseInfo iTestInfo; - CTestModuleBase* iTestModule; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestCaseAdapter class +* +*/ + + +#ifndef __TFASTIFTESTCASEADAPTER_H__ +#define __TFASTIFTESTCASEADAPTER_H__ + +#include +#include "ctfatestcaseadapter.h" + +class CTFATestCase; + +NONSHARABLE_CLASS( CTFAStifTestCaseAdapter ): public CTFATestCaseAdapter + { + public: + /** + * Creates a new test case adapter + */ + static CTFAStifTestCaseAdapter* NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); + + /** + * Destructor + */ + virtual ~CTFAStifTestCaseAdapter( void ); + + private: + /** + * Constructor + */ + CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestCaseAdapter( const CTFAStifTestCaseAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestCaseAdapter& operator=( const CTFAStifTestCaseAdapter& aAdapter ); + + public: + /** + * Determines if the case is run on startup + */ + TBool RunOnStartup( void ) const; + + /** + * Returns the STIF-TF test info + */ + TTestCaseInfo TestInfo( void ) const; + + /** + * Runs this test + */ + void RunTestL( TTestResult& aResult ); + + private: + TTestCaseInfo iTestInfo; + CTestModuleBase* iTestModule; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestenvironment.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestenvironment.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestenvironment.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,49 +1,49 @@ -/* -* 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: Declaration of CTFAStifTestEnviroment class -* -*/ - - -#ifndef __TFASTIFTESTENVIRONMENT_H__ -#define __TFASTIFTESTENVIRONMENT_H__ - -#include "ctfatestenvironment.h" - -NONSHARABLE_CLASS( CTFAStifTestEnvironment ): public CTFATestEnvironment - { - public: - /** - * Constructo - */ - CTFAStifTestEnvironment( CTFATestLog& aLogger ); - - /** - * Destructor - */ - virtual ~CTFAStifTestEnvironment( void ); - - private: - /** - * Copy constructor is hidden - */ - CTFAStifTestEnvironment( const CTFAStifTestEnvironment& aEnv ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestEnvironment& operator=( const CTFAStifTestEnvironment& aEnv ); - }; - -#endif +/* +* 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: Declaration of CTFAStifTestEnviroment class +* +*/ + + +#ifndef __TFASTIFTESTENVIRONMENT_H__ +#define __TFASTIFTESTENVIRONMENT_H__ + +#include "ctfatestenvironment.h" + +NONSHARABLE_CLASS( CTFAStifTestEnvironment ): public CTFATestEnvironment + { + public: + /** + * Constructo + */ + CTFAStifTestEnvironment( CTFATestLog& aLogger ); + + /** + * Destructor + */ + virtual ~CTFAStifTestEnvironment( void ); + + private: + /** + * Copy constructor is hidden + */ + CTFAStifTestEnvironment( const CTFAStifTestEnvironment& aEnv ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestEnvironment& operator=( const CTFAStifTestEnvironment& aEnv ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestlog.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestlog.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestlog.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,152 +1,152 @@ -/* -* 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: Declaration of CTFAStifTestLog class -* -*/ - - -#ifndef __TFASTIFTESTLOG_H__ -#define __TFASTIFTESTLOG_H__ - -#include "ctfatestlog.h" - -class CStifLogger; -class TTFAOverflowHandler; -const TInt KMaxLogLength = 254; // From STIF - -/** -* Implements the abstract logger interface to delegate logging to STIF-TF logger. -*/ -NONSHARABLE_CLASS( CTFAStifTestLog ): public CTFATestLog - { - public: - /** - * Creates a new logger - */ - static CTFAStifTestLog* NewLC( void ); - - /** - * Destructor - */ - virtual ~CTFAStifTestLog( void ); - - private: - /** - * Constructor - */ - CTFAStifTestLog( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( void ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestLog( const CTFAStifTestLog& aLog ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestLog& operator=( const CTFAStifTestLog& aLog ); - - public: - /** - * Writes data to log - */ - void Write( const TDesC& aDes ); - - /** - * Writes data to log - */ - void Write( const TDesC8& aDes ); - - /** - * Writes formatted to log - */ - void Write( TRefByValue aDes, ... ); - - /** - * Writes formatted to log - */ - void Write( TRefByValue aDes, ... ); - - /** - * Writes a block of data to log. If logging HTML, this wraps the block into
- */ - void WriteBlock( const TDesC& aDes ); - - /** - * Writes a block of data to log. If logging HTML, this wraps the block into
- */ - void WriteBlock( const TDesC8& aDes ); - - /** - * Writes an end-of-line character to log - */ - void EndLine( void ); - - /** - * Starts a new chapter - */ - void StartChapter( void ); - - /** - * Starts a bulleted list - */ - void StartList( void ); - - /** - * Writes formatted data into bulleted list at given depth - */ - void WriteList( TInt aDepth, TRefByValue aDes, ... ); - - /** - * Writes formatted data into bulleted list at given depth - */ - void WriteList( TInt aDepth, TRefByValue aDes, ... ); - - /** - * Ends a bulleted list - */ - void EndList( void ); - - /** - * Sets logging style - */ - void SetStyle( TTFLogStyle aStyle ); - - /** - * Sets logging color - */ - void SetColor( TUint32 aColor ); - - private: - /** - * Writes start of list entry - */ - void WriteListEntryStart( TInt aDepth ); - - private: - CStifLogger* iLogger; - TBuf iLogBuffer; - TBuf8 iLogBuffer8; - TTFAOverflowHandler* iOverflowHandler; - TInt iCurrentDepth; - TTFLogStyle iStyle; - TInt iColor; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestLog class +* +*/ + + +#ifndef __TFASTIFTESTLOG_H__ +#define __TFASTIFTESTLOG_H__ + +#include "ctfatestlog.h" + +class CStifLogger; +class TTFAOverflowHandler; +const TInt KMaxLogLength = 254; // From STIF + +/** +* Implements the abstract logger interface to delegate logging to STIF-TF logger. +*/ +NONSHARABLE_CLASS( CTFAStifTestLog ): public CTFATestLog + { + public: + /** + * Creates a new logger + */ + static CTFAStifTestLog* NewLC( void ); + + /** + * Destructor + */ + virtual ~CTFAStifTestLog( void ); + + private: + /** + * Constructor + */ + CTFAStifTestLog( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( void ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestLog( const CTFAStifTestLog& aLog ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestLog& operator=( const CTFAStifTestLog& aLog ); + + public: + /** + * Writes data to log + */ + void Write( const TDesC& aDes ); + + /** + * Writes data to log + */ + void Write( const TDesC8& aDes ); + + /** + * Writes formatted to log + */ + void Write( TRefByValue aDes, ... ); + + /** + * Writes formatted to log + */ + void Write( TRefByValue aDes, ... ); + + /** + * Writes a block of data to log. If logging HTML, this wraps the block into
+ */ + void WriteBlock( const TDesC& aDes ); + + /** + * Writes a block of data to log. If logging HTML, this wraps the block into
+ */ + void WriteBlock( const TDesC8& aDes ); + + /** + * Writes an end-of-line character to log + */ + void EndLine( void ); + + /** + * Starts a new chapter + */ + void StartChapter( void ); + + /** + * Starts a bulleted list + */ + void StartList( void ); + + /** + * Writes formatted data into bulleted list at given depth + */ + void WriteList( TInt aDepth, TRefByValue aDes, ... ); + + /** + * Writes formatted data into bulleted list at given depth + */ + void WriteList( TInt aDepth, TRefByValue aDes, ... ); + + /** + * Ends a bulleted list + */ + void EndList( void ); + + /** + * Sets logging style + */ + void SetStyle( TTFLogStyle aStyle ); + + /** + * Sets logging color + */ + void SetColor( TUint32 aColor ); + + private: + /** + * Writes start of list entry + */ + void WriteListEntryStart( TInt aDepth ); + + private: + CStifLogger* iLogger; + TBuf iLogBuffer; + TBuf8 iLogBuffer8; + TTFAOverflowHandler* iOverflowHandler; + TInt iCurrentDepth; + TTFLogStyle iStyle; + TInt iColor; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapter.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapter.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapter.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,57 +1,57 @@ -/* -* 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: Declaration of CTFAStifTestSuiteAdapter class -* -*/ - - -#ifndef __TFASTIFTESTSUITEADAPTER_H__ -#define __TFASTIFTESTSUITEADAPTER_H__ - -#include "ctfatestsuiteadapter.h" - -class CTFATestSuite; - -NONSHARABLE_CLASS( CTFAStifTestSuiteAdapter ): public CTFATestSuiteAdapter - { - public: - /** - * Creates a new suite adapter - */ - static CTFAStifTestSuiteAdapter* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Destructor - */ - virtual ~CTFAStifTestSuiteAdapter( void ); - - protected: - /** - * Constructor - */ - CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - private: - /** - * Copy constructor is hidden - */ - CTFAStifTestSuiteAdapter( const CTFAStifTestSuiteAdapter& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestSuiteAdapter& operator=( const CTFAStifTestSuiteAdapter& aAdapter ); - }; - -#endif +/* +* 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: Declaration of CTFAStifTestSuiteAdapter class +* +*/ + + +#ifndef __TFASTIFTESTSUITEADAPTER_H__ +#define __TFASTIFTESTSUITEADAPTER_H__ + +#include "ctfatestsuiteadapter.h" + +class CTFATestSuite; + +NONSHARABLE_CLASS( CTFAStifTestSuiteAdapter ): public CTFATestSuiteAdapter + { + public: + /** + * Creates a new suite adapter + */ + static CTFAStifTestSuiteAdapter* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Destructor + */ + virtual ~CTFAStifTestSuiteAdapter( void ); + + protected: + /** + * Constructor + */ + CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + private: + /** + * Copy constructor is hidden + */ + CTFAStifTestSuiteAdapter( const CTFAStifTestSuiteAdapter& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestSuiteAdapter& operator=( const CTFAStifTestSuiteAdapter& aAdapter ); + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/inc/tfastiftestsuiteadapterroot.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,101 +1,101 @@ -/* -* 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: Declaration of CTFAStifTestSuiteAdapterRoot class -* -*/ - - -#ifndef __TFASTIFTESTSUITEADAPTERROOT_H__ -#define __TFASTIFTESTSUITEADAPTERROOT_H__ - -#include "stiftestinterface.h" -#include "mtfatestsuiteadapter.h" - -class CTFAStifTestCaseAdapter; -class CTFAStifTestSuiteAdapter; -class CTFATestSuite; -class CTFAEntryPoint; - -/** -* This cannot inherit from CTFATestSuiteAdapter, since that would -* result in multiple paths to CBase root class. Thus this needs -* to reimplement the MTFATestSuiteAdapter interface. -*/ -NONSHARABLE_CLASS( CTFAStifTestSuiteAdapterRoot ): public CTestModuleBase, public MTFATestSuiteAdapter - { - public: - /** - * Creates a new test suite adapter root that wraps the given test suite - */ - static CTFAStifTestSuiteAdapterRoot* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Destructor - */ - virtual ~CTFAStifTestSuiteAdapterRoot( void ); - - private: - /** - * Constructor - */ - CTFAStifTestSuiteAdapterRoot( void ); - - /** - * 2nd phase constructor - */ - void ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); - - /** - * Copy constructor is hidden - */ - CTFAStifTestSuiteAdapterRoot( const CTFAStifTestSuiteAdapterRoot& aAdapter ); - - /** - * Assignment operator is hidden - */ - CTFAStifTestSuiteAdapterRoot& operator=( const CTFAStifTestSuiteAdapterRoot& aAdapter ); - - public: - /** - * Returns test suite type - */ - TTFATestType Type( void ) const; - - /** - * Adds a sub-suite / test case - */ - void AddL( MTFATestAdapter& aAdapter ); - - /** - * Adds a test case to this suite - */ - void AddTestL( const CTFAStifTestCaseAdapter& aAdapter ); - - /** - * Gets the test cases. STIF-TF calls this - */ - TInt GetTestCasesL( const TFileName& aIniFile, RPointerArray &aCases ); - - /** - * Runs a test case. STIF-TF calls this - */ - TInt RunTestCaseL( const TInt aCaseNumber, const TFileName& aIniFile, TTestResult& aResult ); - - private: - CTFAStifTestSuiteAdapter* iWrappedAdapter; - RPointerArray iTestCases; - TBool iFirstTest; - }; - -#endif +/* +* 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: Declaration of CTFAStifTestSuiteAdapterRoot class +* +*/ + + +#ifndef __TFASTIFTESTSUITEADAPTERROOT_H__ +#define __TFASTIFTESTSUITEADAPTERROOT_H__ + +#include "stiftestinterface.h" +#include "mtfatestsuiteadapter.h" + +class CTFAStifTestCaseAdapter; +class CTFAStifTestSuiteAdapter; +class CTFATestSuite; +class CTFAEntryPoint; + +/** +* This cannot inherit from CTFATestSuiteAdapter, since that would +* result in multiple paths to CBase root class. Thus this needs +* to reimplement the MTFATestSuiteAdapter interface. +*/ +NONSHARABLE_CLASS( CTFAStifTestSuiteAdapterRoot ): public CTestModuleBase, public MTFATestSuiteAdapter + { + public: + /** + * Creates a new test suite adapter root that wraps the given test suite + */ + static CTFAStifTestSuiteAdapterRoot* NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Destructor + */ + virtual ~CTFAStifTestSuiteAdapterRoot( void ); + + private: + /** + * Constructor + */ + CTFAStifTestSuiteAdapterRoot( void ); + + /** + * 2nd phase constructor + */ + void ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ); + + /** + * Copy constructor is hidden + */ + CTFAStifTestSuiteAdapterRoot( const CTFAStifTestSuiteAdapterRoot& aAdapter ); + + /** + * Assignment operator is hidden + */ + CTFAStifTestSuiteAdapterRoot& operator=( const CTFAStifTestSuiteAdapterRoot& aAdapter ); + + public: + /** + * Returns test suite type + */ + TTFATestType Type( void ) const; + + /** + * Adds a sub-suite / test case + */ + void AddL( MTFATestAdapter& aAdapter ); + + /** + * Adds a test case to this suite + */ + void AddTestL( const CTFAStifTestCaseAdapter& aAdapter ); + + /** + * Gets the test cases. STIF-TF calls this + */ + TInt GetTestCasesL( const TFileName& aIniFile, RPointerArray &aCases ); + + /** + * Runs a test case. STIF-TF calls this + */ + TInt RunTestCaseL( const TInt aCaseNumber, const TFileName& aIniFile, TTestResult& aResult ); + + private: + CTFAStifTestSuiteAdapter* iWrappedAdapter; + RPointerArray iTestCases; + TBool iFirstTest; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/init/accessorytestcontrol.ini --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/init/accessorytestcontrol.ini Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/init/accessorytestcontrol.ini Thu Jul 01 11:20:10 2010 +0300 @@ -1,197 +1,197 @@ -# -# This is STIF initialization file -# Comment lines start with '#'-character. -# See STIF TestFramework users guide.doc for instructions - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set following test engine settings: -# - Set Test Reporting mode. TestReportMode's possible values are: -# + 'Summary': Summary of the tested test cases. -# + 'Environment': Hardware and software info. -# + 'TestCases': Test case report. -# + 'FullReport': Set of all above ones. -# + Example 'TestReportMode= Summary TestCases' -# -# - CreateTestReport setting controls report creation mode -# + YES, Test report will created. -# + NO, No Test report. -# -# - File path indicates the base path of the test report. -# - File name indicates the name of the test report. -# -# - File format indicates the type of the test report. -# + TXT, Test report file will be txt type, for example 'TestReport.txt'. -# + HTML, Test report will be html type, for example 'TestReport.html'. -# -# - File output indicates output source of the test report. -# + FILE, Test report logging to file. -# + RDEBUG, Test report logging to using rdebug. -# -# - File Creation Mode indicates test report overwriting if file exist. -# + OVERWRITE, Overwrites if the Test report file exist. -# + APPEND, Continue logging after the old Test report information if -# report exist. -# - Sets a device reset module's dll name(Reboot). -# + If Nokia specific reset module is not available or it is not correct one -# StifHWResetStub module may use as a template for user specific reset -# module. -# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation -# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 -# - -[Engine_Defaults] - -TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', - 'TestCases' or 'FullReport' - -CreateTestReport= YES # Possible values: YES or NO - -TestReportFilePath= C:\LOGS\TestFramework\ -TestReportFileName= TestReport - -TestReportFormat= TXT # Possible values: TXT or HTML -TestReportOutput= FILE # Possible values: FILE or RDEBUG -TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting - -DisableMeasurement= stifmeasurementdisablenone # Possible values are: - # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' - # 'stifmeasurementplugin01', 'stifmeasurementplugin02', - # 'stifmeasurementplugin03', 'stifmeasurementplugin04', - # 'stifmeasurementplugin05' or 'stifbappeaprofiler' - -Timeout= 0 # Default timeout value for each test case. In milliseconds - -[End_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Module configurations start -# Modules are added between module tags -# tags. Module name is specified after ModuleName= tag, like -# ModuleName= XXXXXXXXX -# Modules might have initialisation file, specified as -# IniFile= c:\testframework\YYYYYY -# Modules might have several configuration files, like -# TestCaseFile= c:\testframework\NormalCases.txt -# TestCaseFile= c:\testframework\SmokeCases.txt -# TestCaseFile= c:\testframework\ManualCases.txt - -# (TestCaseFile is synonym for old term ConfigFile) - -# Following case specifies demo module settings. Demo module -# does not read any settings from file, so tags -# IniFile and TestCaseFile are not used. -# In the simplest case it is enough to specify only the -# name of the test module when adding new test module - -[New_Module] -ModuleName= dsytfstifadapter -TestCaseFile= c:\testframework\accessorytestcontrol.cfg -[End_Module] - - -# Load testmoduleXXX, optionally with initialization file and/or test case files -#[New_Module] -#ModuleName= testmodulexxx - -#TestModuleXXX used initialization file -#IniFile= c:\testframework\init.txt - -#TestModuleXXX used configuration file(s) -#TestCaseFile= c:\testframework\testcases1.cfg -#TestCaseFile= c:\testframework\testcases2.cfg -#TestCaseFile= c:\testframework\manualtestcases.cfg - -#[End_Module] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set STIF logging overwrite parameters for Logger. -# Hardware and emulator environment logging path and styles can -# be configured from here to overwrite the Logger's implemented values. -# -# Settings description: -# - Indicates option for creation log directory/directories. If log directory/directories -# is/are not created by user they will make by software. -# + YES, Create log directory/directories if not allready exist. -# + NO, Log directory/directories not created. Only created one is used. -# -# - Overwrite emulator path setting. -# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined -# Logger's path 'D:\\LOGS\\Module\\' with those definition the path -# will be 'C:\LOGS\TestFramework\LOGS\Module\' -# -# - Overwrite emulator's logging format. -# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. -# + HTML, Log file(s) will be html type(s), for example 'Module.html'. -# -# - Overwrited emulator logging output source. -# + FILE, Logging to file(s). -# + RDEBUG, Logging to using rdebug(s). -# -# - Overwrite hardware path setting (Same description as above in emulator path). -# - Overwrite hardware's logging format(Same description as above in emulator format). -# - Overwrite hardware's logging output source(Same description as above in emulator output). -# -# - File Creation Mode indicates file overwriting if file exist. -# + OVERWRITE, Overwrites if file(s) exist. -# + APPEND, Continue logging after the old logging information if file(s) exist. -# -# - Will thread id include to the log filename. -# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. -# + NO, No thread id to log file(s), Example filename 'Module.txt'. -# -# - Will time stamps include the to log file. -# + YES, Time stamp added to each line in log file(s). Time stamp is -# for example'12.Nov.2003 115958 LOGGING INFO' -# + NO, No time stamp(s). -# -# - Will line breaks include to the log file. -# + YES, Each logging event includes line break and next log event is in own line. -# + NO, No line break(s). -# -# - Will event ranking include to the log file. -# + YES, Event ranking number added to each line in log file(s). Ranking number -# depends on environment's tics, for example(includes time stamp also) -# '012 12.Nov.2003 115958 LOGGING INFO' -# + NO, No event ranking. -# -# - Will write log file in unicode format. -# + YES, Log file will be written in unicode format -# + NO, Log will be written as normal, not unicode, file. -# - -[Logger_Defaults] - -#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' -#NOTE: TestEngine and TestServer logging settings cannot change here - -#CreateLogDirectories= YES # Possible values: YES or NO - -#EmulatorBasePath= C:\LOGS\TestFramework\ -#EmulatorFormat= HTML # Possible values: TXT or HTML -#EmulatorOutput= FILE # Possible values: FILE or RDEBUG - -#HardwareBasePath= D:\LOGS\TestFramework\ -#HardwareFormat= HTML # Possible values: TXT or HTML -#HardwareOutput= FILE # Possible values: FILE or RDEBUG - -#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -#ThreadIdToLogFile= YES # Possible values: YES or NO -#WithTimeStamp= YES # Possible values: YES or NO -#WithLineBreak= YES # Possible values: YES or NO -#WithEventRanking= YES # Possible values: YES or NO - -#FileUnicode= YES # Possible values: YES or NO - -[End_Logger_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - +# +# This is STIF initialization file +# Comment lines start with '#'-character. +# See STIF TestFramework users guide.doc for instructions + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set following test engine settings: +# - Set Test Reporting mode. TestReportMode's possible values are: +# + 'Summary': Summary of the tested test cases. +# + 'Environment': Hardware and software info. +# + 'TestCases': Test case report. +# + 'FullReport': Set of all above ones. +# + Example 'TestReportMode= Summary TestCases' +# +# - CreateTestReport setting controls report creation mode +# + YES, Test report will created. +# + NO, No Test report. +# +# - File path indicates the base path of the test report. +# - File name indicates the name of the test report. +# +# - File format indicates the type of the test report. +# + TXT, Test report file will be txt type, for example 'TestReport.txt'. +# + HTML, Test report will be html type, for example 'TestReport.html'. +# +# - File output indicates output source of the test report. +# + FILE, Test report logging to file. +# + RDEBUG, Test report logging to using rdebug. +# +# - File Creation Mode indicates test report overwriting if file exist. +# + OVERWRITE, Overwrites if the Test report file exist. +# + APPEND, Continue logging after the old Test report information if +# report exist. +# - Sets a device reset module's dll name(Reboot). +# + If Nokia specific reset module is not available or it is not correct one +# StifHWResetStub module may use as a template for user specific reset +# module. +# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation +# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 +# + +[Engine_Defaults] + +TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', + 'TestCases' or 'FullReport' + +CreateTestReport= YES # Possible values: YES or NO + +TestReportFilePath= C:\LOGS\TestFramework\ +TestReportFileName= TestReport + +TestReportFormat= TXT # Possible values: TXT or HTML +TestReportOutput= FILE # Possible values: FILE or RDEBUG +TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting + +DisableMeasurement= stifmeasurementdisablenone # Possible values are: + # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' + # 'stifmeasurementplugin01', 'stifmeasurementplugin02', + # 'stifmeasurementplugin03', 'stifmeasurementplugin04', + # 'stifmeasurementplugin05' or 'stifbappeaprofiler' + +Timeout= 0 # Default timeout value for each test case. In milliseconds + +[End_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Module configurations start +# Modules are added between module tags +# tags. Module name is specified after ModuleName= tag, like +# ModuleName= XXXXXXXXX +# Modules might have initialisation file, specified as +# IniFile= c:\testframework\YYYYYY +# Modules might have several configuration files, like +# TestCaseFile= c:\testframework\NormalCases.txt +# TestCaseFile= c:\testframework\SmokeCases.txt +# TestCaseFile= c:\testframework\ManualCases.txt + +# (TestCaseFile is synonym for old term ConfigFile) + +# Following case specifies demo module settings. Demo module +# does not read any settings from file, so tags +# IniFile and TestCaseFile are not used. +# In the simplest case it is enough to specify only the +# name of the test module when adding new test module + +[New_Module] +ModuleName= dsytfstifadapter +TestCaseFile= c:\testframework\accessorytestcontrol.cfg +[End_Module] + + +# Load testmoduleXXX, optionally with initialization file and/or test case files +#[New_Module] +#ModuleName= testmodulexxx + +#TestModuleXXX used initialization file +#IniFile= c:\testframework\init.txt + +#TestModuleXXX used configuration file(s) +#TestCaseFile= c:\testframework\testcases1.cfg +#TestCaseFile= c:\testframework\testcases2.cfg +#TestCaseFile= c:\testframework\manualtestcases.cfg + +#[End_Module] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set STIF logging overwrite parameters for Logger. +# Hardware and emulator environment logging path and styles can +# be configured from here to overwrite the Logger's implemented values. +# +# Settings description: +# - Indicates option for creation log directory/directories. If log directory/directories +# is/are not created by user they will make by software. +# + YES, Create log directory/directories if not allready exist. +# + NO, Log directory/directories not created. Only created one is used. +# +# - Overwrite emulator path setting. +# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined +# Logger's path 'D:\\LOGS\\Module\\' with those definition the path +# will be 'C:\LOGS\TestFramework\LOGS\Module\' +# +# - Overwrite emulator's logging format. +# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. +# + HTML, Log file(s) will be html type(s), for example 'Module.html'. +# +# - Overwrited emulator logging output source. +# + FILE, Logging to file(s). +# + RDEBUG, Logging to using rdebug(s). +# +# - Overwrite hardware path setting (Same description as above in emulator path). +# - Overwrite hardware's logging format(Same description as above in emulator format). +# - Overwrite hardware's logging output source(Same description as above in emulator output). +# +# - File Creation Mode indicates file overwriting if file exist. +# + OVERWRITE, Overwrites if file(s) exist. +# + APPEND, Continue logging after the old logging information if file(s) exist. +# +# - Will thread id include to the log filename. +# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. +# + NO, No thread id to log file(s), Example filename 'Module.txt'. +# +# - Will time stamps include the to log file. +# + YES, Time stamp added to each line in log file(s). Time stamp is +# for example'12.Nov.2003 115958 LOGGING INFO' +# + NO, No time stamp(s). +# +# - Will line breaks include to the log file. +# + YES, Each logging event includes line break and next log event is in own line. +# + NO, No line break(s). +# +# - Will event ranking include to the log file. +# + YES, Event ranking number added to each line in log file(s). Ranking number +# depends on environment's tics, for example(includes time stamp also) +# '012 12.Nov.2003 115958 LOGGING INFO' +# + NO, No event ranking. +# +# - Will write log file in unicode format. +# + YES, Log file will be written in unicode format +# + NO, Log will be written as normal, not unicode, file. +# + +[Logger_Defaults] + +#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' +#NOTE: TestEngine and TestServer logging settings cannot change here + +#CreateLogDirectories= YES # Possible values: YES or NO + +#EmulatorBasePath= C:\LOGS\TestFramework\ +#EmulatorFormat= HTML # Possible values: TXT or HTML +#EmulatorOutput= FILE # Possible values: FILE or RDEBUG + +#HardwareBasePath= D:\LOGS\TestFramework\ +#HardwareFormat= HTML # Possible values: TXT or HTML +#HardwareOutput= FILE # Possible values: FILE or RDEBUG + +#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +#ThreadIdToLogFile= YES # Possible values: YES or NO +#WithTimeStamp= YES # Possible values: YES or NO +#WithLineBreak= YES # Possible values: YES or NO +#WithEventRanking= YES # Possible values: YES or NO + +#FileUnicode= YES # Possible values: YES or NO + +[End_Logger_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + # End of file \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,162 +1,162 @@ -/* -* 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: Implementation of CTFAStifEntryPoint class -* -*/ - - -// INCLUDE FILES -#include -#include "dsytesttooltrace.h" -#include "tfastifentrypoint.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestsuiteadapterroot.h" -#include "tfastiftestcaseadapter.h" -#include "tfastiftestenvironment.h" -#include "tfastiftestlog.h" - - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - -// ----------------------------------------------------------------------------- -// LibEntryL -// ----------------------------------------------------------------------------- -EXPORT_C CTestModuleBase* LibEntryL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); - CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); - // Stif framework deletes the CTestModuleBase-derived object - // which deletes the entry point object. - CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::NewL -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) - { - CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); - CleanupStack::PushL( entry ); - entry->ConstructL(); - CleanupStack::Pop( entry ); - return entry; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::~CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifEntryPoint::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); - CTFAEntryPoint::ConstructL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateSuiteAdapterLC -// ----------------------------------------------------------------------------- -MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); - MTFATestSuiteAdapter* adapter; - if ( aRoot ) - { - adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); - } - else - { - adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateTestAdapterLC -// ----------------------------------------------------------------------------- -MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); - CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateEnvironmentL -// ----------------------------------------------------------------------------- -CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); - CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); - CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); - CleanupStack::Pop( log ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); - return env; - } - +/* +* 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: Implementation of CTFAStifEntryPoint class +* +*/ + + +// INCLUDE FILES +#include +#include "dsytesttooltrace.h" +#include "tfastifentrypoint.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestsuiteadapterroot.h" +#include "tfastiftestcaseadapter.h" +#include "tfastiftestenvironment.h" +#include "tfastiftestlog.h" + + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + +// ----------------------------------------------------------------------------- +// LibEntryL +// ----------------------------------------------------------------------------- +EXPORT_C CTestModuleBase* LibEntryL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); + CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); + // Stif framework deletes the CTestModuleBase-derived object + // which deletes the entry point object. + CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); + return retval; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::NewL +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) + { + CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); + CleanupStack::PushL( entry ); + entry->ConstructL(); + CleanupStack::Pop( entry ); + return entry; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::~CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifEntryPoint::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); + CTFAEntryPoint::ConstructL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateSuiteAdapterLC +// ----------------------------------------------------------------------------- +MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); + MTFATestSuiteAdapter* adapter; + if ( aRoot ) + { + adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); + } + else + { + adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateTestAdapterLC +// ----------------------------------------------------------------------------- +MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); + CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateEnvironmentL +// ----------------------------------------------------------------------------- +CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); + CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); + CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); + CleanupStack::Pop( log ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); + return env; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestcaseadapter.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestcaseadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestcaseadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,133 +1,133 @@ -/* -* 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: Implementation of CTFAStifTestCaseAdapter class -* -*/ - - -// INCLUDE FILES -#include "ctfatestcase.h" -#include "dsytesttooltrace.h" -#include "tfastiftestcaseadapter.h" - -const TInt KTFUsecMultiplier = 1000000L; -const TInt KTFTestKillMargin = 5000000L; - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter* CTFAStifTestCaseAdapter::NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) - { - CTFAStifTestCaseAdapter* adapter = new ( ELeave ) CTFAStifTestCaseAdapter( aTestCase, aTestModule ); - CleanupStack::PushL( adapter ); - adapter->ConstructL(); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) -: CTFATestCaseAdapter( aTestCase ) -, iTestModule( aTestModule ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter( void ) - { - iTestModule = NULL; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestCaseAdapter::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL()" ) ) ); - if ( iTestCase.Name().Length() <= iTestInfo.iTitle.MaxLength() ) - { - iTestInfo.iTitle.Copy( iTestCase.Name() ); - } - else - { - TRACE_ASSERT_ALWAYS; - iTestInfo.iTitle.Copy( iTestCase.Name().Left( iTestInfo.iTitle.MaxLength() ) ); - } - iTestInfo.iCaseNumber = iTestCase.Id(); - /* Leaves a 5-second margin for the test case to cancel - itself without the need to kill the test suite */ - TInt timeout = iTestCase.Timeout() * KTFUsecMultiplier + KTFTestKillMargin; - TTimeIntervalMicroSeconds interval( timeout ); - iTestInfo.iTimeout = interval; - iTestInfo.iPriority = TTestCaseInfo::EPriorityNormal; - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::TestInfo -// ----------------------------------------------------------------------------- -TTestCaseInfo CTFAStifTestCaseAdapter::TestInfo( void ) const - { - return iTestInfo; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::RunTestL -// ----------------------------------------------------------------------------- -void CTFAStifTestCaseAdapter::RunTestL( TTestResult& aResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL(0x%x)" ), &aResult ) ); - - // Test module behavior is set according to flags of current test case. - TUint32 behavior( 0 ); - if ( iTestCase.Flags() & ETFMayLeakMemory ) - { - behavior |= CTestModuleIf::ETestLeaksMem; - } - if ( iTestCase.Flags() & ETFMayLeakRequests ) - { - behavior |= CTestModuleIf::ETestLeaksRequests; - } - if ( iTestCase.Flags() & ETFMayLeakHandles ) - { - behavior |= CTestModuleIf::ETestLeaksHandles; - } - iTestModule->TestModuleIf().SetBehavior( ( CTestModuleIf::TTestBehavior )behavior ); - - iTestCase.SetupL(); - TRAPD( err, iTestCase.RunTestL() ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - Result: %d" ), err ) ); - aResult.iResult = err; - iTestCase.Teardown(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestCaseAdapter::RunOnStartup -// ----------------------------------------------------------------------------- -TBool CTFAStifTestCaseAdapter::RunOnStartup( void ) const - { - return iTestCase.RunOnStartup(); - } - +/* +* 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: Implementation of CTFAStifTestCaseAdapter class +* +*/ + + +// INCLUDE FILES +#include "ctfatestcase.h" +#include "dsytesttooltrace.h" +#include "tfastiftestcaseadapter.h" + +const TInt KTFUsecMultiplier = 1000000L; +const TInt KTFTestKillMargin = 5000000L; + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter* CTFAStifTestCaseAdapter::NewLC( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) + { + CTFAStifTestCaseAdapter* adapter = new ( ELeave ) CTFAStifTestCaseAdapter( aTestCase, aTestModule ); + CleanupStack::PushL( adapter ); + adapter->ConstructL(); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter::CTFAStifTestCaseAdapter( CTFATestCase& aTestCase, CTestModuleBase* aTestModule ) +: CTFATestCaseAdapter( aTestCase ) +, iTestModule( aTestModule ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestCaseAdapter::~CTFAStifTestCaseAdapter( void ) + { + iTestModule = NULL; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestCaseAdapter::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL()" ) ) ); + if ( iTestCase.Name().Length() <= iTestInfo.iTitle.MaxLength() ) + { + iTestInfo.iTitle.Copy( iTestCase.Name() ); + } + else + { + TRACE_ASSERT_ALWAYS; + iTestInfo.iTitle.Copy( iTestCase.Name().Left( iTestInfo.iTitle.MaxLength() ) ); + } + iTestInfo.iCaseNumber = iTestCase.Id(); + /* Leaves a 5-second margin for the test case to cancel + itself without the need to kill the test suite */ + TInt timeout = iTestCase.Timeout() * KTFUsecMultiplier + KTFTestKillMargin; + TTimeIntervalMicroSeconds interval( timeout ); + iTestInfo.iTimeout = interval; + iTestInfo.iPriority = TTestCaseInfo::EPriorityNormal; + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::TestInfo +// ----------------------------------------------------------------------------- +TTestCaseInfo CTFAStifTestCaseAdapter::TestInfo( void ) const + { + return iTestInfo; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::RunTestL +// ----------------------------------------------------------------------------- +void CTFAStifTestCaseAdapter::RunTestL( TTestResult& aResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL(0x%x)" ), &aResult ) ); + + // Test module behavior is set according to flags of current test case. + TUint32 behavior( 0 ); + if ( iTestCase.Flags() & ETFMayLeakMemory ) + { + behavior |= CTestModuleIf::ETestLeaksMem; + } + if ( iTestCase.Flags() & ETFMayLeakRequests ) + { + behavior |= CTestModuleIf::ETestLeaksRequests; + } + if ( iTestCase.Flags() & ETFMayLeakHandles ) + { + behavior |= CTestModuleIf::ETestLeaksHandles; + } + iTestModule->TestModuleIf().SetBehavior( ( CTestModuleIf::TTestBehavior )behavior ); + + iTestCase.SetupL(); + TRAPD( err, iTestCase.RunTestL() ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - Result: %d" ), err ) ); + aResult.iResult = err; + iTestCase.Teardown(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestCaseAdapter::RunTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestCaseAdapter::RunOnStartup +// ----------------------------------------------------------------------------- +TBool CTFAStifTestCaseAdapter::RunOnStartup( void ) const + { + return iTestCase.RunOnStartup(); + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestenvironment.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestenvironment.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestenvironment.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,38 +1,38 @@ -/* -* 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: Implementation of CTFAStifTestEnvironment class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestenvironment.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestEnvironment::CTFAStifTestEnvironment -// ----------------------------------------------------------------------------- -CTFAStifTestEnvironment::CTFAStifTestEnvironment( CTFATestLog& aLogger ) -: CTFATestEnvironment( aLogger ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestEnvironment::~CTFAStifTestEnvironment -// ----------------------------------------------------------------------------- -CTFAStifTestEnvironment::~CTFAStifTestEnvironment( void ) - { - } - +/* +* 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: Implementation of CTFAStifTestEnvironment class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestenvironment.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestEnvironment::CTFAStifTestEnvironment +// ----------------------------------------------------------------------------- +CTFAStifTestEnvironment::CTFAStifTestEnvironment( CTFATestLog& aLogger ) +: CTFATestEnvironment( aLogger ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestEnvironment::~CTFAStifTestEnvironment +// ----------------------------------------------------------------------------- +CTFAStifTestEnvironment::~CTFAStifTestEnvironment( void ) + { + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestlog.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestlog.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestlog.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,382 +1,382 @@ -/* -* 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: Implementation of CTFAStifTestLog class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestlog.h" -#include - -#define __LOG_HTML__ - -class TTFAOverflowHandler : public TDes16Overflow, public TDes8Overflow - { -public: - void Overflow( TDes16& /*aDes*/ ) - { - TRACE_ASSERT_ALWAYS; - } - - void Overflow( TDes8& /*aDes*/ ) - { - TRACE_ASSERT_ALWAYS; - } - }; - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestLog* CTFAStifTestLog::NewLC( void ) - { - CTFAStifTestLog* log = new ( ELeave ) CTFAStifTestLog(); - CleanupStack::PushL( log ); - log->ConstructL(); - return log; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::CTFAStifTestLog -// ----------------------------------------------------------------------------- -CTFAStifTestLog::CTFAStifTestLog( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::ConstructL( void ) - { - TFileName fileName; - TTime time; - time.HomeTime(); - TDateTime dateTime = time.DateTime(); - RThread thread; -#ifdef __LOG_HTML__ - _LIT( KSuffix, "html" ); -#else - _LIT( KSuffix, "txt" ); -#endif - fileName.Format( _L( "%02d%02d%02d_%02d%02d%02d_%x.%S" ), - dateTime.Year() - 2000, dateTime.Month() + 1, dateTime.Day() + 1, - dateTime.Hour(), dateTime.Minute(), dateTime.Second(), - (TUint)thread.Id(), &KSuffix ); - iLogger = CStifLogger::NewL( _L( "c:\\logs\\testframework\\" ), fileName, - CStifLogger::ETxt, CStifLogger::EFile, ETrue, EFalse, EFalse, EFalse, EFalse ); - iOverflowHandler = new ( ELeave ) TTFAOverflowHandler; -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "TFA Log\r\n\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::~CTFAStifTestLog -// ----------------------------------------------------------------------------- -CTFAStifTestLog::~CTFAStifTestLog( void ) - { -#ifdef __LOG_HTML__ - if ( iLogger != NULL ) - { - iLogger->Log( _L8( "\r\n" ) ); - } -#endif - delete iLogger; - delete iOverflowHandler; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::SetStyle -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::SetStyle( TTFLogStyle aStyle ) - { -#ifdef __LOG_HTML__ - switch ( iStyle ) - { - case ETFLogStyleBold: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleItalic: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleNormal: - default: - break; - } - iStyle = aStyle; - switch ( iStyle ) - { - case ETFLogStyleBold: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleItalic: - iLogger->Log( _L8( "" ) ); - break; - case ETFLogStyleNormal: - default: - break; - } -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::SetColor -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::SetColor( TUint32 aColor ) - { -#ifdef __LOG_HTML__ - if ( iColor != 0 ) - { - iLogBuffer8.Format( _L8( "" ) ); - } - iColor = aColor; - if ( iColor != 0 ) - { - iLogBuffer8.Format( _L8( "" ), aColor ); - } -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( const TDesC& aDes ) - { - iLogger->Log( aDes ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( const TDesC8& aDes ) - { - iLogger->Log( aDes ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( TRefByValue aDes, ... ) - { - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) - iLogBuffer.SetLength( 0 ); - iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::Write -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::Write( TRefByValue aDes, ... ) - { - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) - iLogBuffer8.SetLength( 0 ); - iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer8 ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteBlock -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteBlock( const TDesC& aDes ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
" ) ); - iLogger->Log( aDes ); - iLogger->Log( _L8( "
" ) ); -#else - iLogger->Log( aDes ); - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteBlock -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteBlock( const TDesC8& aDes ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
" ) ); - iLogger->Log( aDes ); - iLogger->Log( _L8( "
" ) ); -#else - iLogger->Log( aDes ); - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::EndLine -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::EndLine( void ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
\r\n" ) ); -#else - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::StartChapter -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::StartChapter( void ) - { -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "

" ) ); -#else - iLogger->Log( _L8( "\r\n\r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::StartList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::StartList( void ) - { - iCurrentDepth = 0; -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "

    " ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteListEntryStart -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteListEntryStart( TInt aDepth ) - { -#ifdef __LOG_HTML__ - if ( iCurrentDepth > aDepth ) - { - while ( iCurrentDepth > aDepth ) - { - iLogger->Log( _L8( "
\r\n" ) ); - iCurrentDepth--; - } - } - else if ( iCurrentDepth < aDepth ) - { - while ( iCurrentDepth < aDepth ) - { - iLogger->Log( _L8( "
    " ) ); - iCurrentDepth++; - } - } - else - { - } -#else - if ( aDepth > iCurrentDepth ) - { - iLogger->Log( _L8( ":\r\n" ) ); - } - else - { - iLogger->Log( _L8( "\r\n" ) ); - } - for ( TInt i = 0; i <= aDepth; i++ ) - { - iLogger->Log( _L8( " " ) ); - } - iLogger->Log( _L8( "- " ) ); - iCurrentDepth = aDepth; -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) - { - WriteListEntryStart( aDepth ); - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) -#ifdef __LOG_HTML__ - iLogBuffer.Copy( _L( "
  • " ) ); -#else - iLogBuffer.SetLength( 0 ); -#endif - iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer ); -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
  • \r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::WriteList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) - { - WriteListEntryStart( aDepth ); - VA_LIST list; - //lint -esym(960, 42) Comma operator used outside of 'for' expression - VA_START( list, aDes ); - //lint +esym(960, 42) -#ifdef __LOG_HTML__ - iLogBuffer8.Copy( _L8( "
  • " ) ); -#else - iLogBuffer8.SetLength( 0 ); -#endif - iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); - iLogger->Log( iLogBuffer8 ); -#ifdef __LOG_HTML__ - iLogger->Log( _L8( "
  • \r\n" ) ); -#endif - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestLog::EndList -// ----------------------------------------------------------------------------- -void CTFAStifTestLog::EndList( void ) - { -#ifdef __LOG_HTML__ - while ( iCurrentDepth >= 0 ) - { - iLogger->Log( _L8( "
\r\n" ) ); - iCurrentDepth--; - } -#else - iLogger->Log( _L8( "\r\n" ) ); -#endif - } - +/* +* 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: Implementation of CTFAStifTestLog class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestlog.h" +#include + +#define __LOG_HTML__ + +class TTFAOverflowHandler : public TDes16Overflow, public TDes8Overflow + { +public: + void Overflow( TDes16& /*aDes*/ ) + { + TRACE_ASSERT_ALWAYS; + } + + void Overflow( TDes8& /*aDes*/ ) + { + TRACE_ASSERT_ALWAYS; + } + }; + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestLog* CTFAStifTestLog::NewLC( void ) + { + CTFAStifTestLog* log = new ( ELeave ) CTFAStifTestLog(); + CleanupStack::PushL( log ); + log->ConstructL(); + return log; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::CTFAStifTestLog +// ----------------------------------------------------------------------------- +CTFAStifTestLog::CTFAStifTestLog( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::ConstructL( void ) + { + TFileName fileName; + TTime time; + time.HomeTime(); + TDateTime dateTime = time.DateTime(); + RThread thread; +#ifdef __LOG_HTML__ + _LIT( KSuffix, "html" ); +#else + _LIT( KSuffix, "txt" ); +#endif + fileName.Format( _L( "%02d%02d%02d_%02d%02d%02d_%x.%S" ), + dateTime.Year() - 2000, dateTime.Month() + 1, dateTime.Day() + 1, + dateTime.Hour(), dateTime.Minute(), dateTime.Second(), + (TUint)thread.Id(), &KSuffix ); + iLogger = CStifLogger::NewL( _L( "c:\\logs\\testframework\\" ), fileName, + CStifLogger::ETxt, CStifLogger::EFile, ETrue, EFalse, EFalse, EFalse, EFalse ); + iOverflowHandler = new ( ELeave ) TTFAOverflowHandler; +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "TFA Log\r\n\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::~CTFAStifTestLog +// ----------------------------------------------------------------------------- +CTFAStifTestLog::~CTFAStifTestLog( void ) + { +#ifdef __LOG_HTML__ + if ( iLogger != NULL ) + { + iLogger->Log( _L8( "\r\n" ) ); + } +#endif + delete iLogger; + delete iOverflowHandler; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::SetStyle +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::SetStyle( TTFLogStyle aStyle ) + { +#ifdef __LOG_HTML__ + switch ( iStyle ) + { + case ETFLogStyleBold: + iLogger->Log( _L8( "
" ) ); + break; + case ETFLogStyleItalic: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleNormal: + default: + break; + } + iStyle = aStyle; + switch ( iStyle ) + { + case ETFLogStyleBold: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleItalic: + iLogger->Log( _L8( "" ) ); + break; + case ETFLogStyleNormal: + default: + break; + } +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::SetColor +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::SetColor( TUint32 aColor ) + { +#ifdef __LOG_HTML__ + if ( iColor != 0 ) + { + iLogBuffer8.Format( _L8( "" ) ); + } + iColor = aColor; + if ( iColor != 0 ) + { + iLogBuffer8.Format( _L8( "" ), aColor ); + } +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( const TDesC& aDes ) + { + iLogger->Log( aDes ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( const TDesC8& aDes ) + { + iLogger->Log( aDes ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( TRefByValue aDes, ... ) + { + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) + iLogBuffer.SetLength( 0 ); + iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::Write +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::Write( TRefByValue aDes, ... ) + { + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) + iLogBuffer8.SetLength( 0 ); + iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer8 ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteBlock +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteBlock( const TDesC& aDes ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
" ) ); + iLogger->Log( aDes ); + iLogger->Log( _L8( "
" ) ); +#else + iLogger->Log( aDes ); + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteBlock +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteBlock( const TDesC8& aDes ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
" ) ); + iLogger->Log( aDes ); + iLogger->Log( _L8( "
" ) ); +#else + iLogger->Log( aDes ); + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::EndLine +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::EndLine( void ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
\r\n" ) ); +#else + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::StartChapter +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::StartChapter( void ) + { +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "

" ) ); +#else + iLogger->Log( _L8( "\r\n\r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::StartList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::StartList( void ) + { + iCurrentDepth = 0; +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "

    " ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteListEntryStart +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteListEntryStart( TInt aDepth ) + { +#ifdef __LOG_HTML__ + if ( iCurrentDepth > aDepth ) + { + while ( iCurrentDepth > aDepth ) + { + iLogger->Log( _L8( "
\r\n" ) ); + iCurrentDepth--; + } + } + else if ( iCurrentDepth < aDepth ) + { + while ( iCurrentDepth < aDepth ) + { + iLogger->Log( _L8( "
    " ) ); + iCurrentDepth++; + } + } + else + { + } +#else + if ( aDepth > iCurrentDepth ) + { + iLogger->Log( _L8( ":\r\n" ) ); + } + else + { + iLogger->Log( _L8( "\r\n" ) ); + } + for ( TInt i = 0; i <= aDepth; i++ ) + { + iLogger->Log( _L8( " " ) ); + } + iLogger->Log( _L8( "- " ) ); + iCurrentDepth = aDepth; +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) + { + WriteListEntryStart( aDepth ); + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) +#ifdef __LOG_HTML__ + iLogBuffer.Copy( _L( "
  • " ) ); +#else + iLogBuffer.SetLength( 0 ); +#endif + iLogBuffer.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer ); +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
  • \r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::WriteList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::WriteList( TInt aDepth, TRefByValue aDes, ... ) + { + WriteListEntryStart( aDepth ); + VA_LIST list; + //lint -esym(960, 42) Comma operator used outside of 'for' expression + VA_START( list, aDes ); + //lint +esym(960, 42) +#ifdef __LOG_HTML__ + iLogBuffer8.Copy( _L8( "
  • " ) ); +#else + iLogBuffer8.SetLength( 0 ); +#endif + iLogBuffer8.AppendFormatList( aDes, list, iOverflowHandler ); + iLogger->Log( iLogBuffer8 ); +#ifdef __LOG_HTML__ + iLogger->Log( _L8( "
  • \r\n" ) ); +#endif + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestLog::EndList +// ----------------------------------------------------------------------------- +void CTFAStifTestLog::EndList( void ) + { +#ifdef __LOG_HTML__ + while ( iCurrentDepth >= 0 ) + { + iLogger->Log( _L8( "
\r\n" ) ); + iCurrentDepth--; + } +#else + iLogger->Log( _L8( "\r\n" ) ); +#endif + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,50 +1,50 @@ -/* -* 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: Implementation of CTFAStifTestSuiteAdapter class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter* CTFAStifTestSuiteAdapter::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - CTFAStifTestSuiteAdapter* suite = new ( ELeave ) CTFAStifTestSuiteAdapter( aTestSuite, aEntryPoint ); - CleanupStack::PushL( suite ); - return suite; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) -: CTFATestSuiteAdapter( aTestSuite, aEntryPoint ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter( void ) - { - } - +/* +* 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: Implementation of CTFAStifTestSuiteAdapter class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter* CTFAStifTestSuiteAdapter::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + CTFAStifTestSuiteAdapter* suite = new ( ELeave ) CTFAStifTestSuiteAdapter( aTestSuite, aEntryPoint ); + CleanupStack::PushL( suite ); + return suite; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter::CTFAStifTestSuiteAdapter( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) +: CTFATestSuiteAdapter( aTestSuite, aEntryPoint ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapter::~CTFAStifTestSuiteAdapter( void ) + { + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastiftestsuiteadapterroot.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,164 +1,164 @@ -/* -* 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: Implementation of CTFAStifTestSuiteAdapterRoot class -* -*/ - - -// INCLUDE FILES -#include "dsytesttooltrace.h" -#include "tfastiftestsuiteadapterroot.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestcaseadapter.h" - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::NewLC -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot* CTFAStifTestSuiteAdapterRoot::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - CTFAStifTestSuiteAdapterRoot* suite = new ( ELeave ) CTFAStifTestSuiteAdapterRoot(); - CleanupStack::PushL( suite ); - suite->ConstructL( aTestSuite, aEntryPoint ); - return suite; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot( void ) -: iFirstTest( ETrue ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL(0x%x, 0x%x)" ), &aTestSuite, aEntryPoint ) ); - iWrappedAdapter = CTFAStifTestSuiteAdapter::NewLC( aTestSuite, aEntryPoint ); - CleanupStack::Pop( iWrappedAdapter ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL - return" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot -// ----------------------------------------------------------------------------- -CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot( void ) - { - // iWrappedAdapter deletes the test objects - // stored in iTestCases array. - iTestCases.Reset(); - delete iWrappedAdapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::AddL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::AddL( MTFATestAdapter& aAdapter ) - { - iWrappedAdapter->AddL( aAdapter ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::AddTestL -// ----------------------------------------------------------------------------- -void CTFAStifTestSuiteAdapterRoot::AddTestL( const CTFAStifTestCaseAdapter& aAdapter ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL(0x%x)" ), &aAdapter ) ); - User::LeaveIfError( iTestCases.Append( &aAdapter ) ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::Type -// ----------------------------------------------------------------------------- -TTFATestType CTFAStifTestSuiteAdapterRoot::Type( void ) const - { - return ETFATestTypeSuite; - } - - -//lint -e429 Pointer has not been freed or returned -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::GetTestCasesL -// ----------------------------------------------------------------------------- -TInt CTFAStifTestSuiteAdapterRoot::GetTestCasesL( const TFileName& /*aIniFile*/, RPointerArray &aCases ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL(0x%x)" ), &aCases ) ); - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - // Stif takes ownership of the test case objects, - // so new ones must be allocated. - TTestCaseInfo* copy = new ( ELeave ) TTestCaseInfo(); - *copy = iTestCases[i]->TestInfo(); - TInt val = aCases.Append( copy ); - if ( val != KErrNone ) - { - delete copy; - User::Leave( val ); - } - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL - return 0x%x" ), KErrNone ) ); - return KErrNone; - } -//lint +e429 - - -// ----------------------------------------------------------------------------- -// CTFAStifTestSuiteAdapterRoot::RunTestCaseL -// ----------------------------------------------------------------------------- -TInt CTFAStifTestSuiteAdapterRoot::RunTestCaseL( TInt aCaseId, const TFileName& /*aIniFile*/, TTestResult& aResult ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL(0x%x, 0x%x)" ), aCaseId, aResult ) ); - // All tests marked as auto-run are run. - if ( iFirstTest ) - { - iFirstTest = EFalse; - for ( TInt i = 0; i < iTestCases.Count(); i++ ) - { - if ( iTestCases[i]->RunOnStartup() ) - { - iTestCases[i]->RunTestL( aResult ); - } - } - } - - TInt found( -1 ); - for ( TInt i = 0; i < iTestCases.Count() && found == -1; i++ ) - { - if ( iTestCases[i]->TestInfo().iCaseNumber == aCaseId ) - { - found = i; - } - } - if ( found != -1 ) - { - iTestCases[found]->RunTestL( aResult ); - } - else - { - TRACE_ASSERT_ALWAYS; - User::Leave( KErrNotFound ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL - return 0x%x" ), KErrNone ) ); - return KErrNone; - } - +/* +* 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: Implementation of CTFAStifTestSuiteAdapterRoot class +* +*/ + + +// INCLUDE FILES +#include "dsytesttooltrace.h" +#include "tfastiftestsuiteadapterroot.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestcaseadapter.h" + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::NewLC +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot* CTFAStifTestSuiteAdapterRoot::NewLC( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + CTFAStifTestSuiteAdapterRoot* suite = new ( ELeave ) CTFAStifTestSuiteAdapterRoot(); + CleanupStack::PushL( suite ); + suite->ConstructL( aTestSuite, aEntryPoint ); + return suite; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot::CTFAStifTestSuiteAdapterRoot( void ) +: iFirstTest( ETrue ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::ConstructL( CTFATestSuite& aTestSuite, CTFAEntryPoint* aEntryPoint ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL(0x%x, 0x%x)" ), &aTestSuite, aEntryPoint ) ); + iWrappedAdapter = CTFAStifTestSuiteAdapter::NewLC( aTestSuite, aEntryPoint ); + CleanupStack::Pop( iWrappedAdapter ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::ConstructL - return" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot +// ----------------------------------------------------------------------------- +CTFAStifTestSuiteAdapterRoot::~CTFAStifTestSuiteAdapterRoot( void ) + { + // iWrappedAdapter deletes the test objects + // stored in iTestCases array. + iTestCases.Reset(); + delete iWrappedAdapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::AddL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::AddL( MTFATestAdapter& aAdapter ) + { + iWrappedAdapter->AddL( aAdapter ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::AddTestL +// ----------------------------------------------------------------------------- +void CTFAStifTestSuiteAdapterRoot::AddTestL( const CTFAStifTestCaseAdapter& aAdapter ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL(0x%x)" ), &aAdapter ) ); + User::LeaveIfError( iTestCases.Append( &aAdapter ) ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::AddTestL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::Type +// ----------------------------------------------------------------------------- +TTFATestType CTFAStifTestSuiteAdapterRoot::Type( void ) const + { + return ETFATestTypeSuite; + } + + +//lint -e429 Pointer has not been freed or returned +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::GetTestCasesL +// ----------------------------------------------------------------------------- +TInt CTFAStifTestSuiteAdapterRoot::GetTestCasesL( const TFileName& /*aIniFile*/, RPointerArray &aCases ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL(0x%x)" ), &aCases ) ); + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + // Stif takes ownership of the test case objects, + // so new ones must be allocated. + TTestCaseInfo* copy = new ( ELeave ) TTestCaseInfo(); + *copy = iTestCases[i]->TestInfo(); + TInt val = aCases.Append( copy ); + if ( val != KErrNone ) + { + delete copy; + User::Leave( val ); + } + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::GetTestCasesL - return 0x%x" ), KErrNone ) ); + return KErrNone; + } +//lint +e429 + + +// ----------------------------------------------------------------------------- +// CTFAStifTestSuiteAdapterRoot::RunTestCaseL +// ----------------------------------------------------------------------------- +TInt CTFAStifTestSuiteAdapterRoot::RunTestCaseL( TInt aCaseId, const TFileName& /*aIniFile*/, TTestResult& aResult ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL(0x%x, 0x%x)" ), aCaseId, aResult ) ); + // All tests marked as auto-run are run. + if ( iFirstTest ) + { + iFirstTest = EFalse; + for ( TInt i = 0; i < iTestCases.Count(); i++ ) + { + if ( iTestCases[i]->RunOnStartup() ) + { + iTestCases[i]->RunTestL( aResult ); + } + } + } + + TInt found( -1 ); + for ( TInt i = 0; i < iTestCases.Count() && found == -1; i++ ) + { + if ( iTestCases[i]->TestInfo().iCaseNumber == aCaseId ) + { + found = i; + } + } + if ( found != -1 ) + { + iTestCases[found]->RunTestL( aResult ); + } + else + { + TRACE_ASSERT_ALWAYS; + User::Leave( KErrNotFound ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifTestSuiteAdapterRoot::RunTestCaseL - return 0x%x" ), KErrNone ) ); + return KErrNone; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/AccPolGIDInt.dat --- a/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/AccPolGIDInt.dat Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/AccPolGIDInt.dat Thu Jul 01 11:20:10 2010 +0300 @@ -1,19 +1,19 @@ -HS-23 010104 1 65537 0 1 2308 0 0 0,0 0 0 0 0 0 2 0 2 -HS-27R 010302 1 65537 0 1 2316 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 -HS-20 010602 1 65537 0 1 2372 0 0 0,0 0 0 1 -19 1 0 0 0 2 0 2 -HDB-4 010001 1 65537 0 1 2440 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 -HS-8 010102 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 -HS-3 010103 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 -HS-6 010501 1 65537 65536 1 2436 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 -HDS-3 010101 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 -HS-5 010001 1 65537 0 1 2440 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 -CK-10 020108 2 65537 0 7 2456 0 0 0 4 0 0 0 1 0 0 0,0 0 0 1 -19 1 0 0 0 0 0 0 2 1 2 1 0 1 1 -19 1 -BHF-1 020001 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 -HF-3 020105 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 -BHF-3 020104 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 -MD-1 020202 4 65537 0 4294967301 2440 0 0 0 1 0 0 0 2 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 -PD-2 060001 16 65537 0 0, -HS-2R 010301 1 65537 0 4294967297 2444 0 0 0 2 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 0 0 0 -LPS-4 010201 32 65537 0 4294967297 2320 0 0 0 2 0 0 0,1 -19 1 0 0 0 2 1 2 0 0 0 -AD-15 010105 1 65537 0 1 2124 0 0 0,0 0 0 0 0 0 1 -19 1 2 0 2 -HS-29 010603 1 65537 0 1 2124 0 0 0,0 0 0 0 0 0 1 -19 1 2 0 2 +HS-23 010104 1 65537 0 1 2308 0 0 0,0 0 0 0 0 0 2 0 2 +HS-27R 010302 1 65537 0 1 2316 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 +HS-20 010602 1 65537 0 1 2372 0 0 0,0 0 0 1 -19 1 0 0 0 2 0 2 +HDB-4 010001 1 65537 0 1 2440 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 +HS-8 010102 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 +HS-3 010103 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 +HS-6 010501 1 65537 65536 1 2436 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 +HDS-3 010101 1 65537 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 +HS-5 010001 1 65537 0 1 2440 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 +CK-10 020108 2 65537 0 7 2456 0 0 0 4 0 0 0 1 0 0 0,0 0 0 1 -19 1 0 0 0 0 0 0 2 1 2 1 0 1 1 -19 1 +BHF-1 020001 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 +HF-3 020105 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 +BHF-3 020104 2 65537 0 12884901893 2440 0 0 0 1 0 0 0 2 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 0 0 0 +MD-1 020202 4 65537 0 4294967301 2440 0 0 0 1 0 0 0 2 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 1 -19 1 0 0 0 +PD-2 060001 16 65537 0 0, +HS-2R 010301 1 65537 0 4294967297 2444 0 0 0 2 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 0 0 0 +LPS-4 010201 32 65537 0 4294967297 2320 0 0 0 2 0 0 0,1 -19 1 0 0 0 2 1 2 0 0 0 +AD-15 010105 1 65537 0 1 2124 0 0 0,0 0 0 0 0 0 1 -19 1 2 0 2 +HS-29 010603 1 65537 0 1 2124 0 0 0,0 0 0 0 0 0 1 -19 1 2 0 2 diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/rules.dat --- a/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/rules.dat Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/data/rules.dat Thu Jul 01 11:20:10 2010 +0300 @@ -1,11 +1,11 @@ -RULE 1 N/A 0 1 0 0 0, ;5 -RULE 1 N/A 0 32 0 0 0, ;5 -RULE 1 N/A 0 256 0 0 0, ;5 -RULE 2 N/A 0 0 0 0 17 0 0 0 0 0 0 0 0, ;44 -RULE 3 N/A 0 0 0 0 1 0 0 0 0, ;40 -SELECTION 1 TTY 010001 1 131073 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 -SELECTION 2 Loopset 010201 32 131073 0 1 2320 0 0 0,1 -19 1 0 0 0 2 1 2 -SELECTION 4 Headset 010001 1 131073 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 -SELECTION 8 Headphones 010001 1 131073 0 1 2188 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 -SELECTION 16 LineOut 010001 1 131073 0 1 2188 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 -SELECTION 32 TVOut 000004 512 131073 0 17 2188 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 2 0 2 +RULE 1 N/A 0 1 0 0 0, ;5 +RULE 1 N/A 0 32 0 0 0, ;5 +RULE 1 N/A 0 256 0 0 0, ;5 +RULE 2 N/A 0 0 0 0 17 0 0 0 0 0 0 0 0, ;44 +RULE 3 N/A 0 0 0 0 1 0 0 0 0, ;40 +SELECTION 1 TTY 010001 1 131073 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 +SELECTION 2 Loopset 010201 32 131073 0 1 2320 0 0 0,1 -19 1 0 0 0 2 1 2 +SELECTION 4 Headset 010001 1 131073 0 1 2444 0 0 0,0 0 0 0 0 0 0 0 0 0 0 0 2 0 2 +SELECTION 8 Headphones 010001 1 131073 0 1 2188 0 0 0,0 0 0 0 0 0 0 0 0 2 0 2 +SELECTION 16 LineOut 010001 1 131073 0 1 2188 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 +SELECTION 32 TVOut 000004 512 131073 0 17 2188 0 0 0 1 0 0 0,0 0 0 0 0 0 0 0 0 2 1 2 2 0 2 diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/inc/acc_debug.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/inc/acc_debug.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,258 @@ +/* +* Copyright (c) 2010 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: Macro definitions for tracing and debugging purposes. +* +*/ + + +#ifndef ACC_DEBUG_H +#define ACC_DEBUG_H + +#ifdef _DEBUG + +// INCLUDES +#include + +// CONSTANTS +_LIT( KComponent, "[AccFW:Component]" ); +_LIT( KThisFile, "[AccFW:Component] - Trace this file: %s, line: %d, compiled: %s %s" ); +_LIT( KAssertion, "[AccFW:Component] - Assertion failed: File: %s, line: %d, compiled: %s %s" ); +_LIT( KPanic, "[AccFW:Component] - Panic occurred: File: %s, line: %d, compiled: %s %s" ); +_LIT( KMystic, "[AccFW:Component] - Mystic failure: File: %s, line: %d, compiled: %s %s" ); +_LIT8( KDATE, __DATE__ ); +_LIT8( KTIME, __TIME__ ); + +const TInt KTraceMaxSize = 256; + +// DATA TYPES +enum TTraceType + { + ETraceInit, + ETraceAssert, + ETracePanic + }; + +// INLINE FUNCTIONS + + // ----------------------------------------------------------------------------- + // ThisFileFunc + // ----------------------------------------------------------------------------- + inline void ThisFileFunc( const TDesC8& aFile, + TInt aLine, + TTraceType aType = ETraceInit ) + { + HBufC* fileBuf = HBufC::New( aFile.Length() + 1 ); + HBufC* dateBuf = HBufC::New( 32 ); + HBufC* timeBuf = HBufC::New( 32 ); + + if ( fileBuf != NULL && dateBuf != NULL && timeBuf != NULL ) + { + fileBuf->Des().Copy( aFile ); + timeBuf->Des().Copy( KTIME ); + dateBuf->Des().Copy( KDATE ); + + if ( aType == ETraceInit ) + { + RDebug::Print( KThisFile, + fileBuf->Des().PtrZ(), + aLine, + dateBuf->Des().PtrZ(), + timeBuf->Des().PtrZ() ); + } + + else if ( aType == ETraceAssert ) + { + RDebug::Print( KAssertion, + fileBuf->Des().PtrZ(), + aLine, + dateBuf->Des().PtrZ(), + timeBuf->Des().PtrZ() ); + } + + else if ( aType == ETracePanic ) + { + RDebug::Print( KPanic, + fileBuf->Des().PtrZ(), + aLine, + dateBuf->Des().PtrZ(), + timeBuf->Des().PtrZ() ); + } + + else + { + RDebug::Print( KMystic, + fileBuf->Des().PtrZ(), + aLine, + dateBuf->Des().PtrZ(), + timeBuf->Des().PtrZ() ); + } + } + + else + { + RDebug::Print( _L( "Assertion and memory allocation failed!" ) ); + } + + delete fileBuf; + delete dateBuf; + delete timeBuf; + } + + // ----------------------------------------------------------------------------- + // TraceAssertFunc + // ----------------------------------------------------------------------------- + inline void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + ThisFileFunc( aFile, aLine, ETraceAssert ); + } + + // ----------------------------------------------------------------------------- + // TracePanicFunc + // ----------------------------------------------------------------------------- + inline void TracePanicFunc( const TDesC8& aFile, TInt aLine ) + { + ThisFileFunc( aFile, aLine, ETracePanic ); + User::Panic( KComponent, KErrGeneral ); + } + +// MACROS + #define PANIC_IF_FALSE( a ) if ( !( a ) )\ + TracePanicFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + #define PANIC_IF_TRUE( a ) if ( ( a ) )\ + TracePanicFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + #define PANIC_ALWAYS\ + TracePanicFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + // ----------------------------------------------------------------------------- + // COMPONENT_TRACE_FLAG + // ----------------------------------------------------------------------------- + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE_THIS_FILE\ + ThisFileFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + #define COM_TRACE_( AAA ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr ); } while ( 0 ) + + #define COM_TRACE_1( AAA, BBB ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB ); } while ( 0 ) + + #define COM_TRACE_2( AAA, BBB, CCC ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC ); } while ( 0 ) + + #define COM_TRACE_3( AAA, BBB, CCC, DDD ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC, DDD ); } while ( 0 ) + + #define COM_TRACE_4( AAA, BBB, CCC, DDD, EEE ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC, DDD, EEE ); } while ( 0 ) + + #define COM_TRACE_RAW_( AAA ) do\ + { RDebug::RawPrint( AAA ); } while ( 0 ) + + #define COM_TRACE_RAW_1( AAA, BBB ) do\ + { _LIT( logStr, AAA ); TBuf buffer; buffer.Append( logStr ); buffer.Append( BBB );\ + RDebug::RawPrint( buffer ); } while ( 0 ) + + #else + + #define COMPONENT_TRACE_THIS_FILE + + #define COM_TRACE_( AAA ) + #define COM_TRACE_1( AAA, BBB ) + #define COM_TRACE_2( AAA, BBB, CCC ) + #define COM_TRACE_3( AAA, BBB, CCC, DDD ) + #define COM_TRACE_4( AAA, BBB, CCC, DDD, EEE ) + #define COM_TRACE_RAW_( AAA ) + #define COM_TRACE_RAW_1( AAA, BBB ) + + #endif // COMPONENT_TRACE_FLAG + + #define TRACE_ASSERT( a ) if ( !( a ) )\ + TraceAssertFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + #define TRACE_ASSERT_RETURN( a ) if ( !( ( a ) == KErrNone ) )\ + TraceAssertFunc( TPtrC8( ( TText8* ) __FILE__), __LINE__ ) + + #define TRACE_ASSERT_ALWAYS\ + TraceAssertFunc( TPtrC8( ( TText8* ) __FILE__ ), __LINE__ ) + + // ----------------------------------------------------------------------------- + // API_TRACE_FLAG + // ----------------------------------------------------------------------------- + #ifdef API_TRACE_FLAG + + #define API_TRACE_( AAA ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr ); } while ( 0 ) + + #define API_TRACE_1( AAA, BBB ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB ); } while ( 0 ) + + #define API_TRACE_2( AAA, BBB, CCC ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC ); } while ( 0 ) + + #define API_TRACE_3( AAA, BBB, CCC, DDD ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC, DDD ); } while ( 0 ) + + #define API_TRACE_4( AAA, BBB, CCC, DDD, EEE ) do\ + { _LIT( logStr, AAA ); RDebug::Print( logStr, BBB, CCC, DDD, EEE ); } while ( 0 ) + + #define API_TRACE_RAW_1( AAA, BBB ) do\ + { _LIT( logStr, AAA ); TBuf buffer; buffer.Append( logStr ); buffer.Append( BBB );\ + RDebug::RawPrint( buffer ); } while ( 0 ) + + #else + + #define API_TRACE_( AAA ) + #define API_TRACE_1( AAA, BBB ) + #define API_TRACE_2( AAA, BBB, CCC ) + #define API_TRACE_3( AAA, BBB, CCC, DDD ) + #define API_TRACE_4( AAA, BBB, CCC, DDD, EEE ) + #define API_TRACE_RAW_1( AAA, BBB ) + + #endif // API_TRACE_FLAG + +#else // _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_RETURN( a ) a + #define TRACE_ASSERT_ALWAYS + + #define COM_TRACE_( AAA ) + #define COM_TRACE_1( AAA, BBB ) + #define COM_TRACE_2( AAA, BBB, CCC ) + #define COM_TRACE_3( AAA, BBB, CCC, DDD ) + #define COM_TRACE_4( AAA, BBB, CCC, DDD, EEE ) + #define COM_TRACE_RAW_( AAA ) + #define COM_TRACE_RAW_1( AAA, BBB ) + + #define API_TRACE_( AAA ) + #define API_TRACE_1( AAA, BBB ) + #define API_TRACE_2( AAA, BBB, CCC ) + #define API_TRACE_3( AAA, BBB, CCC, DDD ) + #define API_TRACE_4( AAA, BBB, CCC, DDD, EEE ) + #define API_TRACE_RAW_1( AAA, BBB ) + + #define COMPONENT_TRACE_THIS_FILE + + #define PANIC_IF_FALSE( a ) + #define PANIC_IF_TRUE( a ) + #define PANIC_ALWAYS + +#endif // _DEBUG + +#endif // ACC_DEBUG_H + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/inc/cautoaudioasymainservicebase.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/inc/cautoaudioasymainservicebase.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,57 @@ +/* +* Copyright (c) 2010 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: Header file for autoaudioasy main service +* +*/ + +#ifndef CAUTOAUDIOASYMAINSERVICEBASE_H_ +#define CAUTOAUDIOASYMAINSERVICEBASE_H_ + +#include + +//Forward declarations +class CAutoAudioAsyService; + + +/** + * Creates ASY main service + */ +NONSHARABLE_CLASS(CAutoAudioAsyMainServiceBase): public CASYMainServiceBase + { +public: // Constructors and destructor + + static CAutoAudioAsyMainServiceBase* NewL (); + virtual ~CAutoAudioAsyMainServiceBase (); + +public: // From CASYMainServiceBase + + TInt StartL(); + +private: // Functions + + CAutoAudioAsyMainServiceBase (); + void ConstructL (); + + void InitPSAutoAudioL (); + +private: //Data + + /** + * Handle to service class. + * Own. + */ + CAutoAudioAsyService* iService; + }; + +#endif // CAUTOAUDIOASYMAINSERVICEBASE_H_ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/inc/cautoaudioasypropertyobserver.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/inc/cautoaudioasypropertyobserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,70 @@ +/* +* Copyright (c) 2010 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: Header file for property observer +* +*/ +#ifndef CAUTOAUDIOASYPROPERTYOBSERVER_H__ +#define CAUTOAUDIOASYPROPERTYOBSERVER_H__ + +#include +#include + +class MAutoAudioAsyPropertyListener; + +/** + * This class follows PS key (informs when RTP streaming is enabled or disabled). + */ +NONSHARABLE_CLASS(CAutoAudioAsyPropertyObserver): public CActive + { +public: + /** + * Two-phase constructor + */ + static CAutoAudioAsyPropertyObserver* NewL ( TUid aCategory, TUint aKey, MAutoAudioAsyPropertyListener& aListener ); + virtual ~CAutoAudioAsyPropertyObserver (); + +protected: + // CActive + void DoCancel (); + void RunL (); + TInt RunError ( TInt aError ); + +private: + CAutoAudioAsyPropertyObserver ( TUid aCategory, TUint aKey, MAutoAudioAsyPropertyListener& aListener ); + +private: + /** + * Handle to P&S property. + * Own. + */ + RProperty iProperty; + + /** + * The UID of the property we are listening for + */ + TUid iCategory; + + /** + * The key we are listening for + */ + TUint iKey; + + /** + * Reference to listener class. + * Now own. + */ + MAutoAudioAsyPropertyListener& iListener; + }; + +#endif // CAUTOAUDIOASYPROPERTYOBSERVER_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/inc/cautoaudioasyservice.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/inc/cautoaudioasyservice.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,126 @@ +/* +* Copyright (c) 2010 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: This class handles connect and disconnect to AccFw. +* +*/ + +#ifndef C_AUTOAUDIOASYSERVICE_H__ +#define C_AUTOAUDIOASYSERVICE_H__ + +#include +#include +#include +#include + +#include "mautoaudioasypropertylistener.h" + +class CAutoAudioAsyPropertyObserver; + + +/** + * This class will notification for enabling/disabling RTP streaming channel + and handles connect and disconnect to AccFW. + */ +NONSHARABLE_CLASS(CAutoAudioAsyService): public CActive, + public MAutoAudioAsyPropertyListener + { +public: + /** + * Two-phased constructor + */ + static CAutoAudioAsyService* NewL (); + + virtual ~CAutoAudioAsyService (); + + /** + * Starts ASY service + */ + void StartL (); + + /** + * Free resources on disconnect or on error + */ + void FreeResources (); + + /** + * @param aPS Handle to the property + * @param aUid The Uid of the property + * @param aKey The property key + * @param aStatus The property change status + * @return void + */ + void PropertyChange ( RProperty& aPS, TUid aUid, TUint aKey, TInt aStatus ); + +protected: + + // CActive + void DoCancel (); + void RunL (); + TInt RunError ( TInt aError ); + +private: //methods + + CAutoAudioAsyService (); + + void ConstructL (); + void ConnectAccessoryL (); + void AccessoryDisconnected (); + +private: //data + /** + * State of the service class. + */ + enum TServiceState + { + EServiceStateIdle, + EServiceStateConnecting, + EServiceStateConnected + }; + + /** + * Handle to accessory server + * Own. + */ + RAccessoryServer iAccessoryServer; + + /** + * Handle to accessory control + * Own. + */ + RAccessoryControl iAccessoryControl; + + /** + * Generic id header + */ + TAccPolGIDHeader iGenericIDHeader; + + /** + * State of the service class + */ + TServiceState iState; + + /** + * Generic id + * Own. + */ + CAccConGenericID* iGenericId; + + /** + * Observer that receives notifications about RTP Channel + * Own. + */ + CAutoAudioAsyPropertyObserver* iPropertyObserver; + }; + +#endif // C_AUTOAUDIOASYSERVICE_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/inc/mautoaudioasypropertylistener.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/inc/mautoaudioasypropertylistener.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,41 @@ +/* +* Copyright (c) 2010 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: Notify service class about property changes. +* +*/ + +#ifndef MAUTOAUDIOASYPROPERTYLISTENER_H +#define MAUTOAUDIOASYPROPERTYLISTENER_H + +#include + +/** + * Methods needed to handle Publish & Subscribe property changes. + */ +class MAutoAudioAsyPropertyListener + { +public: + /** + * + * @param aProperty Handle to the property + * @param aCategory The Uid of the property + * @param aKey The property key + * @param aStatus The property change status + * @return void + */ + virtual void PropertyChange ( RProperty& aProperty, TUid aCategory, + TUint aKey, TInt aStatus ) = 0; + }; + +#endif // MAUTOAUDIOASYPROPERTYLISTENER_H diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/rom/autoaudioasy.iby --- a/accessoryservices/autoaudioasy/rom/autoaudioasy.iby Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/autoaudioasy/rom/autoaudioasy.iby Thu Jul 01 11:20:10 2010 +0300 @@ -1,13 +1,10 @@ /* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. -* This material, including documentation and any related computer -* programs, is protected by copyright controlled by Nokia. All -* rights are reserved. Copying, including reproducing, storing -* adapting or translating, any or all of this material requires the -* prior written consent of Nokia. This material also contains -* confidential information which may not be disclosed to others -* without the prior written consent of Nokia. +* 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. @@ -18,6 +15,7 @@ * */ + #ifndef AUTOAUDIOASY_IBY__ #define AUTOAUDIOASY_IBY__ diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/src/cautoaudioasymainservicebase.cpp --- a/accessoryservices/autoaudioasy/src/cautoaudioasymainservicebase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/autoaudioasy/src/cautoaudioasymainservicebase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -95,7 +95,7 @@ User::Leave ( ret ); } - ret = RProperty::Set ( KPSUidAccessoryServices, KPSAutoKeyRTPStreamingConnectionStatus, ENone ); + ret = RProperty::Set ( KPSUidAccessoryServices, KPSAutoKeyRTPStreamingConnectionStatus, EAudioConnectionStatusNone ); if ( ret != KErrNone ) { COM_TRACE_1 ( "[AccFW:AutoAudioAsy] CAutoAudioAsyMainServiceBase::InitPSAutoAudioL RTP Streaming key init failed with %d", ret ); diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/src/cautoaudioasypropertyobserver.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/accessoryservices/autoaudioasy/src/cautoaudioasypropertyobserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,92 @@ +/* +* Copyright (c) 2010 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: Notify service class about connection state. +* +*/ + +#include "cautoaudioasypropertyobserver.h" +#include "autoaudiopskeys.h" +#include "mautoaudioasypropertylistener.h" + +#include "acc_debug.h" + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::NewL +// --------------------------------------------------------------------------- +CAutoAudioAsyPropertyObserver* CAutoAudioAsyPropertyObserver::NewL ( TUid aCategory, TUint aKey, + MAutoAudioAsyPropertyListener& aListener ) + { + COM_TRACE_1 ( "[AccFW:AutoAudioAsy] CAutoAudioAsyPropertyObserver::NewL(), key- %d", aKey ); + return new ( ELeave ) CAutoAudioAsyPropertyObserver ( aCategory, aKey, aListener ); + } + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::CAutoAudioAsyPropertyObserver +// --------------------------------------------------------------------------- +CAutoAudioAsyPropertyObserver::CAutoAudioAsyPropertyObserver ( TUid aCategory, TUint aKey, + MAutoAudioAsyPropertyListener& aListener ): + CActive ( EPriorityStandard ), + iCategory ( aCategory ), iKey ( aKey ), iListener ( aListener ) + { + CActiveScheduler::Add ( this ); + iProperty.Attach ( iCategory, iKey ); + iProperty.Subscribe ( iStatus ); + SetActive (); + } + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::~CAutoAudioAsyPropertyObserver +// --------------------------------------------------------------------------- +CAutoAudioAsyPropertyObserver::~CAutoAudioAsyPropertyObserver () + { + COM_TRACE_ ( "[AccFW:AutoAudioAsy] CAutoAudioAsyPropertyObserver::~CAutoAudioAsyPropertyObserver"); + Cancel (); + iProperty.Close (); + } + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::RunL +// --------------------------------------------------------------------------- +void CAutoAudioAsyPropertyObserver::RunL () + { + COM_TRACE_ ( "AccFW:AutoAudioAsy] CAutoAudioAsyPropertyObserver::RunL"); + + TInt status = iStatus.Int (); + COM_TRACE_3 ( "[AccFW:AutoAudioAsy] key 0x%08x/%u changed, status %d", iCategory.iUid, iKey, status ); + // Subscribe for the next change BEFORE invoking the listener to make sure + // that we never miss any property changes. + iProperty.Subscribe ( iStatus ); + SetActive (); + + // Notify the listener + iListener.PropertyChange ( iProperty, iCategory, iKey, status ); + } + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::DoCancel +// --------------------------------------------------------------------------- +void CAutoAudioAsyPropertyObserver::DoCancel () + { + COM_TRACE_ ( "[AccFW:AutoAudioAsy] CAutoAudioAsyPropertyObserver::DoCancel" ); + iProperty.Cancel (); + } + +// --------------------------------------------------------------------------- +// CAutoAudioAsyPropertyObserver::RunError +// --------------------------------------------------------------------------- +TInt CAutoAudioAsyPropertyObserver::RunError ( TInt /* aError */ ) + { + COM_TRACE_ ( "[AccFW:AutoAudioAsy] CAutoAudioAsyPropertyObserver::RunError" ); + return KErrNone; + } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/autoaudioasy/src/cautoaudioasyservice.cpp --- a/accessoryservices/autoaudioasy/src/cautoaudioasyservice.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/autoaudioasy/src/cautoaudioasyservice.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -102,7 +102,7 @@ // Check if audio accessory has been connected if ( ( status == KErrNone ) && ( aStatus == KErrNone ) ) { - if ( propValue == EUnidirectional ) // Current release supports only UniDirectional, so other key values ignored. + if ( propValue == EAudioConnectionStatusUnidirectional ) // Current release supports only UniDirectional, so other key values ignored. { TInt err; switch ( iState ) diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/group/bld.inf --- a/accessoryservices/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -26,6 +26,7 @@ #include "../accessoryremotecontrol/group/bld.inf" #include "../accessoryserver/group/bld.inf" #include "../pluggeddisplay/group/bld.inf" +#include "../remotecontrolfw/group/bld.inf" #include "../headsetstatusapi/Group/bld.inf" #include "../tspclientmapper/group/bld.inf" #include "../gid_pc_tool/group/bld.inf" diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/edidparser/bwins/edidparseru.def --- a/accessoryservices/pluggeddisplay/edidparser/bwins/edidparseru.def Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/edidparser/bwins/edidparseru.def Thu Jul 01 11:20:10 2010 +0300 @@ -55,4 +55,6 @@ ?GetInterlacedVideoLatency@CCea861EdidParser@@QAEEXZ @ 54 NONAME ; unsigned char CCea861EdidParser::GetInterlacedVideoLatency(void) ?GetStandardTimings@CEdidParserBase@@QAEEH@Z @ 55 NONAME ; unsigned char CEdidParserBase::GetStandardTimings(int) ?HasIEEERegistration@CCea861EdidParser@@QAEHXZ @ 56 NONAME ; int CCea861EdidParser::HasIEEERegistration(void) + ?UpdateCea861ExtensionL@CEdidParserBase@@QAEXHPAVCCea861EdidParser@@@Z @ 57 NONAME ; void CEdidParserBase::UpdateCea861ExtensionL(int, class CCea861EdidParser *) + ?UpdateRawDataL@CEdidParserBase@@QAEXABVTDesC8@@@Z @ 58 NONAME ; void CEdidParserBase::UpdateRawDataL(class TDesC8 const &) diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/edidparser/eabi/edidparseru.def --- a/accessoryservices/pluggeddisplay/edidparser/eabi/edidparseru.def Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/edidparser/eabi/edidparseru.def Thu Jul 01 11:20:10 2010 +0300 @@ -57,4 +57,6 @@ _ZTV17CCea861EdidParser @ 56 NONAME ; ## _ZN15CEdidParserBase18GetStandardTimingsEi @ 57 NONAME _ZN17CCea861EdidParser19HasIEEERegistrationEv @ 58 NONAME + _ZN15CEdidParserBase14UpdateRawDataLERK6TDesC8 @ 59 NONAME + _ZN15CEdidParserBase22UpdateCea861ExtensionLEiP17CCea861EdidParser @ 60 NONAME diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/edidparser/inc/edidparserbase.h --- a/accessoryservices/pluggeddisplay/edidparser/inc/edidparserbase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/edidparser/inc/edidparserbase.h Thu Jul 01 11:20:10 2010 +0300 @@ -378,6 +378,9 @@ */ IMPORT_C TUint8 GetChecksum(); + IMPORT_C void UpdateRawDataL( const TDesC8& aBinaryData ); + IMPORT_C void UpdateCea861ExtensionL( TInt aNumber, CCea861EdidParser* aParser ); + private: /** @@ -558,6 +561,7 @@ HBufC8* iRawData; // Raw data that contains all EDID data TUint iNumberOfExtensionBlocks; // Number of extensionblocks for this base edid block TExtDataBlock iExtensionData; // Extension data + TInt iRawdataLength; // Raw data length }; #endif // C_CEDIDPARSERBASE_H diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/edidparser/src/edidparserbase.cpp --- a/accessoryservices/pluggeddisplay/edidparser/src/edidparserbase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/edidparser/src/edidparserbase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -52,8 +52,10 @@ // Make a copy of base EDID data Mem::Copy( &iBaseEdidData, rawPtr.Ptr(), KEdidParserSizeOfEdidBlock ); - - TRACE_EDID_DATA( *this ); + + iRawdataLength = aBinaryData.Length(); + + //TRACE_EDID_DATA( *this ); } // --------------------------------------------------------------------------- @@ -761,6 +763,51 @@ return parser; } +EXPORT_C void CEdidParserBase::UpdateRawDataL( const TDesC8& aBinaryData ) + { + FUNC_LOG; + + if ( iRawData ) + { + iRawData = iRawData->ReAllocL( iRawdataLength + aBinaryData.Length() ); + + TPtr8 rawPtr = iRawData->Des(); + rawPtr.Append( aBinaryData ); + } + else + { + iRawData = HBufC8::NewL( aBinaryData.Length() ); + TPtr8 rawPtr = iRawData->Des(); + rawPtr.Copy( aBinaryData ); + } + + iRawdataLength = iRawdataLength + aBinaryData.Length(); + } + +EXPORT_C void CEdidParserBase::UpdateCea861ExtensionL( TInt aNumber, CCea861EdidParser* aParser ) + { + FUNC_LOG; + + TInt ext = GetExtensionType( aNumber ); + switch( ext ) + { + case ECea861Ext: + { + // CEA 861 extension + if( aParser ) + { + aParser->ParseExtensionBlockL( iExtensionData ); + } + break; + } + default: + { + // Not supported + break; + } + } + } + // --------------------------------------------------------------------------- // CEdidParserBase::GetChecksum // --------------------------------------------------------------------------- diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/edidhandler.h --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/edidhandler.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/edidhandler.h Thu Jul 01 11:20:10 2010 +0300 @@ -173,6 +173,16 @@ */ TInt GetHdcpSupportStatus( TBool& aHdcpSupport ) const; + /** + * Update overscan values from cenrep. + * + * @param None. + * @return None. + */ + TBool UpdateOverscanValues(); + + void GetCurrentOverscanValue( TInt& aHOverscan, TInt& aVOverscan ); + private: /** @@ -347,14 +357,6 @@ */ void CalculateOverscan( TPoint& aTLCorner, TPoint& aBRCorner ) const; - /** - * Update overscan values from cenrep. - * - * @param None. - * @return None. - */ - void UpdateOverscanValues(); - /** * Filter out the unsupported TV configurations. * @@ -411,6 +413,12 @@ // Request ID TRequestTypeID iRequestID; + + // Number of extensions to read + TInt inbrOfExtensions; + + // Current EDID block + TInt iCurrentBlock; }; #endif // C_EDIDHANDLER_H diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/hdmicablestateconnected.h --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/hdmicablestateconnected.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/hdmicablestateconnected.h Thu Jul 01 11:20:10 2010 +0300 @@ -442,8 +442,9 @@ //CCentralRepositoryWatch* iCRWatchForHOverScan; CCentralRepositoryWatch* iCRWatchForVOverScan; - // Flag to indicate the change of overscan - TBool iOverScanSettingsChanged; + // Current overscan value + TInt iHOverscanValue; + TInt iVOverscanValue; }; diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/pdeconstants.h --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/pdeconstants.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/pdeconstants.h Thu Jul 01 11:20:10 2010 +0300 @@ -92,6 +92,7 @@ // Central Repository interface's event ids EPDEIfCentralRepositoryWatchEventUndefined = 0x50, EPDEIfCentralRepositoryWatchEventKeyChanged, + EPDEIfCentralRepositoryWatchEventOverscanKeyChanged, // ASY command Handler interface's event ids EPDEIfAsyCommandHandlerEventUndefined = 0x60, diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/tvoutconfigforcomposite.h --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/tvoutconfigforcomposite.h Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/inc/tvoutconfigforcomposite.h Thu Jul 01 11:20:10 2010 +0300 @@ -123,6 +123,8 @@ */ void Disable(); + TBool UpdateOverscanValues(); + private: /** @@ -262,6 +264,12 @@ // Time out reason and next opt after timer has // elapsed TOpt iTimeOutReason; + + // Horizontal overscan in pixels (1% == 100) + TInt iHOverscan; + + // Vertical overscan in pixels (1% == 100) + TInt iVOverscan; }; #endif // TVOUTCONFIGFORCOMPOSITE_H diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/compositecablestateconnected.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -100,7 +100,8 @@ void CCompositeCableStateConnected::Enter( ) { FUNC_LOG; - + + iTVOutConfigForComposite.UpdateOverscanValues(); ClearAvailableTvOutConfig(); iTVOutConfigForSettingChanges->ListenSettingsChanges(); @@ -192,16 +193,24 @@ TUint32 aId ) { FUNC_LOG; + INFO("Cenrep Value Changed"); if ( KCRUidTvoutSettings == aRepositoryId ) { if ( ( KSettingsTvAspectRatio == aId ) || ( KSettingsTvoutFlickerFilter == aId ) || - ( KSettingsTvSystemInfo == aId ) || - ( KSettingsTvoutVerticalOverscan == aId) ) + ( KSettingsTvSystemInfo == aId ) ) { Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); } - else + else if( KSettingsTvoutVerticalOverscan == aId ) + { + if( iTVOutConfigForComposite.UpdateOverscanValues() ) + { + INFO( "There is a real overscan change" ); + Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventOverscanKeyChanged ); + } + } + else { INFO_1("Unexpected CR key ID, aId 0x%x", aId ); } @@ -375,12 +384,38 @@ iResettingInput = ETrue; Enter(); } + else if ( EPDEIfCentralRepositoryWatchEventOverscanKeyChanged == aEvent ) + { + INFO( "Event: EPDEIfCentralRepositoryWatchEventOverscanKeyChanged" ); + iTVOutConfigForComposite.SetConfig( ETrue ); + } else { INFO_1( "Unknown Event Id: %i", aEvent ); } break; } + case EPDEIfTVOutConfig: + { + INFO( "Interface: EPDEIfTVOutConfig" ); + if ( EIfTVOutConfigEventSet == aEvent ) + { + INFO( "Event: EIfTVOutConfigEventSet" ); + // Stay on the same state + } + else if ( EIfTVOutConfigEventSetFailed == aEvent ) + { + INFO( "Event: EIfTVOutConfigEventSetFailed" ); + iCRWatchForFlickerFilter->Cancel(); + iCRWatchForAspectRatio->Cancel(); + iCRWatchForTvSystem->Cancel(); + iCRWatchForVOverScan->Cancel(); + ClearAvailableTvOutConfig(); + iTVOutConfigForComposite.Disable(); + iSubState = ESubStateDisabling; + } + break; + } default: { INFO_2( "Event from unexpected interface. if Id, event id: %i", aInterfaceId, aEvent ); diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -125,9 +125,6 @@ RArray analogConfigs; RArray hdmiConfigs; - // Update overscan values from cenrep - UpdateOverscanValues(); - // Set video parameters INFO( "--------------------------------------------------------------------" ); INFO( "SETTING CEA AND DMT TIMINGS:" ); @@ -177,6 +174,9 @@ iEdidParserPtr = NULL; delete iExtensionParserPtr; iExtensionParserPtr = NULL; + + iCurrentBlock = 0; + inbrOfExtensions = 0; } //------------------------------------------------------------------------------ @@ -519,26 +519,81 @@ { case EDdcReadRequest: { - if( KErrNone == iStatus.Int() ) - { - TPtrC8 - dataBlockDes( iDataBlockPtr->iDataBlock, sizeof( *iDataBlockPtr ) ); - iEdidParserPtr = CEdidParserBase::NewL( dataBlockDes ); - TInt nbrOfExtensions = iEdidParserPtr->GetNumberOfExtensions(); - for( TInt i = 0; i < nbrOfExtensions; ++i ) - { - if( ECea861Ext == iEdidParserPtr->GetExtensionType( i + 1 ) ) - { - INFO_1( "ECea861Ext extension data block number: %d", ( i+1 ) ); - iExtensionParserPtr - = iEdidParserPtr->CreateCea861ExtensionParserL( i + 1 ); - break; - } - } - INFO_1( "Data block count in nbrOfExtensions: %d", nbrOfExtensions ); - iFSM.Input( EPDEIfEDIDHandler, EPDEIfEDIDHandlerEventEdidDataFetched ); - iRetryCounter = KErrNone; - } + if( KErrNone == iStatus.Int() ) + { + if( iCurrentBlock == 0 ) + { + TPtrC8 dataBlockDes( iDataBlockPtr->iDataBlock, sizeof( *iDataBlockPtr ) ); + + iEdidParserPtr = CEdidParserBase::NewL( dataBlockDes ); + inbrOfExtensions = iEdidParserPtr->GetNumberOfExtensions(); + + INFO_1( "No. of extensions from Block 0: %d", inbrOfExtensions ); + + if( inbrOfExtensions ) + { + inbrOfExtensions--; + } + } + else + { + TPtrC8 dataBlockDes( iDataBlockPtr->iDataBlock, sizeof( *iDataBlockPtr ) ); + + INFO_1( "Updating the Rawdata for the Block %d...", iCurrentBlock ); + iEdidParserPtr->UpdateRawDataL(dataBlockDes); + + iCurrentBlock++; + if( inbrOfExtensions >= 2 ) + { + inbrOfExtensions = inbrOfExtensions - 2; + } + else + { + inbrOfExtensions--; + } + } + + if( inbrOfExtensions ) + { + iRetryCounter = KErrNone; + + if( ReadEDIDDataL() != KErrNone ) + { + ResetData(); + iFSM.Input( EPDEIfEDIDHandler, EPDEIfEDIDHandlerEventEdidDataFetchFailed ); + } + } + else + { + TInt extensions = iEdidParserPtr->GetNumberOfExtensions(); + + INFO_1( "No. of extensions from Block 0: %d", extensions ); + + for( TInt i = 0; i < extensions; ++i ) + { + if( ECea861Ext == iEdidParserPtr->GetExtensionType( i + 1 ) ) + { + INFO_1( "ECea861Ext extension data block number: %d", ( i+1 ) ); + if( !iExtensionParserPtr ) + { + INFO( "First CEA 861 extension is being read..." ); + iExtensionParserPtr + = iEdidParserPtr->CreateCea861ExtensionParserL( i + 1 ); + } + else + { + INFO_1( "CEA 861 extension is being read... at the index %d", i+1 ); + iEdidParserPtr->UpdateCea861ExtensionL( i + 1, iExtensionParserPtr ); + } + } + } + } + + TRACE_EDID_DATA( *iEdidParserPtr ); + + iFSM.Input( EPDEIfEDIDHandler, EPDEIfEDIDHandlerEventEdidDataFetched ); + iRetryCounter = KErrNone; + } else { INFO_1( "CDdcPortAccess::Read failed, error code: %d", iStatus.Int() ); @@ -625,8 +680,19 @@ { iDataBlockPtr = new(ELeave) TDataBlock; } + else if( inbrOfExtensions ) + { + if( iDataBlockPtr ) + { + delete iDataBlockPtr; + iDataBlockPtr = NULL; + } + iDataBlockPtr = new(ELeave) TDataBlock; + } + + INFO_1( "Reading EDID block %d...", iCurrentBlock ); - retVal = iDdcPortAccess->Read( EMonitorPort, 0, // First block contains EDID data if that exists + retVal = iDdcPortAccess->Read( EMonitorPort, iCurrentBlock, // First block contains EDID data if that exists iDataBlockPtr->iDataBlock, iStatus ); @@ -1348,7 +1414,7 @@ // CalculateOverscan //------------------------------------------------------------------------------ // -void CEDIDHandler::UpdateOverscanValues() +TBool CEDIDHandler::UpdateOverscanValues() { FUNC_LOG; @@ -1357,6 +1423,7 @@ TInt vOverscan = 0; CRepository* cenRep = NULL; TInt err = KErrNone; + TBool valChanged = EFalse; TRAP( err, cenRep = CRepository::NewL( KCRUidTvoutSettings ) ); if( err == KErrNone ) @@ -1379,12 +1446,19 @@ // Cleanup delete cenRep; } + + if( (iHOverscan != hOverscan) || (iVOverscan != vOverscan) ) + { + valChanged = ETrue; + } // Update overscan values iHOverscan = hOverscan; iVOverscan = vOverscan; - INFO_2( "Overscan Values: %d,%d", iHOverscan, iVOverscan ); + INFO_3( "Overscan Values: %d,%d Changed:%d", iHOverscan, iVOverscan, valChanged ); + + return valChanged; } // ---------------------------------------------------------------------------- @@ -1508,6 +1582,16 @@ return retVal; } +void CEDIDHandler::GetCurrentOverscanValue( TInt& aHOverscan, TInt& aVOverscan ) + { + FUNC_LOG; + + aHOverscan = iHOverscan; + aVOverscan = iVOverscan; + + INFO_2("Overscan used: %d, %d", iHOverscan, iVOverscan); + } + //------------------------------------------------------------------------------ // C++ constructor //------------------------------------------------------------------------------ @@ -1518,7 +1602,9 @@ iFSM( aFSM ), iTVOutConfigForHDMI( aTVOutConfigForHDMI ), iRetryCounter( 0 ), - iRequestID( EUndefRequest ) + iRequestID( EUndefRequest ), + inbrOfExtensions( 0 ), + iCurrentBlock( 0 ) { FUNC_LOG; } diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/src/hdmicablestateconnected.cpp --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/hdmicablestateconnected.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/hdmicablestateconnected.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -99,8 +99,13 @@ if ( KCRUidTvoutSettings == aRepositoryId ) { if ( KSettingsTvoutVerticalOverscan == aId ) - { - Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); + { + INFO("Cenrep Value Changed"); + if( iEDIDHandler.UpdateOverscanValues() ) + { + INFO( "There is a real change" ); + Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); + } } else { @@ -111,6 +116,7 @@ { INFO_1("Unexpected Central Repository ID, aRepositoryId 0x%x", aRepositoryId); } + } // --------------------------------------------------------------------------- @@ -150,7 +156,11 @@ { FUNC_LOG; TInt retVal( KErrNone ); - iOverScanSettingsChanged = EFalse; + + // Get the current overscan value + iEDIDHandler.UpdateOverscanValues(); + iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); + iCopyProtectListenFailCounter.iCount = 0; iTVOutConfigForCopyProtect->ResetLatestRecordedCopyProtectionStatus(); retVal = iEDIDHandler.FetchEDIDData(); @@ -393,6 +403,9 @@ } else { + // Update the current overscan value + iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); + TFSMEventId event = iTVOutConfigForHDMI.ListenHDMICableStatusIfNoMissedEvents(); if ( EIfTVOutConfigEventCableDisconnected == event ) { @@ -515,18 +528,11 @@ { iSubState = ESubStateConnected; - if( !iOverScanSettingsChanged ) - { - TRAPD( err, iHDMICableStatusFSM.SettingsChangedL() ); - if ( KErrNone != err ) - { - INFO_1( "iHDMICableStatusFSM.SettingsChangedL() failed, error code %i", err ); - } - } - else - { - iOverScanSettingsChanged = EFalse; - } + TRAPD( err, iHDMICableStatusFSM.SettingsChangedL() ); + if ( KErrNone != err ) + { + INFO_1( "iHDMICableStatusFSM.SettingsChangedL() failed, error code %i", err ); + } ListenCopyProtectionStatusChanges(); iTVOutConfigForSettingChanges->ListenSettingsChanges(); iCRWatchForVOverScan->Watch(); @@ -572,12 +578,14 @@ INFO( "Event: EIfTVOutConfigEventDisabled" ); iSubState = ESubStateIdlingDisconnectAccessory; iAccessoryControlIf.DisconnectAccessory(); + ClearAvailableTvOutConfig(); } else if ( EIfTVOutConfigEventDisableFailed == aEvent ) { INFO( "Event: EIfTVOutConfigEventDisableFailed" ); iSubState = ESubStateIdlingDisconnectAccessory; iAccessoryControlIf.DisconnectAccessory(); + ClearAvailableTvOutConfig(); } else { @@ -704,7 +712,7 @@ iSubState = ESubStateConnected; ListenCopyProtectionStatusChanges(); iTVOutConfigForSettingChanges->ListenSettingsChanges(); - iCRWatchForVOverScan->Watch(); + iCRWatchForVOverScan->Watch(); } } else if ( EPDEIfAccessoryControlEventConnectFailed == aEvent ) @@ -952,10 +960,17 @@ iTVOutConfigForHDMI.Enable(); } } - else if ( EIfTVOutConfigEventSettingsChangesListenStarted ) + else if ( EIfTVOutConfigEventSettingsChangesListenStarted == aEvent ) { INFO( "Event: EIfTVOutConfigEventSettingsChangesListenStarted" ); // Everything is OK. Stay in the same state. + // Should not miss the cenrep value change + TInt newOverScanValue = 0; + iCRWatchForVOverScan->GetCurrentValue(newOverScanValue); + if( iVOverscanValue != newOverScanValue ) + { + Input( EPDEIfCentralRepositoryWatch, EPDEIfCentralRepositoryWatchEventKeyChanged ); + } } else if ( EIfTVOutConfigEventSettingsChangesListenFailed == aEvent ) { @@ -981,42 +996,40 @@ if ( EPDEIfCentralRepositoryWatchEventKeyChanged == aEvent ) { INFO( "Event: EPDEIfCentralRepositoryWatchEventKeyChanged" ); - + // Get the available config THdmiDviTimings curConfig; iTVOutConfigForHDMI.GetTvOutConfig()->GetConfig( curConfig ); if( (TTvSettings::EHDMI == curConfig.iConnector) && (!curConfig.iUnderscanEnabled) ) - { - // Clear the available config - ClearAvailableTvOutConfig(); - + { + TInt retVal = iEDIDHandler.SetVideoParameters(); if ( KErrNone != retVal ) { INFO( "Going to state since video parameter setting failed!" ); iTVOutConfigForSettingChanges->Cancel(); iCRWatchForVOverScan->Cancel(); - iHDMICableStatusFSM.Transit( EHDMICableStateRejected ); + iSubState = ESubStateIdlingDisable; + iTVOutConfigForHDMI.Disable(); } else { + // Update the current overscan value + iEDIDHandler.GetCurrentOverscanValue( iHOverscanValue, iVOverscanValue ); + TFSMEventId event = iTVOutConfigForHDMI.ListenHDMICableStatusIfNoMissedEvents(); if ( EIfTVOutConfigEventCableDisconnected == event ) { INFO( "Retreating back to since cable was disconnected while not listening!" ); iTVOutConfigForSettingChanges->Cancel(); iCRWatchForVOverScan->Cancel(); - iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); - } - else - { - iOverScanSettingsChanged = ETrue; - iSubState = ESubStateWaitForSettingsChanged; + iSubState = ESubStateIdlingDisable; + iTVOutConfigForHDMI.Disable(); } } - } + } } else { @@ -1053,44 +1066,68 @@ if ( EIfTVOutConfigEventCableDisconnected == event ) { INFO( "Retreating back to since cable was disconnected while WF setting changes!" ); + + // Stop listening Copy Protection status + iTVOutConfigForCopyProtect->Cancel(); + // Stop listen setting changes iTVOutConfigForSettingChanges->Cancel(); - iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); + iCRWatchForVOverScan->Cancel(); + + if( iTVOutConfigForHDMI.GetTvOutConfig()->Enabled() ) + { + iSubState = ESubStateIdlingDisable; + iTVOutConfigForHDMI.Disable(); + } + else + { + iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); + } } } else if ( EIfTVOutConfigEventCableDisconnected == aEvent ) { INFO( "Event: EIfTVOutConfigEventCableDisconnected" ); INFO( "Retreating back to since cable was disconnected while WF setting changes!" ); - iTVOutConfigForSettingChanges->Cancel(); - iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); + // Stop listening Copy Protection status + iTVOutConfigForCopyProtect->Cancel(); + // Stop listen setting changes + iTVOutConfigForSettingChanges->Cancel(); + iCRWatchForVOverScan->Cancel(); + + if( iTVOutConfigForHDMI.GetTvOutConfig()->Enabled() ) + { + iSubState = ESubStateIdlingDisable; + iTVOutConfigForHDMI.Disable(); + } + else + { + iHDMICableStatusFSM.Transit( EHDMICableStateIdle ); + } } else if ( EIfTVOutConfigEventSettingsChanged == aEvent ) { INFO( "Event: EIfTVOutConfigEventSettingsChanged" ); - if( iOverScanSettingsChanged ) - { - if ( iTVOutConfigForHDMI.GetTvOutConfig()->Enabled() ) - { - iSubState = ESubStateResettingDisable; - iTVOutConfigForHDMI.Disable(); - } - else - { - iSubState = ESubStateResettingEnable; - iTVOutConfigForHDMI.Enable(); - } - } - else - { - iSubState = ESubStateEnable; - iTVOutConfigForHDMI.Enable(); - } + iSubState = ESubStateEnable; + iTVOutConfigForHDMI.Enable(); } else if ( EIfTVOutConfigEventSettingsChangesListenFailed == aEvent ) { INFO( "Event: EIfTVOutConfigEventSettingsChangesListenFailed" ); INFO( "Going to state since setting changes listening failed!" ); - iHDMICableStatusFSM.Transit( EHDMICableStateRejected ); + // Stop listening Copy Protection status + iTVOutConfigForCopyProtect->Cancel(); + // Stop listen setting changes + iCRWatchForVOverScan->Cancel(); + + if( iTVOutConfigForHDMI.GetTvOutConfig()->Enabled() ) + { + iSubState = ESubStateIdlingDisable; + iTVOutConfigForHDMI.Disable(); + } + else + { + iHDMICableStatusFSM.Transit( EHDMICableStateRejected ); + } } else { diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/pluggeddisplay/pluggeddisplayengine/src/tvoutconfigforcomposite.cpp --- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/tvoutconfigforcomposite.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/tvoutconfigforcomposite.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -189,6 +189,48 @@ } // ----------------------------------------------------------------------------- +// CTVOutConfigForComposite::UpdateOverscanValues +// ----------------------------------------------------------------------------- +// +TBool CTVOutConfigForComposite::UpdateOverscanValues() + { + FUNC_LOG; + + // Overscan from cenrep + TInt hOverscan = 0; + TInt vOverscan = 0; + TInt err = KErrNone; + TBool valChanged = EFalse; + + // Horizontal + err = iRepository->Get( KSettingsTvoutHorizontalOverscan, hOverscan ); + if( err != KErrNone ) + { + hOverscan = 0; + } + + // Vertical + err = iRepository->Get( KSettingsTvoutVerticalOverscan, vOverscan ); + if( err != KErrNone ) + { + vOverscan = 0; + } + + if( (iHOverscan != hOverscan) || (iVOverscan != vOverscan) ) + { + valChanged = ETrue; + } + + // Update overscan values + iHOverscan = hOverscan; + iVOverscan = vOverscan; + + INFO_3( "Overscan Values: %d,%d Changed:%d", iHOverscan, iVOverscan, valChanged ); + + return valChanged; + } + +// ----------------------------------------------------------------------------- // CTVOutConfigForComposite::InitializeDriverL // ----------------------------------------------------------------------------- // @@ -216,20 +258,9 @@ ConvertFlickerFilter( value ); settings.iFlickerFilter = ( TTvSettings::TFlickerFilterType ) value; - TInt hOverscan = 0; - TInt vOverscan = 0; - err = iRepository->Get( KSettingsTvoutHorizontalOverscan, hOverscan ); - if( err != KErrNone ) - { - hOverscan = 0; - } - err = iRepository->Get( KSettingsTvoutVerticalOverscan, vOverscan ); - if( err != KErrNone ) - { - vOverscan = 0; - } - settings.iHorizontalOverScan = hOverscan; - settings.iVerticalOverScan = vOverscan; + // Update overscan + settings.iHorizontalOverScan = iHOverscan; + settings.iVerticalOverScan = iVOverscan; // Update the PAR UpdatePixelAspectRatio( settings ); diff -r f7565e9c9ce8 -r c87e5f80c17d accessoryservices/remotecontrolfw/client/intermediate/src/interfaceselector.cpp --- a/accessoryservices/remotecontrolfw/client/intermediate/src/interfaceselector.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/accessoryservices/remotecontrolfw/client/intermediate/src/interfaceselector.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -103,10 +103,11 @@ } CleanupStack::PopAndDestroy(currentHeap); - iLock = new (ELeave) RNestableLock(); - CleanupStack::PushL(iLock); - LEAVEIFERRORL(iLock->CreateLocal()); - CleanupStack::Pop(iLock); + RNestableLock* lock = new (ELeave) RNestableLock; + CleanupStack::PushL(lock); + LEAVEIFERRORL(lock->CreateLocal()); + CleanupStack::Pop(lock); + iLock = lock; } CRemConInterfaceSelector::CRemConInterfaceSelector() @@ -441,15 +442,15 @@ void CRemConInterfaceSelector::BulkSessionConnectL() { LOG_FUNC - iBulkSession = new(ELeave)RRemConBulk(); - CleanupStack::PushL(iBulkSession); - LEAVEIFERRORL(iBulkSession->Connect()); - CleanupStack::Pop(iBulkSession); - CleanupCloseDeleteAndNullPushL(reinterpret_cast(&iBulkSession)); + RRemConBulk* bulkSession = new(ELeave)RRemConBulk; + CleanupStack::PushL(bulkSession); + LEAVEIFERRORL(bulkSession->Connect()); + CleanupClosePushL(*bulkSession); RCIS_VERBOSE_ASSERT(iBulkReceiver, ERemConIfSelInternalError); - iBulkReceiver->InitialiseL(*iBulkSession, iBulkMaxDataLength); - CleanupStack::Pop(&iBulkSession); + iBulkReceiver->InitialiseL(*bulkSession, iBulkMaxDataLength); + CleanupStack::Pop(2, bulkSession); + iBulkSession = bulkSession; } /** diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/PlatformEnv/rom/PlatformEnv.iby --- a/commonservices/PlatformEnv/rom/PlatformEnv.iby Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/PlatformEnv/rom/PlatformEnv.iby Thu Jul 01 11:20:10 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2002-2010 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" @@ -22,10 +22,12 @@ file=ABI_DIR\BUILD_DIR\PlatformEnv.dll SHARED_LIB_DIR\PlatformEnv.dll #ifdef FF_USE_MASS_STORAGE_CONFIG -patchdata PlatformEnv.dll@KDriveInfoDefaultRemovableMassStorage 5 // EDriveF -patchdata PlatformEnv.dll@KDriveInfoLogicallyRemovableDrive1 4 // EDriveE +patchdata PlatformEnv.dll@KDriveInfoDefaultRemovableMassStorage FF_DEFAULT_REMOVABLE_MASS_STORAGE +patchdata PlatformEnv.dll@KDriveInfoLogicallyRemovableDrive1 FF_LOGICALLY_REMOVABLE_DRIVE1 #endif // FF_USE_MASS_STORAGE_CONFIG +patchdata PlatformEnv.dll@KDriveInfoUsbDrivesStart FF_USB_DRIVE_START + file=ABI_DIR\BUILD_DIR\disknotifyhandler.dll SHARED_LIB_DIR\disknotifyhandler.dll file=ABI_DIR\BUILD_DIR\sysversioninfo.dll SHARED_LIB_DIR\sysversioninfo.dll file=ABI_DIR\BUILD_DIR\platformver.dll SHARED_LIB_DIR\platformver.dll diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/activitymanager/test/tef/group/te_activitymanagerteftests.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonservices/activitymanager/test/tef/group/te_activitymanagerteftests.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,28 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"activitymanagerteftests EN"} + +; Vendor name +: "activitymanagerteftests" + +"\sf\os\devicesrv\commonservices\activitymanager\test\tef\group\te_activitymanagerteftests.script"-"c:\devicesrv\activitymanagertest\te_activitymanagerteftests.script" diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/commonengineresources/data/gprserr.ra --- a/commonservices/commonengineresources/data/gprserr.ra Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/commonengineresources/data/gprserr.ra Thu Jul 01 11:20:10 2010 +0300 @@ -1,238 +1,238 @@ -/* -* Copyright (c) 2002 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: -* GPRS errors -* -*/ - - -RESOURCE ARRAY r_error_res_gprs_error - { - items= - { - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4135 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_and_non_gprs_services_not_allowed; // -4136 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_temporary_net_prob; // -4137 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_temporary_net_prob; // -4138 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - text=r_error_res_gprs_temporary_net_prob; // -4144 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4145 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - text=r_error_res_gprs_unspecified_err; // -4153 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_insufficient_resources; // -4154 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_missingor_unknownapn; // -4155 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4156 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_user_authentication_failure; // -4157 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_temporary_net_prob; // -4158 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_not_subscribed; // -4159 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4161 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4162 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_unspecified_err; // -4163 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; // -4164 - }, - SINGLE_ERROR - { - text=r_error_res_gprs_unspecified_err; // -4165 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -4167 - }, - SINGLE_ERROR - { - flags=ETextResolverBlankErrorFlag; // -4168 - } - }; - } - - -RESOURCE TBUF r_error_res_gprs_and_non_gprs_services_not_allowed { buf = qtn_err_gprs_services_not_allowed; } -RESOURCE TBUF r_error_res_gprs_temporary_net_prob { buf = qtn_err_gprs_temporary_netw_prob; } -RESOURCE TBUF r_error_res_gprs_llc_or_sndcp_failure { buf = qtn_err_gprs_llc_or_sndcp_failure; } -RESOURCE TBUF r_error_res_gprs_insufficient_resources { buf = qtn_err_gprs_insuff_resources; } -RESOURCE TBUF r_error_res_gprs_missingor_unknownapn { buf = qtn_err_gprs_missingor_unknownapn; } -RESOURCE TBUF r_error_res_gprs_unknownpdp_address { buf = qtn_err_gprs_unknownpdp_address; } -RESOURCE TBUF r_error_res_gprs_user_authentication_failure { buf = qtn_err_gprs_user_auth_failure; } -RESOURCE TBUF r_error_res_gprs_unspecified_err { buf = qtn_err_gprs_unspecified_err;} -RESOURCE TBUF r_error_res_gprs_no_connection { buf = qtn_err_gprs_no_connection;} -RESOURCE TBUF r_error_res_gprs_not_subscribed { buf = qtn_err_gprs_unsubcribed;} - - -RESOURCE ARRAY r_error_res_gprs_error2 - { - items= - { - SINGLE_ERROR - { - text=r_error_res_port_alr_loaned; // -2013 - }, - - SINGLE_ERROR - { - text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2014 - }, - - SINGLE_ERROR - { - text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2015 - }, - - SINGLE_ERROR - { - text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2016 - }, - - SINGLE_ERROR - { - text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2017 - }, - - SINGLE_ERROR - { - text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2018 - }, - - SINGLE_ERROR - { - text=r_error_res_port_alr_loaned; // -2019 - }, - - - SINGLE_ERROR - { - text=r_error_res_conn_already_active; // -2020 - } - }; - } - -RESOURCE TBUF r_error_res_port_alr_loaned { buf = qtn_ics_note_close_conn_try_again; } -RESOURCE TBUF r_error_res_conn_already_active { buf = qtn_gprs_err_call_in_progress; } -RESOURCE TBUF r_err_os_general { buf = qtn_err_os_general;} - -RESOURCE ARRAY r_error_res_gprs_error3 - { - items= - { - SINGLE_ERROR - { - text=r_error_res_gprs_no_connection; // -3609 - } - }; - } - -// End of File +/* +* Copyright (c) 2002 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: +* GPRS errors +* +*/ + + +RESOURCE ARRAY r_error_res_gprs_error + { + items= + { + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4135 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_and_non_gprs_services_not_allowed; // -4136 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_temporary_net_prob; // -4137 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_temporary_net_prob; // -4138 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + text=r_error_res_gprs_temporary_net_prob; // -4144 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4145 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + text=r_error_res_gprs_unspecified_err; // -4153 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_insufficient_resources; // -4154 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_missingor_unknownapn; // -4155 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4156 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_user_authentication_failure; // -4157 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_temporary_net_prob; // -4158 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_not_subscribed; // -4159 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4161 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4162 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_unspecified_err; // -4163 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; // -4164 + }, + SINGLE_ERROR + { + text=r_error_res_gprs_unspecified_err; // -4165 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -4167 + }, + SINGLE_ERROR + { + flags=ETextResolverBlankErrorFlag; // -4168 + } + }; + } + + +RESOURCE TBUF r_error_res_gprs_and_non_gprs_services_not_allowed { buf = qtn_err_gprs_services_not_allowed; } +RESOURCE TBUF r_error_res_gprs_temporary_net_prob { buf = qtn_err_gprs_temporary_netw_prob; } +RESOURCE TBUF r_error_res_gprs_llc_or_sndcp_failure { buf = qtn_err_gprs_llc_or_sndcp_failure; } +RESOURCE TBUF r_error_res_gprs_insufficient_resources { buf = qtn_err_gprs_insuff_resources; } +RESOURCE TBUF r_error_res_gprs_missingor_unknownapn { buf = qtn_err_gprs_missingor_unknownapn; } +RESOURCE TBUF r_error_res_gprs_unknownpdp_address { buf = qtn_err_gprs_unknownpdp_address; } +RESOURCE TBUF r_error_res_gprs_user_authentication_failure { buf = qtn_err_gprs_user_auth_failure; } +RESOURCE TBUF r_error_res_gprs_unspecified_err { buf = qtn_err_gprs_unspecified_err;} +RESOURCE TBUF r_error_res_gprs_no_connection { buf = qtn_err_gprs_no_connection;} +RESOURCE TBUF r_error_res_gprs_not_subscribed { buf = qtn_err_gprs_unsubcribed;} + + +RESOURCE ARRAY r_error_res_gprs_error2 + { + items= + { + SINGLE_ERROR + { + text=r_error_res_port_alr_loaned; // -2013 + }, + + SINGLE_ERROR + { + text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2014 + }, + + SINGLE_ERROR + { + text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2015 + }, + + SINGLE_ERROR + { + text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2016 + }, + + SINGLE_ERROR + { + text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2017 + }, + + SINGLE_ERROR + { + text=r_err_os_general;flags=ETextResolverUnknownErrorFlag; // -2018 + }, + + SINGLE_ERROR + { + text=r_error_res_port_alr_loaned; // -2019 + }, + + + SINGLE_ERROR + { + text=r_error_res_conn_already_active; // -2020 + } + }; + } + +RESOURCE TBUF r_error_res_port_alr_loaned { buf = qtn_ics_note_close_conn_try_again; } +RESOURCE TBUF r_error_res_conn_already_active { buf = qtn_gprs_err_call_in_progress; } +RESOURCE TBUF r_err_os_general { buf = qtn_err_os_general;} + +RESOURCE ARRAY r_error_res_gprs_error3 + { + items= + { + SINGLE_ERROR + { + text=r_error_res_gprs_no_connection; // -3609 + } + }; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/commonengineresources/data/mmserr.ra --- a/commonservices/commonengineresources/data/mmserr.ra Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/commonengineresources/data/mmserr.ra Thu Jul 01 11:20:10 2010 +0300 @@ -1,248 +1,248 @@ -/* -* Copyright (c) 2002 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: -* MMS errors -* -*/ - - -RESOURCE ARRAY r_error_res_mms_error - { - items= - { - SINGLE_ERROR - { // KMmsGeneralError // -11000 - text = r_mms_commom_error; - }, - SINGLE_ERROR - { // KMmsErrorNoWAPAccessPoint // -11001 - flags = ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorUrisDontMatch // -11002 - text = r_KMmsErrorUrisDontMatch; - }, - SINGLE_ERROR - { // KMmsErrorNoIAP1 // -11003 - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorNoIAP2 // -11004 - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorAP1Invalid // -11005 - text = r_KMmsErrorAP1Invalid; - }, - SINGLE_ERROR - { // KMmsErrorAP2Invalid // -11006 - text = r_KMmsErrorAP2Invalid; - }, - SINGLE_ERROR - { // KMmsErrorMessageTooBig // -11007 - text = r_KMmsErrorMessageTooBig; - }, - SINGLE_ERROR - { // KMmsErrorUnknownMessageType // -11008 - text = r_mms_commom_error; - }, - SINGLE_ERROR - { // KMmsErrorDiskSpaceLow // -11009 - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorStatusUnspecified // -11010 - text = r_KMmsErrorStatusUnspecified; - }, - SINGLE_ERROR - { // KMmsErrorStatusServiceDenied // -11011 - text = r_KMmsErrorStatusServiceDenied; - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorStatusMessageFormatCorrupt // -11012 - text = r_KMmsErrorStatusMessageFormatCorrupt; - }, - SINGLE_ERROR - { // KMmsErrorStatusMessageAddressUnresolved // -11013 - text = r_KMmsErrorStatusMessageAddressUnresolved; - }, - SINGLE_ERROR - { // KMmsErrorStatusMessageNotFound // -11014 - text = r_KMmsErrorStatusMessageNotFound; - }, - SINGLE_ERROR - { // KMmsErrorStatusNetworkProblem // -11015 - text = r_KMmsErrorStatusNetworkProblem; - }, - SINGLE_ERROR - { // KMmsErrorStatusContentNotAccepted // -11016 - text = r_KMmsErrorStatusContentNotAccepted; - }, - SINGLE_ERROR - { // KMmsErrorStatusUnsupportedMessage // -11017 - text = r_KMmsErrorStatusContentNotAccepted; - }, - SINGLE_ERROR - { // KMmsErrorHTTPConfiguration // -11018 - text = r_KMmsErrorHTTPConfiguration; - }, - SINGLE_ERROR - { // KMmsErrorHTTPNotFound // -11019 - text = r_KMmsErrorHTTPNotFound; - }, - SINGLE_ERROR - { // KMmsErrorHTTPServerDown // -11020 - text = r_KMmsErrorHTTPServerDown; - }, - SINGLE_ERROR - { // KMmsErrorWapStack // -11021 - text = r_mms_commom_error; - }, - SINGLE_ERROR - { // KMmsErrorSessionAlreadyOpen // -11022 - text = r_mms_commom_error; - }, - SINGLE_ERROR - { // KMmsErrorSessionNotOpen // -11023 - text = r_mms_commom_error; - }, - SINGLE_ERROR - { // KMmsErrorBearerSuspended // -11024 - text = r_KMmsErrorNetwork; - }, - SINGLE_ERROR - { // KMmsErrorTimeout // -11025 - text = r_KMmsErrorNetwork; - }, - SINGLE_ERROR - { // KMmsErrorSuspendTimeout // -11026 - text = r_KMmsErrorNetwork; - }, - SINGLE_ERROR - { // KMmsErrorUnknownRespFromGw // -11027 - text = r_KMmsErrorNetwork; - }, - SINGLE_ERROR - { // KMmsErrorTransferCancelled // -11028 - text = r_KMmsErrorTransferCancelled; - }, - SINGLE_ERROR - { // KMmsErrorBufferEmpty // -11029 - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorConnectionAlreadyActive // -11030 - text = r_error_res_port_alr_loaned; // from GPRSErr.RA, general Close existing connections text - }, - SINGLE_ERROR - { // KMmsErrorNoWapAp1 // -11031 - text = r_KMmsErrorHTTPConfiguration; - }, - SINGLE_ERROR - { // KMmsErrorNoURI1 // -11032 - text = r_KMmsErrorHTTPConfiguration; - }, - SINGLE_ERROR - { // KMmsErrorNoURI2 // -11033 - text = r_KMmsErrorHTTPConfiguration; - }, - SINGLE_ERROR - { // KMmsErrorNotHomeNetwork // -11034 - text = r_err_sms_check_oper_s; // from SMSErr.ra - }, - SINGLE_ERROR - { // KMmsErrorInvalidSettings // -11035 - text = r_KMmsErrorHTTPConfiguration; - }, - SINGLE_ERROR - { // KMmsErrorEMRUExceeded // -11036 - flags=ETextResolverBlankErrorFlag; - }, - SINGLE_ERROR - { // KMmsErrorCouldNotConnect // -11037 - text=r_error_res_socket_host_unreach; - }, - SINGLE_ERROR - { // KMmsErrorRemoveDRM - flags = ETextResolverBlankErrorFlag; // -11038 - }, - SINGLE_ERROR - { // KMmsErrorStatusReplyChargingLimitationsNotMet - text = r_mms_commom_error; // -11039 - }, - SINGLE_ERROR - { // KMmsErrorStatusReplyChargingRequestNotAccepted - text = r_mms_commom_error; // -11040 - }, - SINGLE_ERROR - { // KMmsErrorStatusReplyChargingForwardingDenied - text = r_mms_commom_error; // -11041 - }, - SINGLE_ERROR - { // KMmsErrorStatusReplyChargingNotSupported - text = r_mms_commom_error; // -11042 - }, - SINGLE_ERROR - { // KMmsErrorStatusContentUnsupported - text = r_qtn_err_mms_not_supported; // -11043 - }, - SINGLE_ERROR - { // KMmsErrorStatusTransientAddressUnresolved - text = r_KMmsErrorNetwork; // -11044 - }, - SINGLE_ERROR - { // KMmsErrorStatusTransientMessageNotFound - text = r_KMmsErrorHTTPNotFound; // -11045 - }, - SINGLE_ERROR - { // KMmsErrorStatusPermanentFailure - text = r_mms_commom_error; // -11046 - }, - SINGLE_ERROR - { // KMmsErrorStatusTransientFailure - text = r_mms_commom_error; // -11047 - }, - SINGLE_ERROR - { // KMmsErrorOfflineMode - flags = ETextResolverBlankErrorFlag; // -11048 - }, - SINGLE_ERROR - { // KMmsErrorHTTPClientError - text = r_KMmsErrorStatusContentNotAccepted; // -11049 - } - }; - } - - - -RESOURCE TBUF r_mms_commom_error { buf = qtn_err_mms_common; } -RESOURCE TBUF r_KMmsErrorUrisDontMatch { buf = qtn_err_mms_uri_not_same; } // MMS_ERROR_BASE - 2, -RESOURCE TBUF r_KMmsErrorAP1Invalid { buf = qtn_err_mms_ap1_invalid; } // MMS_ERROR_BASE - 5, -RESOURCE TBUF r_KMmsErrorAP2Invalid { buf = qtn_err_mms_ap2_invalid; } // MMS_ERROR_BASE - 6, -RESOURCE TBUF r_KMmsErrorMessageTooBig { buf = qtn_err_mms_msg_big_n_snd; } // MMS_ERROR_BASE - 7, -RESOURCE TBUF r_KMmsErrorStatusUnspecified { buf = qtn_err_mms_msg_not_acpt_c; } // MMS_ERROR_BASE - 10, -RESOURCE TBUF r_KMmsErrorStatusServiceDenied { buf = "MMS ERROR (hidden)"; } // MMS_ERROR_BASE - 11, -RESOURCE TBUF r_KMmsErrorStatusMessageFormatCorrupt { buf = qtn_err_mms_msg_not_acpt_mmsc; } // MMS_ERROR_BASE - 12, -RESOURCE TBUF r_KMmsErrorStatusMessageAddressUnresolved { buf = qtn_err_mms_msg_add_invalid; } // MMS_ERROR_BASE - 13, -RESOURCE TBUF r_KMmsErrorStatusMessageNotFound { buf = qtn_err_mms_msg_not_found; } // MMS_ERROR_BASE - 14, -RESOURCE TBUF r_KMmsErrorStatusNetworkProblem { buf = qtn_err_mms_ntwrk_e_msg_n_snd; } // MMS_ERROR_BASE - 15, -RESOURCE TBUF r_KMmsErrorStatusContentNotAccepted { buf = qtn_err_mms_msg_not_acpt_mmsc; } // MMS_ERROR_BASE - 16, -RESOURCE TBUF r_KMmsErrorHTTPConfiguration { buf = qtn_err_mms_conf_err_ap_stng; } // MMS_ERROR_BASE - 18, // 1XX, 3XX -RESOURCE TBUF r_KMmsErrorHTTPNotFound { buf = qtn_err_mms_msg_not_found; } // MMS_ERROR_BASE - 19, // 4XX -RESOURCE TBUF r_KMmsErrorHTTPServerDown { buf = qtn_err_mms_mmsc_not_respnd; } // MMS_ERROR_BASE - 20, // 5XX -RESOURCE TBUF r_KMmsErrorNetwork { buf = qtn_err_mms_netwrk_error; } // MMS_ERROR_BASE - 24, -RESOURCE TBUF r_KMmsErrorTransferCancelled { buf = qtn_err_mms_user_cancel_oper; } // MMS_ERROR_BASE - 28 - -// End of File +/* +* Copyright (c) 2002 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: +* MMS errors +* +*/ + + +RESOURCE ARRAY r_error_res_mms_error + { + items= + { + SINGLE_ERROR + { // KMmsGeneralError // -11000 + text = r_mms_commom_error; + }, + SINGLE_ERROR + { // KMmsErrorNoWAPAccessPoint // -11001 + flags = ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorUrisDontMatch // -11002 + text = r_KMmsErrorUrisDontMatch; + }, + SINGLE_ERROR + { // KMmsErrorNoIAP1 // -11003 + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorNoIAP2 // -11004 + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorAP1Invalid // -11005 + text = r_KMmsErrorAP1Invalid; + }, + SINGLE_ERROR + { // KMmsErrorAP2Invalid // -11006 + text = r_KMmsErrorAP2Invalid; + }, + SINGLE_ERROR + { // KMmsErrorMessageTooBig // -11007 + text = r_KMmsErrorMessageTooBig; + }, + SINGLE_ERROR + { // KMmsErrorUnknownMessageType // -11008 + text = r_mms_commom_error; + }, + SINGLE_ERROR + { // KMmsErrorDiskSpaceLow // -11009 + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorStatusUnspecified // -11010 + text = r_KMmsErrorStatusUnspecified; + }, + SINGLE_ERROR + { // KMmsErrorStatusServiceDenied // -11011 + text = r_KMmsErrorStatusServiceDenied; + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorStatusMessageFormatCorrupt // -11012 + text = r_KMmsErrorStatusMessageFormatCorrupt; + }, + SINGLE_ERROR + { // KMmsErrorStatusMessageAddressUnresolved // -11013 + text = r_KMmsErrorStatusMessageAddressUnresolved; + }, + SINGLE_ERROR + { // KMmsErrorStatusMessageNotFound // -11014 + text = r_KMmsErrorStatusMessageNotFound; + }, + SINGLE_ERROR + { // KMmsErrorStatusNetworkProblem // -11015 + text = r_KMmsErrorStatusNetworkProblem; + }, + SINGLE_ERROR + { // KMmsErrorStatusContentNotAccepted // -11016 + text = r_KMmsErrorStatusContentNotAccepted; + }, + SINGLE_ERROR + { // KMmsErrorStatusUnsupportedMessage // -11017 + text = r_KMmsErrorStatusContentNotAccepted; + }, + SINGLE_ERROR + { // KMmsErrorHTTPConfiguration // -11018 + text = r_KMmsErrorHTTPConfiguration; + }, + SINGLE_ERROR + { // KMmsErrorHTTPNotFound // -11019 + text = r_KMmsErrorHTTPNotFound; + }, + SINGLE_ERROR + { // KMmsErrorHTTPServerDown // -11020 + text = r_KMmsErrorHTTPServerDown; + }, + SINGLE_ERROR + { // KMmsErrorWapStack // -11021 + text = r_mms_commom_error; + }, + SINGLE_ERROR + { // KMmsErrorSessionAlreadyOpen // -11022 + text = r_mms_commom_error; + }, + SINGLE_ERROR + { // KMmsErrorSessionNotOpen // -11023 + text = r_mms_commom_error; + }, + SINGLE_ERROR + { // KMmsErrorBearerSuspended // -11024 + text = r_KMmsErrorNetwork; + }, + SINGLE_ERROR + { // KMmsErrorTimeout // -11025 + text = r_KMmsErrorNetwork; + }, + SINGLE_ERROR + { // KMmsErrorSuspendTimeout // -11026 + text = r_KMmsErrorNetwork; + }, + SINGLE_ERROR + { // KMmsErrorUnknownRespFromGw // -11027 + text = r_KMmsErrorNetwork; + }, + SINGLE_ERROR + { // KMmsErrorTransferCancelled // -11028 + text = r_KMmsErrorTransferCancelled; + }, + SINGLE_ERROR + { // KMmsErrorBufferEmpty // -11029 + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorConnectionAlreadyActive // -11030 + text = r_error_res_port_alr_loaned; // from GPRSErr.RA, general Close existing connections text + }, + SINGLE_ERROR + { // KMmsErrorNoWapAp1 // -11031 + text = r_KMmsErrorHTTPConfiguration; + }, + SINGLE_ERROR + { // KMmsErrorNoURI1 // -11032 + text = r_KMmsErrorHTTPConfiguration; + }, + SINGLE_ERROR + { // KMmsErrorNoURI2 // -11033 + text = r_KMmsErrorHTTPConfiguration; + }, + SINGLE_ERROR + { // KMmsErrorNotHomeNetwork // -11034 + text = r_err_sms_check_oper_s; // from SMSErr.ra + }, + SINGLE_ERROR + { // KMmsErrorInvalidSettings // -11035 + text = r_KMmsErrorHTTPConfiguration; + }, + SINGLE_ERROR + { // KMmsErrorEMRUExceeded // -11036 + flags=ETextResolverBlankErrorFlag; + }, + SINGLE_ERROR + { // KMmsErrorCouldNotConnect // -11037 + text=r_error_res_socket_host_unreach; + }, + SINGLE_ERROR + { // KMmsErrorRemoveDRM + flags = ETextResolverBlankErrorFlag; // -11038 + }, + SINGLE_ERROR + { // KMmsErrorStatusReplyChargingLimitationsNotMet + text = r_mms_commom_error; // -11039 + }, + SINGLE_ERROR + { // KMmsErrorStatusReplyChargingRequestNotAccepted + text = r_mms_commom_error; // -11040 + }, + SINGLE_ERROR + { // KMmsErrorStatusReplyChargingForwardingDenied + text = r_mms_commom_error; // -11041 + }, + SINGLE_ERROR + { // KMmsErrorStatusReplyChargingNotSupported + text = r_mms_commom_error; // -11042 + }, + SINGLE_ERROR + { // KMmsErrorStatusContentUnsupported + text = r_qtn_err_mms_not_supported; // -11043 + }, + SINGLE_ERROR + { // KMmsErrorStatusTransientAddressUnresolved + text = r_KMmsErrorNetwork; // -11044 + }, + SINGLE_ERROR + { // KMmsErrorStatusTransientMessageNotFound + text = r_KMmsErrorHTTPNotFound; // -11045 + }, + SINGLE_ERROR + { // KMmsErrorStatusPermanentFailure + text = r_mms_commom_error; // -11046 + }, + SINGLE_ERROR + { // KMmsErrorStatusTransientFailure + text = r_mms_commom_error; // -11047 + }, + SINGLE_ERROR + { // KMmsErrorOfflineMode + flags = ETextResolverBlankErrorFlag; // -11048 + }, + SINGLE_ERROR + { // KMmsErrorHTTPClientError + text = r_KMmsErrorStatusContentNotAccepted; // -11049 + } + }; + } + + + +RESOURCE TBUF r_mms_commom_error { buf = qtn_err_mms_common; } +RESOURCE TBUF r_KMmsErrorUrisDontMatch { buf = qtn_err_mms_uri_not_same; } // MMS_ERROR_BASE - 2, +RESOURCE TBUF r_KMmsErrorAP1Invalid { buf = qtn_err_mms_ap1_invalid; } // MMS_ERROR_BASE - 5, +RESOURCE TBUF r_KMmsErrorAP2Invalid { buf = qtn_err_mms_ap2_invalid; } // MMS_ERROR_BASE - 6, +RESOURCE TBUF r_KMmsErrorMessageTooBig { buf = qtn_err_mms_msg_big_n_snd; } // MMS_ERROR_BASE - 7, +RESOURCE TBUF r_KMmsErrorStatusUnspecified { buf = qtn_err_mms_msg_not_acpt_c; } // MMS_ERROR_BASE - 10, +RESOURCE TBUF r_KMmsErrorStatusServiceDenied { buf = "MMS ERROR (hidden)"; } // MMS_ERROR_BASE - 11, +RESOURCE TBUF r_KMmsErrorStatusMessageFormatCorrupt { buf = qtn_err_mms_msg_not_acpt_mmsc; } // MMS_ERROR_BASE - 12, +RESOURCE TBUF r_KMmsErrorStatusMessageAddressUnresolved { buf = qtn_err_mms_msg_add_invalid; } // MMS_ERROR_BASE - 13, +RESOURCE TBUF r_KMmsErrorStatusMessageNotFound { buf = qtn_err_mms_msg_not_found; } // MMS_ERROR_BASE - 14, +RESOURCE TBUF r_KMmsErrorStatusNetworkProblem { buf = qtn_err_mms_ntwrk_e_msg_n_snd; } // MMS_ERROR_BASE - 15, +RESOURCE TBUF r_KMmsErrorStatusContentNotAccepted { buf = qtn_err_mms_msg_not_acpt_mmsc; } // MMS_ERROR_BASE - 16, +RESOURCE TBUF r_KMmsErrorHTTPConfiguration { buf = qtn_err_mms_conf_err_ap_stng; } // MMS_ERROR_BASE - 18, // 1XX, 3XX +RESOURCE TBUF r_KMmsErrorHTTPNotFound { buf = qtn_err_mms_msg_not_found; } // MMS_ERROR_BASE - 19, // 4XX +RESOURCE TBUF r_KMmsErrorHTTPServerDown { buf = qtn_err_mms_mmsc_not_respnd; } // MMS_ERROR_BASE - 20, // 5XX +RESOURCE TBUF r_KMmsErrorNetwork { buf = qtn_err_mms_netwrk_error; } // MMS_ERROR_BASE - 24, +RESOURCE TBUF r_KMmsErrorTransferCancelled { buf = qtn_err_mms_user_cancel_oper; } // MMS_ERROR_BASE - 28 + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/commonengineresources/data/msgerr.ra --- a/commonservices/commonengineresources/data/msgerr.ra Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/commonengineresources/data/msgerr.ra Thu Jul 01 11:20:10 2010 +0300 @@ -1,72 +1,72 @@ -/* -* Copyright (c) 2002 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: -* -* -*/ - - -RESOURCE ARRAY r_error_res_msg_server_errors - { - items= - { - SINGLE_ERROR - { - text=r_KMsvMediaUnavailable; // -7000 - }, - SINGLE_ERROR - { - text=r_KMsvMediaIncorrect; // -7001 - }, - SINGLE_ERROR - { - text=r_KMsvMediaChanged; // -7002 - }, - SINGLE_ERROR - { - text=r_KMsvIndexBackupRestore ; // -7003 - }, - SINGLE_ERROR - { - text=r_KMsvIndexBackupRestore ; // -7004 - }, - SINGLE_ERROR - { - text=r_KMsvMessageDeleted; // -7005 - }, - SINGLE_ERROR - { - text= r_KMsvMtmDeinstalled; // -7006 - }, - SINGLE_ERROR - { - text=r_KMsvStartupFailed; // -7007 - }, - SINGLE_ERROR - { - text=r_KMsvServerTerminated; // -7008 - } - }; - } - -RESOURCE TBUF r_KMsvMediaUnavailable { buf = qtn_err_g_msg_no_disk; } -RESOURCE TBUF r_KMsvMediaIncorrect { buf = qtn_err_g_msg_wrong_disk; } -RESOURCE TBUF r_KMsvMediaChanged { buf = qtn_err_g_msg_inv_disk; } -RESOURCE TBUF r_KMsvIndexBackupRestore { buf = qtn_err_backup_restore; } -RESOURCE TBUF r_KMsvMessageDeleted { buf = qtn_err_message_deleted; } -RESOURCE TBUF r_KMsvMtmDeinstalled { buf = qtn_err_mtm_uninstalled; } -RESOURCE TBUF r_KMsvStartupFailed { buf = qtn_err_ms_startup_fail; } -RESOURCE TBUF r_KMsvServerTerminated { buf =qtn_err_ms_terminated; } - -// End of File +/* +* Copyright (c) 2002 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: +* +* +*/ + + +RESOURCE ARRAY r_error_res_msg_server_errors + { + items= + { + SINGLE_ERROR + { + text=r_KMsvMediaUnavailable; // -7000 + }, + SINGLE_ERROR + { + text=r_KMsvMediaIncorrect; // -7001 + }, + SINGLE_ERROR + { + text=r_KMsvMediaChanged; // -7002 + }, + SINGLE_ERROR + { + text=r_KMsvIndexBackupRestore ; // -7003 + }, + SINGLE_ERROR + { + text=r_KMsvIndexBackupRestore ; // -7004 + }, + SINGLE_ERROR + { + text=r_KMsvMessageDeleted; // -7005 + }, + SINGLE_ERROR + { + text= r_KMsvMtmDeinstalled; // -7006 + }, + SINGLE_ERROR + { + text=r_KMsvStartupFailed; // -7007 + }, + SINGLE_ERROR + { + text=r_KMsvServerTerminated; // -7008 + } + }; + } + +RESOURCE TBUF r_KMsvMediaUnavailable { buf = qtn_err_g_msg_no_disk; } +RESOURCE TBUF r_KMsvMediaIncorrect { buf = qtn_err_g_msg_wrong_disk; } +RESOURCE TBUF r_KMsvMediaChanged { buf = qtn_err_g_msg_inv_disk; } +RESOURCE TBUF r_KMsvIndexBackupRestore { buf = qtn_err_backup_restore; } +RESOURCE TBUF r_KMsvMessageDeleted { buf = qtn_err_message_deleted; } +RESOURCE TBUF r_KMsvMtmDeinstalled { buf = qtn_err_mtm_uninstalled; } +RESOURCE TBUF r_KMsvStartupFailed { buf = qtn_err_ms_startup_fail; } +RESOURCE TBUF r_KMsvServerTerminated { buf =qtn_err_ms_terminated; } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/commonengineresources/data/smserr.ra --- a/commonservices/commonengineresources/data/smserr.ra Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/commonengineresources/data/smserr.ra Thu Jul 01 11:20:10 2010 +0300 @@ -1,282 +1,282 @@ -/* -* Copyright (c) 2002 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: -* -* -*/ - - -RESOURCE ARRAY r_error_res_sms_error1 - { - items= - { - SINGLE_ERROR { text = r_err_sms_invalid_numb; } // KErrGsmSmsBase-1; - }; - } - -RESOURCE ARRAY r_error_res_sms_error2 - { - items= - { - SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-8; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // filling gap - SINGLE_ERROR { text = r_err_sms_check_oper_s; },// KErrGsmSmsBase-10; - SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-11; - - }; - } - -RESOURCE ARRAY r_error_res_sms_error3 - { - items= - { - SINGLE_ERROR { text = r_err_sms_common; } // KErrGsmSmsBase-17; - }; - } - -RESOURCE ARRAY r_error_res_sms_error4 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-21; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-22; - }; - } - -RESOURCE ARRAY r_error_res_sms_error5 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-27; - SINGLE_ERROR { text = r_err_sms_invalid_numb; }, // KErrGsmSmsBase-28; - SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-29; - SINGLE_ERROR { text = r_err_sms_invalid_numb; } // KErrGsmSmsBase-30; - }; - } - -RESOURCE ARRAY r_error_res_sms_error6 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-38; - }; - } - -RESOURCE ARRAY r_error_res_sms_error7 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-41; - SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-42; - }; - } - -RESOURCE ARRAY r_error_res_sms_error8 - { - items= - { - SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-47; - }; - } - -RESOURCE ARRAY r_error_res_sms_error9 - { - items= - { - SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-50; - }; - } - -RESOURCE ARRAY r_error_res_sms_error10 - { - items= - { - SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-69; - }; - } - -RESOURCE ARRAY r_error_res_sms_error11 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-81; - }; - } - -RESOURCE ARRAY r_error_res_sms_error12 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-95; - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-96; - SINGLE_ERROR { text = r_err_unab_to_del;}, // KErrGsmSmsBase-97; - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-98; - SINGLE_ERROR { text = r_err_unab_to_del;} // KErrGsmSmsBase-99; - }; - } - -RESOURCE ARRAY r_error_res_sms_error13 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-111; - }; - } - -RESOURCE ARRAY r_error_res_sms_error14 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; },// KErrGsmSmsBase-127; - SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-128; - SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-129; - SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-130; - }; - } - -RESOURCE ARRAY r_error_res_sms_error15 - { - items= - { - SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-143; - SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-144; - SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-145; - }; - } - -RESOURCE ARRAY r_error_res_sms_error16 - { - items= - { - SINGLE_ERROR { text = r_err_sms_common; }, // KErrGsmSmsBase-159; - SINGLE_ERROR { text = r_error_res_general; }, // KErrGsmSmsBase-160; - SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-161; - - }; - } - -RESOURCE ARRAY r_error_res_sms_error17 - { - items= - { - SINGLE_ERROR { text = r_err_sms_common; }, // KErrGsmSmsBase-175; - SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-176; - - }; - } - -RESOURCE ARRAY r_error_res_sms_error18 - { - items= - { - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-192; - SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-193; - SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-194; - SINGLE_ERROR { text = r_err_sms_invalid_numb; }, // KErrGsmSmsBase-195; - SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-196; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-197; - SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-198; - SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-199; - }; - } - -RESOURCE ARRAY r_error_res_sms_error19 - { - items= - { - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-208; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-209; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-210; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-211; - SINGLE_ERROR { text = r_err_sms_sim_busy; } // KErrGsmSmsBase-212; - }; - } - -RESOURCE ARRAY r_error_res_sms_error20 - { - items= - { - SINGLE_ERROR { text = r_err_sms_common; } // KErrGsmSmsBase-255; - }; - } - -RESOURCE ARRAY r_error_res_sms_error21 - { - items= - { - SINGLE_ERROR { text = r_err_sim_failure; }, // KErrGsmSmsBase-300; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-301; - SINGLE_ERROR { text = r_err_not_allowed;}, // KErrGsmSmsBase-302; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-303; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-304; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-305; - }; - } - -RESOURCE ARRAY r_error_res_sms_error22 - { - items= - { - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-310; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-311; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-312; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-313; - SINGLE_ERROR { text = r_err_sms_sim_busy; }, // KErrGsmSmsBase-314; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-315; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-316; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-317; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-318; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // Just an array gap fill - SINGLE_ERROR { text = r_err_sim_failure; }, // KErrGsmSmsBase-320; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-321; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-322; - }; - } - -RESOURCE ARRAY r_error_res_sms_error23 - { - items= - { - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-330; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-331; - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-332; - }; - } - -RESOURCE ARRAY r_error_res_sms_error24 - { - items= - { - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-340; - }; - } - -RESOURCE ARRAY r_error_res_sms_error25 - { - items= - { - SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-500; - }; - } - -RESOURCE TBUF r_err_sms_invalid_numb { buf =qtn_err_sms_invalid_numb; } -RESOURCE TBUF r_err_unab_to_del { buf =qtn_err_unab_to_del; } -RESOURCE TBUF r_err_sms_sim_busy { buf =qtn_err_sms_sim_busy; } -RESOURCE TBUF r_err_sms_common { buf =qtn_err_sms_common; } - -RESOURCE TBUF r_err_sms_check_oper_s { buf = qtn_err_sms_check_oper_srv; } -RESOURCE TBUF r_err_msg_format_not_sup { buf = qtn_err_msg_format_not_sup; } -RESOURCE TBUF r_err_sim_failure { buf = text_fdn_card_error; } - -// End of File +/* +* Copyright (c) 2002 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: +* +* +*/ + + +RESOURCE ARRAY r_error_res_sms_error1 + { + items= + { + SINGLE_ERROR { text = r_err_sms_invalid_numb; } // KErrGsmSmsBase-1; + }; + } + +RESOURCE ARRAY r_error_res_sms_error2 + { + items= + { + SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-8; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // filling gap + SINGLE_ERROR { text = r_err_sms_check_oper_s; },// KErrGsmSmsBase-10; + SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-11; + + }; + } + +RESOURCE ARRAY r_error_res_sms_error3 + { + items= + { + SINGLE_ERROR { text = r_err_sms_common; } // KErrGsmSmsBase-17; + }; + } + +RESOURCE ARRAY r_error_res_sms_error4 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-21; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-22; + }; + } + +RESOURCE ARRAY r_error_res_sms_error5 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-27; + SINGLE_ERROR { text = r_err_sms_invalid_numb; }, // KErrGsmSmsBase-28; + SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-29; + SINGLE_ERROR { text = r_err_sms_invalid_numb; } // KErrGsmSmsBase-30; + }; + } + +RESOURCE ARRAY r_error_res_sms_error6 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-38; + }; + } + +RESOURCE ARRAY r_error_res_sms_error7 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-41; + SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-42; + }; + } + +RESOURCE ARRAY r_error_res_sms_error8 + { + items= + { + SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-47; + }; + } + +RESOURCE ARRAY r_error_res_sms_error9 + { + items= + { + SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-50; + }; + } + +RESOURCE ARRAY r_error_res_sms_error10 + { + items= + { + SINGLE_ERROR { text = r_err_sms_check_oper_s; } // KErrGsmSmsBase-69; + }; + } + +RESOURCE ARRAY r_error_res_sms_error11 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-81; + }; + } + +RESOURCE ARRAY r_error_res_sms_error12 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-95; + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-96; + SINGLE_ERROR { text = r_err_unab_to_del;}, // KErrGsmSmsBase-97; + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-98; + SINGLE_ERROR { text = r_err_unab_to_del;} // KErrGsmSmsBase-99; + }; + } + +RESOURCE ARRAY r_error_res_sms_error13 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; } // KErrGsmSmsBase-111; + }; + } + +RESOURCE ARRAY r_error_res_sms_error14 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; },// KErrGsmSmsBase-127; + SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-128; + SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-129; + SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-130; + }; + } + +RESOURCE ARRAY r_error_res_sms_error15 + { + items= + { + SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-143; + SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-144; + SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-145; + }; + } + +RESOURCE ARRAY r_error_res_sms_error16 + { + items= + { + SINGLE_ERROR { text = r_err_sms_common; }, // KErrGsmSmsBase-159; + SINGLE_ERROR { text = r_error_res_general; }, // KErrGsmSmsBase-160; + SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-161; + + }; + } + +RESOURCE ARRAY r_error_res_sms_error17 + { + items= + { + SINGLE_ERROR { text = r_err_sms_common; }, // KErrGsmSmsBase-175; + SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-176; + + }; + } + +RESOURCE ARRAY r_error_res_sms_error18 + { + items= + { + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-192; + SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-193; + SINGLE_ERROR { text = r_err_unab_to_del; }, // KErrGsmSmsBase-194; + SINGLE_ERROR { text = r_err_sms_invalid_numb; }, // KErrGsmSmsBase-195; + SINGLE_ERROR { text = r_err_sms_check_oper_s; }, // KErrGsmSmsBase-196; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-197; + SINGLE_ERROR { text = r_err_msg_format_not_sup; }, // KErrGsmSmsBase-198; + SINGLE_ERROR { text = r_err_msg_format_not_sup; } // KErrGsmSmsBase-199; + }; + } + +RESOURCE ARRAY r_error_res_sms_error19 + { + items= + { + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-208; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-209; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-210; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-211; + SINGLE_ERROR { text = r_err_sms_sim_busy; } // KErrGsmSmsBase-212; + }; + } + +RESOURCE ARRAY r_error_res_sms_error20 + { + items= + { + SINGLE_ERROR { text = r_err_sms_common; } // KErrGsmSmsBase-255; + }; + } + +RESOURCE ARRAY r_error_res_sms_error21 + { + items= + { + SINGLE_ERROR { text = r_err_sim_failure; }, // KErrGsmSmsBase-300; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-301; + SINGLE_ERROR { text = r_err_not_allowed;}, // KErrGsmSmsBase-302; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-303; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-304; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-305; + }; + } + +RESOURCE ARRAY r_error_res_sms_error22 + { + items= + { + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-310; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-311; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-312; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-313; + SINGLE_ERROR { text = r_err_sms_sim_busy; }, // KErrGsmSmsBase-314; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-315; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-316; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-317; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // KErrGsmSmsBase-318; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag;}, // Just an array gap fill + SINGLE_ERROR { text = r_err_sim_failure; }, // KErrGsmSmsBase-320; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-321; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-322; + }; + } + +RESOURCE ARRAY r_error_res_sms_error23 + { + items= + { + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-330; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; }, // KErrGsmSmsBase-331; + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-332; + }; + } + +RESOURCE ARRAY r_error_res_sms_error24 + { + items= + { + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-340; + }; + } + +RESOURCE ARRAY r_error_res_sms_error25 + { + items= + { + SINGLE_ERROR { flags = EErrorResBlankErrorFlag; } // KErrGsmSmsBase-500; + }; + } + +RESOURCE TBUF r_err_sms_invalid_numb { buf =qtn_err_sms_invalid_numb; } +RESOURCE TBUF r_err_unab_to_del { buf =qtn_err_unab_to_del; } +RESOURCE TBUF r_err_sms_sim_busy { buf =qtn_err_sms_sim_busy; } +RESOURCE TBUF r_err_sms_common { buf =qtn_err_sms_common; } + +RESOURCE TBUF r_err_sms_check_oper_s { buf = qtn_err_sms_check_oper_srv; } +RESOURCE TBUF r_err_msg_format_not_sup { buf = qtn_err_msg_format_not_sup; } +RESOURCE TBUF r_err_sim_failure { buf = text_fdn_card_error; } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/group/bld.inf --- a/commonservices/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -22,9 +22,11 @@ PRJ_MMPFILES +#include "../activitymanager/group/bld.inf" #include "../commonengine/group/bld.inf" #include "../commonengineresources/group/bld.inf" #include "../PlatformEnv/group/bld.inf" +#include "../sysutil/group/bld.inf" PRJ_TESTMMPFILES diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonservices/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/sysutil/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonservices/sysutil/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/sysutil/src/sysutil.cpp --- a/commonservices/sysutil/src/sysutil.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/sysutil/src/sysutil.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -834,7 +834,7 @@ _LIT( KWildCardChar, "*" ); RFs fs; - fs.Connect(); + User::LeaveIfError( fs.Connect() ); CleanupClosePushL( fs ); // Get the localised version of deviceattributes.ini, if available, and use diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/sysutil/test/tef/group/te_sysutilteftests.iby --- a/commonservices/sysutil/test/tef/group/te_sysutilteftests.iby Fri Jun 11 14:56:08 2010 +0300 +++ b/commonservices/sysutil/test/tef/group/te_sysutilteftests.iby Thu Jul 01 11:20:10 2010 +0300 @@ -42,10 +42,10 @@ #ifndef SYSUTIL_Z_DRIVE_FILES_PRESENT #define SYSUTIL_Z_DRIVE_FILES_PRESENT -data = EPOCROOT##epoc32\data\z\resource\versions\lang.txt \resource\versions\lang.txt -data = EPOCROOT##epoc32\data\z\resource\versions\langsw.txt \resource\versions\langsw.txt -data = EPOCROOT##epoc32\data\z\resource\versions\sw.txt \resource\versions\sw.txt -data = EPOCROOT##epoc32\data\z\resource\versions\purpose.txt \resource\versions\purpose.txt +//data = EPOCROOT##epoc32\data\z\resource\versions\lang.txt \resource\versions\lang.txt +//data = EPOCROOT##epoc32\data\z\resource\versions\langsw.txt \resource\versions\langsw.txt +//data = EPOCROOT##epoc32\data\z\resource\versions\sw.txt \resource\versions\sw.txt +//data = EPOCROOT##epoc32\data\z\resource\versions\purpose.txt \resource\versions\purpose.txt #endif data = EPOCROOT##epoc32\data\z\resource\versions\nocontent\lang.txt \resource\versions\nocontent\lang.txt diff -r f7565e9c9ce8 -r c87e5f80c17d commonservices/sysutil/test/tef/group/te_sysutilteftests.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonservices/sysutil/test/tef/group/te_sysutilteftests.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,28 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SysUtilTefTests EN"} + +; Vendor name +: "SysUtilTefTests" + +"\sf\os\devicesrv\commonservices\sysutil\test\tef\group\te_sysutilteftests.script"-"c:\devicesrv\sysutiltest\te_sysutilteftests.script" diff -r f7565e9c9ce8 -r c87e5f80c17d devicesrv_plat/autoaudio_plugin_api/inc/autoaudiopskeys.h --- a/devicesrv_plat/autoaudio_plugin_api/inc/autoaudiopskeys.h Fri Jun 11 14:56:08 2010 +0300 +++ b/devicesrv_plat/autoaudio_plugin_api/inc/autoaudiopskeys.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,3 +1,20 @@ +/* +* Copyright (c) 2010 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: Provides P&S Key Defintions for Autoaudio ASY +* +*/ + #ifndef _AUTOAUDIO_PS_KEYS_ #define _AUTOAUDIO_PS_KEYS_ @@ -14,9 +31,9 @@ enum TPSAutoAudioConnectionStatus { - ENone, // Notifies Accessory Disconnection - EUnidirectional, // application sound only - EBidirectional // application sound + phone call + EAudioConnectionStatusNone, // Notifies Accessory Disconnection + EAudioConnectionStatusUnidirectional, // application sound only + EAudioConnectionStatusBidirectional // application sound + phone call }; diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/data/10200C6D.rss --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/data/10200C6D.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/data/10200C6D.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,53 +1,53 @@ -/* -* 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: -* Plugin definition resource file -* -*/ - -// INCLUDE FILES -#include -// RESOURCE DEFINITIONS -// --------------------------------------------------------- -// -// accessorytestcontrol -// -// --------------------------------------------------------- -// -RESOURCE REGISTRY_INFO AccessoryTestControl - { - resource_format_version = RESOURCE_FORMAT_VERSION_2; - dll_uid = 0x10200C6D; - interfaces = - { - INTERFACE_INFO - { - interface_uid = 0x10200c7d; - implementations = - { - IMPLEMENTATION_INFO - { - implementation_uid = 0x10200c70; - version_no = 1; - display_name = "ACCESSORYTESTCONTROL"; - default_data = "ACCESSORYTESTCONTROL"; - opaque_data = ""; - rom_only = 0; - } - }; - } - }; - } - -// End of File +/* +* 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: +* Plugin definition resource file +* +*/ + +// INCLUDE FILES +#include +// RESOURCE DEFINITIONS +// --------------------------------------------------------- +// +// accessorytestcontrol +// +// --------------------------------------------------------- +// +RESOURCE REGISTRY_INFO AccessoryTestControl + { + resource_format_version = RESOURCE_FORMAT_VERSION_2; + dll_uid = 0x10200C6D; + interfaces = + { + INTERFACE_INFO + { + interface_uid = 0x10200c7d; + implementations = + { + IMPLEMENTATION_INFO + { + implementation_uid = 0x10200c70; + version_no = 1; + display_name = "ACCESSORYTESTCONTROL"; + default_data = "ACCESSORYTESTCONTROL"; + opaque_data = ""; + rom_only = 0; + } + }; + } + }; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/group/AccessoryTestControl.mmp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/group/AccessoryTestControl.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/group/AccessoryTestControl.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,76 +1,76 @@ -/* -* Copyright (c) 2005 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: -* Project specification file for Accessory Test Control -* -*/ - - -#include - -TARGET AccessoryTestControl.dll - -TARGETTYPE PLUGIN -TARGETPATH ECOM_RESOURCE_DIR - -UID 0x10009D8D 0x10200C6D - -CAPABILITY CAP_GENERAL_DLL -VENDORID VID_DEFAULT - -SOURCEPATH ../src -SOURCE TfAccessoryTestControlProxy.cpp -SOURCE TfAccessoryTestControl.cpp -SOURCE TfAccessoryTestCaseControl.cpp -SOURCE TfAccessoryTestControlPlugin.cpp -SOURCE TfTestControlObserver.cpp - -USERINCLUDE ../inc -USERINCLUDE ../../../../inc/server -USERINCLUDE ../../../../inc/asyproxy -USERINCLUDE ../../../../inc/common - -// System include macro -OS_LAYER_SYSTEMINCLUDE -SYSTEMINCLUDE ../../dsytfcore/inc - -SOURCEPATH ../data -START RESOURCE 10200c6D.rss -#ifdef SYMBIAN_SECURE_ECOM -TARGET AccessoryTestControl.rsc -#endif -END - -LIBRARY euser.lib -LIBRARY estor.lib -LIBRARY ecom.lib -LIBRARY dsytfcore.lib -LIBRARY accclient.lib -LIBRARY accbtcontrol.lib -LIBRARY acccontrol.lib -LIBRARY accaudiocontrol.lib -LIBRARY accpolicy.lib -LIBRARY accsrvutil.lib -LIBRARY bluetooth.lib -LIBRARY accpolcom.lib -LIBRARY accpolaudiodevicetopology.lib - - -MACRO COMPONENT_TRACE_FLAG -MACRO TEST_CASE_TRACE_FLAG - -// Disable if running tests without UI (eg. running tests from console) -//MACRO TESTS_NO_UI - -SMPSAFE +/* +* Copyright (c) 2005 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: +* Project specification file for Accessory Test Control +* +*/ + + +#include + +TARGET AccessoryTestControl.dll + +TARGETTYPE PLUGIN +TARGETPATH ECOM_RESOURCE_DIR + +UID 0x10009D8D 0x10200C6D + +CAPABILITY CAP_GENERAL_DLL +VENDORID VID_DEFAULT + +SOURCEPATH ../src +SOURCE TfAccessoryTestControlProxy.cpp +SOURCE TfAccessoryTestControl.cpp +SOURCE TfAccessoryTestCaseControl.cpp +SOURCE TfAccessoryTestControlPlugin.cpp +SOURCE TfTestControlObserver.cpp + +USERINCLUDE ../inc +USERINCLUDE ../../../../inc/server +USERINCLUDE ../../../../inc/asyproxy +USERINCLUDE ../../../../inc/common + +// System include macro +OS_LAYER_SYSTEMINCLUDE +SYSTEMINCLUDE ../../dsytfcore/inc + +SOURCEPATH ../data +START RESOURCE 10200c6D.rss +#ifdef SYMBIAN_SECURE_ECOM +TARGET AccessoryTestControl.rsc +#endif +END + +LIBRARY euser.lib +LIBRARY estor.lib +LIBRARY ecom.lib +LIBRARY dsytfcore.lib +LIBRARY accclient.lib +LIBRARY accbtcontrol.lib +LIBRARY acccontrol.lib +LIBRARY accaudiocontrol.lib +LIBRARY accpolicy.lib +LIBRARY accsrvutil.lib +LIBRARY bluetooth.lib +LIBRARY accpolcom.lib +LIBRARY accpolaudiodevicetopology.lib + + +MACRO COMPONENT_TRACE_FLAG +MACRO TEST_CASE_TRACE_FLAG + +// Disable if running tests without UI (eg. running tests from console) +//MACRO TESTS_NO_UI + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/group/bld.inf --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,28 +1,28 @@ -/* -* 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: -* -*/ - - -PRJ_PLATFORMS -DEFAULT - - -PRJ_TESTMMPFILES -AccessoryTestControl.mmp - - - - +/* +* 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: +* +*/ + + +PRJ_PLATFORMS +DEFAULT + + +PRJ_TESTMMPFILES +AccessoryTestControl.mmp + + + + diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestCaseParamControl.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestCaseParamControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestCaseParamControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,50 +1,50 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __CTFACCESSORYTESTCASEPARAMCONTROL_H__ -#define __CTFACCESSORYTESTCASEPARAMCONTROL_H__ - -#include -#include -#include "TfAccessoryTestControlTypes.h" - -class CTFAccessoryTestCaseParamControl : public CTFStubTestCaseParam - { -public: - CTFAccessoryTestCaseParamControl( void ); - - void ConstructL( const TTFAccessoryTestCaseStateControl* aStates, TInt aStateCount ); - - virtual ~CTFAccessoryTestCaseParamControl( void ); - -private: - - CTFAccessoryTestCaseParamControl( const CTFAccessoryTestCaseParamControl& aParam ); - - CTFAccessoryTestCaseParamControl& operator=( const CTFAccessoryTestCaseParamControl& aParam ); - -public: - const TTFAccessoryTestCaseStateControl* States( void ) const; - TInt StateCount( void ) const; - -private: - TTFAccessoryTestCaseStateControl* iStates; - TInt iStateCount; - }; - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __CTFACCESSORYTESTCASEPARAMCONTROL_H__ +#define __CTFACCESSORYTESTCASEPARAMCONTROL_H__ + +#include +#include +#include "TfAccessoryTestControlTypes.h" + +class CTFAccessoryTestCaseParamControl : public CTFStubTestCaseParam + { +public: + CTFAccessoryTestCaseParamControl( void ); + + void ConstructL( const TTFAccessoryTestCaseStateControl* aStates, TInt aStateCount ); + + virtual ~CTFAccessoryTestCaseParamControl( void ); + +private: + + CTFAccessoryTestCaseParamControl( const CTFAccessoryTestCaseParamControl& aParam ); + + CTFAccessoryTestCaseParamControl& operator=( const CTFAccessoryTestCaseParamControl& aParam ); + +public: + const TTFAccessoryTestCaseStateControl* States( void ) const; + TInt StateCount( void ) const; + +private: + TTFAccessoryTestCaseStateControl* iStates; + TInt iStateCount; + }; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControl.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,205 +1,205 @@ -/* -* Copyright (c) 2005 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: -* -*/ - -#ifndef __CTFACCESSORYTESTCONTROL_H__ -#define __CTFACCESSORYTESTCONTROL_H__ - -#include -#include - -#include "MtfAccessoryTestControl.h" -#include "TfAccessoryTestControlTypes.h" -#include "CtfTestControlObserver.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -struct TTFAccessoryTestCaseStateControl; - -const TInt KTFStubTypeAccessoryControl = 565; - -class CTFTestControlObserver; - -class CTFAccessoryTestControl : public CTFRemoteStub, public MTFAccessoryTestControl - { -public: - CTFAccessoryTestControl( void ); - virtual ~CTFAccessoryTestControl( void ); - -private: - CTFAccessoryTestControl( const CTFAccessoryTestControl& aStub ); - CTFAccessoryTestControl& operator=( const CTFAccessoryTestControl& aStub ); - -public: - void InitializeL( void ); - -public: - void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ); - TInt ParameterCount( TTFAccessoryFunction aFunction ) const; - TBool ParameterBounds( TTFAccessoryFunction aFunction, TInt* aMin, TInt* aMax ) const; - - void CancelOutStandingRequest(); - - void ResetAccessoryServer(); - -protected: // Functions from base classes - - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - /** - * From CTFRemoteStub - * - * Processes a message and completes it. It is not necessary to - * complete the message immediately. - */ - void ProcessMessageAndCompleteL( const RMessage2& aMessage ); - - /** - * From CTFRemoteStub - * - * Notifies the stub that the asynchronous message passed to - * ProcessMessageAndCompleteL has been completed with given - * status. This can be used to complete the test case. - */ - void MessageCompleteL( TInt aResult ); - - void AccessoryNotification( TInt aResult, TInt aParameter); - -private: - - void CreateObjectPubSubL( TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects, - TStreamConObjectType aobjectType2, - TInt64 aNumberOfObjects2 ); - - void FillObjectL( CAccPolAudioStreamFormatCon* aContainer, - TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects ); - - - void CreateTopologyObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); - - TInt TestValueRecordL(); - - TInt TestBaseSerializationL(); - - CTFTestControlObserver* CreateObserver(); - - void PublishAndSubscribeL(TTFAccessoryTestCaseStateControl& aParameter); - - void ResetAccessoryServices(); - - TInt GetExistence(CAccPolSubblockNameArray* aNameArray,TDesC aCapability); - - void AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval); - - void FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ); - - void AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ); - - void GetSeveralAccessoryModeSetting( TInt* aRetval ); - - void SetSeveralAccessoryModeSetting( TInt* aRetval ); - - void SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ); - - void SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ); - - void CheckConnectedAccessory( TInt* aRetval ); - - void CallTClassMethods( TInt* aRetval ); - - void GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); - - void Settings(); - - void Policy(); - - void CreateHdmiObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); - - TInt CheckHdmiContainerObjectL(); - - TInt CheckHdmiSinkObjectL(); - - TInt CheckHdmiAudioFormatObjectL(); - - TInt CheckHdmiLatencyObjectL(); - - TInt CheckHdmiSpeakerAllocationObjectL(); - - TInt CheckHdmiVideoFormatObjectL(); - - void CreateHdmiObjectL( CAccPolObjectCon& aCon, THdmiConObjectType aType ); - -private: - - TAccPolGenericID iGenericId[10]; - TAccPolGenericIDArray iGenericIdArray; - TAccAudioType iAudioType; - friend class CTFTestControlObserver; - //TBTDevAddr iBtaddr; - RAccessoryServer iAccessoryServer; - RAccessoryAudioControl* iAccessoryAudioControl; - RAccessoryBTControl* iAccessoryBTControl; - RAccessoryConnection* iAccessoryConnection; - RAccessoryMode* iAccessoryMode; - RAccessorySettings* iAccessorySettings; - RAccessorySingleConnection* iAccessorySingleConnection; - RAccessoryControl* iAccessoryControl; - TBool iInitialized; - //CAccConfigFileParser* iAccConfigFileParser; - RProperty iSubscribe; - TSglQue iStack; - TSglQueIter iStackIter; - CTFTestControlObserver* iObserverItem; - - CAccPolAudioStreamFormatCon* iStreamContainer; - CAccPolAudioTopologyObjectCon* iTopologyContainer; - CAccPolVolumeControl* iSpeakerRightVolume; - CAccPolVolumeControl* iSpeakerLeftVolume; - CAccPolMuteControl* iSpeakerMute; - CAccPolVolumeControl* iMicRightVolume; - CAccPolVolumeControl* iMicLeftVolume; - }; -#endif +/* +* Copyright (c) 2005 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: +* +*/ + +#ifndef __CTFACCESSORYTESTCONTROL_H__ +#define __CTFACCESSORYTESTCONTROL_H__ + +#include +#include + +#include "MtfAccessoryTestControl.h" +#include "TfAccessoryTestControlTypes.h" +#include "CtfTestControlObserver.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +struct TTFAccessoryTestCaseStateControl; + +const TInt KTFStubTypeAccessoryControl = 565; + +class CTFTestControlObserver; + +class CTFAccessoryTestControl : public CTFRemoteStub, public MTFAccessoryTestControl + { +public: + CTFAccessoryTestControl( void ); + virtual ~CTFAccessoryTestControl( void ); + +private: + CTFAccessoryTestControl( const CTFAccessoryTestControl& aStub ); + CTFAccessoryTestControl& operator=( const CTFAccessoryTestControl& aStub ); + +public: + void InitializeL( void ); + +public: + void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ); + TInt ParameterCount( TTFAccessoryFunction aFunction ) const; + TBool ParameterBounds( TTFAccessoryFunction aFunction, TInt* aMin, TInt* aMax ) const; + + void CancelOutStandingRequest(); + + void ResetAccessoryServer(); + +protected: // Functions from base classes + + void DoCancel(); + void RunL(); + TInt RunError( TInt aError ); + /** + * From CTFRemoteStub + * + * Processes a message and completes it. It is not necessary to + * complete the message immediately. + */ + void ProcessMessageAndCompleteL( const RMessage2& aMessage ); + + /** + * From CTFRemoteStub + * + * Notifies the stub that the asynchronous message passed to + * ProcessMessageAndCompleteL has been completed with given + * status. This can be used to complete the test case. + */ + void MessageCompleteL( TInt aResult ); + + void AccessoryNotification( TInt aResult, TInt aParameter); + +private: + + void CreateObjectPubSubL( TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects, + TStreamConObjectType aobjectType2, + TInt64 aNumberOfObjects2 ); + + void FillObjectL( CAccPolAudioStreamFormatCon* aContainer, + TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects ); + + + void CreateTopologyObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); + + TInt TestValueRecordL(); + + TInt TestBaseSerializationL(); + + CTFTestControlObserver* CreateObserver(); + + void PublishAndSubscribeL(TTFAccessoryTestCaseStateControl& aParameter); + + void ResetAccessoryServices(); + + TInt GetExistence(CAccPolSubblockNameArray* aNameArray,TDesC aCapability); + + void AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval); + + void FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ); + + void AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ); + + void GetSeveralAccessoryModeSetting( TInt* aRetval ); + + void SetSeveralAccessoryModeSetting( TInt* aRetval ); + + void SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ); + + void SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ); + + void CheckConnectedAccessory( TInt* aRetval ); + + void CallTClassMethods( TInt* aRetval ); + + void GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ); + + void Settings(); + + void Policy(); + + void CreateHdmiObjectsToPubSubL( TTFAccessoryTestCaseStateControl& aParameter ); + + TInt CheckHdmiContainerObjectL(); + + TInt CheckHdmiSinkObjectL(); + + TInt CheckHdmiAudioFormatObjectL(); + + TInt CheckHdmiLatencyObjectL(); + + TInt CheckHdmiSpeakerAllocationObjectL(); + + TInt CheckHdmiVideoFormatObjectL(); + + void CreateHdmiObjectL( CAccPolObjectCon& aCon, THdmiConObjectType aType ); + +private: + + TAccPolGenericID iGenericId[10]; + TAccPolGenericIDArray iGenericIdArray; + TAccAudioType iAudioType; + friend class CTFTestControlObserver; + //TBTDevAddr iBtaddr; + RAccessoryServer iAccessoryServer; + RAccessoryAudioControl* iAccessoryAudioControl; + RAccessoryBTControl* iAccessoryBTControl; + RAccessoryConnection* iAccessoryConnection; + RAccessoryMode* iAccessoryMode; + RAccessorySettings* iAccessorySettings; + RAccessorySingleConnection* iAccessorySingleConnection; + RAccessoryControl* iAccessoryControl; + TBool iInitialized; + //CAccConfigFileParser* iAccConfigFileParser; + RProperty iSubscribe; + TSglQue iStack; + TSglQueIter iStackIter; + CTFTestControlObserver* iObserverItem; + + CAccPolAudioStreamFormatCon* iStreamContainer; + CAccPolAudioTopologyObjectCon* iTopologyContainer; + CAccPolVolumeControl* iSpeakerRightVolume; + CAccPolVolumeControl* iSpeakerLeftVolume; + CAccPolMuteControl* iSpeakerMute; + CAccPolVolumeControl* iMicRightVolume; + CAccPolVolumeControl* iMicLeftVolume; + }; +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControlPlugin.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControlPlugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfAccessoryTestControlPlugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,79 +1,79 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __CTFACCESSORYTESTCONTROLPLUGIN_H__ -#define __CTFACCESSORYTESTCONTROLPLUGIN_H__ - -// INCLUDE FILES -#include - -// CLASS DECLARATION - -/** -* An implementation of CTFStubModuleInterface. -*/ -class CTFAccessoryTestControlPlugin : public CTFStubModuleInterface - { - public: // Constructors and destructor - - /** - * Two-phased constructor. - * @param aInitParams Initialisation parameters. - * @return The created object. - */ - static CTFAccessoryTestControlPlugin* NewL( TAny* aInitParams ); - - /** - * Destructor. - */ - ~CTFAccessoryTestControlPlugin( void ); - - public: // Functions from base classes - - /** - * Gets the stub implementation of this plug-in module - */ - CTFStub* GetStubL( void ); - - /** - * Builds the test suite of this plug-in module. - */ - void BuildTestSuiteL( CTFATestSuite* aRootSuite ); - - /** - * Gets the plug-in module specific part of a test case which has the given test case ID - */ - MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); - - private: // Functions - - /** - * C++ default constructor. - * @param aParams Initialisation parameters. - */ - CTFAccessoryTestControlPlugin( TAny* aParams ); - - private: // Data - - CTFStubModuleInterface::TInterfaceInitParams* iInitParams; - - }; - -#endif //__CTFACCESSORYTESTCONTROLPLUGIN_H__ - -// End of File +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __CTFACCESSORYTESTCONTROLPLUGIN_H__ +#define __CTFACCESSORYTESTCONTROLPLUGIN_H__ + +// INCLUDE FILES +#include + +// CLASS DECLARATION + +/** +* An implementation of CTFStubModuleInterface. +*/ +class CTFAccessoryTestControlPlugin : public CTFStubModuleInterface + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + * @param aInitParams Initialisation parameters. + * @return The created object. + */ + static CTFAccessoryTestControlPlugin* NewL( TAny* aInitParams ); + + /** + * Destructor. + */ + ~CTFAccessoryTestControlPlugin( void ); + + public: // Functions from base classes + + /** + * Gets the stub implementation of this plug-in module + */ + CTFStub* GetStubL( void ); + + /** + * Builds the test suite of this plug-in module. + */ + void BuildTestSuiteL( CTFATestSuite* aRootSuite ); + + /** + * Gets the plug-in module specific part of a test case which has the given test case ID + */ + MTFStubTestCase* GetStubTestCaseL( TInt aTestCaseId ); + + private: // Functions + + /** + * C++ default constructor. + * @param aParams Initialisation parameters. + */ + CTFAccessoryTestControlPlugin( TAny* aParams ); + + private: // Data + + CTFStubModuleInterface::TInterfaceInitParams* iInitParams; + + }; + +#endif //__CTFACCESSORYTESTCONTROLPLUGIN_H__ + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfTestControlObserver.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfTestControlObserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/CtfTestControlObserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,136 +1,136 @@ -/* -* Copyright (c) 2005 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: -* -*/ - -#ifndef __CTFTESTCONTROLOBSERVER_H__ -#define __CTFTESTCONTROLOBSERVER_H__ - - -#include "CtfAccessoryTestControl.h" -#include "TfAccessoryTestControlTypes.h" - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -class CTFAccessoryTestControl; - -class CTFTestControlObserver : public CActive - { - public: - - //CTFAccessoryTestControl aTestControl - static CTFTestControlObserver* NewL(CTFAccessoryTestControl& aTestControl); - - CTFTestControlObserver(CTFAccessoryTestControl& aTestControl); - - ~CTFTestControlObserver(); - - // - // Accessory Connction - // - void NotifyNewAccessoryConnected(TAccPolGenericID& aGenericId); - - void NotifyAccessoryDisconnected(TAccPolGenericID& aGenericId); - - void NotifyBooleanAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void NotifyIntegerAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void NotifyObjectAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); - - void GetAccessoryConnectionStatus(TAccPolGenericIDArray& aGenericIdArray); - // - // Accessory Mode - // - void NotifyAccessoryModeChanged(); - - void GetAccessoryMode(); - - // - // Accessory Bluetooth Control - // - void NotifyBluetoothAudioLinkOpenReq(); - - void NotifyBluetoothAudioLinkCloseReq(); - - void ConnectBTAccessory(TBTDevAddr& btaddr); - - void DisconnectBTAccessory(TBTDevAddr& btaddr); - - // - // Accessory Audio Control - // - void AccessoryAudioLinkOpen( TAccPolGenericID& aGenericI, TUint32 aAudioType ); - - void NotifyAccessoryAudioLinkOpened(TAccPolGenericID& aGenericId); - - void NotifyAccessoryAudioLinkClosed(TAccPolGenericID& aGenericId); - - void AccessoryAudioLinkClose(TAccPolGenericID& aGenericId, TUint32 aAudioType ); - - void NotifyAccessoryConnectionStatusChanged(TAccPolGenericIDArray& aGenericIdArray); - - // Accessory Control - - void ConnectAccessory(TAccPolGenericID& aGenericId, TUint64 aHWDeviceID); - - void DisconnectAccessory(TAccPolGenericID& aGenericId); - - // Support functions - TBool FindRequest(TTFRequestType aRequestType); - - public: // - - static const TInt iOffset; - - protected: // Functions from base classes - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - - private: - - void SetRequestType( TTFRequestType aRequestType) {iRequestType=aRequestType;} - private: - - friend class CTFAccessoryTestControl; - TSglQueLink iSlink; - TAccPolAccessoryMode iAccMode; - CTFAccessoryTestControl& iAccessoryTestControl; - TTFRequestType iRequestType; - TTFRequestType iRequestCompleted; - TInt64 iValue; - TUint32 iCapabilityName; - TAccValueTypeTBool iBooleanValue; - TAccValueTypeTInt iIntegerValue; - TAccValueTypeObject iObjectValue; - TAccAudioType iAudioType; - TBTDevAddr iBTaddr; - HBufC8* iObjectValueBuf; - }; - -#endif //__CTFTESTCONTROLOBSERVER_H__ +/* +* Copyright (c) 2005 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: +* +*/ + +#ifndef __CTFTESTCONTROLOBSERVER_H__ +#define __CTFTESTCONTROLOBSERVER_H__ + + +#include "CtfAccessoryTestControl.h" +#include "TfAccessoryTestControlTypes.h" + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +class CTFAccessoryTestControl; + +class CTFTestControlObserver : public CActive + { + public: + + //CTFAccessoryTestControl aTestControl + static CTFTestControlObserver* NewL(CTFAccessoryTestControl& aTestControl); + + CTFTestControlObserver(CTFAccessoryTestControl& aTestControl); + + ~CTFTestControlObserver(); + + // + // Accessory Connction + // + void NotifyNewAccessoryConnected(TAccPolGenericID& aGenericId); + + void NotifyAccessoryDisconnected(TAccPolGenericID& aGenericId); + + void NotifyBooleanAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void NotifyIntegerAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void NotifyObjectAccessoryValueChanged(TAccPolGenericID& aGenericId, const TUint32& aName); + + void GetAccessoryConnectionStatus(TAccPolGenericIDArray& aGenericIdArray); + // + // Accessory Mode + // + void NotifyAccessoryModeChanged(); + + void GetAccessoryMode(); + + // + // Accessory Bluetooth Control + // + void NotifyBluetoothAudioLinkOpenReq(); + + void NotifyBluetoothAudioLinkCloseReq(); + + void ConnectBTAccessory(TBTDevAddr& btaddr); + + void DisconnectBTAccessory(TBTDevAddr& btaddr); + + // + // Accessory Audio Control + // + void AccessoryAudioLinkOpen( TAccPolGenericID& aGenericI, TUint32 aAudioType ); + + void NotifyAccessoryAudioLinkOpened(TAccPolGenericID& aGenericId); + + void NotifyAccessoryAudioLinkClosed(TAccPolGenericID& aGenericId); + + void AccessoryAudioLinkClose(TAccPolGenericID& aGenericId, TUint32 aAudioType ); + + void NotifyAccessoryConnectionStatusChanged(TAccPolGenericIDArray& aGenericIdArray); + + // Accessory Control + + void ConnectAccessory(TAccPolGenericID& aGenericId, TUint64 aHWDeviceID); + + void DisconnectAccessory(TAccPolGenericID& aGenericId); + + // Support functions + TBool FindRequest(TTFRequestType aRequestType); + + public: // + + static const TInt iOffset; + + protected: // Functions from base classes + void DoCancel(); + void RunL(); + TInt RunError( TInt aError ); + + private: + + void SetRequestType( TTFRequestType aRequestType) {iRequestType=aRequestType;} + private: + + friend class CTFAccessoryTestControl; + TSglQueLink iSlink; + TAccPolAccessoryMode iAccMode; + CTFAccessoryTestControl& iAccessoryTestControl; + TTFRequestType iRequestType; + TTFRequestType iRequestCompleted; + TInt64 iValue; + TUint32 iCapabilityName; + TAccValueTypeTBool iBooleanValue; + TAccValueTypeTInt iIntegerValue; + TAccValueTypeObject iObjectValue; + TAccAudioType iAudioType; + TBTDevAddr iBTaddr; + HBufC8* iObjectValueBuf; + }; + +#endif //__CTFTESTCONTROLOBSERVER_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/MtfAccessoryTestControl.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/MtfAccessoryTestControl.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/MtfAccessoryTestControl.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,47 +1,47 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __MTFACCESSORYTESTCONTROL_H__ -#define __MTFACCESSORYTESTCONTROL_H__ - -#include - -struct TTFAccessoryTestCaseStateControl; - -class MTFAccessoryTestControl - { -public: - MTFAccessoryTestControl( void ); - virtual ~MTFAccessoryTestControl( void ); - -private: - MTFAccessoryTestControl( const MTFAccessoryTestControl& aStub ); - MTFAccessoryTestControl& operator=( const MTFAccessoryTestControl& aStub ); - -public: - virtual void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) = 0; - - virtual void CancelOutStandingRequest() = 0; - - virtual void ResetAccessoryServer() = 0; - - }; - -MTFAccessoryTestControl* GetAccessoryTestControl( void ); - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __MTFACCESSORYTESTCONTROL_H__ +#define __MTFACCESSORYTESTCONTROL_H__ + +#include + +struct TTFAccessoryTestCaseStateControl; + +class MTFAccessoryTestControl + { +public: + MTFAccessoryTestControl( void ); + virtual ~MTFAccessoryTestControl( void ); + +private: + MTFAccessoryTestControl( const MTFAccessoryTestControl& aStub ); + MTFAccessoryTestControl& operator=( const MTFAccessoryTestControl& aStub ); + +public: + virtual void CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) = 0; + + virtual void CancelOutStandingRequest() = 0; + + virtual void ResetAccessoryServer() = 0; + + }; + +MTFAccessoryTestControl* GetAccessoryTestControl( void ); + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/Siftrace.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/Siftrace.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/Siftrace.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,227 +1,227 @@ -/* -* Copyright (c) 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: Declaration and implementation of SIF trace macros -* -*/ - - -// Additional Lint configuration options are defined here. -//lint -e1714 Member function not referenced. -// - CTFTestTimer, CTFActiveTest, copy constructors, assignment operators -//lint -e1526 Member function not defined. -// - Copy constructors, assignment operators -//lint -e714 Symbol not referenced -// - uid, LibEntryL -//lint -e1711 Class has a virtual function but is not inherited -// - Inherited in the project that implements the test cases -//lint -e755 Macro not referenced -// - Some trace macros -//lint -e769 Enumeration constant not referenced -// - Panic codes are not referenced in WINS -//lint -e1716 Virtual member function not referenced -// - Referenced b the project that implements the test cases -//lint -esym(960, 69) Variable number of arguments -// - Log writer functions contain ellipsis -//lint -esym(960, 54) Null statement by itself -// - When COMPONENT_TRACE is not enabled -//lint -esym(960, 59) Left brace expected for if, else, for, do and while -// - TRACE_ASSERT macro -//lint -e1924 C-style case -// - From _L macros -//lint -e666 Expression with side effects -// - From TEST_CASE_TRACE - -#ifndef SIFTRACE_H -#define SIFTRACE_H - -// INCLUDES -#include - -// PC-LINT OPTIONS -// Removes null statement not in line by itself warnings from -// COMPONENT_TRACE macros -//lint -esym(960,54) - -// Removes "area too small" pointer cast warnings. -//lint -e826 - -// Member function not referenced (copy constructors / assignment operators) -//lint -e1714 - -// Member function not defined (copy constructors / assignment operators) -//lint -e1526 - -// Global macro not referenced -//lint -e755 - -// Symbol not referenced (uid) -//lint -e714 - -// Global enumeration constant not referenced -//lint -e769 - -// Virtual member not referenced -//lint -e1716 - -// Expression with side effects passed to macro -//lint -e666 - -// Enumeration not referenced -//lint -e758 - -// Declaration could be moved from header to module -//lint -e759 - - -// CONSTANTS -// MACROS -#ifdef _DEBUG - - inline void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } - - inline void ThisFileFunc( const TDesC8& aFile ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "File=%s, compiled=%s %s" ), buffer->Des().PtrZ(), date->Des().PtrZ(), time->Des().PtrZ() ); - } - delete buffer; - delete date; - delete time; - } - - -// - // ----------------------------------------------------------------------------- - // TracePanicFunc - // This method is needed to utilize debugging macros defined in dostrace.h. - // ----------------------------------------------------------------------------- - // - inline void TracePanicFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( 32 ); - HBufC* time = HBufC::New( 32 ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Panic happened: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - - User::Panic( _L( "[AccFW:AccServer]" ), KErrGeneral ); - } - - #define PANIC_IF_FALSE( a ) if ( !( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - #define PANIC_IF_TRUE( a ) if ( ( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - #define PANIC_ALWAYS() TracePanicFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE_THIS_FILE ThisFileFunc( _L8( __FILE__ ) ) - - #else //#ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE_THIS_FILE - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_RETURN( a ) if ( !( ( a ) == KErrNone ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) - - #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) RDebug::Print a - - #else // #ifdef COMPONENT_TRACE_FLAG - - #define COMPONENT_TRACE( a ) - - #endif //#ifdef COMPONENT_TRACE_FLAG - - #ifdef TEST_CASE_TRACE_FLAG - - #define TEST_CASE_TRACE( a ) RDebug::Print a - - #else - - #define TEST_CASE_TRACE( a ) - - #endif //#ifdef TEST_CASE_TRACE_FLAG - - #ifdef API_TRACE_FLAG - - #define API_TRACE( a ) RDebug::Print a - - #else //#ifdef API_TRACE_FLAG - - #define API_TRACE( a ) - - #endif //#ifdef API_TRACE_FLAG - -#else // #ifdef _DEBUG - - #define TRACE_ASSERT( a ) - #define TRACE_ASSERT_RETURN( a ) a - #define TRACE_ASSERT_ALWAYS - #define TEST_CASE_TRACE( a ) - #define COMPONENT_TRACE( a ) - #define API_TRACE( a ) - #define COMPONENT_TRACE_THIS_FILE - -#endif //#ifdef _DEBUG - - - -// DATA TYPES -// FUNCTION PROTOTYPES -// FORWARD DECLARATIONS - -#endif //#ifndef ccftrace.h - -// End of File +/* +* Copyright (c) 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: Declaration and implementation of SIF trace macros +* +*/ + + +// Additional Lint configuration options are defined here. +//lint -e1714 Member function not referenced. +// - CTFTestTimer, CTFActiveTest, copy constructors, assignment operators +//lint -e1526 Member function not defined. +// - Copy constructors, assignment operators +//lint -e714 Symbol not referenced +// - uid, LibEntryL +//lint -e1711 Class has a virtual function but is not inherited +// - Inherited in the project that implements the test cases +//lint -e755 Macro not referenced +// - Some trace macros +//lint -e769 Enumeration constant not referenced +// - Panic codes are not referenced in WINS +//lint -e1716 Virtual member function not referenced +// - Referenced b the project that implements the test cases +//lint -esym(960, 69) Variable number of arguments +// - Log writer functions contain ellipsis +//lint -esym(960, 54) Null statement by itself +// - When COMPONENT_TRACE is not enabled +//lint -esym(960, 59) Left brace expected for if, else, for, do and while +// - TRACE_ASSERT macro +//lint -e1924 C-style case +// - From _L macros +//lint -e666 Expression with side effects +// - From TEST_CASE_TRACE + +#ifndef SIFTRACE_H +#define SIFTRACE_H + +// INCLUDES +#include + +// PC-LINT OPTIONS +// Removes null statement not in line by itself warnings from +// COMPONENT_TRACE macros +//lint -esym(960,54) + +// Removes "area too small" pointer cast warnings. +//lint -e826 + +// Member function not referenced (copy constructors / assignment operators) +//lint -e1714 + +// Member function not defined (copy constructors / assignment operators) +//lint -e1526 + +// Global macro not referenced +//lint -e755 + +// Symbol not referenced (uid) +//lint -e714 + +// Global enumeration constant not referenced +//lint -e769 + +// Virtual member not referenced +//lint -e1716 + +// Expression with side effects passed to macro +//lint -e666 + +// Enumeration not referenced +//lint -e758 + +// Declaration could be moved from header to module +//lint -e759 + + +// CONSTANTS +// MACROS +#ifdef _DEBUG + + inline void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } + + inline void ThisFileFunc( const TDesC8& aFile ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "File=%s, compiled=%s %s" ), buffer->Des().PtrZ(), date->Des().PtrZ(), time->Des().PtrZ() ); + } + delete buffer; + delete date; + delete time; + } + + +// + // ----------------------------------------------------------------------------- + // TracePanicFunc + // This method is needed to utilize debugging macros defined in dostrace.h. + // ----------------------------------------------------------------------------- + // + inline void TracePanicFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( 32 ); + HBufC* time = HBufC::New( 32 ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Panic happened: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + + User::Panic( _L( "[AccFW:AccServer]" ), KErrGeneral ); + } + + #define PANIC_IF_FALSE( a ) if ( !( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + #define PANIC_IF_TRUE( a ) if ( ( a ) ) TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + #define PANIC_ALWAYS() TracePanicFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE_THIS_FILE ThisFileFunc( _L8( __FILE__ ) ) + + #else //#ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE_THIS_FILE + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #define TRACE_ASSERT( a ) if ( !( a ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_RETURN( a ) if ( !( ( a ) == KErrNone ) ) TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + #define TRACE_ASSERT_ALWAYS TraceAssertFunc( _L8( __FILE__ ), __LINE__ ) + + #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) RDebug::Print a + + #else // #ifdef COMPONENT_TRACE_FLAG + + #define COMPONENT_TRACE( a ) + + #endif //#ifdef COMPONENT_TRACE_FLAG + + #ifdef TEST_CASE_TRACE_FLAG + + #define TEST_CASE_TRACE( a ) RDebug::Print a + + #else + + #define TEST_CASE_TRACE( a ) + + #endif //#ifdef TEST_CASE_TRACE_FLAG + + #ifdef API_TRACE_FLAG + + #define API_TRACE( a ) RDebug::Print a + + #else //#ifdef API_TRACE_FLAG + + #define API_TRACE( a ) + + #endif //#ifdef API_TRACE_FLAG + +#else // #ifdef _DEBUG + + #define TRACE_ASSERT( a ) + #define TRACE_ASSERT_RETURN( a ) a + #define TRACE_ASSERT_ALWAYS + #define TEST_CASE_TRACE( a ) + #define COMPONENT_TRACE( a ) + #define API_TRACE( a ) + #define COMPONENT_TRACE_THIS_FILE + +#endif //#ifdef _DEBUG + + + +// DATA TYPES +// FUNCTION PROTOTYPES +// FORWARD DECLARATIONS + +#endif //#ifndef ccftrace.h + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/TfAccessoryTestControlTypes.h --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/TfAccessoryTestControlTypes.h Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/inc/TfAccessoryTestControlTypes.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,263 +1,263 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -#ifndef __TFACCESSORYTESTCONTROLTYPES_H__ -#define __TFACCESSORYTESTCONTROLTYPES_H__ - -#include -#include -#include - -const TUid KTFAccessoryTestProperty = {0x10200c70}; -const TUint32 KTFAccessoryMethod = 0x00001001; -const TUint32 KTFAccessoryNotifierMethod = 0x00001002; -const TUint32 KTFAccessoryObjectMethod = 0x00001003; - -enum TTFAccessoryFunction - { - ETFAccessory_None = 0, - ETFAccessoryConnection_Open, - ETFAccessoryConnection_Close, - ETFAccessorySingleConnection_Open, - ETFAccessorySingleConnection_Close, - ETFAccessoryControl_Open, - ETFAccessoryControl_Close, - ETFAccessorySettings_Open, - ETFAccessorySettings_Close, - ETFAccessoryMode_Open, - ETFAccessoryMode_Close, - ETFAccessoryAudioControl_Open, - ETFAccessoryAudioControl_Close, - ETFAccessoryBtControl_Open, - ETFAccessoryBtControl_Close, - ETFAccessoryBtConnectAccessory, - ETFAccessoryBtDisconnectAccessory, - ETFAccessoryNotifyAccessoryConnectionStatusChanged, - ETFAccessoryNotifyNewAccessoryConnected, - ETFAccessoryNotifyAccessoryDisconnected, - ETFAccessoryNotifyAccessoryModeChanged, - ETFAccessoryAccessoryModeSync, - ETFAccessoryAccessoryModeASync, - ETFAccessoryNotifyBluetoothAudioLinkOpenReq, - ETFAccessoryAudioLinkOpen, - ETFAccessoryNotifyAccessoryAudioLinkOpened, - ETFAccessoryBluetoothAudioLinkOpenedNotify, - ETFAccessoryBluetoothAudioLinkOpenResp, - ETFAccessoryNotifyAccessoryAudioLinkClosed, - ETFAccessoryNotifyBluetoothAudioLinkCloseReq, - ETFAccessoryAccessoryAudioLinkClose, - ETFAccessoryBluetoothAudioLinkClosedNotify, - ETFAccessoryBluetoothAudioLinkCloseResp, - ETFAccessoryPublishAndSubscribe, - ETFAccessoryBtCancelConnectAccessory, - ETFAccessoryBtCancelDisconnectAccessory, - ETFNotifyIntAccessoryValueChanged, - ETFNotifyBoolAccessoryValueChanged, - ETFAccessoryIntGetValue, - ETFAccessoryBoolGetValue, - ETFAccessoryDes8GetValue, - ETFConnectWiredAccessory, - ETFDisconnectWiredAccessory, - ETFSyncGetAccessoryConnectionStatus, - ETFASyncGetAccessoryConnectionStatus, - ETFSetIntValue, - ETFSetBoolValue, - ETFAccessoryValueChangedNotifyInt, - ETFAccessoryValueChangedNotifyBool, - ETFBTAccessoryValueChangedNotifyBool, - ETFSetHWDeviceSettings, - ETFGetHWDeviceSettings, - ETFGetSupportedHWDeviceSettings, - ETFSetIntAccessoryModeSetting, - ETFSetBoolAccessoryModeSetting, - ETFSetDesAccessoryModeSetting, - ETFGetIntAccessoryModeSetting, - ETFGetBoolAccessoryModeSetting, - ETFGetDesAccessoryModeSetting, - ETFSetSeveralAccessoryModeSetting, - ETFGetSeveralAccessoryModeSetting, - ETFAccessory_Cancel, - ETFAccessorySynchronized, - ETFFindAndCheckRequest, - ETFCheckAllRequest, - ETFCancelAccessoryAudioLinkOpen, - ETFCancelAccessoryAudioLinkClose, - ETFCancelNotifyAccessoryAudioLinkOpened, - ETFCancelNotifyAccessoryAudioLinkClosed, - ETFCancelNotifyProcessCommand, - ETFCancelConnectAccessory, - ETFCancelDisconnectAccessory, - ETFCancelNotifyBluetoothAudioLinkOpenReq, - ETFCancelNotifyBluetoothAudioLinkCloseReq, - ETFCancelNotifyAccessoryConnectionStatusChanged, - ETFCancelGetAccessoryConnectionStatus, - ETFCancelConnectAccessoryBT, - ETFCancelDisconnectAccessoryBT, - ETFCancelNotifyAccessoryModeChanged, - ETFCancelGetAccessoryMode, - ETFCancelNotifyNewAccessoryConnected, - ETFCancelNotifyAccessoryDisconnected, - ETFCancelNotifyAccessoryValueChanged, - ETFAccSrvSubBase, - ETFCheckCapability, - ETFAudioRoutingStatusNotify, - ETFSelectionDialogText, - ETFSelectionDialogCancel, - ETFNotSupportedNote, - ETFUISelectionIndex, - ETFCheckCapabilityGroup, - ETFValueRecordTests, - ETFCheckConnectedAccessory, - ETFAccessorySet_PubSub, - ETFClearStack, - ETFCancelConnects, - ETFCallTClassMethods, - ETFBTAccessoryValueChangedNotifyInt, - ETFAccessorySet_ObjectPubSub, - ETFAccessorySet_TopologyObjectsPubSub, - ETFAccessoryGetTopologyObjects, - ETFAccessoryGetVolumeControlObjects, - ETFAccessorySetVolumeControlObjects, - ETFAccessoryGetMuteControlObjects, - ETFAccessorySetMuteControlObjects, - ETFAccessoryObjectParseTopology, - ETFAccessoryGetStreamObjects, - ETFAccessorySetStreamObjects, - ETFObjectBaseSerializationTests, - ETFAccessoryGetStreamObjectsFromPolicy, - ETFNotifyObjectAccessoryValueChanged, - ETFFindAndCheckObjectRequest, - ETFSetHdmiObject_PubSub, - ETFGetHdmiObject, - ETFCheckHdmiObject - }; - -enum TTFAccessoryParameterResult - { - ETFEAccUnsupportedConnected = 0, - ETFAccModeHandPortable = 1, - ETFAccModeWiredHeadset = 2, - ETFAccModeWirelessHeadset = 3, - ETFAccModeWiredCarKit = 4, - ETFAccModeWirelessCarKit = 5, - ETFAccModeTextDevice = 6, - ETFAccModeLoopset = 7, - ETFAccModeMusicStand = 8 - }; - - -enum TTFRequestType - { - ReqAccRequestNone =0, - ReqNotifyNewAccessoryConnected =1, - ReqNotifyAccessoryDisconnected =2, - ReqNotifyAccessoryModeChanged =3, - ReqNotifyAccessoryConnectionStatusChanged =4, - ReqAccessoryAudioLinkOpen =5, - ReqNotifyAccessoryAudioLinkOpened =6, - ReqNotifyAccessoryAudioLinkClosed =7, - ReqAccessoryAudioLinkClose =8, - ReqNotifyBluetoothAudioLinkOpenReq =9, - ReqNotifyBluetoothAudioLinkCloseReq =10, - ReqConnectBtAccessory =11, - ReqDisconnectBtAccessory =12, - ReqNotifyBooleanAccessoryValueChanged =13, - ReqNotifyIntegerAccessoryValueChanged =14, - ReqGetAccessoryConnectionStatus =15, - ReqAccessoryConnection =16, - ReqAccessoryDisconnection =17, - ReqNotifyAccessoryValueChanged =18, - ReqGetAccessoryMode =19, - ReqNotifyObjectAccessoryValueChanged =20 - }; - -enum TTFASYReference - { - ETFAsyNone =0, - ETFAsyConn, - ETFAsyDisc, - ETFAsyIntNotify, - ETFAsyBoolNotify, - ETFAsyObjectNotify, - ETFBTALinkClosedNo, - ETFBTALinkOpenedNo, - ETFAsySetCapability, - ETFAsySetBoolValue, - ETFAsyConnOpenCable, - ETFAsyUpdateTVOut, - ETFAsyUpdateHeadset, - ETFAsyConnectECIAccessory, - ETFAsyConnectHeadset, - ETFAsyConnectOpenCable3Poles, - ETFAsyConnUSB, - ETFAsyConnUSB2, - ETFAsyConnHDMI - }; - - -struct TTFAccessoryTestCaseStateControl - { - TTFAccessoryFunction iAccessoryFunction; - TInt iGid; //defines the index of the gereric ID to be used in TestControl - TInt64 iArg1; - TInt64 iArg2; - TUint32 iArg3; - TInt64 iArg4; //Reserved - TInt iTestCaseID; - TTFASYReference iMethod; - TTFRequestType iRequestType; - TInt iExpectedResult; - TInt iTimer;//Specifies the time which is waited before next state is executed - }; - -struct TTFAccessoryPublishAndSubscribe - { - TInt iTestCaseID; - TTFASYReference iMethod; - TInt64 iParam1; - TUint32 iParam2; - TInt iTimeMs;//0 means that command is server synchronously - TAccPolGenericID iGenericID; - }; - -const TInt KTFErrAccessoryNotificationMissing = -3000; -const TInt KTFErrAccessoryServiceMissing = -4000; -const TInt KTFErrAccessoryUnexpectedStatus = -5000; -const TInt KTFErrAccessoryUnexpectedStatusParameter = -6000; -const TInt KTFErrAccessoryUnexpectedArg1 = -7000; -const TInt KTFErrAccessoryUnexpectedArg2 = -8000; -const TInt KTFErrAccessoryUnexpectedArg3 = -8500; -const TInt KTFErrAccessoryUnexpectedResult = -9000; - - -const TInt64 KBTAddrCarkit = 0x001122334455; -const TInt64 KBTAddrHeadsetHSPAndHFP = 0x112233445566; -const TInt64 KBTAddrHeadsetHSP = 0x223344556677; -const TInt64 KBTAddrHeadsetHFP = 0x334455667788; -const TInt64 KBTAddrHeadsetEmptyPR = 0x445566778899; -const TInt64 KBTAddrHeadsetNokiaSPId = 0x556677889900; -const TInt64 KBTAddrNoResponse = 0x667788990011; -const TInt64 KBTAddrErrCode = 0x778899001122; -const TInt64 KBTAllBitsOn = 0x889900112233; -const TInt64 KBTAddrHeadsetAVRCP = 0x990011223344; -const TInt64 KBTAddrHeadseA2DP = 0x111111111111; - - -const TInt KTFDontDeleteObserver = -999; - -#endif +/* +* Copyright (c) 2005 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: +* +*/ + + +#ifndef __TFACCESSORYTESTCONTROLTYPES_H__ +#define __TFACCESSORYTESTCONTROLTYPES_H__ + +#include +#include +#include + +const TUid KTFAccessoryTestProperty = {0x10200c70}; +const TUint32 KTFAccessoryMethod = 0x00001001; +const TUint32 KTFAccessoryNotifierMethod = 0x00001002; +const TUint32 KTFAccessoryObjectMethod = 0x00001003; + +enum TTFAccessoryFunction + { + ETFAccessory_None = 0, + ETFAccessoryConnection_Open, + ETFAccessoryConnection_Close, + ETFAccessorySingleConnection_Open, + ETFAccessorySingleConnection_Close, + ETFAccessoryControl_Open, + ETFAccessoryControl_Close, + ETFAccessorySettings_Open, + ETFAccessorySettings_Close, + ETFAccessoryMode_Open, + ETFAccessoryMode_Close, + ETFAccessoryAudioControl_Open, + ETFAccessoryAudioControl_Close, + ETFAccessoryBtControl_Open, + ETFAccessoryBtControl_Close, + ETFAccessoryBtConnectAccessory, + ETFAccessoryBtDisconnectAccessory, + ETFAccessoryNotifyAccessoryConnectionStatusChanged, + ETFAccessoryNotifyNewAccessoryConnected, + ETFAccessoryNotifyAccessoryDisconnected, + ETFAccessoryNotifyAccessoryModeChanged, + ETFAccessoryAccessoryModeSync, + ETFAccessoryAccessoryModeASync, + ETFAccessoryNotifyBluetoothAudioLinkOpenReq, + ETFAccessoryAudioLinkOpen, + ETFAccessoryNotifyAccessoryAudioLinkOpened, + ETFAccessoryBluetoothAudioLinkOpenedNotify, + ETFAccessoryBluetoothAudioLinkOpenResp, + ETFAccessoryNotifyAccessoryAudioLinkClosed, + ETFAccessoryNotifyBluetoothAudioLinkCloseReq, + ETFAccessoryAccessoryAudioLinkClose, + ETFAccessoryBluetoothAudioLinkClosedNotify, + ETFAccessoryBluetoothAudioLinkCloseResp, + ETFAccessoryPublishAndSubscribe, + ETFAccessoryBtCancelConnectAccessory, + ETFAccessoryBtCancelDisconnectAccessory, + ETFNotifyIntAccessoryValueChanged, + ETFNotifyBoolAccessoryValueChanged, + ETFAccessoryIntGetValue, + ETFAccessoryBoolGetValue, + ETFAccessoryDes8GetValue, + ETFConnectWiredAccessory, + ETFDisconnectWiredAccessory, + ETFSyncGetAccessoryConnectionStatus, + ETFASyncGetAccessoryConnectionStatus, + ETFSetIntValue, + ETFSetBoolValue, + ETFAccessoryValueChangedNotifyInt, + ETFAccessoryValueChangedNotifyBool, + ETFBTAccessoryValueChangedNotifyBool, + ETFSetHWDeviceSettings, + ETFGetHWDeviceSettings, + ETFGetSupportedHWDeviceSettings, + ETFSetIntAccessoryModeSetting, + ETFSetBoolAccessoryModeSetting, + ETFSetDesAccessoryModeSetting, + ETFGetIntAccessoryModeSetting, + ETFGetBoolAccessoryModeSetting, + ETFGetDesAccessoryModeSetting, + ETFSetSeveralAccessoryModeSetting, + ETFGetSeveralAccessoryModeSetting, + ETFAccessory_Cancel, + ETFAccessorySynchronized, + ETFFindAndCheckRequest, + ETFCheckAllRequest, + ETFCancelAccessoryAudioLinkOpen, + ETFCancelAccessoryAudioLinkClose, + ETFCancelNotifyAccessoryAudioLinkOpened, + ETFCancelNotifyAccessoryAudioLinkClosed, + ETFCancelNotifyProcessCommand, + ETFCancelConnectAccessory, + ETFCancelDisconnectAccessory, + ETFCancelNotifyBluetoothAudioLinkOpenReq, + ETFCancelNotifyBluetoothAudioLinkCloseReq, + ETFCancelNotifyAccessoryConnectionStatusChanged, + ETFCancelGetAccessoryConnectionStatus, + ETFCancelConnectAccessoryBT, + ETFCancelDisconnectAccessoryBT, + ETFCancelNotifyAccessoryModeChanged, + ETFCancelGetAccessoryMode, + ETFCancelNotifyNewAccessoryConnected, + ETFCancelNotifyAccessoryDisconnected, + ETFCancelNotifyAccessoryValueChanged, + ETFAccSrvSubBase, + ETFCheckCapability, + ETFAudioRoutingStatusNotify, + ETFSelectionDialogText, + ETFSelectionDialogCancel, + ETFNotSupportedNote, + ETFUISelectionIndex, + ETFCheckCapabilityGroup, + ETFValueRecordTests, + ETFCheckConnectedAccessory, + ETFAccessorySet_PubSub, + ETFClearStack, + ETFCancelConnects, + ETFCallTClassMethods, + ETFBTAccessoryValueChangedNotifyInt, + ETFAccessorySet_ObjectPubSub, + ETFAccessorySet_TopologyObjectsPubSub, + ETFAccessoryGetTopologyObjects, + ETFAccessoryGetVolumeControlObjects, + ETFAccessorySetVolumeControlObjects, + ETFAccessoryGetMuteControlObjects, + ETFAccessorySetMuteControlObjects, + ETFAccessoryObjectParseTopology, + ETFAccessoryGetStreamObjects, + ETFAccessorySetStreamObjects, + ETFObjectBaseSerializationTests, + ETFAccessoryGetStreamObjectsFromPolicy, + ETFNotifyObjectAccessoryValueChanged, + ETFFindAndCheckObjectRequest, + ETFSetHdmiObject_PubSub, + ETFGetHdmiObject, + ETFCheckHdmiObject + }; + +enum TTFAccessoryParameterResult + { + ETFEAccUnsupportedConnected = 0, + ETFAccModeHandPortable = 1, + ETFAccModeWiredHeadset = 2, + ETFAccModeWirelessHeadset = 3, + ETFAccModeWiredCarKit = 4, + ETFAccModeWirelessCarKit = 5, + ETFAccModeTextDevice = 6, + ETFAccModeLoopset = 7, + ETFAccModeMusicStand = 8 + }; + + +enum TTFRequestType + { + ReqAccRequestNone =0, + ReqNotifyNewAccessoryConnected =1, + ReqNotifyAccessoryDisconnected =2, + ReqNotifyAccessoryModeChanged =3, + ReqNotifyAccessoryConnectionStatusChanged =4, + ReqAccessoryAudioLinkOpen =5, + ReqNotifyAccessoryAudioLinkOpened =6, + ReqNotifyAccessoryAudioLinkClosed =7, + ReqAccessoryAudioLinkClose =8, + ReqNotifyBluetoothAudioLinkOpenReq =9, + ReqNotifyBluetoothAudioLinkCloseReq =10, + ReqConnectBtAccessory =11, + ReqDisconnectBtAccessory =12, + ReqNotifyBooleanAccessoryValueChanged =13, + ReqNotifyIntegerAccessoryValueChanged =14, + ReqGetAccessoryConnectionStatus =15, + ReqAccessoryConnection =16, + ReqAccessoryDisconnection =17, + ReqNotifyAccessoryValueChanged =18, + ReqGetAccessoryMode =19, + ReqNotifyObjectAccessoryValueChanged =20 + }; + +enum TTFASYReference + { + ETFAsyNone =0, + ETFAsyConn, + ETFAsyDisc, + ETFAsyIntNotify, + ETFAsyBoolNotify, + ETFAsyObjectNotify, + ETFBTALinkClosedNo, + ETFBTALinkOpenedNo, + ETFAsySetCapability, + ETFAsySetBoolValue, + ETFAsyConnOpenCable, + ETFAsyUpdateTVOut, + ETFAsyUpdateHeadset, + ETFAsyConnectECIAccessory, + ETFAsyConnectHeadset, + ETFAsyConnectOpenCable3Poles, + ETFAsyConnUSB, + ETFAsyConnUSB2, + ETFAsyConnHDMI + }; + + +struct TTFAccessoryTestCaseStateControl + { + TTFAccessoryFunction iAccessoryFunction; + TInt iGid; //defines the index of the gereric ID to be used in TestControl + TInt64 iArg1; + TInt64 iArg2; + TUint32 iArg3; + TInt64 iArg4; //Reserved + TInt iTestCaseID; + TTFASYReference iMethod; + TTFRequestType iRequestType; + TInt iExpectedResult; + TInt iTimer;//Specifies the time which is waited before next state is executed + }; + +struct TTFAccessoryPublishAndSubscribe + { + TInt iTestCaseID; + TTFASYReference iMethod; + TInt64 iParam1; + TUint32 iParam2; + TInt iTimeMs;//0 means that command is server synchronously + TAccPolGenericID iGenericID; + }; + +const TInt KTFErrAccessoryNotificationMissing = -3000; +const TInt KTFErrAccessoryServiceMissing = -4000; +const TInt KTFErrAccessoryUnexpectedStatus = -5000; +const TInt KTFErrAccessoryUnexpectedStatusParameter = -6000; +const TInt KTFErrAccessoryUnexpectedArg1 = -7000; +const TInt KTFErrAccessoryUnexpectedArg2 = -8000; +const TInt KTFErrAccessoryUnexpectedArg3 = -8500; +const TInt KTFErrAccessoryUnexpectedResult = -9000; + + +const TInt64 KBTAddrCarkit = 0x001122334455; +const TInt64 KBTAddrHeadsetHSPAndHFP = 0x112233445566; +const TInt64 KBTAddrHeadsetHSP = 0x223344556677; +const TInt64 KBTAddrHeadsetHFP = 0x334455667788; +const TInt64 KBTAddrHeadsetEmptyPR = 0x445566778899; +const TInt64 KBTAddrHeadsetNokiaSPId = 0x556677889900; +const TInt64 KBTAddrNoResponse = 0x667788990011; +const TInt64 KBTAddrErrCode = 0x778899001122; +const TInt64 KBTAllBitsOn = 0x889900112233; +const TInt64 KBTAddrHeadsetAVRCP = 0x990011223344; +const TInt64 KBTAddrHeadseA2DP = 0x111111111111; + + +const TInt KTFDontDeleteObserver = -999; + +#endif diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestCaseControl.cpp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestCaseControl.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestCaseControl.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,441 +1,441 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES -#include -#include -#include -#include - -#include "siftrace.h" -#include "CtfAccessoryTestControl.h" -#include "CtfAccessoryTestCaseControl.h" -#include "CtfAccessoryTestCaseParamControl.h" - -CTFAccessoryTestCaseParamControl::CTFAccessoryTestCaseParamControl( void ) - { - - } - -void CTFAccessoryTestCaseParamControl::ConstructL( const TTFAccessoryTestCaseStateControl* aStates, - TInt aStateCount ) - { - TRACE_ASSERT( aStates != NULL ); - TRACE_ASSERT( aStateCount> 0 ); - iStates = REINTERPRET_CAST( TTFAccessoryTestCaseStateControl*, User::Alloc( sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ) ); - User::LeaveIfNull( iStates ); - Mem::Copy( iStates, aStates, sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ); - iStateCount = aStateCount; - } - -CTFAccessoryTestCaseParamControl::~CTFAccessoryTestCaseParamControl( void ) - { - User::Free( iStates ); - iStates = NULL; - } - -const TTFAccessoryTestCaseStateControl* CTFAccessoryTestCaseParamControl::States( void ) const - { - return iStates; - } - -TInt CTFAccessoryTestCaseParamControl::StateCount( void ) const - { - return iStateCount; - } - -CTFAccessoryTestCaseControl::CTFAccessoryTestCaseControl( CTFAccessoryTestCaseParamControl* aParameters ) : - CTFStubTestCase( KTFStubTypeAccessoryControl ), iParameters( aParameters ) - { - TRACE_ASSERT( aParameters != NULL ); - if ( aParameters != NULL ) - { - TRACE_ASSERT( aParameters->States() != NULL ); - TRACE_ASSERT( aParameters->StateCount()> 0 ); - } - } - -void CTFAccessoryTestCaseControl::ConstructL( void ) - { - iTimer = CTFATestTimer::NewL( *this ); - } - -CTFAccessoryTestCaseControl::~CTFAccessoryTestCaseControl( void ) - { - delete iParameters; - delete iTimer; - } - -void CTFAccessoryTestCaseControl::Log( TInt /*aDepth*/) - { - } - -void CTFAccessoryTestCaseControl::InitL( void ) - { - iCleanupWait = EFalse; - iCurrentStateIndex = 0; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - iStoredArg1 = KTFErrAccessoryUnexpectedArg1; - iStoredArg2 = KTFErrAccessoryUnexpectedArg1; - iStatusReceive = EFalse; - } - -void CTFAccessoryTestCaseControl::ActiveTestRunL( void ) - { - if( iCleanupWait ) - { - CActiveScheduler::Stop(); - } - else - { - RunL(); - } - } - -void CTFAccessoryTestCaseControl::RunL( void ) - { - TInt result = KErrNone; - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - enter" ) ) ); - - if( ( iCurrentState.iAccessoryFunction != 0 ) ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - CallCurrentAccessoryFunctionL (%d)" ),iCurrentState.iAccessoryFunction ) ); - TRAP( result, CallCurrentAccessoryFunctionL() ); - } - - result = CheckResult( result, EFalse ); - - StartNextState( result ); - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - return" ) ) ); - } - -void CTFAccessoryTestCaseControl::Teardown( void ) - { - // If the test is terminated by a failing stub test case, - // the timer may be left active and thus must be cancelled. - iTimer->Cancel(); - iTimer->After( 100000 ); - iCleanupWait = ETrue; - CActiveScheduler::Start(); - } - -void CTFAccessoryTestCaseControl::DoCompleteTest( TInt aResult ) - { - iTimer->Cancel(); - CompleteTest( aResult ); - } - -void CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL( void ) - { - TRACE_ASSERT( iStub != NULL ); - if ( iStub != NULL ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Stub %x" ), iStub ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->CallAccessoryFunctionL( iCurrentState ); - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Leave - KErrNoStub" ) ) ); - User::Leave( KTFErrNoStub ); - } - } - -CTFAccessoryTestCaseParamControl& CTFAccessoryTestCaseControl::Parameters( void ) - { - return *iParameters; - } - -TTFAccessoryFunction CTFAccessoryTestCaseControl::CurrentAccessoryFunction( void ) const - { - return iCurrentState.iAccessoryFunction; - } - -TInt CTFAccessoryTestCaseControl::CurrentArg1( void ) const - { - return iCurrentState.iArg1; - } - -TInt CTFAccessoryTestCaseControl::CurrentStateIndex( void ) const - { - return iCurrentStateIndex; - } - -CTFATestTimer* CTFAccessoryTestCaseControl::Timer( void ) - { - return iTimer; - } - -void CTFAccessoryTestCaseControl::StartNextState( TInt aResult ) - { - if( aResult != /*iParameters->States()[iCurrentStateIndex].iExpectedResult*/KErrNone ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case failed: %d" ), aResult ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Failed state: %d" ), iCurrentStateIndex) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( aResult ); - } - else if( iCurrentStateIndex == iParameters->StateCount() - 1 ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case complete" ) ) ); - DoCompleteTest( KErrNone ); - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Starting state %d" ), iCurrentStateIndex ) ); - if( !iTimer->IsActive() ) - { - iTimer->After( iCurrentState.iTimer ); - } - iCurrentStateIndex++; - iCurrentState = iParameters->States()[iCurrentStateIndex]; - } - } - -// Checks that the test results are expected: -// - iExpectedResult matches unless IgnoreResult flag is set -// - Test parameters match unless IgnoreParameters flag is set -TInt CTFAccessoryTestCaseControl::CheckResult( TInt aResult, TBool /*isCompleted*/) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult(%d)" ), aResult ) ); - TInt result( KErrNone ); - - if( aResult == KErrNotSupported ) - { - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - result = KErrNotSupported; - } - else if( aResult == KTFDontDeleteObserver ) - { - result = KErrNone; - } - else - { - result = aResult; - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult - result: %d" ), result ) ); - return result; - } - -// -// Check request result -// -void CTFAccessoryTestCaseControl::CheckRequest( TRequestStatus aStatus, TInt64 aValue, TUint32& aCapability, TInt* aErr ) - { - - TTFAccessoryTestCaseStateControl aCurrentState = - iParameters->States()[iCurrentStateIndex]; - - if( ( aStatus != KRequestPending ) && - ( aStatus == aCurrentState.iExpectedResult ) ) - { - - if( aCapability ) - { - if( iParameters->States()[iCurrentStateIndex].iArg3 == aCapability ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); - } - } - - if( iParameters->States()[iCurrentStateIndex].iArg1 != aValue ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg1 received" ), iParameters->States()[iCurrentStateIndex].iArg1, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg1 ); - } - - - } - else - { - if(aStatus == KRequestPending) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - if(aErr != NULL) - { - (*aErr) = KTFDontDeleteObserver; - } - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Other than KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - if( aCurrentState.iArg1 == KTFDontDeleteObserver ) - { - //OK, This means that this message shouldn't be received - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); - } - } - } - -} - -void CTFAccessoryTestCaseControl::CheckObjectRequest( TRequestStatus aStatus, - TAccValueTypeObject& aValue, - TUint32& aCapability ) - { - - TTFAccessoryTestCaseStateControl currentState = - iParameters->States()[iCurrentStateIndex]; - - if( ( aStatus != KRequestPending ) && - ( aStatus == currentState.iExpectedResult ) ) - { - - if( aCapability ) - { - if( currentState.iArg3 == aCapability ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); - } - } - else - { - CAccPolObjectCon* conFromASY = NULL; - CAccPolObjectCon* conFromPS = NULL; - switch( currentState.iArg3 ) - { - case KAccAudioUnits: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccAudioUnits" ) ) ); - conFromASY = CAccPolAudioTopologyObjectCon::NewLC(); - conFromPS = CAccPolAudioTopologyObjectCon::NewLC(); - break; - } - case KAccVideoHdmiAttributes: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoHdmiAttributes" ) ) ); - conFromASY = CAccPolHdmiObjectCon::NewLC(); - conFromPS = CAccPolHdmiObjectCon::NewLC(); - break; - } - case KAccVideoFormat: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoFormat" ) ) ); - conFromASY = CAccPolHdmiObjectCon::NewLC(); - conFromPS = CAccPolHdmiObjectCon::NewLC(); - break; - } - default: - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Unknown name!" ) ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - break; - } - } - - // Get object container from ASY - RDesReadStream readStream( aValue.iValue ); - readStream.PushL(); - conFromASY->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - - // Get object container from P&S - CBufFlat* valueBuf = CBufFlat::NewL( 50 ); - CleanupStack::PushL( valueBuf ); - valueBuf->ResizeL( 256 ); - TPtr8 valueBufPtr( valueBuf->Ptr( 0 ) ); - TInt err = RProperty::Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - valueBufPtr ); - if( err == KErrNone ) - { - readStream.Open( valueBufPtr ); - readStream.PushL(); - conFromPS->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - } - else - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Failed to read P&S cat=KTFAccessoryTestProperty, key=KTFAccessoryObjectMethod, err=%d" ), err ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - - // Validate: object count - if( conFromASY->Count() != conFromPS->Count() ) - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - - // Validate: Capability specific check - switch( currentState.iArg3 ) - { - case KAccVideoFormat: - { - // Check that video object can be found - CAccPolHdmiObjectCon* con = - static_cast( conFromASY ); - RAccPolHdmiVideoFormatArray array; - CleanupClosePushL( array ); - con->GetHdmiVideoFormatObjectsL( array ); - if( !array.Count() ) - { - TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedResult ); - } - CleanupStack::PopAndDestroy( &array ); - break; - } - default: - { - break; - } - } - - // Clean up - CleanupStack::PopAndDestroy( valueBuf ); - CleanupStack::PopAndDestroy( conFromPS ); - CleanupStack::PopAndDestroy( conFromASY ); - } - } - else - { - if( currentState.iArg1 == KTFDontDeleteObserver ) - { - //OK, This means that this message shouldn't be received - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), currentState.iAccessoryFunction, currentState.iRequestType ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); - STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); - DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); - } - } - } - +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES +#include +#include +#include +#include + +#include "siftrace.h" +#include "CtfAccessoryTestControl.h" +#include "CtfAccessoryTestCaseControl.h" +#include "CtfAccessoryTestCaseParamControl.h" + +CTFAccessoryTestCaseParamControl::CTFAccessoryTestCaseParamControl( void ) + { + + } + +void CTFAccessoryTestCaseParamControl::ConstructL( const TTFAccessoryTestCaseStateControl* aStates, + TInt aStateCount ) + { + TRACE_ASSERT( aStates != NULL ); + TRACE_ASSERT( aStateCount> 0 ); + iStates = REINTERPRET_CAST( TTFAccessoryTestCaseStateControl*, User::Alloc( sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ) ); + User::LeaveIfNull( iStates ); + Mem::Copy( iStates, aStates, sizeof ( TTFAccessoryTestCaseStateControl ) * aStateCount ); + iStateCount = aStateCount; + } + +CTFAccessoryTestCaseParamControl::~CTFAccessoryTestCaseParamControl( void ) + { + User::Free( iStates ); + iStates = NULL; + } + +const TTFAccessoryTestCaseStateControl* CTFAccessoryTestCaseParamControl::States( void ) const + { + return iStates; + } + +TInt CTFAccessoryTestCaseParamControl::StateCount( void ) const + { + return iStateCount; + } + +CTFAccessoryTestCaseControl::CTFAccessoryTestCaseControl( CTFAccessoryTestCaseParamControl* aParameters ) : + CTFStubTestCase( KTFStubTypeAccessoryControl ), iParameters( aParameters ) + { + TRACE_ASSERT( aParameters != NULL ); + if ( aParameters != NULL ) + { + TRACE_ASSERT( aParameters->States() != NULL ); + TRACE_ASSERT( aParameters->StateCount()> 0 ); + } + } + +void CTFAccessoryTestCaseControl::ConstructL( void ) + { + iTimer = CTFATestTimer::NewL( *this ); + } + +CTFAccessoryTestCaseControl::~CTFAccessoryTestCaseControl( void ) + { + delete iParameters; + delete iTimer; + } + +void CTFAccessoryTestCaseControl::Log( TInt /*aDepth*/) + { + } + +void CTFAccessoryTestCaseControl::InitL( void ) + { + iCleanupWait = EFalse; + iCurrentStateIndex = 0; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + iStoredArg1 = KTFErrAccessoryUnexpectedArg1; + iStoredArg2 = KTFErrAccessoryUnexpectedArg1; + iStatusReceive = EFalse; + } + +void CTFAccessoryTestCaseControl::ActiveTestRunL( void ) + { + if( iCleanupWait ) + { + CActiveScheduler::Stop(); + } + else + { + RunL(); + } + } + +void CTFAccessoryTestCaseControl::RunL( void ) + { + TInt result = KErrNone; + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - enter" ) ) ); + + if( ( iCurrentState.iAccessoryFunction != 0 ) ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - CallCurrentAccessoryFunctionL (%d)" ),iCurrentState.iAccessoryFunction ) ); + TRAP( result, CallCurrentAccessoryFunctionL() ); + } + + result = CheckResult( result, EFalse ); + + StartNextState( result ); + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::RunL() - return" ) ) ); + } + +void CTFAccessoryTestCaseControl::Teardown( void ) + { + // If the test is terminated by a failing stub test case, + // the timer may be left active and thus must be cancelled. + iTimer->Cancel(); + iTimer->After( 100000 ); + iCleanupWait = ETrue; + CActiveScheduler::Start(); + } + +void CTFAccessoryTestCaseControl::DoCompleteTest( TInt aResult ) + { + iTimer->Cancel(); + CompleteTest( aResult ); + } + +void CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL( void ) + { + TRACE_ASSERT( iStub != NULL ); + if ( iStub != NULL ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Stub %x" ), iStub ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->CallAccessoryFunctionL( iCurrentState ); + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CallCurrentAccessoryFunctionL(void) - Leave - KErrNoStub" ) ) ); + User::Leave( KTFErrNoStub ); + } + } + +CTFAccessoryTestCaseParamControl& CTFAccessoryTestCaseControl::Parameters( void ) + { + return *iParameters; + } + +TTFAccessoryFunction CTFAccessoryTestCaseControl::CurrentAccessoryFunction( void ) const + { + return iCurrentState.iAccessoryFunction; + } + +TInt CTFAccessoryTestCaseControl::CurrentArg1( void ) const + { + return iCurrentState.iArg1; + } + +TInt CTFAccessoryTestCaseControl::CurrentStateIndex( void ) const + { + return iCurrentStateIndex; + } + +CTFATestTimer* CTFAccessoryTestCaseControl::Timer( void ) + { + return iTimer; + } + +void CTFAccessoryTestCaseControl::StartNextState( TInt aResult ) + { + if( aResult != /*iParameters->States()[iCurrentStateIndex].iExpectedResult*/KErrNone ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case failed: %d" ), aResult ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Failed state: %d" ), iCurrentStateIndex) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( aResult ); + } + else if( iCurrentStateIndex == iParameters->StateCount() - 1 ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Test case complete" ) ) ); + DoCompleteTest( KErrNone ); + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::StartNextState() - Starting state %d" ), iCurrentStateIndex ) ); + if( !iTimer->IsActive() ) + { + iTimer->After( iCurrentState.iTimer ); + } + iCurrentStateIndex++; + iCurrentState = iParameters->States()[iCurrentStateIndex]; + } + } + +// Checks that the test results are expected: +// - iExpectedResult matches unless IgnoreResult flag is set +// - Test parameters match unless IgnoreParameters flag is set +TInt CTFAccessoryTestCaseControl::CheckResult( TInt aResult, TBool /*isCompleted*/) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult(%d)" ), aResult ) ); + TInt result( KErrNone ); + + if( aResult == KErrNotSupported ) + { + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + result = KErrNotSupported; + } + else if( aResult == KTFDontDeleteObserver ) + { + result = KErrNone; + } + else + { + result = aResult; + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckResult - result: %d" ), result ) ); + return result; + } + +// +// Check request result +// +void CTFAccessoryTestCaseControl::CheckRequest( TRequestStatus aStatus, TInt64 aValue, TUint32& aCapability, TInt* aErr ) + { + + TTFAccessoryTestCaseStateControl aCurrentState = + iParameters->States()[iCurrentStateIndex]; + + if( ( aStatus != KRequestPending ) && + ( aStatus == aCurrentState.iExpectedResult ) ) + { + + if( aCapability ) + { + if( iParameters->States()[iCurrentStateIndex].iArg3 == aCapability ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); + } + } + + if( iParameters->States()[iCurrentStateIndex].iArg1 != aValue ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest expect: %Ld, value: %Ld - Unexpected arg1 received" ), iParameters->States()[iCurrentStateIndex].iArg1, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg1 ); + } + + + } + else + { + if(aStatus == KRequestPending) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + if(aErr != NULL) + { + (*aErr) = KTFDontDeleteObserver; + } + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Other than KRequestPending=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + if( aCurrentState.iArg1 == KTFDontDeleteObserver ) + { + //OK, This means that this message shouldn't be received + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), aCurrentState.iAccessoryFunction, aCurrentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); + } + } + } + +} + +void CTFAccessoryTestCaseControl::CheckObjectRequest( TRequestStatus aStatus, + TAccValueTypeObject& aValue, + TUint32& aCapability ) + { + + TTFAccessoryTestCaseStateControl currentState = + iParameters->States()[iCurrentStateIndex]; + + if( ( aStatus != KRequestPending ) && + ( aStatus == currentState.iExpectedResult ) ) + { + + if( aCapability ) + { + if( currentState.iArg3 == aCapability ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest expect: %Ld, value: %Ld - Unexpected arg3 received" ), iParameters->States()[iCurrentStateIndex].iArg3, aValue ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedArg3 ); + } + } + else + { + CAccPolObjectCon* conFromASY = NULL; + CAccPolObjectCon* conFromPS = NULL; + switch( currentState.iArg3 ) + { + case KAccAudioUnits: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccAudioUnits" ) ) ); + conFromASY = CAccPolAudioTopologyObjectCon::NewLC(); + conFromPS = CAccPolAudioTopologyObjectCon::NewLC(); + break; + } + case KAccVideoHdmiAttributes: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoHdmiAttributes" ) ) ); + conFromASY = CAccPolHdmiObjectCon::NewLC(); + conFromPS = CAccPolHdmiObjectCon::NewLC(); + break; + } + case KAccVideoFormat: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Check object for name KAccVideoFormat" ) ) ); + conFromASY = CAccPolHdmiObjectCon::NewLC(); + conFromPS = CAccPolHdmiObjectCon::NewLC(); + break; + } + default: + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Unknown name!" ) ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + break; + } + } + + // Get object container from ASY + RDesReadStream readStream( aValue.iValue ); + readStream.PushL(); + conFromASY->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + + // Get object container from P&S + CBufFlat* valueBuf = CBufFlat::NewL( 50 ); + CleanupStack::PushL( valueBuf ); + valueBuf->ResizeL( 256 ); + TPtr8 valueBufPtr( valueBuf->Ptr( 0 ) ); + TInt err = RProperty::Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + valueBufPtr ); + if( err == KErrNone ) + { + readStream.Open( valueBufPtr ); + readStream.PushL(); + conFromPS->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + } + else + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: Failed to read P&S cat=KTFAccessoryTestProperty, key=KTFAccessoryObjectMethod, err=%d" ), err ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + + // Validate: object count + if( conFromASY->Count() != conFromPS->Count() ) + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + + // Validate: Capability specific check + switch( currentState.iArg3 ) + { + case KAccVideoFormat: + { + // Check that video object can be found + CAccPolHdmiObjectCon* con = + static_cast( conFromASY ); + RAccPolHdmiVideoFormatArray array; + CleanupClosePushL( array ); + con->GetHdmiVideoFormatObjectsL( array ); + if( !array.Count() ) + { + TEST_CASE_TRACE( ( _L("CTFAccessoryTestCaseControl::CheckObjectsRequest: conFromASY <> conFromPS: Count does not match") ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedResult ); + } + CleanupStack::PopAndDestroy( &array ); + break; + } + default: + { + break; + } + } + + // Clean up + CleanupStack::PopAndDestroy( valueBuf ); + CleanupStack::PopAndDestroy( conFromPS ); + CleanupStack::PopAndDestroy( conFromASY ); + } + } + else + { + if( currentState.iArg1 == KTFDontDeleteObserver ) + { + //OK, This means that this message shouldn't be received + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - Unexpected status=%d received for func=%d RequestType=%d" ), aStatus.Int(), currentState.iAccessoryFunction, currentState.iRequestType ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::CheckObjectsRequest - current state index: %d" ), iCurrentStateIndex ) ); + STATIC_CAST( CTFAccessoryTestControl*, iStub )->ResetAccessoryServer(); + DoCompleteTest( KTFErrAccessoryUnexpectedStatus ); + } + } + } + diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControl.cpp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControl.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControl.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4698 +1,4698 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES - -#include -#include -#include -#include "siftrace.h" -#include "CtfAccessoryTestcontrol.h" -#include "CtfAccessoryTestCaseControl.h" -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include "AccClientServerMessages.h" -#include - -#include -#include - -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl* GetAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl* GetAccessoryTestControl( void ) - { - CTFStub* stub = CTFFactory::Stub( KTFStubTypeAccessoryControl ); - return STATIC_CAST( CTFAccessoryTestControl*, stub ); - } -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl::MTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl::MTFAccessoryTestControl( void ) - { - } -// -// ---------------------------------------------------------------------------------- -// MTFAccessoryTestControl::~MTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -MTFAccessoryTestControl::~MTFAccessoryTestControl( void ) - { - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -CTFAccessoryTestControl::CTFAccessoryTestControl( void ) : - CTFRemoteStub( KTFStubTypeAccessoryControl ), - iStack( CTFTestControlObserver::iOffset ), iStackIter( iStack ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl()" ) ) ); - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl() - return" ) ) ); - } - -//lint -e1740 Pointer not directly deleted by destructor -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::~CTFAccessoryTestControl -// ---------------------------------------------------------------------------------- -CTFAccessoryTestControl::~CTFAccessoryTestControl( void ) - { - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl()" ) ) ); - RProperty::Delete( KTFAccessoryTestProperty, KTFAccessoryMethod ); - - ResetAccessoryServices(); - - iAccessoryServer.Disconnect(); - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl() - Accessory Server connection closed" ) ) ); - - } -//lint +e1740 -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::InitializeL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::InitializeL( void ) - { - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - enter" ) ) ); - TInt retval( KErrNone ); - - iAccessoryConnection = NULL; - iAccessorySingleConnection = NULL; - iAccessoryControl = NULL; - iAccessorySettings = NULL; - iAccessoryMode = NULL; - iAccessoryAudioControl = NULL; - iAccessoryBTControl = NULL; - - iStreamContainer = NULL; - iTopologyContainer = NULL; - iSpeakerRightVolume = NULL; - iSpeakerLeftVolume = NULL; - iSpeakerMute = NULL; - iMicRightVolume = NULL; - iMicLeftVolume = NULL; - - TAccPolGenericID emptyInstance; - for( TInt i( 0 ); i < 10; i++ ) - { - iGenericId[i] = emptyInstance; - } - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL()" ) ) ); - - User::LeaveIfError( iAccessoryServer.Connect() ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL() - Connected to accessory server" ) ) ); - - retval = RProperty::Define( KTFAccessoryTestProperty, - KTFAccessoryMethod, - RProperty::EByteArray ); - if( retval != KErrAlreadyExists ) - User::LeaveIfError( retval ); - //attach to property - - - RProperty systemState; - User::LeaveIfError( systemState.Attach( KPSUidStartup, KPSGlobalSystemState ) ); - TInt value( KErrNone ); - //check value - TInt err = systemState.Get( value ); - - if( err != KErrNone ) - { - err = systemState.Define( KPSUidStartup, - KPSGlobalSystemState, - RProperty::EInt ); - TInt err = systemState.Get( value ); - } - - if( value != ESwStateNormalRfOn || value != ESwStateNormalRfOff || value - != ESwStateNormalBTSap ) - { - TInt err = systemState.Set( KPSUidStartup, - KPSGlobalSystemState, - ESwStateNormalRfOn ); - } - - iInitialized = ETrue; - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL - return" ) ) ); - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ResetAccessoryServices -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ResetAccessoryServices( void ) - { - ResetAccessoryServer(); - - iInitialized = EFalse; - - iAccessoryServer.Close(); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ResetAccessoryServer -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ResetAccessoryServer( void ) - { - - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer()" ) ) ); - - CTFTestControlObserver* observerItem; - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( observerItem = iStackIter++ ) != NULL ) - { - observerItem->Cancel(); - User::After( 2000000 ); - iStack.Remove( *observerItem ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Remove Observer" ) ) ); - delete observerItem; - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Delete Observer" ) ) ); - }; - } - - iStack.Reset(); - - TAccPolGenericID emptyInstance; - - for( TInt i( 0 ); i < 10; i++ ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Clear instances" ) ) ); - if( KErrNotFound != iGenericId[i].UniqueID() ) - { - if( iGenericId[i].PhysicalConnectionCaps( KPCBluetooth ) ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Found" ) ) ); - TBTDevAddr BTDevAddr( iGenericId[i].DeviceAddress() ); - if( iAccessoryBTControl != NULL ) - { - TRequestStatus status; - status = KRequestPending; - iAccessoryBTControl->DisconnectAccessory( status, BTDevAddr ); - User::WaitForRequest( status ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Disconnected" ) ) ); - } - } - else - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Found" ) ) ); - TPckgBuf buf; - buf().iMethod = ETFAsyDisc; - User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, - KTFAccessoryMethod, - buf ) ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Disconnected" ) ) ); - } - } - iGenericId[i] = emptyInstance; - } - - if( iAccessoryConnection != NULL ) - { - iAccessoryConnection->CloseSubSession(); - delete iAccessoryConnection; - iAccessoryConnection = NULL; - } - - if( iAccessorySingleConnection != NULL ) - { - iAccessorySingleConnection->CloseSubSession(); - delete iAccessorySingleConnection; - iAccessorySingleConnection = NULL; - } - if( iAccessoryControl != NULL ) - { - iAccessoryControl->CloseSubSession(); - delete iAccessoryControl; - iAccessoryControl = NULL; - } - if( iAccessorySettings != NULL ) - { - iAccessorySettings->CloseSubSession(); - delete iAccessorySettings; - iAccessorySettings = NULL; - } - if( iAccessoryMode != NULL ) - { - iAccessoryMode->CloseSubSession(); - delete iAccessoryMode; - iAccessoryMode = NULL; - } - - if( iAccessoryAudioControl != NULL ) - { - iAccessoryAudioControl->CloseSubSession(); - delete iAccessoryAudioControl; - iAccessoryAudioControl = NULL; - } - - if( iAccessoryBTControl != NULL ) - { - iAccessoryBTControl->CloseSubSession(); - delete iAccessoryBTControl; - iAccessoryBTControl = NULL; - } - - if( iSpeakerRightVolume != NULL ) - { - delete iSpeakerRightVolume; - iSpeakerRightVolume = NULL; - } - - if( iSpeakerLeftVolume != NULL ) - { - delete iSpeakerLeftVolume; - iSpeakerLeftVolume = NULL; - } - - if( iSpeakerMute != NULL ) - { - delete iSpeakerMute; - iSpeakerMute = NULL; - } - - if( iMicRightVolume != NULL ) - { - delete iMicRightVolume; - iMicRightVolume = NULL; - } - - if( iMicLeftVolume != NULL ) - { - delete iMicLeftVolume; - iMicLeftVolume = NULL; - } - - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer() - Success" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CancelOutStandingRequest -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CancelOutStandingRequest() - { - iObserverItem->Cancel(); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::FillObjectL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::FillObjectL( CAccPolAudioStreamFormatCon* aContainer, - TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects ) - { - - for( TInt i = 0; i < aNumberOfObjects; i++ ) - { - switch( aobjectType ) - { - case EAccPolAudioInputStreamObject: - { - CAccPolAudioStreamFormat* stream = - CAccPolAudioStreamFormat::NewLC( aobjectType, - i, - KUidFormatPCM16, - CAccPolAudioStreamFormat::EStereo, - CAccPolAudioStreamFormat::EBitsPerSample16, - i + 200 ); - aContainer->AddL( *stream ); - CleanupStack::PopAndDestroy( stream ); - } - break; - - case EAccPolAudioOutputStreamObject: - { - - CAccPolAudioStreamFormat - * stream = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioOutputStreamObject ); - - stream->SetUnitId( i ); - stream->SetAudioFormat( KUidFormatPCM16 ); - stream->SetStreamType( CAccPolAudioStreamFormat::EMono ); - stream->SetBitResolution( CAccPolAudioStreamFormat::EBitsPerSample32 ); - stream->SetSamFreq( i + 200 ); - - aContainer->AddL( *stream ); - CleanupStack::PopAndDestroy( stream ); - } - break; - - default: - { - TRACE_ASSERT_ALWAYS; - } - break; - } - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateObjectPubSub -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateObjectPubSubL( TStreamConObjectType aobjectType, - TInt64 aNumberOfObjects, - TStreamConObjectType aobjectType2, - TInt64 aNumberOfObjects2 ) - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - CAccPolAudioStreamFormatCon* container = - CAccPolAudioStreamFormatCon::NewLC(); - - FillObjectL( container, aobjectType, aNumberOfObjects ); - FillObjectL( container, aobjectType2, aNumberOfObjects2 ); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize container to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - container->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - TPtr8 ptr( buf->Ptr( 0 ) ); - - TInt retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( container ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateObjectPubSub -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateTopologyObjectsToPubSubL( - TTFAccessoryTestCaseStateControl& aParameter ) - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - CAccPolAudioTopologyObjectCon* aObject = - CAccPolAudioTopologyObjectCon::NewLC(); - - //Speaker - //OT-3 - CAccPolOutputTerminal* OT3 = CAccPolOutputTerminal::NewLC( 3, - CAccPolOutputTerminal::EAPTHeadphone, - 2 ); - //Connected to FU-2 - aObject->AddL( *OT3 ); - - //FU2 - CAccPolFeatureUnit* FU2 = CAccPolFeatureUnit::NewLC( 2, 8 ); - // Volume control object. - CAccPolVolumeControl* speakerRightVolume = - CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* speakerLeftVolume = - CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); - - CAccPolMuteControl* speakermute = - CAccPolMuteControl::NewLC( KAccMasterChannel, ETrue ); - - FU2->AddControlL( *speakerRightVolume ); - FU2->AddControlL( *speakerLeftVolume ); - FU2->AddControlL( *speakermute ); - - //Connected to MU-8 - aObject->AddL( *FU2 ); - - CAccPolMixerUnit* MU8 = CAccPolMixerUnit::NewLC( 8 ); - MU8->AddSourceIdL( 1 ); - MU8->AddSourceIdL( 7 ); - - //Connected to IT1 and FU7 - aObject->AddL( *MU8 ); - - //Choice one - //IT-1 - TUint8 aChannelCount = 2; - TUint16 aChannelConfig = 0; - aChannelConfig = aChannelConfig | KAccRightFrontChannel; - aChannelConfig = aChannelConfig | KAccLeftFrontChannel; - - CAccPolInputTerminal* IT1 = CAccPolInputTerminal::NewLC( 1, - CAccPolInputTerminal::EAPTStream, - aChannelCount, - aChannelConfig ); - aObject->AddL( *IT1 ); - - //choice two - //FU7 - CAccPolFeatureUnit* FU7 = CAccPolFeatureUnit::NewLC( 7, 5 ); //Connected to FU5 - // Volume control object. - CAccPolVolumeControl* sidetoneRightVolume = - CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* sidetoneLeftVolume = - CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); - - FU7->AddControlL( *sidetoneRightVolume ); - FU7->AddControlL( *sidetoneLeftVolume ); - - aObject->AddL( *FU7 ); - - //Microphone - //IT-4 - - //OT-6 - CAccPolOutputTerminal* OT6 = CAccPolOutputTerminal::NewLC( 6, - CAccPolOutputTerminal::EAPTStream, - 10 ); - //Connected to SU-10 - aObject->AddL( *OT6 ); - - //SU-10 - CAccPolSelectorUnit* SU10 = CAccPolSelectorUnit::NewLC( 10, 1 ); - - // Connected to FU 5 - SU10->AddSourceIdL( 5 ); - aObject->AddL( *SU10 ); - - //FU5 - CAccPolFeatureUnit* FU5 = CAccPolFeatureUnit::NewLC( 5, 9 ); - - // Volume control object. - CAccPolVolumeControl* micRightVolume = - CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); - CAccPolVolumeControl* micLeftVolume = - CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); - CAccPolMuteControl* micmute = CAccPolMuteControl::NewLC( KAccMasterChannel, - ETrue ); - - FU5->AddControlL( *micRightVolume ); - FU5->AddControlL( *micLeftVolume ); - FU5->AddControlL( *micmute ); - - //Connected to FU-9 - aObject->AddL( *FU5 ); - - ///FU9 - CAccPolFeatureUnit* FU9 = CAccPolFeatureUnit::NewLC( 9, 4 ); - //Connected IT-4 - aObject->AddL( *FU9 ); - - CAccPolInputTerminal* IT4 = CAccPolInputTerminal::NewLC( 4, - CAccPolInputTerminal::EAPTMicrophone, - aChannelCount, - aChannelConfig ); - aObject->AddL( *IT4 ); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize container to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - aObject->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - TInt retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - // Notify ASY stub - if( aParameter.iArg2 ) - { - PublishAndSubscribeL( aParameter ); - } - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( IT4 ); - CleanupStack::PopAndDestroy( FU9 ); - CleanupStack::PopAndDestroy( micmute ); - CleanupStack::PopAndDestroy( micLeftVolume ); - CleanupStack::PopAndDestroy( micRightVolume ); - CleanupStack::PopAndDestroy( FU5 ); - CleanupStack::PopAndDestroy( SU10 ); - CleanupStack::PopAndDestroy( OT6 ); - CleanupStack::PopAndDestroy( sidetoneLeftVolume ); - CleanupStack::PopAndDestroy( sidetoneRightVolume ); - CleanupStack::PopAndDestroy( FU7 ); - CleanupStack::PopAndDestroy( IT1 ); - CleanupStack::PopAndDestroy( MU8 ); - CleanupStack::PopAndDestroy( speakermute ); - CleanupStack::PopAndDestroy( speakerLeftVolume ); - CleanupStack::PopAndDestroy( speakerRightVolume ); - CleanupStack::PopAndDestroy( FU2 ); - CleanupStack::PopAndDestroy( OT3 ); - CleanupStack::PopAndDestroy( aObject ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CallAccessoryFunctionL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) - { - - // COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CallAccessoryFunctionL(%d, %d, %d)" ), aParameter.iAccessoryFunction, aParameter.iArg1, aParameter.iArg2 ) ); - if( !iInitialized ) - { - InitializeL(); - } - - TInt retval = KTFErrAccessoryServiceMissing; - - switch( aParameter.iAccessoryFunction ) - { - case ETFAccessorySet_ObjectPubSub: - { - CreateObjectPubSubL( ( TStreamConObjectType )aParameter.iArg1, - aParameter.iArg2, - ( TStreamConObjectType )aParameter.iArg3, - aParameter.iArg4 ); - retval = KErrNone; - } - break; - - case ETFAccessorySet_TopologyObjectsPubSub: - { - CreateTopologyObjectsToPubSubL( aParameter ); - retval = KErrNone; - } - break; - - case ETFAccessorySet_PubSub: - { - RProperty prop; - prop.Define( KTFAccessoryTestProperty, - KTFAccessoryNotifierMethod, - RProperty::EInt ); - retval = prop.Set( KTFAccessoryTestProperty, - KTFAccessoryNotifierMethod, - aParameter.iArg1 ); - } - break; - - case ETFConnectWiredAccessory: - { - PublishAndSubscribeL( aParameter ); - retval = KErrNone; - } - break; - - case ETFClearStack: - { - CTFTestControlObserver* observerItem; - TInt count = 0; - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( observerItem = iStackIter++ ) != NULL ) - { - observerItem->Cancel(); - iStack.Remove( *observerItem ); - delete observerItem; - count++; - }; - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::ETF_Pappa - count=%d " ), count ) ); - retval = KErrNone; - } - break; - - case ETFDisconnectWiredAccessory: - { - retval = KErrNone; - PublishAndSubscribeL( aParameter ); - TAccPolGenericID emptyInstance; - iGenericId[aParameter.iGid] = emptyInstance; - } - break; - - case ETFCheckCapabilityGroup: - { - if( aParameter.iArg2 - == iGenericId[aParameter.iGid].SubblockCaps( aParameter.iArg3 ) ) - { - retval = KErrNone; - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFCheckCapability: - { - RAccessoryConnection accessoryConnectionn; - accessoryConnectionn.CreateSubSession( iAccessoryServer ); - - CAccPolSubblockNameArray* nameArrayy = - CAccPolSubblockNameArray::NewL(); - CleanupStack::PushL( nameArrayy ); - accessoryConnectionn.GetSubblockNameArrayL( iGenericId[aParameter.iGid], - *nameArrayy ); - - if( aParameter.iArg2 == nameArrayy->HasName( aParameter.iArg3 ) ) - { - retval = KErrNone; - } - else - { - retval = KErrNotFound; - } - - CleanupStack::PopAndDestroy( nameArrayy ); - accessoryConnectionn.CloseSubSession(); - } - break; - - case ETFFindAndCheckRequest: - - { - FindAndCheckRequestL(&retval, aParameter); - } - break; - - case ETFFindAndCheckObjectRequest: - { - CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); - TRACE_ASSERT( testCase != NULL ); - if( testCase != NULL ) - { - if( !iStack.IsEmpty() ) - { - iStackIter.SetToFirst(); - - while( ( iObserverItem = iStackIter++ ) != NULL ) - { - if( iObserverItem->FindRequest( aParameter.iRequestType ) ) - { - testCase->CheckObjectRequest( iObserverItem->iStatus, - iObserverItem->iObjectValue, - iObserverItem->iCapabilityName ); - - if( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() - { - if( KTFDontDeleteObserver != aParameter.iArg1 ) - { - iStack.Remove( *iObserverItem ); - delete iObserverItem; - return; - } - else - { - User::Leave( KTFDontDeleteObserver ); - } - } - else - { - retval = KErrGeneral; - } - } - } - } - else - { - retval = KErrGeneral; - } - } - - retval = KErrNone; - } - break; - - // - // Accessory Connection - // - case ETFAccessoryConnection_Open: - { - AccessoryConnectionOpenClose(ETFAccessoryConnection_Open, &retval); - } - break; - - case ETFAccessoryConnection_Close: - - { - AccessoryConnectionOpenClose(ETFAccessoryConnection_Close, &retval); - } - break; - - // - // Accessory Settings - // - case ETFAccessorySettings_Open: - { - AccessorySettingsOpenClose(ETFAccessorySettings_Open, &retval); - } - break; - - case ETFAccessorySettings_Close: - { - AccessorySettingsOpenClose(ETFAccessorySettings_Close, &retval); - } - break; - - case ETFSetHWDeviceSettings: - { - retval - = iAccessorySettings->SetHWDeviceSettingsL( aParameter.iArg1, - ( TBool )aParameter.iArg2 ); - } - break; - - case ETFGetHWDeviceSettings: - { - TUint32 aSettingsValue( 0 ); - retval = iAccessorySettings->GetHWDeviceSettings( aSettingsValue ); - - if( aSettingsValue != aParameter.iArg1 ) - { - retval = KErrArgument; - } - } - break; - - case ETFGetSupportedHWDeviceSettings: - { - TUint32 aSettingsSupportedValue( 0 ); - - retval - = iAccessorySettings->GetSupportedHWDeviceSettings( aSettingsSupportedValue ); - - if( aSettingsSupportedValue != ( aParameter.iArg1 - | aParameter.iArg2 ) ) - { - retval = KErrArgument; - } - } - break; - - case ETFSetIntAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - //Set Lights - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTInt( aParameter.iArg4 ); - - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFSetBoolAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - //Set Lights - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTBool( aParameter.iArg4 ); - - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFSetDesAccessoryModeSetting: - { - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - - TBuf buf; - buf.Num( aParameter.iArg3 ); - // buf.Copy( *aParameter.iArg3 ); - - aSetting.SetId( aParameter.iArg2 ); - aSetting.SetTDes( buf ); - retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, - aSetting ); - } - break; - - case ETFGetIntAccessoryModeSetting: - { - TInt aSettingsValueInt; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingInt ) - { - retval = aSetting.GetTInt( aSettingsValueInt ); - - if( retval != KErrNotFound ) - { - if( aSettingsValueInt == aParameter.iArg4 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFGetBoolAccessoryModeSetting: - { - TBool aSettingsValueBool; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingBool ) - { - retval = aSetting.GetTBool( aSettingsValueBool ); - - if( retval != KErrNotFound ) - { - if( aSettingsValueBool == ( TBool )aParameter.iArg4 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFGetDesAccessoryModeSetting: - { - TBuf aSettingsValueDes; - - TAccMode aAccMode = ( TAccMode )aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, - aSetting ); - - if( aSetting.Type() == EAccModeSettingDes ) - { - retval = aSetting.GetTDes( aSettingsValueDes ); - - if( retval != KErrNotFound ) - { - TBuf buffer; - buffer.Num( aParameter.iArg3 ); - if( KErrNone == aSettingsValueDes.Compare( buffer ) ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrNotFound; - } - } - break; - - case ETFSetSeveralAccessoryModeSetting: - { - - TAccModeSetting accModeSettingIn; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 1 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "012345678901234567890" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( ETrue ); - arrayIn.AddSetting( accModeSettingIn ); - - retval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, - arrayIn ); - - } - break; - - case ETFGetSeveralAccessoryModeSetting: - { - - TAccModeSetting accModeSettingOut; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf aDesOut; - TAccModeSettingArray arrayOut; - TInt intOut( 0 ); - // set input parameters for GetAccessoryModeSettings() - // setting 11 - accModeSettingOut.SetId( 11 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 12 - accModeSettingOut.SetId( 12 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 13 - accModeSettingOut.SetId( 13 ); - arrayOut.AddSetting( accModeSettingOut ); - - retval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, - arrayOut ); - - // Check that got settings are right - - TInt count = arrayOut.GetArraySize(); - TInt foundCount( 0 ); - - for( TInt index = 0; index < count; index++ ) - { - arrayOut.GetSetting( index, accModeSettingOut ); - - if( 11 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTInt( intOut ); - - if( 1 == intOut ) - { - foundCount++; - } - } - - if( 12 == accModeSettingOut.Id() ) - { - accModeSettingOut.GetTDes( aDesOut ); - - if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) - { - foundCount++; - } - - } - - if( 13 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTBool( intOut ); - - if( intOut ) - { - foundCount++; - } - } - } - - if( foundCount != 3 ) - { - retval = KErrNotFound; - } - - // - // Reset Settings - // - TAccModeSetting accModeSettingIn; - TBuf aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 0 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( EFalse ); - arrayIn.AddSetting( accModeSettingIn ); - - iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - } - break; - - // - // Accessory Single Connection - // - case ETFAccessorySingleConnection_Open: - { - if( iAccessorySingleConnection == NULL ) - { - iAccessorySingleConnection - = new ( ELeave ) RAccessorySingleConnection; - retval - = iAccessorySingleConnection->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySingleConnection_Close: - { - TRACE_ASSERT( iAccessorySingleConnection != NULL ); - - if( iAccessorySingleConnection != NULL ) - { - iAccessorySingleConnection->CloseSubSession(); - delete iAccessorySingleConnection; - iAccessorySingleConnection = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyNewAccessoryConnected: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyNewAccessoryConnected( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryDisconnected: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryDisconnected( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFNotifyIntAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyIntegerAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFNotifyBoolAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBooleanAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFNotifyObjectAccessoryValueChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyObjectAccessoryValueChanged( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryIntGetValue: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt aIntValue; - - iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], - aNameRecord, - aIntValue ); - - if( aIntValue.iValue == aParameter.iArg2 ) - { - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - break; - - case ETFAccessoryBoolGetValue: - { - RAccessoryConnection accessoryConnection; - accessoryConnection.CreateSubSession( iAccessoryServer ); - - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool boolValue; - retval - = accessoryConnection.GetValueL( iGenericId[aParameter.iGid], - nameRecord, - boolValue ); - - if( boolValue.iValue != aParameter.iArg1 ) - { - retval = KErrArgument; - } - - accessoryConnection.CloseSubSession(); - } - break; - - case ETFAccessoryDes8GetValue: - { - TBuf8<80> - worm( _L8("Malicious Worm Attach with extra long data with extra long content" )); - TBuf8<85> valueBuf; - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg1 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, valueBuf ) ); - - if( err == aParameter.iExpectedResult ) - { - - if( aParameter.iExpectedResult == KErrArgument ) - { - retval = KErrNone; - } - else - { - if( KErrNone == valueBuf.Compare( worm ) ) - { - RDebug::RawPrint( valueBuf ); - retval = KErrNone; - } - else - { - retval = KErrArgument; - } - } - } - else - { - retval = KErrArgument; - } - } - break; - - case ETFAccessoryObjectParseTopology: - { - - TInt rspeaker( KErrGeneral ); - TInt lspeaker( KErrGeneral ); - TInt rmic( KErrGeneral ); - TInt lmic( KErrGeneral ); - TInt mute( KErrGeneral ); - TInt sidetone( KErrGeneral ); - // - // Find speaker volume object in USB headset case. - // - CAccPolAudioUnitBase* audioUnit = NULL; - CAccPolAudioControlBase* audioControl = NULL; - //CAccPolOutputTerminal* ouputTerminal = NULL; - - if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, - audioUnit ) ) - { - if( audioUnit->GetNextAudioUnitL( audioUnit ) ) - { - if( audioUnit->ObjectType() - == EAccPolAudioFeatureUnitObject ) - { - if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, - KAccRightFrontChannel, - audioControl ) ) - { - iSpeakerRightVolume = CAccPolVolumeControl::NewL(); - *iSpeakerRightVolume - = *reinterpret_cast ( audioControl ); - rspeaker = KErrNone; - } - if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, - KAccLeftFrontChannel, - audioControl ) ) - { - iSpeakerLeftVolume = CAccPolVolumeControl::NewL(); - *iSpeakerLeftVolume - = *reinterpret_cast ( audioControl ); - lspeaker = KErrNone; - } - if( audioUnit->GetAudioControlL( EAccPolAudioMuteControlObject, - KAccMasterChannel, - audioControl ) ) - { - iSpeakerMute = CAccPolMuteControl::NewL(); - *iSpeakerMute - = *reinterpret_cast ( audioControl ); - mute = KErrNone; - } - - } - } - } - - // - // Find mic volume object in USB headset case. - // - if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTStream, - audioUnit ) ) - { - do - { - } - while( audioUnit->GetNextAudioUnitL( audioUnit ) - && audioUnit->ObjectType() != EAccPolAudioFeatureUnitObject ); - - RPointerArray aAudioControls; - audioUnit->GetAudioControlsL( KAccRightFrontChannel, - aAudioControls ); - - if( aAudioControls.Count() > 0 ) - { - iMicRightVolume = CAccPolVolumeControl::NewL(); - *iMicRightVolume - = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); - rmic = KErrNone; - } - aAudioControls.Reset(); - - audioUnit->GetAudioControlsL( KAccLeftFrontChannel, - aAudioControls ); - - if( aAudioControls.Count() > 0 ) - { - iMicLeftVolume = CAccPolVolumeControl::NewL(); - *iMicLeftVolume - = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); - lmic = KErrNone; - } - - // - // Find sidetone volume object in USB headset case. - // - iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, - audioUnit ); - - do - { - audioUnit->GetNextAudioUnitL( audioUnit ); - } - while( audioUnit->ObjectType() != EAccPolAudioMixerUnitObject ); - - if( audioUnit->SourceIdCount() > 1 ) - { - RPointerArray aAudioUnits; - audioUnit->GetAudioUnitListL( aAudioUnits ); - - for( TInt i = 0; i < aAudioUnits.Count(); i++ ) - { - if( aAudioUnits.operator[]( i )->ObjectType() - == EAccPolAudioFeatureUnitObject ) - { - audioUnit = aAudioUnits.operator[]( i ); - break; - } - } - } - - aAudioControls.Reset(); - audioUnit->GetAudioControlsL( aAudioControls ); - if( aAudioControls.Count() == 2 ) - { - sidetone = KErrNone; - } - } - - retval = ( rspeaker | lspeaker | rmic | lmic | mute | sidetone ); - - } - break; - - case ETFAccessoryGetStreamObjects: - { - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); - - if( err == aParameter.iExpectedResult ) - { - //externalize container to bufFromASY - CBufFlat* bufFromASY = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromASY ); - bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - RBufWriteStream wStrm; - ( void )wStrm.Open( *bufFromASY ); - wStrm.PushL(); - iStreamContainer->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); - - //Read container from PubSub - RProperty prop; - RBufReadStream rStrm; - CBufFlat* bufFromPubSub = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromPubSub ); - bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); - TInt ret = prop.Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptrBufFromPubSub ); - - TInt k = sizeof( bufFromASY ); - TInt kk = sizeof( bufFromPubSub ); - - bufFromASY->Compress(); - bufFromPubSub->Compress(); - - k = sizeof( bufFromASY ); - kk = sizeof( bufFromPubSub ); - - retval - = ( 0 - == memcompare( reinterpret_cast ( &ptrbufFromASY ), - sizeof( bufFromASY ), - reinterpret_cast ( &ptrBufFromPubSub ), - sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; - - CleanupStack::PopAndDestroy( bufFromPubSub ); - CleanupStack::PopAndDestroy( bufFromASY ); - } - } - break; - - case ETFAccessoryGetStreamObjectsFromPolicy: - { - if( iStreamContainer != NULL ) - { - delete iStreamContainer; - iStreamContainer = NULL; - } - iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); - - RPointerArray inputStreamObjects; - RPointerArray outputStreamObjects; - - iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); - iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); - - CAccPolAudioStreamFormat* inputStream = - inputStreamObjects.operator[]( 0 ); - CAccPolAudioStreamFormat* ouputStream = - outputStreamObjects.operator[]( 0 ); - - retval = err; - } - break; - - case ETFAccessorySetStreamObjects: - { - CAccPolAudioStreamFormatCon* setContainer = CAccPolAudioStreamFormatCon::NewLC(); - - RPointerArray inputStreamObjects; - RPointerArray outputStreamObjects; - - iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); - CAccPolAudioStreamFormat* inputStream = NULL; - for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && - inputStream->UnitId() == 0 && - inputStream->StreamType() == CAccPolAudioStreamFormat::EStereo && - inputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample16 && - inputStream->SamFreq() == 200 ) - { - setContainer->AddL( *inputStream ); - break; - } - } - - iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); - CAccPolAudioStreamFormat* outputStream = NULL; - for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && - outputStream->UnitId() == 0 && - outputStream->StreamType() == CAccPolAudioStreamFormat::EMono && - outputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample32 && - outputStream->SamFreq() == 200 ) - { - setContainer->AddL( *outputStream ); - break; - } - } - - RBufWriteStream wStrm; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - (void)wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, KTFAccessoryObjectMethod, ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - inputStreamObjects.Close(); - outputStreamObjects.Close(); - } - break; - - case ETFAccessoryGetTopologyObjects: - { - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - if( err == aParameter.iExpectedResult ) - { - //externalize container to bufFromASY - CBufFlat* bufFromASY = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromASY ); - bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - RBufWriteStream wStrm; - ( void )wStrm.Open( *bufFromASY ); - wStrm.PushL(); - iTopologyContainer->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); - - //Read container from PubSub - RProperty prop; - RBufReadStream rStrm; - CBufFlat* bufFromPubSub = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( bufFromPubSub ); - bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); - TInt ret = prop.Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptrBufFromPubSub ); - - TInt k = sizeof( bufFromASY ); - TInt kk = sizeof( bufFromPubSub ); - - bufFromASY->Compress(); - bufFromPubSub->Compress(); - - k = sizeof( bufFromASY ); - kk = sizeof( bufFromPubSub ); - - retval - = ( 0 - == memcompare( reinterpret_cast ( &ptrbufFromASY ), - sizeof( bufFromASY ), - reinterpret_cast ( &ptrBufFromPubSub ), - sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; - - CleanupStack::PopAndDestroy( bufFromPubSub ); - CleanupStack::PopAndDestroy( bufFromASY ); - } - } - break; - - case ETFAccessoryGetVolumeControlObjects: - { - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - iTopologyContainer->AddL( *iSpeakerRightVolume ); - iTopologyContainer->AddL( *iSpeakerLeftVolume ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - CAccPolVolumeControl* rightVolume; - rightVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 0 ); - - CAccPolVolumeControl* leftVolume; - leftVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 1 ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySetVolumeControlObjects: - { - RBufWriteStream wStrm; - CAccPolAudioTopologyObjectCon* setContainer = - CAccPolAudioTopologyObjectCon::NewLC(); - - iSpeakerRightVolume->SetVolumeDb( aParameter.iArg1 ); - iSpeakerRightVolume->SetMinVolumeDb( aParameter.iArg2 ); - iSpeakerRightVolume->SetMaxVolumeDb( aParameter.iArg4 ); - iSpeakerRightVolume->SetVolumeResDb( 0x05 ); - setContainer->AddL( *iSpeakerRightVolume ); - iSpeakerLeftVolume->SetVolumeDb( aParameter.iArg1 ); - iSpeakerLeftVolume->SetMinVolumeDb( aParameter.iArg2 ); - iSpeakerLeftVolume->SetMaxVolumeDb( aParameter.iArg4 ); - iSpeakerLeftVolume->SetVolumeResDb( 0x05 ); - setContainer->AddL( *iSpeakerLeftVolume ); - - CBufFlat* buf = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - } - break; - - case ETFAccessoryGetMuteControlObjects: - { - - if( iTopologyContainer != NULL ) - { - delete iTopologyContainer; - iTopologyContainer = NULL; - } - - iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); - - iTopologyContainer->AddL( *iSpeakerMute ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); - - CAccPolMuteControl* mute; - mute = ( CAccPolMuteControl* )iTopologyContainer->AtL( 0 ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - } - break; - - case ETFAccessorySetMuteControlObjects: - { - RBufWriteStream wStrm; - CAccPolAudioTopologyObjectCon* setContainer = - CAccPolAudioTopologyObjectCon::NewLC(); - - iSpeakerMute->SetMute( aParameter.iArg1 ); - setContainer->AddL( *iSpeakerMute ); - - CBufFlat* buf = - CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - setContainer->ExternalizeL( wStrm ); - wStrm.Close(); - wStrm.Pop(); - TPtr8 ptr( buf->Ptr( 0 ) ); - - retval = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - ptr ); - - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); - - retval = setErr; - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( setContainer ); - } - break; - - // - // Accessory Control - // - - case ETFAccessoryControl_Open: - { - if( iAccessoryControl == NULL ) - { - iAccessoryControl = new ( ELeave ) RAccessoryControl; - retval = iAccessoryControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryControl_Close: - { - TRACE_ASSERT( iAccessoryControl != NULL ); - - if( iAccessoryControl != NULL ) - { - iAccessoryControl->CloseSubSession(); - delete iAccessoryControl; - iAccessoryControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryConnectionStatusChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryConnectionStatusChanged( iGenericIdArray ); - retval = KErrNone; - } - break; - - case ETFSyncGetAccessoryConnectionStatus: - { - iAccessoryConnection->GetAccessoryConnectionStatus( iGenericIdArray ); - - if( iGenericIdArray.Count() != aParameter.iArg1 ) - { - retval = KErrArgument; - } - else - { - retval = KErrNone; - } - } - break; - - case ETFASyncGetAccessoryConnectionStatus: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->GetAccessoryConnectionStatus( iGenericIdArray ); - retval = KErrNone; - } - break; - - case ETFSetIntValue: - { - SetIntValue(aParameter, &retval); - } - break; - - case ETFSetBoolValue: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool aBoolValue; - aBoolValue.iValue = aParameter.iArg1; - retval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], - aNameRecord, - aBoolValue ); - } - break; - - // - //Tuupaa - // - case ETFAccessoryValueChangedNotifyInt: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( KAccAudioOutputType ); - TAccValueTypeTInt aIntValue; - aIntValue.iValue = EAccAudioOutPutTypePublic; - iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], - aNameRecord, - aIntValue ); - retval = KErrNone; - } - break; - - case ETFAccessoryValueChangedNotifyBool: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool aBoolValue; - aBoolValue.iValue = ETrue; - iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], - aNameRecord, - aBoolValue ); - retval = KErrNone; - } - break; - - // - // BT Control - // - case ETFBTAccessoryValueChangedNotifyBool: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTBool boolValue; - boolValue.iValue = aParameter.iArg4; - iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, - nameRecord, - boolValue ); - retval = KErrNone; - } - break; - - case ETFBTAccessoryValueChangedNotifyInt: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt intValue; - intValue.iValue = aParameter.iArg4; - iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, - nameRecord, - intValue ); - retval = KErrNone; - } - break; - - case ETFAccessoryBtControl_Open: - { - if( iAccessoryBTControl == NULL ) - { - iAccessoryBTControl = new ( ELeave ) RAccessoryBTControl; - retval - = iAccessoryBTControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryBtControl_Close: - { - TRACE_ASSERT( iAccessoryBTControl != NULL ); - - if( iAccessoryBTControl != NULL ) - { - iAccessoryBTControl->CloseSubSession(); - delete iAccessoryBTControl; - iAccessoryBTControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryBtConnectAccessory: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->ConnectBTAccessory( btaddr ); - retval = KErrNone; - } - break; - case ETFAccessoryBtDisconnectAccessory: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRequestStatus status; - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->DisconnectBTAccessory( btaddr ); - retval = KErrNone; - TAccPolGenericID emptyInstance; - iGenericId[aParameter.iGid] = emptyInstance; - } - break; - - case ETFAccessoryNotifyBluetoothAudioLinkOpenReq: - { - //TRequestStatus status; - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBluetoothAudioLinkOpenReq(); - retval = KErrNone; - } - break; - - case ETFAccessoryBluetoothAudioLinkOpenedNotify: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenedNotifyL( btaddr, (TAccAudioType)aParameter.iArg3 ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBluetoothAudioLinkOpenResp: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TInt response( aParameter.iArg2 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenRespL( btaddr, response ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryNotifyBluetoothAudioLinkCloseReq: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyBluetoothAudioLinkCloseReq(); - retval = KErrNone; - } - break; - - case ETFAccessoryBluetoothAudioLinkClosedNotify: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkClosedNotifyL( btaddr, ( TAccAudioType )aParameter.iArg3 ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBluetoothAudioLinkCloseResp: - { - TBTDevAddr btaddr( aParameter.iArg1 ); - TInt response( aParameter.iArg2 ); - TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkCloseRespL( btaddr, response ) ); - - if( err == aParameter.iExpectedResult ) - { - retval = KErrNone; - } - else - { - retval = KErrGeneral; - } - } - break; - - case ETFAccessoryBtCancelConnectAccessory: - { - TRequestStatus status; - TBTDevAddr btaddr( aParameter.iArg1 ); - iAccessoryBTControl->ConnectAccessory( status, btaddr ); - iAccessoryBTControl->CancelConnectAccessory(); - User::WaitForRequest( status ); - if( KErrCancel != status.Int() ) - { - retval = status.Int(); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryBtCancelDisconnectAccessory: - { - TRequestStatus status; - TBTDevAddr btaddr( aParameter.iArg1 ); - iAccessoryBTControl->DisconnectAccessory( status, btaddr ); - iAccessoryBTControl->CancelDisconnectAccessory(); - User::WaitForRequest( status ); - retval = status.Int(); - } - break; - - // - // Accessory Mode - // - case ETFAccessoryMode_Open: - { - if( iAccessoryMode == NULL ) - { - iAccessoryMode = new ( ELeave ) RAccessoryMode; - retval = iAccessoryMode->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryMode_Close: - { - TRACE_ASSERT( iAccessoryMode != NULL ); - - if( iAccessoryMode != NULL ) - { - iAccessoryMode->CloseSubSession(); - delete iAccessoryMode; - iAccessoryMode = NULL; - } - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryModeChanged: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryModeChanged(); - retval = KErrNone; - } - break; - - case ETFAccessoryAccessoryModeSync: - { - TAccPolAccessoryMode mode; - retval = iAccessoryMode->GetAccessoryMode( mode ); - - if( retval == KErrNone ) - { - if( aParameter.iArg1 != mode.iAccessoryMode ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter1 %d %d" ), aParameter.iArg1, mode.iAccessoryMode ) ); - retval = KTFErrAccessoryUnexpectedArg1; - } -#ifdef __WINS__ // Just check this in winscw - if( aParameter.iArg2 != mode.iAudioOutputStatus ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter2 %d %d" ), aParameter.iArg2, mode.iAudioOutputStatus ) ); - retval = KTFErrAccessoryUnexpectedArg2; - } -#endif - } - else - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Getting Accessory Mode Failed %d" ), retval ) ); - } - - } - break; - - case ETFAccessoryAccessoryModeASync: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->GetAccessoryMode(); - retval = KErrNone; - } - break; - - // - // Audio Control - // - case ETFAccessoryAudioControl_Open: - { - if( iAccessoryAudioControl == NULL ) - { - iAccessoryAudioControl = new ( ELeave ) RAccessoryAudioControl; - retval - = iAccessoryAudioControl->CreateSubSession( iAccessoryServer ); - } - else - { - retval = KErrNone; - } - } - break; - - case ETFAccessoryAudioControl_Close: - { - TRACE_ASSERT( iAccessoryAudioControl != NULL ); - - if( iAccessoryAudioControl != NULL ) - { - iAccessoryAudioControl->CloseSubSession(); - delete iAccessoryAudioControl; - iAccessoryAudioControl = NULL; - } - retval = KErrNone; - } - break; - - case ETFAudioRoutingStatusNotify: - { - RAccessoryAudioControl audioControl; - audioControl.CreateSubSession( iAccessoryServer ); - - audioControl.AudioRoutingStatusNotify( aParameter.iArg1, - iGenericId[aParameter.iGid] ); - retval = KErrNone; - - audioControl.CloseSubSession(); - } - break; - - case ETFAccessoryAudioLinkOpen: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->AccessoryAudioLinkOpen( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryAudioLinkOpened: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryAudioLinkOpened( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryNotifyAccessoryAudioLinkClosed: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->NotifyAccessoryAudioLinkClosed( iGenericId[aParameter.iGid] ); - retval = KErrNone; - } - break; - - case ETFAccessoryAccessoryAudioLinkClose: - { - CTFTestControlObserver* aConnectionObserver = CreateObserver(); - TRACE_ASSERT( aConnectionObserver != NULL ); - aConnectionObserver->AccessoryAudioLinkClose( iGenericId[aParameter.iGid], - aParameter.iArg3 ); - retval = KErrNone; - } - break; - - case ETFAccessoryPublishAndSubscribe: - { - PublishAndSubscribeL( aParameter ); - retval = KErrNone; - } - break; - - case ETFAccessory_Cancel: - { - CTFTestControlObserver* item; - if( !iStack.IsEmpty() ) - { - item = iStack.First(); - item->Cancel(); - } - retval = KErrNone; - } - break; - - // - // Cancels - // - case ETFCancelAccessoryAudioLinkOpen: - { - iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); - retval = KErrNone; - } - break; - - case ETFCancelAccessoryAudioLinkClose: - { - iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryAudioLinkOpened: - { - iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryAudioLinkClosed: - { - iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyProcessCommand: - { - TRACE_ASSERT_ALWAYS; - } - break; - - case ETFCancelConnectAccessory: - { - iAccessoryControl->CancelConnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelDisconnectAccessory: - { - iAccessoryControl->CancelDisconnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyBluetoothAudioLinkOpenReq: - { - iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyBluetoothAudioLinkCloseReq: - { - iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryConnectionStatusChanged: - { - iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); - retval = KErrNone; - } - break; - - case ETFCancelGetAccessoryConnectionStatus: - { - iAccessoryConnection->CancelGetAccessoryConnectionStatus(); - retval = KErrNone; - } - break; - - case ETFCancelConnectAccessoryBT: - { - iAccessoryBTControl->CancelConnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelDisconnectAccessoryBT: - { - iAccessoryBTControl->CancelDisconnectAccessory(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryModeChanged: - { - iAccessoryMode->CancelNotifyAccessoryModeChanged(); - retval = KErrNone; - } - break; - - case ETFCancelGetAccessoryMode: - { - iAccessoryMode->CancelGetAccessoryMode(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyNewAccessoryConnected: - { - iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryDisconnected: - { - iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); - retval = KErrNone; - } - break; - - case ETFCancelNotifyAccessoryValueChanged: - { - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - iAccessorySingleConnection->CancelNotifyAccessoryValueChanged( nameRecord ); - retval = KErrNone; - } - break; - - case ETFSelectionDialogText: - { - SelectionDialog(ETFSelectionDialogText, &retval); - } - break; - - case ETFSelectionDialogCancel: - { - SelectionDialog(ETFSelectionDialogCancel, &retval); - } - break; - - case ETFNotSupportedNote: - { - TUid KAccFwUiNoteNotifierUid = - { - 0x10205061 - }; - RNotifier notifier; - notifier.Connect(); - - TInt err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, - KNullDesC8 ); - - TInt value( 0 ); - TPckg intPckg( value ); - notifier.Close(); - - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - value = value << 1; - notifier.Connect(); - err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); - notifier.Close(); - - retval = KErrNone; - } - break; - - case ETFValueRecordTests: - { - retval = TestValueRecordL(); - } - break; - - case ETFObjectBaseSerializationTests: - { - retval = TestBaseSerializationL(); - } - break; - - case ETFCheckConnectedAccessory: - { - CheckConnectedAccessory(&retval); - } - break; - - case ETFCallTClassMethods: - { - CallTClassMethods(&retval); \ - } - - case ETFSetHdmiObject_PubSub: - { - CreateHdmiObjectsToPubSubL( aParameter ); - retval = KErrNone; - break; - } - - case ETFGetHdmiObject: - { - TInt err = KErrNone; - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( aParameter.iArg3 ); - - // Create HDMI container - CAccPolHdmiObjectCon* conFromASY = CAccPolHdmiObjectCon::NewLC(); - CAccPolHdmiObjectCon* conFromPS = CAccPolHdmiObjectCon::NewLC(); - - // Get HDMI container - TRAP( err, iAccessorySingleConnection->GetValueL( - iGenericId[aParameter.iGid], nameRecord, *conFromASY ) ); - - // Get HDMI container from P&S - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - TPtr8 bufPtr( buf->Ptr( 0 ) ); - err = RProperty::Get( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - bufPtr ); - if( err == KErrNone ) - { - RBufReadStream readStream( *buf ); - readStream.PushL(); - conFromPS->InternalizeL( readStream ); - CleanupStack::PopAndDestroy( &readStream ); - } - switch( aParameter.iArg3 ) - { - case KAccVideoHdmiAttributes: - { - // Validate object count - if( conFromASY->Count() != conFromPS->Count() ) - { - err = KErrArgument; - } - - // Validate speaker allocation - RAccPolHdmiSpeakerAllocationArray array; - CleanupClosePushL( array ); - conFromASY->GetHdmiSpeakerAllocationObjectsL( array ); - if( array.Count() ) - { - CAccPolHdmiSpeakerAllocation* speakerAllocation = array[0]; - TUint32 bits = speakerAllocation->SpeakerAllocation(); - - // Speaker allocation should be EHdmiSpeakerUnknown - if( bits != CAccPolHdmiSpeakerAllocation::EHdmiSpeakerUnknown ) - { - err = KErrArgument; - } - - // Speaker count should be zero - if( speakerAllocation->SpeakerCount() ) - { - err = KErrArgument; - } - } - CleanupStack::PopAndDestroy( &array ); - break; - } - case KAccVideoFormat: - { - // Validate object count - if( conFromASY->Count() != conFromPS->Count() ) - { - err = KErrArgument; - } - - // Validate video format - RAccPolHdmiVideoFormatArray array; - CleanupClosePushL( array ); - conFromASY->GetHdmiVideoFormatObjectsL( array ); - if( array.Count() ) - { - CAccPolHdmiVideoFormat* videoFormat = array[0]; - - // Interlaced video should be enabled - if( !videoFormat->Interlaced() ) - { - err = KErrArgument; - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &array ); - break; - } - default: - { - break; - } - } - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( conFromPS ); - CleanupStack::PopAndDestroy( conFromASY ); - retval = err; - break; - } - - case ETFCheckHdmiObject: - { - TInt err = KErrNone; - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d" ), - aParameter.iArg1 ) ); - switch( aParameter.iArg1 ) - { - case EAccPolHdmiObjectCon: - { - err = CheckHdmiContainerObjectL(); - break; - } - case EAccPolHdmiSinkObject: - { - err = CheckHdmiSinkObjectL(); - break; - } - case EAccPolHdmiAudioFormatObject: - { - err = CheckHdmiAudioFormatObjectL(); - break; - } - case EAccPolHdmiLatencyObject: - { - err = CheckHdmiLatencyObjectL(); - break; - } - case EAccPolHdmiSpeakerAllocationObject: - { - err = CheckHdmiSpeakerAllocationObjectL(); - break; - } - case EAccPolHdmiVideoFormatObject: - { - err = CheckHdmiVideoFormatObjectL(); - break; - } - default: - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Invalid HDMI object=%d" ), - aParameter.iArg1 ) ); - err = KErrArgument; - break; - } - } - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d returned with code %d" ), - aParameter.iArg1, err ) ); - retval = err; - break; - } - - default: - TRACE_ASSERT_ALWAYS; - break; - - } - User::LeaveIfError( retval ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::TestValueRecordL() -// ---------------------------------------------------------------------------------- -// -TInt CTFAccessoryTestControl::TestValueRecordL() - { - TInt ret( KErrNone ); - - TAccPolValueRecord valueRecord; - TBuf8 eci; - TBuf8 check; - _LIT( Kissa, "Kissa" ); - eci.Copy( Kissa ); - - valueRecord.SetValue( eci ); - check.Copy( valueRecord.ValueRef() ); - - if( KErrNone != eci.Compare( check ) ) - { - User::Leave( KErrGeneral ); - } - - TDesC8& test( valueRecord.ValueRef() ); - if( KErrNone != eci.Compare( test ) ) - { - User::Leave( KErrGeneral ); - } - - return ret; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::TestBaseSerializationL() -// ---------------------------------------------------------------------------------- -// -TInt CTFAccessoryTestControl::TestBaseSerializationL() - { - TInt ret( KErrNone ); - TInt err( KErrNone ); - - /*** One container *************************************************************/ - CAccPolAudioStreamFormatCon* container1 = - CAccPolAudioStreamFormatCon::NewLC(); - CAccPolAudioStreamFormatCon* container2 = - CAccPolAudioStreamFormatCon::NewLC(); - - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize to buf - RBufWriteStream wStrm; - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - container1->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - //Internalize from buf - RBufReadStream rStrm; - ( void )rStrm.Open( *buf ); - rStrm.PushL(); - container2->InternalizeL( rStrm ); - rStrm.Close(); - rStrm.Pop(); - - //container1 content must equal to container2 content - err = ( 0 == memcompare( reinterpret_cast ( container1 ), - sizeof(CAccPolObjectCon), - reinterpret_cast ( container2 ), - sizeof(CAccPolObjectCon) ) ) ? KErrNone : KErrGeneral; - User::LeaveIfError( err ); - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( container2 ); - CleanupStack::PopAndDestroy( container1 ); - container2 = NULL; - container1 = NULL; - /* end *************************************************************************/ - - //Make test again! - - CAccPolAudioStreamFormat* audioStream1 = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject, - 15, - KUidFormatMP3, - CAccPolAudioStreamFormat::EStereo, - CAccPolAudioStreamFormat::EBitsPerSample24, - 11 ); - - buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - //Externalize to buf - ( void )wStrm.Open( *buf ); - wStrm.PushL(); - audioStream1->ExternalizeL( wStrm ); - wStrm.CommitL(); - wStrm.Close(); - wStrm.Pop(); - - //Internalize from buf - ( void )rStrm.Open( *buf ); - rStrm.PushL(); - - TInt objectid = rStrm.ReadUint8L(); - - if( ( TStreamConObjectType )objectid == EAccPolAudioInputStreamObject ) - { - CAccPolAudioStreamFormat* audioStream2 = - CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject ); - - audioStream2->InternalizeL( rStrm ); - - //audioStream1 content must equal to audioStream2 content - err = ( 0 == memcompare( reinterpret_cast ( audioStream1 ), - sizeof(CAccPolAudioStreamFormat), - reinterpret_cast ( audioStream2 ), - sizeof(CAccPolAudioStreamFormat) ) ) ? KErrNone : KErrGeneral; - - User::LeaveIfError( err ); - - CleanupStack::PopAndDestroy( audioStream2 ); - - rStrm.Close(); - rStrm.Pop(); - - } - else - { - User::LeaveIfError( KErrGeneral ); - } - - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( audioStream1 ); - audioStream1 = NULL; - /* end *************************************************************************/ - - return ret; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::PublishAndSubscribeL() -// ---------------------------------------------------------------------------------- -// -void CTFAccessoryTestControl::PublishAndSubscribeL( TTFAccessoryTestCaseStateControl& aParameter ) - { - TPckgBuf buf; - - buf().iTestCaseID = aParameter.iTestCaseID; - buf().iMethod = aParameter.iMethod; - buf().iParam1 = aParameter.iArg1; - buf().iTimeMs = aParameter.iArg4; - buf().iGenericID = iGenericId[aParameter.iGid]; - - // Send capability to stub(s). - - // if( aParameter.iArg3 ) - // { - buf().iParam2 = aParameter.iArg3; - // } - - /* - if( aParameter.iArg3->Compare( KNullDesC ) ) - { - buf().iParam2.Copy( *aParameter.iArg3 ); - } - - */ - User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, - KTFAccessoryMethod, - buf ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL() -// ---------------------------------------------------------------------------------- -// -void CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL( - TTFAccessoryTestCaseStateControl& aParameter ) - { - // Define property just in case - RProperty::Define( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - RProperty::EByteArray ); - - // Create HDMI container - CAccPolHdmiObjectCon* con = CAccPolHdmiObjectCon::NewLC(); - switch( aParameter.iArg3 ) - { - case KAccVideoHdmiAttributes: - { - // Create audio format object - CreateHdmiObjectL( *con, EAccPolHdmiAudioFormatObject ); - - // Create latency object - CreateHdmiObjectL( *con, EAccPolHdmiLatencyObject ); - - // Create sink object - CreateHdmiObjectL( *con, EAccPolHdmiSinkObject ); - - // Create speaker allocation object - CreateHdmiObjectL( *con, EAccPolHdmiSpeakerAllocationObject ); - - // Create video format object - CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); - break; - } - case KAccVideoFormat: - { - // Create video format object - CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); - break; - } - default: - { - break; - } - } - // Stream HDMI container to P&S - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - RBufWriteStream writeStream( *buf ); - writeStream.PushL(); - con->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - - TPtr8 bufPtr( buf->Ptr( 0 ) ); - TInt err = RProperty::Set( KTFAccessoryTestProperty, - KTFAccessoryObjectMethod, - bufPtr ); - User::LeaveIfError( err ); - - // Check if ASY stub needs to be informed - if( aParameter.iArg2 ) - { - PublishAndSubscribeL( aParameter ); - } - - // Cleanup - CleanupStack::PopAndDestroy( buf ); - CleanupStack::PopAndDestroy( con ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiContainerObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiContainerObjectL() - { - TInt err = KErrNone; - CAccPolHdmiObjectCon* con1 = NULL; - CAccPolHdmiObjectCon* con2 = NULL; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - con1 = CAccPolHdmiObjectCon::NewL(); - CleanupStack::PushL( con1 ); - CleanupStack::PopAndDestroy( con1 ); - - // NewLC - con1 = CAccPolHdmiObjectCon::NewLC(); - CleanupStack::PopAndDestroy( con1 ); - - // Internalize & Externalize - con1 = CAccPolHdmiObjectCon::NewLC(); - CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - con1->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - - con2 = CAccPolHdmiObjectCon::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - con2->InternalizeL( readStream ); - if( con1->Count() == con2->Count() ) - { - TInt count = con1->Count(); - CAccPolObjectBase* objBase1 = NULL; - CAccPolObjectBase* objBase2 = NULL; - for( TInt i = 0; i < count; i++ ) - { - objBase1 = con1->AtL( i ); - objBase2 = con2->AtL( i ); - if( objBase1->ObjectType() != objBase2->ObjectType() ) - { - err = KErrArgument; - } - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( con2 ); - CleanupStack::PopAndDestroy( con1 ); - - // DuplicateLC - con1 = CAccPolHdmiObjectCon::NewLC(); - CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); - CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); - con2 = static_cast( con1->DuplicateLC() ); - if( con1->Count() == con2->Count() ) - { - TInt count = con1->Count(); - CAccPolObjectBase* objBase1 = NULL; - CAccPolObjectBase* objBase2 = NULL; - for( TInt i = 0; i < count; i++ ) - { - objBase1 = con1->AtL( i ); - objBase2 = con2->AtL( i ); - if( objBase1->ObjectType() != objBase2->ObjectType() ) - { - err = KErrArgument; - } - } - } - else - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( con2 ); - CleanupStack::PopAndDestroy( con1 ); - - // Rest of the API - con1 = CAccPolHdmiObjectCon::NewLC(); - THdmiConObjectType objectType = EAccPolHdmiObjectCon; - TBool exit = EFalse; - TInt index = 0; - TInt count = 0; - do - { - index++; - err = KErrArgument; - objectType = ( THdmiConObjectType )( index ); - CreateHdmiObjectL( *con1, objectType ); - count = con1->Count(); - CAccPolObjectBase* obj = NULL; - if( con1->Count() != index ) - { - err = KErrArgument; - break; - } - for( TInt ii = 0; ii < count; ii++ ) - { - obj = con1->AtL( ii ); - if( obj->ObjectType() == objectType ) - { - err = KErrNone; - break; - } - } - if( objectType == EAccPolHdmiVideoFormatObject ) - { - // Last object - exit = ETrue; - } - } - while( !exit && ( err == KErrNone ) ); - CleanupStack::PopAndDestroy( con1 ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiSinkObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiSinkObjectL() - { - TInt err = KErrNone; - CAccPolHdmiSink* obj = NULL; - CAccPolHdmiSink* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiSink::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiSink::NewL( ETrue, ETrue ); - CleanupStack::PushL( obj ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiSink::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSink::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiSinkObject ) - { - err = KErrArgument; - } - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSink ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiSink::NewLC(); - obj->SetBasicAudioSupport( ETrue ); - if( !obj->BasicAudioSupport() ) - { - err = KErrArgument; - } - obj->SetHdcpSupport( ETrue ); - if( !obj->HdcpSupport() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL() - { - TInt err = KErrNone; - CAccPolHdmiAudioFormat* obj = NULL; - CAccPolHdmiAudioFormat* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiAudioFormat::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiAudioFormat::NewL( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiAudioFormat::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiAudioFormat::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiAudioFormatObject ) - { - err = KErrArgument; - } - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) - { - err = KErrArgument; - } - if( obj->ChannelCount() != 1 ) - { - err = KErrArgument; - } - if( obj->BitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->MaxBitResolution() != 1 ) - { - err = KErrArgument; - } - if( obj->SamFreq() != 1 ) - { - err = KErrArgument; - } - if( obj->FormatDependentValue() != 1 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, - 1, - 1, - 1, - 1, - 1 ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSink ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiAudioFormat::NewLC(); - obj->SetAudioFormat( HdmiAudioFormat::KUidFormatEAC3 ); - if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatEAC3 ) - { - err = KErrArgument; - } - obj->SetChannelCount( 2 ); - if( obj->ChannelCount() != 2 ) - { - err = KErrArgument; - } - obj->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample20 ); - if( !( obj->BitResolution() & CAccPolHdmiAudioFormat::EBitsPerSample20 ) ) - { - err = KErrArgument; - } - obj->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample24 ); - if( obj->MaxBitResolution() != CAccPolHdmiAudioFormat::EBitsPerSample24 ) - { - err = KErrArgument; - } - obj->SetSamFreq( CAccPolHdmiAudioFormat::ESamplingFreq192KHz ); - if( !( obj->SamFreq() & CAccPolHdmiAudioFormat::ESamplingFreq192KHz ) ) - { - err = KErrArgument; - } - obj->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - if( !( obj->FormatDependentValue() & CAccPolHdmiAudioFormat::EBitsPerSample16 ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiLatencyObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiLatencyObjectL() - { - TInt err = KErrNone; - CAccPolHdmiLatency* obj = NULL; - CAccPolHdmiLatency* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiLatency::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiLatency::NewL( HdmiLatency::KUidLatency, 100, 200 ); - CleanupStack::PushL( obj ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiLatency::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiLatency::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiLatencyObject ) - { - err = KErrArgument; - } - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiLatency ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiLatency::NewLC(); - obj->SetLatencyType( HdmiLatency::KUidLatency ); - if( obj->LatencyType() != HdmiLatency::KUidLatency ) - { - err = KErrArgument; - } - obj->SetAudioLatency( 100 ); - if( obj->AudioLatency() != 100 ) - { - err = KErrArgument; - } - obj->SetVideoLatency( 200 ); - if( obj->VideoLatency() != 200 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL() - { - TInt err = KErrNone; - CAccPolHdmiSpeakerAllocation* obj = NULL; - CAccPolHdmiSpeakerAllocation* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - TUint32 bits = 0x0; - - // NewL - obj = CAccPolHdmiSpeakerAllocation::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewL( bits ); - CleanupStack::PushL( obj ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewL( EFalse, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - EFalse, - EFalse ); - CleanupStack::PushL( obj ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC( EFalse, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - ETrue, - EFalse, - EFalse, - EFalse, - EFalse ); - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiSpeakerAllocationObject ) - { - err = KErrArgument; - } - if( !obj->FrontCenter() ) - { - err = KErrArgument; - } - if( !obj->RearCenter() ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiSpeakerAllocation ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter | - CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter; - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - obj->SetSpeakerAllocation( bits ); - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) - { - err = KErrArgument; - } - if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter ) ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiSpeakerAllocation::NewLC(); - obj->SetFrontSpeakers( ETrue ); - if( !obj->FrontSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontSpeakers( EFalse ); - if( obj->FrontSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearSpeakers( ETrue ); - if( !obj->RearSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetRearSpeakers( EFalse ); - if( obj->RearSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetLowFrequencyEffect( ETrue ); - if( !obj->LowFrequencyEffect() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetLowFrequencyEffect( EFalse ); - if( obj->LowFrequencyEffect() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontCenter( ETrue ); - if( !obj->FrontCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetFrontCenter( EFalse ); - if( obj->FrontCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontCenterHigh( ETrue ); - if( !obj->FrontCenterHigh() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetFrontCenterHigh( EFalse ); - if( obj->FrontCenterHigh() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetTopCenter( ETrue ); - if( !obj->TopCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetTopCenter( EFalse ); - if( obj->TopCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearCenter( ETrue ); - if( !obj->RearCenter() || obj->SpeakerCount() != 1 ) - { - err = KErrArgument; - } - obj->SetRearCenter( EFalse ); - if( obj->RearCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontLeftRightCenter( ETrue ); - if( !obj->FrontLeftRightCenter() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontLeftRightCenter( EFalse ); - if( obj->FrontLeftRightCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetRearLeftRightCenter( ETrue ); - if( !obj->RearLeftRightCenter() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetRearLeftRightCenter( EFalse ); - if( obj->RearLeftRightCenter() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontWideSpeakers( ETrue ); - if( !obj->FrontWideSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontWideSpeakers( EFalse ); - if( obj->FrontWideSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - obj->SetFrontHighSpeakers( ETrue ); - if( !obj->FrontHighSpeakers() || obj->SpeakerCount() != 2 ) - { - err = KErrArgument; - } - obj->SetFrontHighSpeakers( EFalse ); - if( obj->FrontHighSpeakers() || obj->SpeakerCount() != 0 ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL -// ---------------------------------------------------------------------------------- -TInt CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL() - { - TInt err = KErrNone; - CAccPolHdmiVideoFormat* obj = NULL; - CAccPolHdmiVideoFormat* objDuplicate = NULL; - TUint8 objectType = 0; - CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); - CleanupStack::PushL( buf ); - buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); - - // NewL - obj = CAccPolHdmiVideoFormat::NewL(); - CleanupStack::PushL( obj ); - CleanupStack::PopAndDestroy( obj ); - - // NewLC - obj = CAccPolHdmiVideoFormat::NewLC(); - CleanupStack::PopAndDestroy( obj ); - - // NewL - with params - obj = CAccPolHdmiVideoFormat::NewL( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - CleanupStack::PushL( obj ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // NewLC - with params - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - - // Internalize & Externalize - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - RBufWriteStream writeStream; - writeStream.Open( *buf ); - writeStream.PushL(); - obj->ExternalizeL( writeStream ); - writeStream.CommitL(); - CleanupStack::PopAndDestroy( &writeStream ); - CleanupStack::PopAndDestroy( obj ); - - obj = CAccPolHdmiVideoFormat::NewLC(); - RBufReadStream readStream; - readStream.Open( *buf ); - readStream.PushL(); - objectType = readStream.ReadUint8L(); - obj->InternalizeL( readStream ); - if( objectType != EAccPolHdmiVideoFormatObject ) - { - err = KErrArgument; - } - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - if( obj->PixelRepeat() != 1 ) - { - err = KErrArgument; - } - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( &readStream ); - CleanupStack::PopAndDestroy( obj ); - - // DuplicateLC - mem compare can be used since the object does not contain - // any ponters as memebers - obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, - E640x350p85HzRB, - 1, - ETrue ); - objDuplicate = static_cast( obj->DuplicateLC() ); - TUint8* left = reinterpret_cast( obj ); - TUint8* right = reinterpret_cast( objDuplicate ); - TInt size = sizeof( CAccPolHdmiVideoFormat ); - if( Mem::Compare( left, size, right, size ) != KErrNone ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( objDuplicate ); - CleanupStack::PopAndDestroy( obj ); - - // Rest of the API - obj = CAccPolHdmiVideoFormat::NewLC(); - obj->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); - if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) - { - err = KErrArgument; - } - obj->SetDmtFixedMode( E640x350p85HzRB ); - if( obj->DmtFixedMode() != E640x350p85HzRB ) - { - err = KErrArgument; - } - obj->SetPixelRepeat( 4 ); - if( obj->PixelRepeat() != 4 ) - { - err = KErrArgument; - } - obj->SetInterlaced( ETrue ); - if( !obj->Interlaced() ) - { - err = KErrArgument; - } - CleanupStack::PopAndDestroy( obj ); - CleanupStack::PopAndDestroy( buf ); - - return err; - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver()" ) ) ); - iStack.AddFirst/*AddLast*/( *CTFTestControlObserver::NewL( *this ) ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver() return" ) ) ); - return iStack.First/*Last*/(); - } - -// Not used at this point. -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::ProcessMessageAndCompleteL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL enter" ) ) ); - aMessage.Complete( KErrNone ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::MessageCompleteL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::MessageCompleteL( TInt /*aResult*/) - { - - } - -// -// ---------------------------------------------------------------------------------- -// CTFAccessoryTestControl::CreateHdmiObjectL -// ---------------------------------------------------------------------------------- -void CTFAccessoryTestControl::CreateHdmiObjectL( CAccPolObjectCon& aCon, - THdmiConObjectType aType ) - { - switch( aType ) - { - case EAccPolHdmiSinkObject: - { - CAccPolHdmiSink* sink = CAccPolHdmiSink::NewLC(); - sink->SetBasicAudioSupport( ETrue ); - sink->SetHdcpSupport( ETrue ); - aCon.AddL( *sink ); - CleanupStack::PopAndDestroy( sink ); - break; - } - case EAccPolHdmiAudioFormatObject: - { - CAccPolHdmiAudioFormat* audioFormat = CAccPolHdmiAudioFormat::NewLC(); - audioFormat->SetAudioFormat( HdmiAudioFormat::KUidFormatPCM16 ); - audioFormat->SetChannelCount( 2 ); - audioFormat->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); - audioFormat->SamFreq( CAccPolHdmiAudioFormat::ESamplingFreq32KHz ); - aCon.AddL( *audioFormat ); - CleanupStack::PopAndDestroy( audioFormat ); - break; - } - case EAccPolHdmiLatencyObject: - { - CAccPolHdmiLatency* latency = CAccPolHdmiLatency::NewLC(); - latency->SetLatencyType( HdmiLatency::KUidLatency ); - latency->SetAudioLatency( 100 ); - latency->SetVideoLatency( 200 ); - aCon.AddL( *latency ); - CleanupStack::PopAndDestroy( latency ); - break; - } - case EAccPolHdmiSpeakerAllocationObject: - { - CAccPolHdmiSpeakerAllocation* speakerAllocation = - CAccPolHdmiSpeakerAllocation::NewLC(); - speakerAllocation->SetFrontSpeakers( ETrue ); - speakerAllocation->SetRearSpeakers( ETrue ); - speakerAllocation->SetLowFrequencyEffect( ETrue ); - speakerAllocation->SetFrontCenter( ETrue ); - speakerAllocation->SetFrontCenterHigh( ETrue ); - speakerAllocation->SetTopCenter( ETrue ); - speakerAllocation->SetRearCenter( ETrue ); - speakerAllocation->SetFrontLeftRightCenter( ETrue ); - speakerAllocation->SetRearLeftRightCenter( ETrue ); - speakerAllocation->SetFrontWideSpeakers( ETrue ); - speakerAllocation->SetFrontHighSpeakers( ETrue ); - aCon.AddL( *speakerAllocation ); - CleanupStack::PopAndDestroy( speakerAllocation ); - break; - } - case EAccPolHdmiVideoFormatObject: - { - CAccPolHdmiVideoFormat* videoFormat = CAccPolHdmiVideoFormat::NewLC(); - videoFormat->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); - videoFormat->SetDmtFixedMode( E640x480p85HzRB ); - videoFormat->SetInterlaced( EFalse ); - aCon.AddL( *videoFormat ); - CleanupStack::PopAndDestroy( videoFormat ); - break; - } - default: - { - break; - } - } - } - - -void CTFAccessoryTestControl::AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval) - { - switch(aCase) - { - case ETFAccessoryConnection_Open: - { - if ( iAccessoryConnection == NULL ) - { - iAccessoryConnection = new ( ELeave ) RAccessoryConnection; - *aRetval = iAccessoryConnection->CreateSubSession( iAccessoryServer ); - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session created - (%d)" ), *aRetval ) ); - } - else - { - *aRetval = KErrNone; - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session not created - (%d)" ), *aRetval ) ); - } - } - break; - - case ETFAccessoryConnection_Close: - { - TRACE_ASSERT( iAccessoryConnection != NULL ); - - if ( iAccessoryConnection != NULL ) - { - iAccessoryConnection->CloseSubSession(); - delete iAccessoryConnection; - iAccessoryConnection = NULL; - COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Close - Sub session closed" ) ) ); - } - *aRetval = KErrNone; - } - break; - - default: - break; - } - - } - -void CTFAccessoryTestControl::FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ) - { - CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); - TInt errVal = 0; - - TRACE_ASSERT( testCase != NULL ); - if ( testCase != NULL ) - { - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() - inside if ( testCase != NULL )" ) ) ); - if(!iStack.IsEmpty()) - { - iStackIter.SetToFirst(); - - while ( ( iObserverItem = iStackIter++ ) != NULL ) - { - if(iObserverItem->FindRequest(aParameter.iRequestType)) - { - testCase->CheckRequest( iObserverItem->iStatus, - iObserverItem->iValue, - iObserverItem->iCapabilityName, - &errVal ); - - if(errVal == KTFDontDeleteObserver) - { - aParameter.iArg1 = KTFDontDeleteObserver; - } - - - if ( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() - { - if( KTFDontDeleteObserver != aParameter.iArg1 ) - { - if (iObserverItem->iStatus == KRequestPending ) - { - User::WaitForRequest(iObserverItem->iStatus); - } - iStack.Remove( *iObserverItem ); - delete iObserverItem; - } - else - { - User::Leave( KTFDontDeleteObserver ); - } - } - else - { - *aRetval = KErrGeneral; - } - } - } - } - else - { - *aRetval = KErrGeneral; - } - } - - TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() returning and setting *aRetval = KErrNone )" ) ) ); - *aRetval = KErrNone; - } - - -void CTFAccessoryTestControl::AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ) - { - switch(aCase) - { - case ETFAccessorySettings_Open: - { - if ( iAccessorySettings == NULL ) - { - iAccessorySettings = new ( ELeave ) RAccessorySettings; - *aRetval = iAccessorySettings->CreateSubSession( iAccessoryServer ); - } - else - *aRetval = KErrNone; - } - break; - - case ETFAccessorySettings_Close: - { - TRACE_ASSERT( iAccessorySettings != NULL ); - - if ( iAccessorySettings != NULL ) - { - iAccessorySettings->CloseSubSession(); - delete iAccessorySettings; - iAccessorySettings = NULL; - } - *aRetval = KErrNone; - } - break; - - default: - break; - - } - } - -void CTFAccessoryTestControl::SetSeveralAccessoryModeSetting( TInt* aRetval ) - { - TAccModeSetting accModeSettingIn; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf< KMaxAccModeSetting > aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 1 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "012345678901234567890" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( ETrue ); - arrayIn.AddSetting( accModeSettingIn ); - - *aRetval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - } - -void CTFAccessoryTestControl::GetSeveralAccessoryModeSetting( TInt* aRetval ) - { - TAccModeSetting accModeSettingOut; - TAccMode tAccMode = EAccModeWirelessHeadset; - TBuf< KMaxAccModeSetting > aDesOut; - TAccModeSettingArray arrayOut; - TInt intOut( 0 ); - // set input parameters for GetAccessoryModeSettings() - // setting 11 - accModeSettingOut.SetId( 11 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 12 - accModeSettingOut.SetId( 12 ); - arrayOut.AddSetting( accModeSettingOut ); - - // setting 13 - accModeSettingOut.SetId( 13 ); - arrayOut.AddSetting( accModeSettingOut ); - - *aRetval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, arrayOut ); - - // Check that got settings are right - - TInt count = arrayOut.GetArraySize(); - TInt foundCount(0); - - for( TInt index = 0; index < count; index++ ) - { - arrayOut.GetSetting( index, accModeSettingOut ); - - if( 11 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTInt( intOut); - - if( 1 == intOut ) - { - foundCount++; - } - } - - - if( 12 == accModeSettingOut.Id() ) - { - accModeSettingOut.GetTDes( aDesOut ); - - if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) - { - foundCount++; - } - - } - - if( 13 == accModeSettingOut.Id() ) - { - - accModeSettingOut.GetTBool( intOut ); - - if( intOut ) - { - foundCount++; - } - } - } - - if(foundCount != 3) - { - *aRetval = KErrNotFound; - } - - // - // Reset Settings - // - TAccModeSetting accModeSettingIn; - TBuf< KMaxAccModeSetting > aDesIn; - // Set - // setting 1 - accModeSettingIn.SetId( 11 ); // unknown TInt - accModeSettingIn.SetTInt( 0 ); - TAccModeSettingArray arrayIn; - arrayIn.AddSetting( accModeSettingIn ); - - // setting 2 - accModeSettingIn.SetId( 12 ); // unknown Des - _LIT( KAccSetting2, "" ); - aDesIn.Copy( KAccSetting2 ); - accModeSettingIn.SetTDes( aDesIn ); - arrayIn.AddSetting( accModeSettingIn ); - - // setting 3 - accModeSettingIn.SetId( 13 ); // unknown TBool - accModeSettingIn.SetTBool( EFalse ); - arrayIn.AddSetting( accModeSettingIn ); - - iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); - - } - -void CTFAccessoryTestControl::SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ) - { - switch( aParameter.iArg3 ) - { - case KAccSetVolumeLevel: - { - //AccPolCommonNameValuePairs.h contains following example code - RAccessoryControl accessoryControl; - accessoryControl.CreateSubSession( iAccessoryServer ); - - CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL(); - CleanupStack::PushL( nameArray ); - accessoryControl.GetSubblockNameArrayL( iGenericId[aParameter.iGid], *nameArray ); - - TAccPolNameRecord nameRecord; - nameRecord.SetNameL( KAccSetVolumeLevel ); - TAccValueTypeTInt value; - - if( nameArray->HasName( KAccSetVolumeLevel ) ) - { - accessoryControl.GetValueL( iGenericId[aParameter.iGid], nameRecord, value ); - value.iValue = value.iValue | aParameter.iArg1; - accessoryControl.AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], nameRecord, value ); - } - - CleanupStack::PopAndDestroy( nameArray ); - accessoryControl.CloseSubSession(); - *aRetval = KErrNone; - } - break; - - default: - { - TAccPolNameRecord aNameRecord; - aNameRecord.SetNameL( aParameter.iArg3 ); - TAccValueTypeTInt aIntValue; - aIntValue.iValue = aParameter.iArg1; - *aRetval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, aIntValue ); - } - break; - } - - } - -void CTFAccessoryTestControl::SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ) - { - switch(aCase) - { - case ETFSelectionDialogText: - { - const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; - - RNotifier notifier; - notifier.Connect(); - - TInt selectionListBitmask = 255; - TInt reply = 0; - - TPckg replyPck( reply); - TPckg selectionBitmaskPackage( selectionListBitmask); - - //activate active object - TRequestStatus status; - status = KRequestPending; - - //open ui - notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); - - User::WaitForRequest( status); - - - notifier.Close(); - - *aRetval = KErrNone; - } - - case ETFSelectionDialogCancel: - { - const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; - - RNotifier notifier; - notifier.Connect(); - - TInt selectionListBitmask = 7; - TInt reply = 0; - - TPckg replyPck( reply); - TPckg selectionBitmaskPackage( selectionListBitmask); - - //activate active object - TRequestStatus status; - - //open ui - notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); - User::After( 2500000); - notifier.CancelNotifier( KAccFwUiDialogNotifierUid); - - // Implementation of the dialog is changed. Request is completed every time - User::WaitForRequest( status ); - - notifier.Close(); - - *aRetval = KErrNone; - } - - default: - break; - - } - - } - -void CTFAccessoryTestControl::CheckConnectedAccessory( TInt* aRetval ) - { - *aRetval = KErrNone; - - TAccPolGenericID genID; // TGeneric ID that should be connected - TAccPolGenericID genIDConnected; // TGeneric ID that is connected - TAccPolGIDHeader iGenericIDHeader; // Header of the GID that should be connected - TAccPolGIDHeader iGenericIDHeaderConnected; // Header of the connected GID - TAccPolGenericIDArray genericIdArray; // Array of connected generic ID's - CAccConGenericID* aGenericID = CAccConGenericID::NewL(); // This might be needed for capabilities - CAccPolSubblockNameArray* nameArrayConnected = CAccPolSubblockNameArray::NewL(); - - CleanupStack::PushL( aGenericID ); - CleanupStack::PushL( nameArrayConnected ); - - TAccPolGenericID genericID = aGenericID->GenericID(); - - TBuf hwModelID(_L("headset")); - // Set GenericID header - iGenericIDHeader.iAccessoryDeviceType = KDTHeadset; - iGenericIDHeader.iPhysicalConnection = KPCWired; - iGenericIDHeader.iApplicationProtocol = 0x0; - - iGenericIDHeader.iCapabilitiesSubblocks = KSBAudioSubblock; - - iGenericIDHeader.iHWModelID = hwModelID; - iGenericIDHeader.iHWDeviceID = 0x0; - iGenericIDHeader.iDBID = 0x0; - - RAccessoryConnection* accessoryConnection = new ( ELeave ) RAccessoryConnection(); - CleanupStack::PushL( accessoryConnection ); - accessoryConnection->CreateSubSession( iAccessoryServer ); - accessoryConnection->GetAccessoryConnectionStatus( genericIdArray ); - CleanupStack::PopAndDestroy( accessoryConnection ); - - genIDConnected = genericIdArray.GetGenericIDL( 0 ); - - RAccessorySingleConnection singleConnect;// = new ( ELeave ) RAccessoryConnectionBase(); - singleConnect.CreateSubSession( iAccessoryServer ); - singleConnect.GetSubblockNameArrayL( genIDConnected, *nameArrayConnected ); - - singleConnect.CloseSubSession(); - - iGenericIDHeaderConnected.iAccessoryDeviceType = genIDConnected.DeviceTypeCaps(); - iGenericIDHeaderConnected.iPhysicalConnection = genIDConnected.PhysicalConnectionCaps(); - iGenericIDHeaderConnected.iApplicationProtocol = genIDConnected.ApplicationProtocolCaps(); - iGenericIDHeaderConnected.iCapabilitiesSubblocks = genIDConnected.SubblockCaps(); - iGenericIDHeaderConnected.iHWModelID = genIDConnected.HWModelID(); - iGenericIDHeaderConnected.iHWDeviceID = genIDConnected.HWDeviceID(); - iGenericIDHeaderConnected.iDBID = 0x0; - - //Check GenericID header - if( iGenericIDHeader.iAccessoryDeviceType != iGenericIDHeaderConnected.iAccessoryDeviceType ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iPhysicalConnection != iGenericIDHeaderConnected.iPhysicalConnection ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iApplicationProtocol != iGenericIDHeaderConnected.iApplicationProtocol ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iCapabilitiesSubblocks != iGenericIDHeaderConnected.iCapabilitiesSubblocks ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iHWModelID != iGenericIDHeaderConnected.iHWModelID ) - { - *aRetval = EFalse; - } - if( iGenericIDHeader.iHWDeviceID != iGenericIDHeaderConnected.iHWDeviceID ) - { - *aRetval = EFalse; - } - if( !( nameArrayConnected->HasName( KAccStereoAudio ) ) ) - { - *aRetval = EFalse; - } - - if( !( nameArrayConnected->HasName( KAccAudioOutConnector ) ) ) - { - *aRetval = EFalse; - } - - if( !( nameArrayConnected->HasName( KAccAudioOutputType ) ) ) - { - *aRetval = EFalse; - } - //CleanupStack::PopAndDestroy( nameValueArray ); - CleanupStack::PopAndDestroy( nameArrayConnected ); - CleanupStack::PopAndDestroy( aGenericID ); - - } - - -void CTFAccessoryTestControl::CallTClassMethods( TInt* aRetval ) - { - // Settings(); - Policy(); - *aRetval = KErrNone; - } - -void CTFAccessoryTestControl::Settings() - { - TAccModeSettingArray array; - array.Reset(); - TInt ret = array.GetMaxArraySize(); - TAccModeSetting setting; - TUint32 settingId( 1 ); - setting.SetId( settingId ); - array.AddSetting( setting ); - TAccModeSetting setting2; - ret = array.GetSetting( 0, setting2 ); - ret = array.GetArraySize(); - } - -void CTFAccessoryTestControl::Policy() - { - TInt valueInt( 1 ); - TUint32 valueUInt( 1 ); - TDesC8 des( _L8( "timo" ) ); - //TDes8 valueDesc = des; - TAccPolNameRecord nameRecord; - TAccPolValueRecord valRec( des, EAPVPolicy ); - TAccPolNameValueRecord nameValRec; - TAccPolNameValueRecord nameValRec1( nameRecord, valRec ); - TAccPolNameValueRecord nameValRec2( valueUInt, valueInt, EAPVInt, EAPVPolicy ); - TAccPolNameValueRecord nameValRec3( valueUInt, des, EAPVPolicy ); - TAccPolNameValueRecord nameValRec4( valueUInt ); - //TDesC8 valueToGet; - valRec.GetValueL( des ); - valRec.SetValue( des ); - //valRec.SetValue( valueToGet ); - TAccPolValueRecord valRec1( valueInt, EAPVInt, EAPVPolicy ); - valRec1.SetValue( valueInt ); - valRec1.SetLocation( EAPVPolicy ); - valRec1.SetL( valueInt, EAPVInt, EAPVPolicy ); - } - -void CTFAccessoryTestControl::GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TBool aSettingsValueBool; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId(aParameter.iArg2); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); - - if( aSetting.Type() == EAccModeSettingBool) - { - *aRetval = aSetting.GetTBool(aSettingsValueBool); - - if(*aRetval != KErrNotFound) - { - if(aSettingsValueBool == (TBool)aParameter.iArg4) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -void CTFAccessoryTestControl::GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TInt aSettingsValueInt; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId(aParameter.iArg2); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); - - if(aSetting.Type() == EAccModeSettingInt) - { - *aRetval = aSetting.GetTInt(aSettingsValueInt); - - if(*aRetval != KErrNotFound) - { - if( aSettingsValueInt == aParameter.iArg4 ) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -void CTFAccessoryTestControl::GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) - { - TBuf aSettingsValueDes; - - TAccMode aAccMode = (TAccMode)aParameter.iArg1; - TAccModeSetting aSetting; - aSetting.SetId( aParameter.iArg2 ); - - *aRetval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, aSetting ); - - if( aSetting.Type() == EAccModeSettingDes ) - { - *aRetval = aSetting.GetTDes( aSettingsValueDes ); - - if(*aRetval != KErrNotFound) - { - TBuf buffer; - buffer.Num( aParameter.iArg3 ); - if( KErrNone == aSettingsValueDes.Compare( buffer ) ) - { - *aRetval = KErrNone; - } - else - { - *aRetval = KErrArgument; - } - } - } - else - { - *aRetval = KErrNotFound; - } - } - -// End of file +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES + +#include +#include +#include +#include "siftrace.h" +#include "CtfAccessoryTestcontrol.h" +#include "CtfAccessoryTestCaseControl.h" +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include "AccClientServerMessages.h" +#include + +#include +#include + +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl* GetAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl* GetAccessoryTestControl( void ) + { + CTFStub* stub = CTFFactory::Stub( KTFStubTypeAccessoryControl ); + return STATIC_CAST( CTFAccessoryTestControl*, stub ); + } +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl::MTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl::MTFAccessoryTestControl( void ) + { + } +// +// ---------------------------------------------------------------------------------- +// MTFAccessoryTestControl::~MTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +MTFAccessoryTestControl::~MTFAccessoryTestControl( void ) + { + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +CTFAccessoryTestControl::CTFAccessoryTestControl( void ) : + CTFRemoteStub( KTFStubTypeAccessoryControl ), + iStack( CTFTestControlObserver::iOffset ), iStackIter( iStack ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl()" ) ) ); + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CTFAccessoryTestControl() - return" ) ) ); + } + +//lint -e1740 Pointer not directly deleted by destructor +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::~CTFAccessoryTestControl +// ---------------------------------------------------------------------------------- +CTFAccessoryTestControl::~CTFAccessoryTestControl( void ) + { + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl()" ) ) ); + RProperty::Delete( KTFAccessoryTestProperty, KTFAccessoryMethod ); + + ResetAccessoryServices(); + + iAccessoryServer.Disconnect(); + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::~CTFAccessoryTestControl() - Accessory Server connection closed" ) ) ); + + } +//lint +e1740 +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::InitializeL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::InitializeL( void ) + { + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - enter" ) ) ); + TInt retval( KErrNone ); + + iAccessoryConnection = NULL; + iAccessorySingleConnection = NULL; + iAccessoryControl = NULL; + iAccessorySettings = NULL; + iAccessoryMode = NULL; + iAccessoryAudioControl = NULL; + iAccessoryBTControl = NULL; + + iStreamContainer = NULL; + iTopologyContainer = NULL; + iSpeakerRightVolume = NULL; + iSpeakerLeftVolume = NULL; + iSpeakerMute = NULL; + iMicRightVolume = NULL; + iMicLeftVolume = NULL; + + TAccPolGenericID emptyInstance; + for( TInt i( 0 ); i < 10; i++ ) + { + iGenericId[i] = emptyInstance; + } + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL()" ) ) ); + + User::LeaveIfError( iAccessoryServer.Connect() ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL() - Connected to accessory server" ) ) ); + + retval = RProperty::Define( KTFAccessoryTestProperty, + KTFAccessoryMethod, + RProperty::EByteArray ); + if( retval != KErrAlreadyExists ) + User::LeaveIfError( retval ); + //attach to property + + + RProperty systemState; + User::LeaveIfError( systemState.Attach( KPSUidStartup, KPSGlobalSystemState ) ); + TInt value( KErrNone ); + //check value + TInt err = systemState.Get( value ); + + if( err != KErrNone ) + { + err = systemState.Define( KPSUidStartup, + KPSGlobalSystemState, + RProperty::EInt ); + TInt err = systemState.Get( value ); + } + + if( value != ESwStateNormalRfOn || value != ESwStateNormalRfOff || value + != ESwStateNormalBTSap ) + { + TInt err = systemState.Set( KPSUidStartup, + KPSGlobalSystemState, + ESwStateNormalRfOn ); + } + + iInitialized = ETrue; + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::InitializeL - return" ) ) ); + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::InitializeL( void ) - return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ResetAccessoryServices +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ResetAccessoryServices( void ) + { + ResetAccessoryServer(); + + iInitialized = EFalse; + + iAccessoryServer.Close(); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ResetAccessoryServer +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ResetAccessoryServer( void ) + { + + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer()" ) ) ); + + CTFTestControlObserver* observerItem; + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( observerItem = iStackIter++ ) != NULL ) + { + observerItem->Cancel(); + User::After( 2000000 ); + iStack.Remove( *observerItem ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Remove Observer" ) ) ); + delete observerItem; + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Delete Observer" ) ) ); + }; + } + + iStack.Reset(); + + TAccPolGenericID emptyInstance; + + for( TInt i( 0 ); i < 10; i++ ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Clear instances" ) ) ); + if( KErrNotFound != iGenericId[i].UniqueID() ) + { + if( iGenericId[i].PhysicalConnectionCaps( KPCBluetooth ) ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Found" ) ) ); + TBTDevAddr BTDevAddr( iGenericId[i].DeviceAddress() ); + if( iAccessoryBTControl != NULL ) + { + TRequestStatus status; + status = KRequestPending; + iAccessoryBTControl->DisconnectAccessory( status, BTDevAddr ); + User::WaitForRequest( status ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- BT Disconnected" ) ) ); + } + } + else + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Found" ) ) ); + TPckgBuf buf; + buf().iMethod = ETFAsyDisc; + User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, + KTFAccessoryMethod, + buf ) ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ResetAccessoryServer -- Wired Disconnected" ) ) ); + } + } + iGenericId[i] = emptyInstance; + } + + if( iAccessoryConnection != NULL ) + { + iAccessoryConnection->CloseSubSession(); + delete iAccessoryConnection; + iAccessoryConnection = NULL; + } + + if( iAccessorySingleConnection != NULL ) + { + iAccessorySingleConnection->CloseSubSession(); + delete iAccessorySingleConnection; + iAccessorySingleConnection = NULL; + } + if( iAccessoryControl != NULL ) + { + iAccessoryControl->CloseSubSession(); + delete iAccessoryControl; + iAccessoryControl = NULL; + } + if( iAccessorySettings != NULL ) + { + iAccessorySettings->CloseSubSession(); + delete iAccessorySettings; + iAccessorySettings = NULL; + } + if( iAccessoryMode != NULL ) + { + iAccessoryMode->CloseSubSession(); + delete iAccessoryMode; + iAccessoryMode = NULL; + } + + if( iAccessoryAudioControl != NULL ) + { + iAccessoryAudioControl->CloseSubSession(); + delete iAccessoryAudioControl; + iAccessoryAudioControl = NULL; + } + + if( iAccessoryBTControl != NULL ) + { + iAccessoryBTControl->CloseSubSession(); + delete iAccessoryBTControl; + iAccessoryBTControl = NULL; + } + + if( iSpeakerRightVolume != NULL ) + { + delete iSpeakerRightVolume; + iSpeakerRightVolume = NULL; + } + + if( iSpeakerLeftVolume != NULL ) + { + delete iSpeakerLeftVolume; + iSpeakerLeftVolume = NULL; + } + + if( iSpeakerMute != NULL ) + { + delete iSpeakerMute; + iSpeakerMute = NULL; + } + + if( iMicRightVolume != NULL ) + { + delete iMicRightVolume; + iMicRightVolume = NULL; + } + + if( iMicLeftVolume != NULL ) + { + delete iMicLeftVolume; + iMicLeftVolume = NULL; + } + + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::ResetAccessoryServer() - Success" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CancelOutStandingRequest +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CancelOutStandingRequest() + { + iObserverItem->Cancel(); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::FillObjectL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::FillObjectL( CAccPolAudioStreamFormatCon* aContainer, + TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects ) + { + + for( TInt i = 0; i < aNumberOfObjects; i++ ) + { + switch( aobjectType ) + { + case EAccPolAudioInputStreamObject: + { + CAccPolAudioStreamFormat* stream = + CAccPolAudioStreamFormat::NewLC( aobjectType, + i, + KUidFormatPCM16, + CAccPolAudioStreamFormat::EStereo, + CAccPolAudioStreamFormat::EBitsPerSample16, + i + 200 ); + aContainer->AddL( *stream ); + CleanupStack::PopAndDestroy( stream ); + } + break; + + case EAccPolAudioOutputStreamObject: + { + + CAccPolAudioStreamFormat + * stream = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioOutputStreamObject ); + + stream->SetUnitId( i ); + stream->SetAudioFormat( KUidFormatPCM16 ); + stream->SetStreamType( CAccPolAudioStreamFormat::EMono ); + stream->SetBitResolution( CAccPolAudioStreamFormat::EBitsPerSample32 ); + stream->SetSamFreq( i + 200 ); + + aContainer->AddL( *stream ); + CleanupStack::PopAndDestroy( stream ); + } + break; + + default: + { + TRACE_ASSERT_ALWAYS; + } + break; + } + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateObjectPubSub +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateObjectPubSubL( TStreamConObjectType aobjectType, + TInt64 aNumberOfObjects, + TStreamConObjectType aobjectType2, + TInt64 aNumberOfObjects2 ) + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + CAccPolAudioStreamFormatCon* container = + CAccPolAudioStreamFormatCon::NewLC(); + + FillObjectL( container, aobjectType, aNumberOfObjects ); + FillObjectL( container, aobjectType2, aNumberOfObjects2 ); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize container to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + container->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + TPtr8 ptr( buf->Ptr( 0 ) ); + + TInt retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( container ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateObjectPubSub +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateTopologyObjectsToPubSubL( + TTFAccessoryTestCaseStateControl& aParameter ) + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + CAccPolAudioTopologyObjectCon* aObject = + CAccPolAudioTopologyObjectCon::NewLC(); + + //Speaker + //OT-3 + CAccPolOutputTerminal* OT3 = CAccPolOutputTerminal::NewLC( 3, + CAccPolOutputTerminal::EAPTHeadphone, + 2 ); + //Connected to FU-2 + aObject->AddL( *OT3 ); + + //FU2 + CAccPolFeatureUnit* FU2 = CAccPolFeatureUnit::NewLC( 2, 8 ); + // Volume control object. + CAccPolVolumeControl* speakerRightVolume = + CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* speakerLeftVolume = + CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); + + CAccPolMuteControl* speakermute = + CAccPolMuteControl::NewLC( KAccMasterChannel, ETrue ); + + FU2->AddControlL( *speakerRightVolume ); + FU2->AddControlL( *speakerLeftVolume ); + FU2->AddControlL( *speakermute ); + + //Connected to MU-8 + aObject->AddL( *FU2 ); + + CAccPolMixerUnit* MU8 = CAccPolMixerUnit::NewLC( 8 ); + MU8->AddSourceIdL( 1 ); + MU8->AddSourceIdL( 7 ); + + //Connected to IT1 and FU7 + aObject->AddL( *MU8 ); + + //Choice one + //IT-1 + TUint8 aChannelCount = 2; + TUint16 aChannelConfig = 0; + aChannelConfig = aChannelConfig | KAccRightFrontChannel; + aChannelConfig = aChannelConfig | KAccLeftFrontChannel; + + CAccPolInputTerminal* IT1 = CAccPolInputTerminal::NewLC( 1, + CAccPolInputTerminal::EAPTStream, + aChannelCount, + aChannelConfig ); + aObject->AddL( *IT1 ); + + //choice two + //FU7 + CAccPolFeatureUnit* FU7 = CAccPolFeatureUnit::NewLC( 7, 5 ); //Connected to FU5 + // Volume control object. + CAccPolVolumeControl* sidetoneRightVolume = + CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* sidetoneLeftVolume = + CAccPolVolumeControl::NewLC( KAccMasterChannel, 7, 5, 20, 5 ); + + FU7->AddControlL( *sidetoneRightVolume ); + FU7->AddControlL( *sidetoneLeftVolume ); + + aObject->AddL( *FU7 ); + + //Microphone + //IT-4 + + //OT-6 + CAccPolOutputTerminal* OT6 = CAccPolOutputTerminal::NewLC( 6, + CAccPolOutputTerminal::EAPTStream, + 10 ); + //Connected to SU-10 + aObject->AddL( *OT6 ); + + //SU-10 + CAccPolSelectorUnit* SU10 = CAccPolSelectorUnit::NewLC( 10, 1 ); + + // Connected to FU 5 + SU10->AddSourceIdL( 5 ); + aObject->AddL( *SU10 ); + + //FU5 + CAccPolFeatureUnit* FU5 = CAccPolFeatureUnit::NewLC( 5, 9 ); + + // Volume control object. + CAccPolVolumeControl* micRightVolume = + CAccPolVolumeControl::NewLC( KAccRightFrontChannel, 7, 5, 20, 5 ); + CAccPolVolumeControl* micLeftVolume = + CAccPolVolumeControl::NewLC( KAccLeftFrontChannel, 7, 5, 20, 5 ); + CAccPolMuteControl* micmute = CAccPolMuteControl::NewLC( KAccMasterChannel, + ETrue ); + + FU5->AddControlL( *micRightVolume ); + FU5->AddControlL( *micLeftVolume ); + FU5->AddControlL( *micmute ); + + //Connected to FU-9 + aObject->AddL( *FU5 ); + + ///FU9 + CAccPolFeatureUnit* FU9 = CAccPolFeatureUnit::NewLC( 9, 4 ); + //Connected IT-4 + aObject->AddL( *FU9 ); + + CAccPolInputTerminal* IT4 = CAccPolInputTerminal::NewLC( 4, + CAccPolInputTerminal::EAPTMicrophone, + aChannelCount, + aChannelConfig ); + aObject->AddL( *IT4 ); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize container to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + aObject->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + TInt retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + // Notify ASY stub + if( aParameter.iArg2 ) + { + PublishAndSubscribeL( aParameter ); + } + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( IT4 ); + CleanupStack::PopAndDestroy( FU9 ); + CleanupStack::PopAndDestroy( micmute ); + CleanupStack::PopAndDestroy( micLeftVolume ); + CleanupStack::PopAndDestroy( micRightVolume ); + CleanupStack::PopAndDestroy( FU5 ); + CleanupStack::PopAndDestroy( SU10 ); + CleanupStack::PopAndDestroy( OT6 ); + CleanupStack::PopAndDestroy( sidetoneLeftVolume ); + CleanupStack::PopAndDestroy( sidetoneRightVolume ); + CleanupStack::PopAndDestroy( FU7 ); + CleanupStack::PopAndDestroy( IT1 ); + CleanupStack::PopAndDestroy( MU8 ); + CleanupStack::PopAndDestroy( speakermute ); + CleanupStack::PopAndDestroy( speakerLeftVolume ); + CleanupStack::PopAndDestroy( speakerRightVolume ); + CleanupStack::PopAndDestroy( FU2 ); + CleanupStack::PopAndDestroy( OT3 ); + CleanupStack::PopAndDestroy( aObject ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CallAccessoryFunctionL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CallAccessoryFunctionL( TTFAccessoryTestCaseStateControl& aParameter ) + { + + // COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CallAccessoryFunctionL(%d, %d, %d)" ), aParameter.iAccessoryFunction, aParameter.iArg1, aParameter.iArg2 ) ); + if( !iInitialized ) + { + InitializeL(); + } + + TInt retval = KTFErrAccessoryServiceMissing; + + switch( aParameter.iAccessoryFunction ) + { + case ETFAccessorySet_ObjectPubSub: + { + CreateObjectPubSubL( ( TStreamConObjectType )aParameter.iArg1, + aParameter.iArg2, + ( TStreamConObjectType )aParameter.iArg3, + aParameter.iArg4 ); + retval = KErrNone; + } + break; + + case ETFAccessorySet_TopologyObjectsPubSub: + { + CreateTopologyObjectsToPubSubL( aParameter ); + retval = KErrNone; + } + break; + + case ETFAccessorySet_PubSub: + { + RProperty prop; + prop.Define( KTFAccessoryTestProperty, + KTFAccessoryNotifierMethod, + RProperty::EInt ); + retval = prop.Set( KTFAccessoryTestProperty, + KTFAccessoryNotifierMethod, + aParameter.iArg1 ); + } + break; + + case ETFConnectWiredAccessory: + { + PublishAndSubscribeL( aParameter ); + retval = KErrNone; + } + break; + + case ETFClearStack: + { + CTFTestControlObserver* observerItem; + TInt count = 0; + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( observerItem = iStackIter++ ) != NULL ) + { + observerItem->Cancel(); + iStack.Remove( *observerItem ); + delete observerItem; + count++; + }; + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestCaseControl::ETF_Pappa - count=%d " ), count ) ); + retval = KErrNone; + } + break; + + case ETFDisconnectWiredAccessory: + { + retval = KErrNone; + PublishAndSubscribeL( aParameter ); + TAccPolGenericID emptyInstance; + iGenericId[aParameter.iGid] = emptyInstance; + } + break; + + case ETFCheckCapabilityGroup: + { + if( aParameter.iArg2 + == iGenericId[aParameter.iGid].SubblockCaps( aParameter.iArg3 ) ) + { + retval = KErrNone; + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFCheckCapability: + { + RAccessoryConnection accessoryConnectionn; + accessoryConnectionn.CreateSubSession( iAccessoryServer ); + + CAccPolSubblockNameArray* nameArrayy = + CAccPolSubblockNameArray::NewL(); + CleanupStack::PushL( nameArrayy ); + accessoryConnectionn.GetSubblockNameArrayL( iGenericId[aParameter.iGid], + *nameArrayy ); + + if( aParameter.iArg2 == nameArrayy->HasName( aParameter.iArg3 ) ) + { + retval = KErrNone; + } + else + { + retval = KErrNotFound; + } + + CleanupStack::PopAndDestroy( nameArrayy ); + accessoryConnectionn.CloseSubSession(); + } + break; + + case ETFFindAndCheckRequest: + + { + FindAndCheckRequestL(&retval, aParameter); + } + break; + + case ETFFindAndCheckObjectRequest: + { + CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); + TRACE_ASSERT( testCase != NULL ); + if( testCase != NULL ) + { + if( !iStack.IsEmpty() ) + { + iStackIter.SetToFirst(); + + while( ( iObserverItem = iStackIter++ ) != NULL ) + { + if( iObserverItem->FindRequest( aParameter.iRequestType ) ) + { + testCase->CheckObjectRequest( iObserverItem->iStatus, + iObserverItem->iObjectValue, + iObserverItem->iCapabilityName ); + + if( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() + { + if( KTFDontDeleteObserver != aParameter.iArg1 ) + { + iStack.Remove( *iObserverItem ); + delete iObserverItem; + return; + } + else + { + User::Leave( KTFDontDeleteObserver ); + } + } + else + { + retval = KErrGeneral; + } + } + } + } + else + { + retval = KErrGeneral; + } + } + + retval = KErrNone; + } + break; + + // + // Accessory Connection + // + case ETFAccessoryConnection_Open: + { + AccessoryConnectionOpenClose(ETFAccessoryConnection_Open, &retval); + } + break; + + case ETFAccessoryConnection_Close: + + { + AccessoryConnectionOpenClose(ETFAccessoryConnection_Close, &retval); + } + break; + + // + // Accessory Settings + // + case ETFAccessorySettings_Open: + { + AccessorySettingsOpenClose(ETFAccessorySettings_Open, &retval); + } + break; + + case ETFAccessorySettings_Close: + { + AccessorySettingsOpenClose(ETFAccessorySettings_Close, &retval); + } + break; + + case ETFSetHWDeviceSettings: + { + retval + = iAccessorySettings->SetHWDeviceSettingsL( aParameter.iArg1, + ( TBool )aParameter.iArg2 ); + } + break; + + case ETFGetHWDeviceSettings: + { + TUint32 aSettingsValue( 0 ); + retval = iAccessorySettings->GetHWDeviceSettings( aSettingsValue ); + + if( aSettingsValue != aParameter.iArg1 ) + { + retval = KErrArgument; + } + } + break; + + case ETFGetSupportedHWDeviceSettings: + { + TUint32 aSettingsSupportedValue( 0 ); + + retval + = iAccessorySettings->GetSupportedHWDeviceSettings( aSettingsSupportedValue ); + + if( aSettingsSupportedValue != ( aParameter.iArg1 + | aParameter.iArg2 ) ) + { + retval = KErrArgument; + } + } + break; + + case ETFSetIntAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + //Set Lights + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTInt( aParameter.iArg4 ); + + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFSetBoolAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + //Set Lights + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTBool( aParameter.iArg4 ); + + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFSetDesAccessoryModeSetting: + { + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + + TBuf buf; + buf.Num( aParameter.iArg3 ); + // buf.Copy( *aParameter.iArg3 ); + + aSetting.SetId( aParameter.iArg2 ); + aSetting.SetTDes( buf ); + retval = iAccessorySettings->SetAccessoryModeSettingL( aAccMode, + aSetting ); + } + break; + + case ETFGetIntAccessoryModeSetting: + { + TInt aSettingsValueInt; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingInt ) + { + retval = aSetting.GetTInt( aSettingsValueInt ); + + if( retval != KErrNotFound ) + { + if( aSettingsValueInt == aParameter.iArg4 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFGetBoolAccessoryModeSetting: + { + TBool aSettingsValueBool; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingBool ) + { + retval = aSetting.GetTBool( aSettingsValueBool ); + + if( retval != KErrNotFound ) + { + if( aSettingsValueBool == ( TBool )aParameter.iArg4 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFGetDesAccessoryModeSetting: + { + TBuf aSettingsValueDes; + + TAccMode aAccMode = ( TAccMode )aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + retval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, + aSetting ); + + if( aSetting.Type() == EAccModeSettingDes ) + { + retval = aSetting.GetTDes( aSettingsValueDes ); + + if( retval != KErrNotFound ) + { + TBuf buffer; + buffer.Num( aParameter.iArg3 ); + if( KErrNone == aSettingsValueDes.Compare( buffer ) ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrNotFound; + } + } + break; + + case ETFSetSeveralAccessoryModeSetting: + { + + TAccModeSetting accModeSettingIn; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 1 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "012345678901234567890" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( ETrue ); + arrayIn.AddSetting( accModeSettingIn ); + + retval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, + arrayIn ); + + } + break; + + case ETFGetSeveralAccessoryModeSetting: + { + + TAccModeSetting accModeSettingOut; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf aDesOut; + TAccModeSettingArray arrayOut; + TInt intOut( 0 ); + // set input parameters for GetAccessoryModeSettings() + // setting 11 + accModeSettingOut.SetId( 11 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 12 + accModeSettingOut.SetId( 12 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 13 + accModeSettingOut.SetId( 13 ); + arrayOut.AddSetting( accModeSettingOut ); + + retval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, + arrayOut ); + + // Check that got settings are right + + TInt count = arrayOut.GetArraySize(); + TInt foundCount( 0 ); + + for( TInt index = 0; index < count; index++ ) + { + arrayOut.GetSetting( index, accModeSettingOut ); + + if( 11 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTInt( intOut ); + + if( 1 == intOut ) + { + foundCount++; + } + } + + if( 12 == accModeSettingOut.Id() ) + { + accModeSettingOut.GetTDes( aDesOut ); + + if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) + { + foundCount++; + } + + } + + if( 13 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTBool( intOut ); + + if( intOut ) + { + foundCount++; + } + } + } + + if( foundCount != 3 ) + { + retval = KErrNotFound; + } + + // + // Reset Settings + // + TAccModeSetting accModeSettingIn; + TBuf aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 0 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( EFalse ); + arrayIn.AddSetting( accModeSettingIn ); + + iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + } + break; + + // + // Accessory Single Connection + // + case ETFAccessorySingleConnection_Open: + { + if( iAccessorySingleConnection == NULL ) + { + iAccessorySingleConnection + = new ( ELeave ) RAccessorySingleConnection; + retval + = iAccessorySingleConnection->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySingleConnection_Close: + { + TRACE_ASSERT( iAccessorySingleConnection != NULL ); + + if( iAccessorySingleConnection != NULL ) + { + iAccessorySingleConnection->CloseSubSession(); + delete iAccessorySingleConnection; + iAccessorySingleConnection = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyNewAccessoryConnected: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyNewAccessoryConnected( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryDisconnected: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryDisconnected( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFNotifyIntAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyIntegerAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFNotifyBoolAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBooleanAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFNotifyObjectAccessoryValueChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyObjectAccessoryValueChanged( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryIntGetValue: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt aIntValue; + + iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], + aNameRecord, + aIntValue ); + + if( aIntValue.iValue == aParameter.iArg2 ) + { + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + break; + + case ETFAccessoryBoolGetValue: + { + RAccessoryConnection accessoryConnection; + accessoryConnection.CreateSubSession( iAccessoryServer ); + + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool boolValue; + retval + = accessoryConnection.GetValueL( iGenericId[aParameter.iGid], + nameRecord, + boolValue ); + + if( boolValue.iValue != aParameter.iArg1 ) + { + retval = KErrArgument; + } + + accessoryConnection.CloseSubSession(); + } + break; + + case ETFAccessoryDes8GetValue: + { + TBuf8<80> + worm( _L8("Malicious Worm Attach with extra long data with extra long content" )); + TBuf8<85> valueBuf; + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg1 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, valueBuf ) ); + + if( err == aParameter.iExpectedResult ) + { + + if( aParameter.iExpectedResult == KErrArgument ) + { + retval = KErrNone; + } + else + { + if( KErrNone == valueBuf.Compare( worm ) ) + { + RDebug::RawPrint( valueBuf ); + retval = KErrNone; + } + else + { + retval = KErrArgument; + } + } + } + else + { + retval = KErrArgument; + } + } + break; + + case ETFAccessoryObjectParseTopology: + { + + TInt rspeaker( KErrGeneral ); + TInt lspeaker( KErrGeneral ); + TInt rmic( KErrGeneral ); + TInt lmic( KErrGeneral ); + TInt mute( KErrGeneral ); + TInt sidetone( KErrGeneral ); + // + // Find speaker volume object in USB headset case. + // + CAccPolAudioUnitBase* audioUnit = NULL; + CAccPolAudioControlBase* audioControl = NULL; + //CAccPolOutputTerminal* ouputTerminal = NULL; + + if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, + audioUnit ) ) + { + if( audioUnit->GetNextAudioUnitL( audioUnit ) ) + { + if( audioUnit->ObjectType() + == EAccPolAudioFeatureUnitObject ) + { + if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, + KAccRightFrontChannel, + audioControl ) ) + { + iSpeakerRightVolume = CAccPolVolumeControl::NewL(); + *iSpeakerRightVolume + = *reinterpret_cast ( audioControl ); + rspeaker = KErrNone; + } + if( audioUnit->GetAudioControlL( EAccPolAudioVolumeControlObject, + KAccLeftFrontChannel, + audioControl ) ) + { + iSpeakerLeftVolume = CAccPolVolumeControl::NewL(); + *iSpeakerLeftVolume + = *reinterpret_cast ( audioControl ); + lspeaker = KErrNone; + } + if( audioUnit->GetAudioControlL( EAccPolAudioMuteControlObject, + KAccMasterChannel, + audioControl ) ) + { + iSpeakerMute = CAccPolMuteControl::NewL(); + *iSpeakerMute + = *reinterpret_cast ( audioControl ); + mute = KErrNone; + } + + } + } + } + + // + // Find mic volume object in USB headset case. + // + if( iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTStream, + audioUnit ) ) + { + do + { + } + while( audioUnit->GetNextAudioUnitL( audioUnit ) + && audioUnit->ObjectType() != EAccPolAudioFeatureUnitObject ); + + RPointerArray aAudioControls; + audioUnit->GetAudioControlsL( KAccRightFrontChannel, + aAudioControls ); + + if( aAudioControls.Count() > 0 ) + { + iMicRightVolume = CAccPolVolumeControl::NewL(); + *iMicRightVolume + = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); + rmic = KErrNone; + } + aAudioControls.Reset(); + + audioUnit->GetAudioControlsL( KAccLeftFrontChannel, + aAudioControls ); + + if( aAudioControls.Count() > 0 ) + { + iMicLeftVolume = CAccPolVolumeControl::NewL(); + *iMicLeftVolume + = *reinterpret_cast ( aAudioControls.operator[]( 0 ) ); + lmic = KErrNone; + } + + // + // Find sidetone volume object in USB headset case. + // + iTopologyContainer->OutputTerminalL( CAccPolOutputTerminal::EAPTHeadphone, + audioUnit ); + + do + { + audioUnit->GetNextAudioUnitL( audioUnit ); + } + while( audioUnit->ObjectType() != EAccPolAudioMixerUnitObject ); + + if( audioUnit->SourceIdCount() > 1 ) + { + RPointerArray aAudioUnits; + audioUnit->GetAudioUnitListL( aAudioUnits ); + + for( TInt i = 0; i < aAudioUnits.Count(); i++ ) + { + if( aAudioUnits.operator[]( i )->ObjectType() + == EAccPolAudioFeatureUnitObject ) + { + audioUnit = aAudioUnits.operator[]( i ); + break; + } + } + } + + aAudioControls.Reset(); + audioUnit->GetAudioControlsL( aAudioControls ); + if( aAudioControls.Count() == 2 ) + { + sidetone = KErrNone; + } + } + + retval = ( rspeaker | lspeaker | rmic | lmic | mute | sidetone ); + + } + break; + + case ETFAccessoryGetStreamObjects: + { + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); + + if( err == aParameter.iExpectedResult ) + { + //externalize container to bufFromASY + CBufFlat* bufFromASY = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromASY ); + bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + RBufWriteStream wStrm; + ( void )wStrm.Open( *bufFromASY ); + wStrm.PushL(); + iStreamContainer->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); + + //Read container from PubSub + RProperty prop; + RBufReadStream rStrm; + CBufFlat* bufFromPubSub = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromPubSub ); + bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); + TInt ret = prop.Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptrBufFromPubSub ); + + TInt k = sizeof( bufFromASY ); + TInt kk = sizeof( bufFromPubSub ); + + bufFromASY->Compress(); + bufFromPubSub->Compress(); + + k = sizeof( bufFromASY ); + kk = sizeof( bufFromPubSub ); + + retval + = ( 0 + == memcompare( reinterpret_cast ( &ptrbufFromASY ), + sizeof( bufFromASY ), + reinterpret_cast ( &ptrBufFromPubSub ), + sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; + + CleanupStack::PopAndDestroy( bufFromPubSub ); + CleanupStack::PopAndDestroy( bufFromASY ); + } + } + break; + + case ETFAccessoryGetStreamObjectsFromPolicy: + { + if( iStreamContainer != NULL ) + { + delete iStreamContainer; + iStreamContainer = NULL; + } + iStreamContainer = CAccPolAudioStreamFormatCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iStreamContainer ) ); + + RPointerArray inputStreamObjects; + RPointerArray outputStreamObjects; + + iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); + iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); + + CAccPolAudioStreamFormat* inputStream = + inputStreamObjects.operator[]( 0 ); + CAccPolAudioStreamFormat* ouputStream = + outputStreamObjects.operator[]( 0 ); + + retval = err; + } + break; + + case ETFAccessorySetStreamObjects: + { + CAccPolAudioStreamFormatCon* setContainer = CAccPolAudioStreamFormatCon::NewLC(); + + RPointerArray inputStreamObjects; + RPointerArray outputStreamObjects; + + iStreamContainer->GetInputStreamFormatsL( inputStreamObjects ); + CAccPolAudioStreamFormat* inputStream = NULL; + for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && + inputStream->UnitId() == 0 && + inputStream->StreamType() == CAccPolAudioStreamFormat::EStereo && + inputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample16 && + inputStream->SamFreq() == 200 ) + { + setContainer->AddL( *inputStream ); + break; + } + } + + iStreamContainer->GetOutputStreamFormatsL( outputStreamObjects ); + CAccPolAudioStreamFormat* outputStream = NULL; + for(TInt i=0; iAudioFormat() == KUidFormatPCM16 && + outputStream->UnitId() == 0 && + outputStream->StreamType() == CAccPolAudioStreamFormat::EMono && + outputStream->BitResolution() == CAccPolAudioStreamFormat::EBitsPerSample32 && + outputStream->SamFreq() == 200 ) + { + setContainer->AddL( *outputStream ); + break; + } + } + + RBufWriteStream wStrm; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + (void)wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, KTFAccessoryObjectMethod, ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + inputStreamObjects.Close(); + outputStreamObjects.Close(); + } + break; + + case ETFAccessoryGetTopologyObjects: + { + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + if( err == aParameter.iExpectedResult ) + { + //externalize container to bufFromASY + CBufFlat* bufFromASY = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromASY ); + bufFromASY->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + RBufWriteStream wStrm; + ( void )wStrm.Open( *bufFromASY ); + wStrm.PushL(); + iTopologyContainer->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptrbufFromASY( bufFromASY->Ptr( 0 ) ); + + //Read container from PubSub + RProperty prop; + RBufReadStream rStrm; + CBufFlat* bufFromPubSub = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( bufFromPubSub ); + bufFromPubSub->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TPtr8 ptrBufFromPubSub( bufFromPubSub->Ptr( 0 ) ); + TInt ret = prop.Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptrBufFromPubSub ); + + TInt k = sizeof( bufFromASY ); + TInt kk = sizeof( bufFromPubSub ); + + bufFromASY->Compress(); + bufFromPubSub->Compress(); + + k = sizeof( bufFromASY ); + kk = sizeof( bufFromPubSub ); + + retval + = ( 0 + == memcompare( reinterpret_cast ( &ptrbufFromASY ), + sizeof( bufFromASY ), + reinterpret_cast ( &ptrBufFromPubSub ), + sizeof( bufFromASY ) ) ) ? KErrNone : KErrGeneral; + + CleanupStack::PopAndDestroy( bufFromPubSub ); + CleanupStack::PopAndDestroy( bufFromASY ); + } + } + break; + + case ETFAccessoryGetVolumeControlObjects: + { + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + iTopologyContainer->AddL( *iSpeakerRightVolume ); + iTopologyContainer->AddL( *iSpeakerLeftVolume ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + CAccPolVolumeControl* rightVolume; + rightVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 0 ); + + CAccPolVolumeControl* leftVolume; + leftVolume = ( CAccPolVolumeControl* )iTopologyContainer->AtL( 1 ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySetVolumeControlObjects: + { + RBufWriteStream wStrm; + CAccPolAudioTopologyObjectCon* setContainer = + CAccPolAudioTopologyObjectCon::NewLC(); + + iSpeakerRightVolume->SetVolumeDb( aParameter.iArg1 ); + iSpeakerRightVolume->SetMinVolumeDb( aParameter.iArg2 ); + iSpeakerRightVolume->SetMaxVolumeDb( aParameter.iArg4 ); + iSpeakerRightVolume->SetVolumeResDb( 0x05 ); + setContainer->AddL( *iSpeakerRightVolume ); + iSpeakerLeftVolume->SetVolumeDb( aParameter.iArg1 ); + iSpeakerLeftVolume->SetMinVolumeDb( aParameter.iArg2 ); + iSpeakerLeftVolume->SetMaxVolumeDb( aParameter.iArg4 ); + iSpeakerLeftVolume->SetVolumeResDb( 0x05 ); + setContainer->AddL( *iSpeakerLeftVolume ); + + CBufFlat* buf = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + } + break; + + case ETFAccessoryGetMuteControlObjects: + { + + if( iTopologyContainer != NULL ) + { + delete iTopologyContainer; + iTopologyContainer = NULL; + } + + iTopologyContainer = CAccPolAudioTopologyObjectCon::NewL(); + + iTopologyContainer->AddL( *iSpeakerMute ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( err, iAccessorySingleConnection->GetValueL( iGenericId[aParameter.iGid], aNameRecord, *iTopologyContainer ) ); + + CAccPolMuteControl* mute; + mute = ( CAccPolMuteControl* )iTopologyContainer->AtL( 0 ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + } + break; + + case ETFAccessorySetMuteControlObjects: + { + RBufWriteStream wStrm; + CAccPolAudioTopologyObjectCon* setContainer = + CAccPolAudioTopologyObjectCon::NewLC(); + + iSpeakerMute->SetMute( aParameter.iArg1 ); + setContainer->AddL( *iSpeakerMute ); + + CBufFlat* buf = + CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + setContainer->ExternalizeL( wStrm ); + wStrm.Close(); + wStrm.Pop(); + TPtr8 ptr( buf->Ptr( 0 ) ); + + retval = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + ptr ); + + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TRAPD( setErr, iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, *setContainer ) ); + + retval = setErr; + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( setContainer ); + } + break; + + // + // Accessory Control + // + + case ETFAccessoryControl_Open: + { + if( iAccessoryControl == NULL ) + { + iAccessoryControl = new ( ELeave ) RAccessoryControl; + retval = iAccessoryControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryControl_Close: + { + TRACE_ASSERT( iAccessoryControl != NULL ); + + if( iAccessoryControl != NULL ) + { + iAccessoryControl->CloseSubSession(); + delete iAccessoryControl; + iAccessoryControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryConnectionStatusChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryConnectionStatusChanged( iGenericIdArray ); + retval = KErrNone; + } + break; + + case ETFSyncGetAccessoryConnectionStatus: + { + iAccessoryConnection->GetAccessoryConnectionStatus( iGenericIdArray ); + + if( iGenericIdArray.Count() != aParameter.iArg1 ) + { + retval = KErrArgument; + } + else + { + retval = KErrNone; + } + } + break; + + case ETFASyncGetAccessoryConnectionStatus: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->GetAccessoryConnectionStatus( iGenericIdArray ); + retval = KErrNone; + } + break; + + case ETFSetIntValue: + { + SetIntValue(aParameter, &retval); + } + break; + + case ETFSetBoolValue: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool aBoolValue; + aBoolValue.iValue = aParameter.iArg1; + retval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], + aNameRecord, + aBoolValue ); + } + break; + + // + //Tuupaa + // + case ETFAccessoryValueChangedNotifyInt: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( KAccAudioOutputType ); + TAccValueTypeTInt aIntValue; + aIntValue.iValue = EAccAudioOutPutTypePublic; + iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], + aNameRecord, + aIntValue ); + retval = KErrNone; + } + break; + + case ETFAccessoryValueChangedNotifyBool: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool aBoolValue; + aBoolValue.iValue = ETrue; + iAccessoryControl->AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], + aNameRecord, + aBoolValue ); + retval = KErrNone; + } + break; + + // + // BT Control + // + case ETFBTAccessoryValueChangedNotifyBool: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTBool boolValue; + boolValue.iValue = aParameter.iArg4; + iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, + nameRecord, + boolValue ); + retval = KErrNone; + } + break; + + case ETFBTAccessoryValueChangedNotifyInt: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt intValue; + intValue.iValue = aParameter.iArg4; + iAccessoryBTControl->AccessoryValueChangedNotifyL( btaddr, + nameRecord, + intValue ); + retval = KErrNone; + } + break; + + case ETFAccessoryBtControl_Open: + { + if( iAccessoryBTControl == NULL ) + { + iAccessoryBTControl = new ( ELeave ) RAccessoryBTControl; + retval + = iAccessoryBTControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryBtControl_Close: + { + TRACE_ASSERT( iAccessoryBTControl != NULL ); + + if( iAccessoryBTControl != NULL ) + { + iAccessoryBTControl->CloseSubSession(); + delete iAccessoryBTControl; + iAccessoryBTControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryBtConnectAccessory: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->ConnectBTAccessory( btaddr ); + retval = KErrNone; + } + break; + case ETFAccessoryBtDisconnectAccessory: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRequestStatus status; + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->DisconnectBTAccessory( btaddr ); + retval = KErrNone; + TAccPolGenericID emptyInstance; + iGenericId[aParameter.iGid] = emptyInstance; + } + break; + + case ETFAccessoryNotifyBluetoothAudioLinkOpenReq: + { + //TRequestStatus status; + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBluetoothAudioLinkOpenReq(); + retval = KErrNone; + } + break; + + case ETFAccessoryBluetoothAudioLinkOpenedNotify: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenedNotifyL( btaddr, (TAccAudioType)aParameter.iArg3 ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBluetoothAudioLinkOpenResp: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TInt response( aParameter.iArg2 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkOpenRespL( btaddr, response ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryNotifyBluetoothAudioLinkCloseReq: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyBluetoothAudioLinkCloseReq(); + retval = KErrNone; + } + break; + + case ETFAccessoryBluetoothAudioLinkClosedNotify: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkClosedNotifyL( btaddr, ( TAccAudioType )aParameter.iArg3 ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBluetoothAudioLinkCloseResp: + { + TBTDevAddr btaddr( aParameter.iArg1 ); + TInt response( aParameter.iArg2 ); + TRAPD( err, iAccessoryBTControl->BluetoothAudioLinkCloseRespL( btaddr, response ) ); + + if( err == aParameter.iExpectedResult ) + { + retval = KErrNone; + } + else + { + retval = KErrGeneral; + } + } + break; + + case ETFAccessoryBtCancelConnectAccessory: + { + TRequestStatus status; + TBTDevAddr btaddr( aParameter.iArg1 ); + iAccessoryBTControl->ConnectAccessory( status, btaddr ); + iAccessoryBTControl->CancelConnectAccessory(); + User::WaitForRequest( status ); + if( KErrCancel != status.Int() ) + { + retval = status.Int(); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryBtCancelDisconnectAccessory: + { + TRequestStatus status; + TBTDevAddr btaddr( aParameter.iArg1 ); + iAccessoryBTControl->DisconnectAccessory( status, btaddr ); + iAccessoryBTControl->CancelDisconnectAccessory(); + User::WaitForRequest( status ); + retval = status.Int(); + } + break; + + // + // Accessory Mode + // + case ETFAccessoryMode_Open: + { + if( iAccessoryMode == NULL ) + { + iAccessoryMode = new ( ELeave ) RAccessoryMode; + retval = iAccessoryMode->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryMode_Close: + { + TRACE_ASSERT( iAccessoryMode != NULL ); + + if( iAccessoryMode != NULL ) + { + iAccessoryMode->CloseSubSession(); + delete iAccessoryMode; + iAccessoryMode = NULL; + } + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryModeChanged: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryModeChanged(); + retval = KErrNone; + } + break; + + case ETFAccessoryAccessoryModeSync: + { + TAccPolAccessoryMode mode; + retval = iAccessoryMode->GetAccessoryMode( mode ); + + if( retval == KErrNone ) + { + if( aParameter.iArg1 != mode.iAccessoryMode ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter1 %d %d" ), aParameter.iArg1, mode.iAccessoryMode ) ); + retval = KTFErrAccessoryUnexpectedArg1; + } +#ifdef __WINS__ // Just check this in winscw + if( aParameter.iArg2 != mode.iAudioOutputStatus ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Unexpected Accessory Mode Parameter2 %d %d" ), aParameter.iArg2, mode.iAudioOutputStatus ) ); + retval = KTFErrAccessoryUnexpectedArg2; + } +#endif + } + else + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Getting Accessory Mode Failed %d" ), retval ) ); + } + + } + break; + + case ETFAccessoryAccessoryModeASync: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->GetAccessoryMode(); + retval = KErrNone; + } + break; + + // + // Audio Control + // + case ETFAccessoryAudioControl_Open: + { + if( iAccessoryAudioControl == NULL ) + { + iAccessoryAudioControl = new ( ELeave ) RAccessoryAudioControl; + retval + = iAccessoryAudioControl->CreateSubSession( iAccessoryServer ); + } + else + { + retval = KErrNone; + } + } + break; + + case ETFAccessoryAudioControl_Close: + { + TRACE_ASSERT( iAccessoryAudioControl != NULL ); + + if( iAccessoryAudioControl != NULL ) + { + iAccessoryAudioControl->CloseSubSession(); + delete iAccessoryAudioControl; + iAccessoryAudioControl = NULL; + } + retval = KErrNone; + } + break; + + case ETFAudioRoutingStatusNotify: + { + RAccessoryAudioControl audioControl; + audioControl.CreateSubSession( iAccessoryServer ); + + audioControl.AudioRoutingStatusNotify( aParameter.iArg1, + iGenericId[aParameter.iGid] ); + retval = KErrNone; + + audioControl.CloseSubSession(); + } + break; + + case ETFAccessoryAudioLinkOpen: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->AccessoryAudioLinkOpen( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryAudioLinkOpened: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryAudioLinkOpened( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryNotifyAccessoryAudioLinkClosed: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->NotifyAccessoryAudioLinkClosed( iGenericId[aParameter.iGid] ); + retval = KErrNone; + } + break; + + case ETFAccessoryAccessoryAudioLinkClose: + { + CTFTestControlObserver* aConnectionObserver = CreateObserver(); + TRACE_ASSERT( aConnectionObserver != NULL ); + aConnectionObserver->AccessoryAudioLinkClose( iGenericId[aParameter.iGid], + aParameter.iArg3 ); + retval = KErrNone; + } + break; + + case ETFAccessoryPublishAndSubscribe: + { + PublishAndSubscribeL( aParameter ); + retval = KErrNone; + } + break; + + case ETFAccessory_Cancel: + { + CTFTestControlObserver* item; + if( !iStack.IsEmpty() ) + { + item = iStack.First(); + item->Cancel(); + } + retval = KErrNone; + } + break; + + // + // Cancels + // + case ETFCancelAccessoryAudioLinkOpen: + { + iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); + retval = KErrNone; + } + break; + + case ETFCancelAccessoryAudioLinkClose: + { + iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryAudioLinkOpened: + { + iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryAudioLinkClosed: + { + iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyProcessCommand: + { + TRACE_ASSERT_ALWAYS; + } + break; + + case ETFCancelConnectAccessory: + { + iAccessoryControl->CancelConnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelDisconnectAccessory: + { + iAccessoryControl->CancelDisconnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyBluetoothAudioLinkOpenReq: + { + iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyBluetoothAudioLinkCloseReq: + { + iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryConnectionStatusChanged: + { + iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); + retval = KErrNone; + } + break; + + case ETFCancelGetAccessoryConnectionStatus: + { + iAccessoryConnection->CancelGetAccessoryConnectionStatus(); + retval = KErrNone; + } + break; + + case ETFCancelConnectAccessoryBT: + { + iAccessoryBTControl->CancelConnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelDisconnectAccessoryBT: + { + iAccessoryBTControl->CancelDisconnectAccessory(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryModeChanged: + { + iAccessoryMode->CancelNotifyAccessoryModeChanged(); + retval = KErrNone; + } + break; + + case ETFCancelGetAccessoryMode: + { + iAccessoryMode->CancelGetAccessoryMode(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyNewAccessoryConnected: + { + iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryDisconnected: + { + iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); + retval = KErrNone; + } + break; + + case ETFCancelNotifyAccessoryValueChanged: + { + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + iAccessorySingleConnection->CancelNotifyAccessoryValueChanged( nameRecord ); + retval = KErrNone; + } + break; + + case ETFSelectionDialogText: + { + SelectionDialog(ETFSelectionDialogText, &retval); + } + break; + + case ETFSelectionDialogCancel: + { + SelectionDialog(ETFSelectionDialogCancel, &retval); + } + break; + + case ETFNotSupportedNote: + { + TUid KAccFwUiNoteNotifierUid = + { + 0x10205061 + }; + RNotifier notifier; + notifier.Connect(); + + TInt err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, + KNullDesC8 ); + + TInt value( 0 ); + TPckg intPckg( value ); + notifier.Close(); + + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + value = value << 1; + notifier.Connect(); + err = notifier.StartNotifier( KAccFwUiNoteNotifierUid, intPckg ); + notifier.Close(); + + retval = KErrNone; + } + break; + + case ETFValueRecordTests: + { + retval = TestValueRecordL(); + } + break; + + case ETFObjectBaseSerializationTests: + { + retval = TestBaseSerializationL(); + } + break; + + case ETFCheckConnectedAccessory: + { + CheckConnectedAccessory(&retval); + } + break; + + case ETFCallTClassMethods: + { + CallTClassMethods(&retval); \ + } + + case ETFSetHdmiObject_PubSub: + { + CreateHdmiObjectsToPubSubL( aParameter ); + retval = KErrNone; + break; + } + + case ETFGetHdmiObject: + { + TInt err = KErrNone; + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( aParameter.iArg3 ); + + // Create HDMI container + CAccPolHdmiObjectCon* conFromASY = CAccPolHdmiObjectCon::NewLC(); + CAccPolHdmiObjectCon* conFromPS = CAccPolHdmiObjectCon::NewLC(); + + // Get HDMI container + TRAP( err, iAccessorySingleConnection->GetValueL( + iGenericId[aParameter.iGid], nameRecord, *conFromASY ) ); + + // Get HDMI container from P&S + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + TPtr8 bufPtr( buf->Ptr( 0 ) ); + err = RProperty::Get( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + bufPtr ); + if( err == KErrNone ) + { + RBufReadStream readStream( *buf ); + readStream.PushL(); + conFromPS->InternalizeL( readStream ); + CleanupStack::PopAndDestroy( &readStream ); + } + switch( aParameter.iArg3 ) + { + case KAccVideoHdmiAttributes: + { + // Validate object count + if( conFromASY->Count() != conFromPS->Count() ) + { + err = KErrArgument; + } + + // Validate speaker allocation + RAccPolHdmiSpeakerAllocationArray array; + CleanupClosePushL( array ); + conFromASY->GetHdmiSpeakerAllocationObjectsL( array ); + if( array.Count() ) + { + CAccPolHdmiSpeakerAllocation* speakerAllocation = array[0]; + TUint32 bits = speakerAllocation->SpeakerAllocation(); + + // Speaker allocation should be EHdmiSpeakerUnknown + if( bits != CAccPolHdmiSpeakerAllocation::EHdmiSpeakerUnknown ) + { + err = KErrArgument; + } + + // Speaker count should be zero + if( speakerAllocation->SpeakerCount() ) + { + err = KErrArgument; + } + } + CleanupStack::PopAndDestroy( &array ); + break; + } + case KAccVideoFormat: + { + // Validate object count + if( conFromASY->Count() != conFromPS->Count() ) + { + err = KErrArgument; + } + + // Validate video format + RAccPolHdmiVideoFormatArray array; + CleanupClosePushL( array ); + conFromASY->GetHdmiVideoFormatObjectsL( array ); + if( array.Count() ) + { + CAccPolHdmiVideoFormat* videoFormat = array[0]; + + // Interlaced video should be enabled + if( !videoFormat->Interlaced() ) + { + err = KErrArgument; + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &array ); + break; + } + default: + { + break; + } + } + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( conFromPS ); + CleanupStack::PopAndDestroy( conFromASY ); + retval = err; + break; + } + + case ETFCheckHdmiObject: + { + TInt err = KErrNone; + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d" ), + aParameter.iArg1 ) ); + switch( aParameter.iArg1 ) + { + case EAccPolHdmiObjectCon: + { + err = CheckHdmiContainerObjectL(); + break; + } + case EAccPolHdmiSinkObject: + { + err = CheckHdmiSinkObjectL(); + break; + } + case EAccPolHdmiAudioFormatObject: + { + err = CheckHdmiAudioFormatObjectL(); + break; + } + case EAccPolHdmiLatencyObject: + { + err = CheckHdmiLatencyObjectL(); + break; + } + case EAccPolHdmiSpeakerAllocationObject: + { + err = CheckHdmiSpeakerAllocationObjectL(); + break; + } + case EAccPolHdmiVideoFormatObject: + { + err = CheckHdmiVideoFormatObjectL(); + break; + } + default: + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Invalid HDMI object=%d" ), + aParameter.iArg1 ) ); + err = KErrArgument; + break; + } + } + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL: Check HDMI object %d returned with code %d" ), + aParameter.iArg1, err ) ); + retval = err; + break; + } + + default: + TRACE_ASSERT_ALWAYS; + break; + + } + User::LeaveIfError( retval ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::TestValueRecordL() +// ---------------------------------------------------------------------------------- +// +TInt CTFAccessoryTestControl::TestValueRecordL() + { + TInt ret( KErrNone ); + + TAccPolValueRecord valueRecord; + TBuf8 eci; + TBuf8 check; + _LIT( Kissa, "Kissa" ); + eci.Copy( Kissa ); + + valueRecord.SetValue( eci ); + check.Copy( valueRecord.ValueRef() ); + + if( KErrNone != eci.Compare( check ) ) + { + User::Leave( KErrGeneral ); + } + + TDesC8& test( valueRecord.ValueRef() ); + if( KErrNone != eci.Compare( test ) ) + { + User::Leave( KErrGeneral ); + } + + return ret; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::TestBaseSerializationL() +// ---------------------------------------------------------------------------------- +// +TInt CTFAccessoryTestControl::TestBaseSerializationL() + { + TInt ret( KErrNone ); + TInt err( KErrNone ); + + /*** One container *************************************************************/ + CAccPolAudioStreamFormatCon* container1 = + CAccPolAudioStreamFormatCon::NewLC(); + CAccPolAudioStreamFormatCon* container2 = + CAccPolAudioStreamFormatCon::NewLC(); + + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize to buf + RBufWriteStream wStrm; + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + container1->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + //Internalize from buf + RBufReadStream rStrm; + ( void )rStrm.Open( *buf ); + rStrm.PushL(); + container2->InternalizeL( rStrm ); + rStrm.Close(); + rStrm.Pop(); + + //container1 content must equal to container2 content + err = ( 0 == memcompare( reinterpret_cast ( container1 ), + sizeof(CAccPolObjectCon), + reinterpret_cast ( container2 ), + sizeof(CAccPolObjectCon) ) ) ? KErrNone : KErrGeneral; + User::LeaveIfError( err ); + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( container2 ); + CleanupStack::PopAndDestroy( container1 ); + container2 = NULL; + container1 = NULL; + /* end *************************************************************************/ + + //Make test again! + + CAccPolAudioStreamFormat* audioStream1 = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject, + 15, + KUidFormatMP3, + CAccPolAudioStreamFormat::EStereo, + CAccPolAudioStreamFormat::EBitsPerSample24, + 11 ); + + buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + //Externalize to buf + ( void )wStrm.Open( *buf ); + wStrm.PushL(); + audioStream1->ExternalizeL( wStrm ); + wStrm.CommitL(); + wStrm.Close(); + wStrm.Pop(); + + //Internalize from buf + ( void )rStrm.Open( *buf ); + rStrm.PushL(); + + TInt objectid = rStrm.ReadUint8L(); + + if( ( TStreamConObjectType )objectid == EAccPolAudioInputStreamObject ) + { + CAccPolAudioStreamFormat* audioStream2 = + CAccPolAudioStreamFormat::NewLC( EAccPolAudioInputStreamObject ); + + audioStream2->InternalizeL( rStrm ); + + //audioStream1 content must equal to audioStream2 content + err = ( 0 == memcompare( reinterpret_cast ( audioStream1 ), + sizeof(CAccPolAudioStreamFormat), + reinterpret_cast ( audioStream2 ), + sizeof(CAccPolAudioStreamFormat) ) ) ? KErrNone : KErrGeneral; + + User::LeaveIfError( err ); + + CleanupStack::PopAndDestroy( audioStream2 ); + + rStrm.Close(); + rStrm.Pop(); + + } + else + { + User::LeaveIfError( KErrGeneral ); + } + + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( audioStream1 ); + audioStream1 = NULL; + /* end *************************************************************************/ + + return ret; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::PublishAndSubscribeL() +// ---------------------------------------------------------------------------------- +// +void CTFAccessoryTestControl::PublishAndSubscribeL( TTFAccessoryTestCaseStateControl& aParameter ) + { + TPckgBuf buf; + + buf().iTestCaseID = aParameter.iTestCaseID; + buf().iMethod = aParameter.iMethod; + buf().iParam1 = aParameter.iArg1; + buf().iTimeMs = aParameter.iArg4; + buf().iGenericID = iGenericId[aParameter.iGid]; + + // Send capability to stub(s). + + // if( aParameter.iArg3 ) + // { + buf().iParam2 = aParameter.iArg3; + // } + + /* + if( aParameter.iArg3->Compare( KNullDesC ) ) + { + buf().iParam2.Copy( *aParameter.iArg3 ); + } + + */ + User::LeaveIfError( iSubscribe.Set( KTFAccessoryTestProperty, + KTFAccessoryMethod, + buf ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL() +// ---------------------------------------------------------------------------------- +// +void CTFAccessoryTestControl::CreateHdmiObjectsToPubSubL( + TTFAccessoryTestCaseStateControl& aParameter ) + { + // Define property just in case + RProperty::Define( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + RProperty::EByteArray ); + + // Create HDMI container + CAccPolHdmiObjectCon* con = CAccPolHdmiObjectCon::NewLC(); + switch( aParameter.iArg3 ) + { + case KAccVideoHdmiAttributes: + { + // Create audio format object + CreateHdmiObjectL( *con, EAccPolHdmiAudioFormatObject ); + + // Create latency object + CreateHdmiObjectL( *con, EAccPolHdmiLatencyObject ); + + // Create sink object + CreateHdmiObjectL( *con, EAccPolHdmiSinkObject ); + + // Create speaker allocation object + CreateHdmiObjectL( *con, EAccPolHdmiSpeakerAllocationObject ); + + // Create video format object + CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); + break; + } + case KAccVideoFormat: + { + // Create video format object + CreateHdmiObjectL( *con, EAccPolHdmiVideoFormatObject ); + break; + } + default: + { + break; + } + } + // Stream HDMI container to P&S + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + RBufWriteStream writeStream( *buf ); + writeStream.PushL(); + con->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + + TPtr8 bufPtr( buf->Ptr( 0 ) ); + TInt err = RProperty::Set( KTFAccessoryTestProperty, + KTFAccessoryObjectMethod, + bufPtr ); + User::LeaveIfError( err ); + + // Check if ASY stub needs to be informed + if( aParameter.iArg2 ) + { + PublishAndSubscribeL( aParameter ); + } + + // Cleanup + CleanupStack::PopAndDestroy( buf ); + CleanupStack::PopAndDestroy( con ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiContainerObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiContainerObjectL() + { + TInt err = KErrNone; + CAccPolHdmiObjectCon* con1 = NULL; + CAccPolHdmiObjectCon* con2 = NULL; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + con1 = CAccPolHdmiObjectCon::NewL(); + CleanupStack::PushL( con1 ); + CleanupStack::PopAndDestroy( con1 ); + + // NewLC + con1 = CAccPolHdmiObjectCon::NewLC(); + CleanupStack::PopAndDestroy( con1 ); + + // Internalize & Externalize + con1 = CAccPolHdmiObjectCon::NewLC(); + CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + con1->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + + con2 = CAccPolHdmiObjectCon::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + con2->InternalizeL( readStream ); + if( con1->Count() == con2->Count() ) + { + TInt count = con1->Count(); + CAccPolObjectBase* objBase1 = NULL; + CAccPolObjectBase* objBase2 = NULL; + for( TInt i = 0; i < count; i++ ) + { + objBase1 = con1->AtL( i ); + objBase2 = con2->AtL( i ); + if( objBase1->ObjectType() != objBase2->ObjectType() ) + { + err = KErrArgument; + } + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( con2 ); + CleanupStack::PopAndDestroy( con1 ); + + // DuplicateLC + con1 = CAccPolHdmiObjectCon::NewLC(); + CreateHdmiObjectL( *con1, EAccPolHdmiAudioFormatObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiLatencyObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSinkObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiSpeakerAllocationObject ); + CreateHdmiObjectL( *con1, EAccPolHdmiVideoFormatObject ); + con2 = static_cast( con1->DuplicateLC() ); + if( con1->Count() == con2->Count() ) + { + TInt count = con1->Count(); + CAccPolObjectBase* objBase1 = NULL; + CAccPolObjectBase* objBase2 = NULL; + for( TInt i = 0; i < count; i++ ) + { + objBase1 = con1->AtL( i ); + objBase2 = con2->AtL( i ); + if( objBase1->ObjectType() != objBase2->ObjectType() ) + { + err = KErrArgument; + } + } + } + else + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( con2 ); + CleanupStack::PopAndDestroy( con1 ); + + // Rest of the API + con1 = CAccPolHdmiObjectCon::NewLC(); + THdmiConObjectType objectType = EAccPolHdmiObjectCon; + TBool exit = EFalse; + TInt index = 0; + TInt count = 0; + do + { + index++; + err = KErrArgument; + objectType = ( THdmiConObjectType )( index ); + CreateHdmiObjectL( *con1, objectType ); + count = con1->Count(); + CAccPolObjectBase* obj = NULL; + if( con1->Count() != index ) + { + err = KErrArgument; + break; + } + for( TInt ii = 0; ii < count; ii++ ) + { + obj = con1->AtL( ii ); + if( obj->ObjectType() == objectType ) + { + err = KErrNone; + break; + } + } + if( objectType == EAccPolHdmiVideoFormatObject ) + { + // Last object + exit = ETrue; + } + } + while( !exit && ( err == KErrNone ) ); + CleanupStack::PopAndDestroy( con1 ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiSinkObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiSinkObjectL() + { + TInt err = KErrNone; + CAccPolHdmiSink* obj = NULL; + CAccPolHdmiSink* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiSink::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiSink::NewL( ETrue, ETrue ); + CleanupStack::PushL( obj ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiSink::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSink::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiSinkObject ) + { + err = KErrArgument; + } + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiSink::NewLC( ETrue, ETrue ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSink ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiSink::NewLC(); + obj->SetBasicAudioSupport( ETrue ); + if( !obj->BasicAudioSupport() ) + { + err = KErrArgument; + } + obj->SetHdcpSupport( ETrue ); + if( !obj->HdcpSupport() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiAudioFormatObjectL() + { + TInt err = KErrNone; + CAccPolHdmiAudioFormat* obj = NULL; + CAccPolHdmiAudioFormat* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiAudioFormat::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiAudioFormat::NewL( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiAudioFormat::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiAudioFormat::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiAudioFormatObject ) + { + err = KErrArgument; + } + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatPCM16 ) + { + err = KErrArgument; + } + if( obj->ChannelCount() != 1 ) + { + err = KErrArgument; + } + if( obj->BitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->MaxBitResolution() != 1 ) + { + err = KErrArgument; + } + if( obj->SamFreq() != 1 ) + { + err = KErrArgument; + } + if( obj->FormatDependentValue() != 1 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiAudioFormat::NewLC( HdmiAudioFormat::KUidFormatPCM16, + 1, + 1, + 1, + 1, + 1 ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSink ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiAudioFormat::NewLC(); + obj->SetAudioFormat( HdmiAudioFormat::KUidFormatEAC3 ); + if( obj->AudioFormat() != HdmiAudioFormat::KUidFormatEAC3 ) + { + err = KErrArgument; + } + obj->SetChannelCount( 2 ); + if( obj->ChannelCount() != 2 ) + { + err = KErrArgument; + } + obj->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample20 ); + if( !( obj->BitResolution() & CAccPolHdmiAudioFormat::EBitsPerSample20 ) ) + { + err = KErrArgument; + } + obj->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample24 ); + if( obj->MaxBitResolution() != CAccPolHdmiAudioFormat::EBitsPerSample24 ) + { + err = KErrArgument; + } + obj->SetSamFreq( CAccPolHdmiAudioFormat::ESamplingFreq192KHz ); + if( !( obj->SamFreq() & CAccPolHdmiAudioFormat::ESamplingFreq192KHz ) ) + { + err = KErrArgument; + } + obj->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + if( !( obj->FormatDependentValue() & CAccPolHdmiAudioFormat::EBitsPerSample16 ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiLatencyObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiLatencyObjectL() + { + TInt err = KErrNone; + CAccPolHdmiLatency* obj = NULL; + CAccPolHdmiLatency* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiLatency::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiLatency::NewL( HdmiLatency::KUidLatency, 100, 200 ); + CleanupStack::PushL( obj ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiLatency::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiLatency::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiLatencyObject ) + { + err = KErrArgument; + } + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiLatency::NewLC( HdmiLatency::KUidLatency, 100, 200 ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiLatency ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiLatency::NewLC(); + obj->SetLatencyType( HdmiLatency::KUidLatency ); + if( obj->LatencyType() != HdmiLatency::KUidLatency ) + { + err = KErrArgument; + } + obj->SetAudioLatency( 100 ); + if( obj->AudioLatency() != 100 ) + { + err = KErrArgument; + } + obj->SetVideoLatency( 200 ); + if( obj->VideoLatency() != 200 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiSpeakerAllocationObjectL() + { + TInt err = KErrNone; + CAccPolHdmiSpeakerAllocation* obj = NULL; + CAccPolHdmiSpeakerAllocation* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + TUint32 bits = 0x0; + + // NewL + obj = CAccPolHdmiSpeakerAllocation::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewL( bits ); + CleanupStack::PushL( obj ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewL( EFalse, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + EFalse, + EFalse ); + CleanupStack::PushL( obj ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC( EFalse, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + ETrue, + EFalse, + EFalse, + EFalse, + EFalse ); + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiSpeakerAllocationObject ) + { + err = KErrArgument; + } + if( !obj->FrontCenter() ) + { + err = KErrArgument; + } + if( !obj->RearCenter() ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC( bits ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiSpeakerAllocation ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + bits = CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter | + CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter; + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + obj->SetSpeakerAllocation( bits ); + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerFrontCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerRearCenter ) ) + { + err = KErrArgument; + } + if( !( obj->SpeakerAllocation() & CAccPolHdmiSpeakerAllocation::EHdmiSpeakerTopCenter ) ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiSpeakerAllocation::NewLC(); + obj->SetFrontSpeakers( ETrue ); + if( !obj->FrontSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontSpeakers( EFalse ); + if( obj->FrontSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearSpeakers( ETrue ); + if( !obj->RearSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetRearSpeakers( EFalse ); + if( obj->RearSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetLowFrequencyEffect( ETrue ); + if( !obj->LowFrequencyEffect() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetLowFrequencyEffect( EFalse ); + if( obj->LowFrequencyEffect() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontCenter( ETrue ); + if( !obj->FrontCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetFrontCenter( EFalse ); + if( obj->FrontCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontCenterHigh( ETrue ); + if( !obj->FrontCenterHigh() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetFrontCenterHigh( EFalse ); + if( obj->FrontCenterHigh() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetTopCenter( ETrue ); + if( !obj->TopCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetTopCenter( EFalse ); + if( obj->TopCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearCenter( ETrue ); + if( !obj->RearCenter() || obj->SpeakerCount() != 1 ) + { + err = KErrArgument; + } + obj->SetRearCenter( EFalse ); + if( obj->RearCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontLeftRightCenter( ETrue ); + if( !obj->FrontLeftRightCenter() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontLeftRightCenter( EFalse ); + if( obj->FrontLeftRightCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetRearLeftRightCenter( ETrue ); + if( !obj->RearLeftRightCenter() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetRearLeftRightCenter( EFalse ); + if( obj->RearLeftRightCenter() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontWideSpeakers( ETrue ); + if( !obj->FrontWideSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontWideSpeakers( EFalse ); + if( obj->FrontWideSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + obj->SetFrontHighSpeakers( ETrue ); + if( !obj->FrontHighSpeakers() || obj->SpeakerCount() != 2 ) + { + err = KErrArgument; + } + obj->SetFrontHighSpeakers( EFalse ); + if( obj->FrontHighSpeakers() || obj->SpeakerCount() != 0 ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL +// ---------------------------------------------------------------------------------- +TInt CTFAccessoryTestControl::CheckHdmiVideoFormatObjectL() + { + TInt err = KErrNone; + CAccPolHdmiVideoFormat* obj = NULL; + CAccPolHdmiVideoFormat* objDuplicate = NULL; + TUint8 objectType = 0; + CBufFlat* buf = CBufFlat::NewL( KAccSrvObjectBaseStreamBufGranularity ); + CleanupStack::PushL( buf ); + buf->ResizeL( KAccSrvObjectBaseStreamBufMaxSize ); + + // NewL + obj = CAccPolHdmiVideoFormat::NewL(); + CleanupStack::PushL( obj ); + CleanupStack::PopAndDestroy( obj ); + + // NewLC + obj = CAccPolHdmiVideoFormat::NewLC(); + CleanupStack::PopAndDestroy( obj ); + + // NewL - with params + obj = CAccPolHdmiVideoFormat::NewL( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + CleanupStack::PushL( obj ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // NewLC - with params + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + + // Internalize & Externalize + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + RBufWriteStream writeStream; + writeStream.Open( *buf ); + writeStream.PushL(); + obj->ExternalizeL( writeStream ); + writeStream.CommitL(); + CleanupStack::PopAndDestroy( &writeStream ); + CleanupStack::PopAndDestroy( obj ); + + obj = CAccPolHdmiVideoFormat::NewLC(); + RBufReadStream readStream; + readStream.Open( *buf ); + readStream.PushL(); + objectType = readStream.ReadUint8L(); + obj->InternalizeL( readStream ); + if( objectType != EAccPolHdmiVideoFormatObject ) + { + err = KErrArgument; + } + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + if( obj->PixelRepeat() != 1 ) + { + err = KErrArgument; + } + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( &readStream ); + CleanupStack::PopAndDestroy( obj ); + + // DuplicateLC - mem compare can be used since the object does not contain + // any ponters as memebers + obj = CAccPolHdmiVideoFormat::NewLC( E640x480p59_94d60Hz4d3, + E640x350p85HzRB, + 1, + ETrue ); + objDuplicate = static_cast( obj->DuplicateLC() ); + TUint8* left = reinterpret_cast( obj ); + TUint8* right = reinterpret_cast( objDuplicate ); + TInt size = sizeof( CAccPolHdmiVideoFormat ); + if( Mem::Compare( left, size, right, size ) != KErrNone ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( objDuplicate ); + CleanupStack::PopAndDestroy( obj ); + + // Rest of the API + obj = CAccPolHdmiVideoFormat::NewLC(); + obj->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); + if( obj->CeaFixedMode() != E640x480p59_94d60Hz4d3 ) + { + err = KErrArgument; + } + obj->SetDmtFixedMode( E640x350p85HzRB ); + if( obj->DmtFixedMode() != E640x350p85HzRB ) + { + err = KErrArgument; + } + obj->SetPixelRepeat( 4 ); + if( obj->PixelRepeat() != 4 ) + { + err = KErrArgument; + } + obj->SetInterlaced( ETrue ); + if( !obj->Interlaced() ) + { + err = KErrArgument; + } + CleanupStack::PopAndDestroy( obj ); + CleanupStack::PopAndDestroy( buf ); + + return err; + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver* CTFAccessoryTestControl::CreateObserver() + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver()" ) ) ); + iStack.AddFirst/*AddLast*/( *CTFTestControlObserver::NewL( *this ) ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::CreateObserver() return" ) ) ); + return iStack.First/*Last*/(); + } + +// Not used at this point. +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::ProcessMessageAndCompleteL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::ProcessMessageAndCompleteL( const RMessage2& aMessage ) + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL enter" ) ) ); + aMessage.Complete( KErrNone ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFAccessoryTestControl::ProcessMessageAndCompleteL return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::MessageCompleteL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::MessageCompleteL( TInt /*aResult*/) + { + + } + +// +// ---------------------------------------------------------------------------------- +// CTFAccessoryTestControl::CreateHdmiObjectL +// ---------------------------------------------------------------------------------- +void CTFAccessoryTestControl::CreateHdmiObjectL( CAccPolObjectCon& aCon, + THdmiConObjectType aType ) + { + switch( aType ) + { + case EAccPolHdmiSinkObject: + { + CAccPolHdmiSink* sink = CAccPolHdmiSink::NewLC(); + sink->SetBasicAudioSupport( ETrue ); + sink->SetHdcpSupport( ETrue ); + aCon.AddL( *sink ); + CleanupStack::PopAndDestroy( sink ); + break; + } + case EAccPolHdmiAudioFormatObject: + { + CAccPolHdmiAudioFormat* audioFormat = CAccPolHdmiAudioFormat::NewLC(); + audioFormat->SetAudioFormat( HdmiAudioFormat::KUidFormatPCM16 ); + audioFormat->SetChannelCount( 2 ); + audioFormat->SetBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SetMaxBitResolution( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SetFormatDependentValue( CAccPolHdmiAudioFormat::EBitsPerSample16 ); + audioFormat->SamFreq( CAccPolHdmiAudioFormat::ESamplingFreq32KHz ); + aCon.AddL( *audioFormat ); + CleanupStack::PopAndDestroy( audioFormat ); + break; + } + case EAccPolHdmiLatencyObject: + { + CAccPolHdmiLatency* latency = CAccPolHdmiLatency::NewLC(); + latency->SetLatencyType( HdmiLatency::KUidLatency ); + latency->SetAudioLatency( 100 ); + latency->SetVideoLatency( 200 ); + aCon.AddL( *latency ); + CleanupStack::PopAndDestroy( latency ); + break; + } + case EAccPolHdmiSpeakerAllocationObject: + { + CAccPolHdmiSpeakerAllocation* speakerAllocation = + CAccPolHdmiSpeakerAllocation::NewLC(); + speakerAllocation->SetFrontSpeakers( ETrue ); + speakerAllocation->SetRearSpeakers( ETrue ); + speakerAllocation->SetLowFrequencyEffect( ETrue ); + speakerAllocation->SetFrontCenter( ETrue ); + speakerAllocation->SetFrontCenterHigh( ETrue ); + speakerAllocation->SetTopCenter( ETrue ); + speakerAllocation->SetRearCenter( ETrue ); + speakerAllocation->SetFrontLeftRightCenter( ETrue ); + speakerAllocation->SetRearLeftRightCenter( ETrue ); + speakerAllocation->SetFrontWideSpeakers( ETrue ); + speakerAllocation->SetFrontHighSpeakers( ETrue ); + aCon.AddL( *speakerAllocation ); + CleanupStack::PopAndDestroy( speakerAllocation ); + break; + } + case EAccPolHdmiVideoFormatObject: + { + CAccPolHdmiVideoFormat* videoFormat = CAccPolHdmiVideoFormat::NewLC(); + videoFormat->SetCeaFixedMode( E640x480p59_94d60Hz4d3 ); + videoFormat->SetDmtFixedMode( E640x480p85HzRB ); + videoFormat->SetInterlaced( EFalse ); + aCon.AddL( *videoFormat ); + CleanupStack::PopAndDestroy( videoFormat ); + break; + } + default: + { + break; + } + } + } + + +void CTFAccessoryTestControl::AccessoryConnectionOpenClose(TTFAccessoryFunction aCase, TInt* aRetval) + { + switch(aCase) + { + case ETFAccessoryConnection_Open: + { + if ( iAccessoryConnection == NULL ) + { + iAccessoryConnection = new ( ELeave ) RAccessoryConnection; + *aRetval = iAccessoryConnection->CreateSubSession( iAccessoryServer ); + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session created - (%d)" ), *aRetval ) ); + } + else + { + *aRetval = KErrNone; + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Open - Sub session not created - (%d)" ), *aRetval ) ); + } + } + break; + + case ETFAccessoryConnection_Close: + { + TRACE_ASSERT( iAccessoryConnection != NULL ); + + if ( iAccessoryConnection != NULL ) + { + iAccessoryConnection->CloseSubSession(); + delete iAccessoryConnection; + iAccessoryConnection = NULL; + COMPONENT_TRACE( ( _L( "CTFAccessoryTestControl::CallAccessoryFunctionL(TTFAccessoryTestCaseStateControl& aParameter) - ETFAccessoryConnection_Close - Sub session closed" ) ) ); + } + *aRetval = KErrNone; + } + break; + + default: + break; + } + + } + +void CTFAccessoryTestControl::FindAndCheckRequestL( TInt* aRetval, TTFAccessoryTestCaseStateControl& aParameter ) + { + CTFAccessoryTestCaseControl* testCase = STATIC_CAST( CTFAccessoryTestCaseControl*, CurrentTestCase()); + TInt errVal = 0; + + TRACE_ASSERT( testCase != NULL ); + if ( testCase != NULL ) + { + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() - inside if ( testCase != NULL )" ) ) ); + if(!iStack.IsEmpty()) + { + iStackIter.SetToFirst(); + + while ( ( iObserverItem = iStackIter++ ) != NULL ) + { + if(iObserverItem->FindRequest(aParameter.iRequestType)) + { + testCase->CheckRequest( iObserverItem->iStatus, + iObserverItem->iValue, + iObserverItem->iCapabilityName, + &errVal ); + + if(errVal == KTFDontDeleteObserver) + { + aParameter.iArg1 = KTFDontDeleteObserver; + } + + + if ( !iStack.IsEmpty() ) // Check if observes are already deleted by CheckRequest() + { + if( KTFDontDeleteObserver != aParameter.iArg1 ) + { + if (iObserverItem->iStatus == KRequestPending ) + { + User::WaitForRequest(iObserverItem->iStatus); + } + iStack.Remove( *iObserverItem ); + delete iObserverItem; + } + else + { + User::Leave( KTFDontDeleteObserver ); + } + } + else + { + *aRetval = KErrGeneral; + } + } + } + } + else + { + *aRetval = KErrGeneral; + } + } + + TEST_CASE_TRACE( ( _L( "CTFAccessoryTestControl::FindAndCheckRequest() returning and setting *aRetval = KErrNone )" ) ) ); + *aRetval = KErrNone; + } + + +void CTFAccessoryTestControl::AccessorySettingsOpenClose( TTFAccessoryFunction aCase, TInt* aRetval ) + { + switch(aCase) + { + case ETFAccessorySettings_Open: + { + if ( iAccessorySettings == NULL ) + { + iAccessorySettings = new ( ELeave ) RAccessorySettings; + *aRetval = iAccessorySettings->CreateSubSession( iAccessoryServer ); + } + else + *aRetval = KErrNone; + } + break; + + case ETFAccessorySettings_Close: + { + TRACE_ASSERT( iAccessorySettings != NULL ); + + if ( iAccessorySettings != NULL ) + { + iAccessorySettings->CloseSubSession(); + delete iAccessorySettings; + iAccessorySettings = NULL; + } + *aRetval = KErrNone; + } + break; + + default: + break; + + } + } + +void CTFAccessoryTestControl::SetSeveralAccessoryModeSetting( TInt* aRetval ) + { + TAccModeSetting accModeSettingIn; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf< KMaxAccModeSetting > aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 1 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "012345678901234567890" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( ETrue ); + arrayIn.AddSetting( accModeSettingIn ); + + *aRetval = iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + } + +void CTFAccessoryTestControl::GetSeveralAccessoryModeSetting( TInt* aRetval ) + { + TAccModeSetting accModeSettingOut; + TAccMode tAccMode = EAccModeWirelessHeadset; + TBuf< KMaxAccModeSetting > aDesOut; + TAccModeSettingArray arrayOut; + TInt intOut( 0 ); + // set input parameters for GetAccessoryModeSettings() + // setting 11 + accModeSettingOut.SetId( 11 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 12 + accModeSettingOut.SetId( 12 ); + arrayOut.AddSetting( accModeSettingOut ); + + // setting 13 + accModeSettingOut.SetId( 13 ); + arrayOut.AddSetting( accModeSettingOut ); + + *aRetval = iAccessorySettings->GetAccessoryModeSettings( tAccMode, arrayOut ); + + // Check that got settings are right + + TInt count = arrayOut.GetArraySize(); + TInt foundCount(0); + + for( TInt index = 0; index < count; index++ ) + { + arrayOut.GetSetting( index, accModeSettingOut ); + + if( 11 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTInt( intOut); + + if( 1 == intOut ) + { + foundCount++; + } + } + + + if( 12 == accModeSettingOut.Id() ) + { + accModeSettingOut.GetTDes( aDesOut ); + + if( KErrNone == aDesOut.Compare( _L("012345678901234567890") ) ) + { + foundCount++; + } + + } + + if( 13 == accModeSettingOut.Id() ) + { + + accModeSettingOut.GetTBool( intOut ); + + if( intOut ) + { + foundCount++; + } + } + } + + if(foundCount != 3) + { + *aRetval = KErrNotFound; + } + + // + // Reset Settings + // + TAccModeSetting accModeSettingIn; + TBuf< KMaxAccModeSetting > aDesIn; + // Set + // setting 1 + accModeSettingIn.SetId( 11 ); // unknown TInt + accModeSettingIn.SetTInt( 0 ); + TAccModeSettingArray arrayIn; + arrayIn.AddSetting( accModeSettingIn ); + + // setting 2 + accModeSettingIn.SetId( 12 ); // unknown Des + _LIT( KAccSetting2, "" ); + aDesIn.Copy( KAccSetting2 ); + accModeSettingIn.SetTDes( aDesIn ); + arrayIn.AddSetting( accModeSettingIn ); + + // setting 3 + accModeSettingIn.SetId( 13 ); // unknown TBool + accModeSettingIn.SetTBool( EFalse ); + arrayIn.AddSetting( accModeSettingIn ); + + iAccessorySettings->SetAccessoryModeSettingsL( tAccMode, arrayIn ); + + } + +void CTFAccessoryTestControl::SetIntValue( TTFAccessoryTestCaseStateControl& aParameter, TInt *aRetval ) + { + switch( aParameter.iArg3 ) + { + case KAccSetVolumeLevel: + { + //AccPolCommonNameValuePairs.h contains following example code + RAccessoryControl accessoryControl; + accessoryControl.CreateSubSession( iAccessoryServer ); + + CAccPolSubblockNameArray* nameArray = CAccPolSubblockNameArray::NewL(); + CleanupStack::PushL( nameArray ); + accessoryControl.GetSubblockNameArrayL( iGenericId[aParameter.iGid], *nameArray ); + + TAccPolNameRecord nameRecord; + nameRecord.SetNameL( KAccSetVolumeLevel ); + TAccValueTypeTInt value; + + if( nameArray->HasName( KAccSetVolumeLevel ) ) + { + accessoryControl.GetValueL( iGenericId[aParameter.iGid], nameRecord, value ); + value.iValue = value.iValue | aParameter.iArg1; + accessoryControl.AccessoryValueChangedNotifyL( iGenericId[aParameter.iGid], nameRecord, value ); + } + + CleanupStack::PopAndDestroy( nameArray ); + accessoryControl.CloseSubSession(); + *aRetval = KErrNone; + } + break; + + default: + { + TAccPolNameRecord aNameRecord; + aNameRecord.SetNameL( aParameter.iArg3 ); + TAccValueTypeTInt aIntValue; + aIntValue.iValue = aParameter.iArg1; + *aRetval = iAccessoryControl->SetValueL( iGenericId[aParameter.iGid], aNameRecord, aIntValue ); + } + break; + } + + } + +void CTFAccessoryTestControl::SelectionDialog( TTFAccessoryFunction aCase, TInt* aRetval ) + { + switch(aCase) + { + case ETFSelectionDialogText: + { + const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; + + RNotifier notifier; + notifier.Connect(); + + TInt selectionListBitmask = 255; + TInt reply = 0; + + TPckg replyPck( reply); + TPckg selectionBitmaskPackage( selectionListBitmask); + + //activate active object + TRequestStatus status; + status = KRequestPending; + + //open ui + notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); + + User::WaitForRequest( status); + + + notifier.Close(); + + *aRetval = KErrNone; + } + + case ETFSelectionDialogCancel: + { + const TUid KAccFwUiDialogNotifierUid = { 0x10205062 }; + + RNotifier notifier; + notifier.Connect(); + + TInt selectionListBitmask = 7; + TInt reply = 0; + + TPckg replyPck( reply); + TPckg selectionBitmaskPackage( selectionListBitmask); + + //activate active object + TRequestStatus status; + + //open ui + notifier.StartNotifierAndGetResponse( status, KAccFwUiDialogNotifierUid, selectionBitmaskPackage, replyPck); + User::After( 2500000); + notifier.CancelNotifier( KAccFwUiDialogNotifierUid); + + // Implementation of the dialog is changed. Request is completed every time + User::WaitForRequest( status ); + + notifier.Close(); + + *aRetval = KErrNone; + } + + default: + break; + + } + + } + +void CTFAccessoryTestControl::CheckConnectedAccessory( TInt* aRetval ) + { + *aRetval = KErrNone; + + TAccPolGenericID genID; // TGeneric ID that should be connected + TAccPolGenericID genIDConnected; // TGeneric ID that is connected + TAccPolGIDHeader iGenericIDHeader; // Header of the GID that should be connected + TAccPolGIDHeader iGenericIDHeaderConnected; // Header of the connected GID + TAccPolGenericIDArray genericIdArray; // Array of connected generic ID's + CAccConGenericID* aGenericID = CAccConGenericID::NewL(); // This might be needed for capabilities + CAccPolSubblockNameArray* nameArrayConnected = CAccPolSubblockNameArray::NewL(); + + CleanupStack::PushL( aGenericID ); + CleanupStack::PushL( nameArrayConnected ); + + TAccPolGenericID genericID = aGenericID->GenericID(); + + TBuf hwModelID(_L("headset")); + // Set GenericID header + iGenericIDHeader.iAccessoryDeviceType = KDTHeadset; + iGenericIDHeader.iPhysicalConnection = KPCWired; + iGenericIDHeader.iApplicationProtocol = 0x0; + + iGenericIDHeader.iCapabilitiesSubblocks = KSBAudioSubblock; + + iGenericIDHeader.iHWModelID = hwModelID; + iGenericIDHeader.iHWDeviceID = 0x0; + iGenericIDHeader.iDBID = 0x0; + + RAccessoryConnection* accessoryConnection = new ( ELeave ) RAccessoryConnection(); + CleanupStack::PushL( accessoryConnection ); + accessoryConnection->CreateSubSession( iAccessoryServer ); + accessoryConnection->GetAccessoryConnectionStatus( genericIdArray ); + CleanupStack::PopAndDestroy( accessoryConnection ); + + genIDConnected = genericIdArray.GetGenericIDL( 0 ); + + RAccessorySingleConnection singleConnect;// = new ( ELeave ) RAccessoryConnectionBase(); + singleConnect.CreateSubSession( iAccessoryServer ); + singleConnect.GetSubblockNameArrayL( genIDConnected, *nameArrayConnected ); + + singleConnect.CloseSubSession(); + + iGenericIDHeaderConnected.iAccessoryDeviceType = genIDConnected.DeviceTypeCaps(); + iGenericIDHeaderConnected.iPhysicalConnection = genIDConnected.PhysicalConnectionCaps(); + iGenericIDHeaderConnected.iApplicationProtocol = genIDConnected.ApplicationProtocolCaps(); + iGenericIDHeaderConnected.iCapabilitiesSubblocks = genIDConnected.SubblockCaps(); + iGenericIDHeaderConnected.iHWModelID = genIDConnected.HWModelID(); + iGenericIDHeaderConnected.iHWDeviceID = genIDConnected.HWDeviceID(); + iGenericIDHeaderConnected.iDBID = 0x0; + + //Check GenericID header + if( iGenericIDHeader.iAccessoryDeviceType != iGenericIDHeaderConnected.iAccessoryDeviceType ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iPhysicalConnection != iGenericIDHeaderConnected.iPhysicalConnection ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iApplicationProtocol != iGenericIDHeaderConnected.iApplicationProtocol ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iCapabilitiesSubblocks != iGenericIDHeaderConnected.iCapabilitiesSubblocks ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iHWModelID != iGenericIDHeaderConnected.iHWModelID ) + { + *aRetval = EFalse; + } + if( iGenericIDHeader.iHWDeviceID != iGenericIDHeaderConnected.iHWDeviceID ) + { + *aRetval = EFalse; + } + if( !( nameArrayConnected->HasName( KAccStereoAudio ) ) ) + { + *aRetval = EFalse; + } + + if( !( nameArrayConnected->HasName( KAccAudioOutConnector ) ) ) + { + *aRetval = EFalse; + } + + if( !( nameArrayConnected->HasName( KAccAudioOutputType ) ) ) + { + *aRetval = EFalse; + } + //CleanupStack::PopAndDestroy( nameValueArray ); + CleanupStack::PopAndDestroy( nameArrayConnected ); + CleanupStack::PopAndDestroy( aGenericID ); + + } + + +void CTFAccessoryTestControl::CallTClassMethods( TInt* aRetval ) + { + // Settings(); + Policy(); + *aRetval = KErrNone; + } + +void CTFAccessoryTestControl::Settings() + { + TAccModeSettingArray array; + array.Reset(); + TInt ret = array.GetMaxArraySize(); + TAccModeSetting setting; + TUint32 settingId( 1 ); + setting.SetId( settingId ); + array.AddSetting( setting ); + TAccModeSetting setting2; + ret = array.GetSetting( 0, setting2 ); + ret = array.GetArraySize(); + } + +void CTFAccessoryTestControl::Policy() + { + TInt valueInt( 1 ); + TUint32 valueUInt( 1 ); + TDesC8 des( _L8( "timo" ) ); + //TDes8 valueDesc = des; + TAccPolNameRecord nameRecord; + TAccPolValueRecord valRec( des, EAPVPolicy ); + TAccPolNameValueRecord nameValRec; + TAccPolNameValueRecord nameValRec1( nameRecord, valRec ); + TAccPolNameValueRecord nameValRec2( valueUInt, valueInt, EAPVInt, EAPVPolicy ); + TAccPolNameValueRecord nameValRec3( valueUInt, des, EAPVPolicy ); + TAccPolNameValueRecord nameValRec4( valueUInt ); + //TDesC8 valueToGet; + valRec.GetValueL( des ); + valRec.SetValue( des ); + //valRec.SetValue( valueToGet ); + TAccPolValueRecord valRec1( valueInt, EAPVInt, EAPVPolicy ); + valRec1.SetValue( valueInt ); + valRec1.SetLocation( EAPVPolicy ); + valRec1.SetL( valueInt, EAPVInt, EAPVPolicy ); + } + +void CTFAccessoryTestControl::GetBoolAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TBool aSettingsValueBool; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId(aParameter.iArg2); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); + + if( aSetting.Type() == EAccModeSettingBool) + { + *aRetval = aSetting.GetTBool(aSettingsValueBool); + + if(*aRetval != KErrNotFound) + { + if(aSettingsValueBool == (TBool)aParameter.iArg4) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +void CTFAccessoryTestControl::GetIntAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TInt aSettingsValueInt; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId(aParameter.iArg2); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting(aAccMode, aSetting); + + if(aSetting.Type() == EAccModeSettingInt) + { + *aRetval = aSetting.GetTInt(aSettingsValueInt); + + if(*aRetval != KErrNotFound) + { + if( aSettingsValueInt == aParameter.iArg4 ) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +void CTFAccessoryTestControl::GetDesAccessoryModeSetting( TTFAccessoryTestCaseStateControl& aParameter, TInt* aRetval ) + { + TBuf aSettingsValueDes; + + TAccMode aAccMode = (TAccMode)aParameter.iArg1; + TAccModeSetting aSetting; + aSetting.SetId( aParameter.iArg2 ); + + *aRetval = iAccessorySettings->GetAccessoryModeSetting( aAccMode, aSetting ); + + if( aSetting.Type() == EAccModeSettingDes ) + { + *aRetval = aSetting.GetTDes( aSettingsValueDes ); + + if(*aRetval != KErrNotFound) + { + TBuf buffer; + buffer.Num( aParameter.iArg3 ); + if( KErrNone == aSettingsValueDes.Compare( buffer ) ) + { + *aRetval = KErrNone; + } + else + { + *aRetval = KErrArgument; + } + } + } + else + { + *aRetval = KErrNotFound; + } + } + +// End of file diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlPlugin.cpp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlPlugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlPlugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,2980 +1,2980 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -// INCLUDE FILES -#include -#include -#include "siftrace.h" -#include "CtfAccessoryTestControlPlugin.h" -#include "CtfAccessoryTestControl.h" -#include "CtfAccessoryTestCaseParamControl.h" -#include "CtfAccessoryTestCaseControl.h" -#include - - - -//M10703 KAccAudioOutConnector - -// LOCAL FUNCTIONS -static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); -static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); -static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ); -static void BtAndAudioLinkModuleTestSuiteL( CTFATestSuite* aSuite ); -static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void SpecialModuleTestSuiteL( CTFATestSuite* aSuite ); -static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ); -static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ); -static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ); -static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ); -static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ); - -// -// [M10101] [[AccServer] Open And Close Accessory Connection] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryConnectionOpenCloseStates[2] = - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M10102] [[AccServer] Open And Close Accessory Single Connection] -// -const TTFAccessoryTestCaseStateControl KTFAccessorySingleConnectionOpenCloseStates[2] = - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10103] [[AccServer] Open And Close Accessory Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryControlOpenCloseStates[2] = - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; -// -// [M10104] [[AccServer] Open And Close Accessory Settings] -// -const TTFAccessoryTestCaseStateControl KTFAccessorySettingOpenCloseStates[2] = - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10105] [[AccServer] Open And Close Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeOpenCloseStates[2] = - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10106] [[AccServer] Open And Close Accessory Audio Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryAudioControlOpenCloseStates[2] = - { - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10107] [[AccServer] Open And Close Accessory BT Control] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryBTControlOpenCloseStates[2] = - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10108] [[AccServer] All Async method called twice] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryAsyncsCalledTwice[]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - - //***SingleConnection*** - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrAlreadyExists, 0}, - - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrAlreadyExists, 0}, - - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, - - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, - - { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //cancel with name - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryMode*** - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrAlreadyExists, 0}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFCancelGetAccessoryMode, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryConnection*** - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrAlreadyExists, 0}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFCancelGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryAudioControl*** - - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10108, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrAlreadyExists, 0}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrAlreadyExists, 0}, - - { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10108, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - - //***AccessoryBTControl - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrAlreadyExists, 0}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrAlreadyExists, 0}, - - { ETFCancelNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - //*** - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -//[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged] -// -const TTFAccessoryTestCaseStateControl KTFCancelValueChanged[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10109, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10109, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - //Cancel both notifications with one call - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - //Cancel notifications with separate cancel-call - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFClearStack, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10109, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Wired Accessory Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10201] [[AccServer] Connect Accessory] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectStates[3]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10201, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M10202] [[AccServer] Disconnect Accessory] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetDisconnectStates[3]= - { - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10203] [[AccServer] Notify New Accessory Connected] -// -const TTFAccessoryTestCaseStateControl KTFNotifyNewAccessoryConnectionState[4]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10203, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - }; - -// -// [M10204] [[AccServer] Notify Accessory Disconnected] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryDisconnectedStates[4]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeConnectionStates[4]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10205, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0} - }; - -// -// [M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)] -// - -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates[4]= - { - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10206, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10207] [[AccServer] Sync Get Accessory Connection Status] -// -const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryConnectionStatusStates[5]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10207, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSyncGetAccessoryConnectionStatus,0, 1, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10208] [[AccServer] Request Get Accessory Connection Status Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates[4]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10209] [[AccServer] Request Get Accessory Connection Status After Connection] -// -const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusAfterConnectionStates[6]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10209, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10209, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10210] [[AccServer] Notify Accessory Value Changed (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedIntegerStates[11]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10210, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyIntNotify, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10210, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10211] [[AccServer] Notify Accessory Value Changed (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10211, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10211, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M10212] [[AccServer] Accessory Value Changed Notify (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyIntegerStates[10]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10212, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryValueChangedNotifyInt, 0, 1, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10212, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10213] [[AccServer] Accessory Value Changed Notify (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10213, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryValueChangedNotifyBool, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10213, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; -// -//[M10214] [[AccServer] Set Value (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFSetValueIntegerStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10214, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntValue, 0, EAccAudioOutPutTypePublic, 0, KAccAudioOutputType, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Integer - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePublic, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10214, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - - -// -//[M10215] [[AccServer] Set Value (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFSetValueBooleanStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10215, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10215, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - - -// -// [M10216] AccServer [ Get Value (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFGetTIntStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10216, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10216, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10216, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10217] AccServer [ Get Value (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFGetTBoolStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10217, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10217, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10218] AccServer [ Get Value fails (TDes8)] -// -const TTFAccessoryTestCaseStateControl KTFGetTDes8States[9]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10218, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, KAccECIAudioBlock, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrArgument, 2000000}, //Desc - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10218, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10219] AccServer [ Connect and Disconnect Carkit (CK-10)] -// -const TTFAccessoryTestCaseStateControl KTFConnDisConnCarkit[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10219, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10219, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10219, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10221] AccServer [ Connect Accessory, Error response from ASY] -// -const TTFAccessoryTestCaseStateControl KTFConnErrorFromASY[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10221, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10221, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFClearStack, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Wireless test cases *********************************/ -/***************************** *********************************/ - - -// -// [M10401] [[AccServer] Connect BT with Headset And Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioInput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccBTHSP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccBTHFP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, EFalse, KAccNoDRMOutput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - - -// -// [M10403] [[AccServer] Connect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 0, KAccBTHFP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 1, KAccBTHSP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10404] [[AccServer] Disconnect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10405] [[AccServer] Connect BT with Handsfree Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 1, KAccBTHFP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, 0, KAccBTHSP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10406] [[AccServer] Disconnect BT with Headset Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10407] [[AccServer] Connect BT with Empty Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, 0, KAccIntegratedAudioInput, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10408] [[AccServer] Disconnect BT with Empty Profile] -// -const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10409] [[AccServer] Connect BT with Nokia Spesific Device Id] -// -const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id] -// -const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdDisconnectStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -//*************************************************************************************** - -// -// [M10411] [[AccServer] BT Connect, No Response From BT ASY ] -// -const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqConnectBtAccessory, KErrTimedOut, 0}, - }; - -// -// [M10412] [[AccServer] BT Disconnect, No Response From BT ASY ] -// -const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyDisconnectStates[]= - { - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -//*************************************************************************************** - -// -// [M10413] [[AccServer] BT Connect, Response with Error Code] -// -const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqConnectBtAccessory, KErrGeneral, 2000000}, - }; - -// -// [M10414] [[AccServer] BT Disconnect, Response with Error Code] -// -const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeDisconnectStates[]= - { - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10415] [[AccServer] BT Connect, All Service UUIDs] -// -const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, ETrue, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, 0x3, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntValue, 0, KAccSetVolumeLevelAVRCP, 0, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryIntGetValue, 0, 0, 0x7, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10416] [[AccServer] BT Disconnect, All Services UUIDs] -// -const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10417] [[AccServer] BT Connect, BT with AVRCP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTAVRCPConnectStates[6]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - }; - -// -// [M10418] [[AccServer] BT Disconnect, BT with AVRCP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTAVRCPDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10419] [[AccServer] BT Connect, BT with A2DP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTA2DPConnectStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFCheckCapability, 0, 0, ETrue, KAccNoDRMOutput, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10420] [[AccServer] BT Disconnect, BT with A2DP profile] -// -const TTFAccessoryTestCaseStateControl KTFBTA2DPDisconnectStates[6]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyBooleanStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 0, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 0, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccAcousticEchoControl, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccNoiseReduction, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBoolGetValue, 0, 1, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer] -// -const TTFAccessoryTestCaseStateControl KTFBTFailedAudiotransferFromBT[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10422, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10422, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ // Change order because audio is changing audio routing status! - { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#else - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10423] [[AccServer] BT Accessory Value Changed Notify (TInt/KAccAudioLatency)] -// -const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyIntStates[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 0, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 70000, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 70000, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 1, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryIntGetValue, 0, 0, 1, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -/***************************** *********************************/ -/***************************** Bt and Audio Control Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10501] [[AccServer] BT And Audio Link Open] -// -const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkOpenStates[17]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, - }; - -// -// [M10502] [[AccServer] BT And Audio Link Close] -// -const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkCloseStates[17]= - { - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory] -// -const TTFAccessoryTestCaseStateControl KTFBtAudioTransferFromBTtoPhoneStates[26]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, -// { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, -// { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkClosedNo, ReqAccRequestNone, KErrNone, 2000000}, - //This is made form asy - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - //Just in case - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkOpenedNo, ReqAccRequestNone, KErrNone, 2000000}, - //This is made form asy - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, - //Just in case end - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10504] [[AccServer] AudioLink Open and Close cancels] -// -const TTFAccessoryTestCaseStateControl KTFBtAudioLinkCancels[]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - //********************************************* - // Open/CancalOpen/Close/CancelClose - //********************************************* - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, -/*CancalOpen*/ { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, -/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, -/*CancelClose*/ { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, KErrGeneral,0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrCancel, 2000000}, - //********************************************* - // Open/Close - //********************************************* - { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, -/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, - { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, - // - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** Accessory Modes Tests *********************************/ -/***************************** *********************************/ - - -// -// [M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable] -// -const TTFAccessoryTestCaseStateControl KTFHandPortableAccessoryModeStates[7]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10601, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10601, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset] -// -const TTFAccessoryTestCaseStateControl KTFWiredHeadsetAccessoryModeStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10602, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 1000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, EFalse, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, -#ifdef __WINS__ // Just ignore because audio policy is set the routing status! - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, ETrue, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, -#endif - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10602, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset] -// -const TTFAccessoryTestCaseStateControl KTFWirelessHeadesetAccessoryModeStates[9]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10603, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -// [M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit] -// -const TTFAccessoryTestCaseStateControl KTFWiredCarkitAccessoryModeStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10604, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x020104, 0, 0, 0, 10604, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 10604, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10604, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit] -// -const TTFAccessoryTestCaseStateControl KTFWirelessCarKitAccessoryModeStatus[9]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 4, 0, 0, 0, 10605, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} - }; - -// -// [M10606] [[AccServer] Notify Accessory Mode Changed to Text Device] -// -const TTFAccessoryTestCaseStateControl KTFTextDeviceAccessoryModeStatus[11]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10606, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10606, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be TTY - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10606, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! - { ETFClearStack, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - - - -// -// [M10607] [[AccServer] Notify Accessory Mode Changed to Loopset] -// -const TTFAccessoryTestCaseStateControl KTFLoopsetAccessoryModeStates[11]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10607, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10607, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be Loopset - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10607, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFSetHWDeviceSettings, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! - { ETFClearStack, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand] -// -const TTFAccessoryTestCaseStateControl KTFMusicStandAccessoryModeStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10608, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10608, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10608, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10608, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10609] [[AccServer] Sync Get Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryModeStates[5]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10609, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryAccessoryModeSync, 0, 1, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10609, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - -// -// [M10610] [[AccServer] ASync Get Accessory Mode] -// -const TTFAccessoryTestCaseStateControl KTFASyncGetAccessoryModeStates[7]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10610, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10610, ETFAsyNone, ReqGetAccessoryMode, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10610, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - }; - - -/***************************** *********************************/ -/***************************** Special cases *********************************/ -/***************************** *********************************/ - -// -// [M10701] [[AccServer] MD-1 Power Supply On After Connection] ////KAccExtPowerSupply connect(off)->on->disconnect -// -const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnAfterConnectionState[15]= - { - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10701, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10701, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10701, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10701, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10702] [[AccServer] MD-1 Power Supply On/Off] //KAccExtPowerSupply connect(on)->off->on->disconnect -// -const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnOffState[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10702, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //->Power Supply Off - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False -#else - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //->Power Supply On - { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False -#else - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //Disconnect - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10702, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// KAccAudioOutConnector is "On" in connection state and "Off" in disconnection state. -// -// [M10703] [[AccServer] HS-20 Audio Out Connector On/Off] //KAccAudioOutConnector -// -const TTFAccessoryTestCaseStateControl KTFHS20AudioOutConnectorOnOffState[23]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10703, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10703, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFNotifyBoolAccessoryValueChanged, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#ifdef __WINS__ - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, -#else - { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, -#endif - { ETFFindAndCheckRequest, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10703, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10704] [[AccServer] Connect Unsupported Accessory] -// -const TTFAccessoryTestCaseStateControl KTFUnsupportedWiredAccessoryStates[4]= - { - { ETFAccessoryControl_Open, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0,0x000000, 0, 0, 0, 10704, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0,0, 0, 0, 0, 10704, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -// -// [M10705] [[AccServer] Transaction matching for ASY command] -// -const TTFAccessoryTestCaseStateControl KTFTransactionMatchStates[]= - { - { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10705, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, - { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10705, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M10706] [[AccServer] Fast Mode Notification Change] -// -// NotifyAccessoryModeChanged() is not reordered fast enough -// (e.g. due to different process sceduling by kernel) -// -const TTFAccessoryTestCaseStateControl KTFFastModeNotificationChange[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10706, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - //Ordering NotifyAccessoryModeChanged() after calling AudioRoutingStatusNotify() fakes the use-case under test - { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10706, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10707] [[AccServer] Not supported note] -// -const TTFAccessoryTestCaseStateControl KTFNotSupportedNote[]= - { - { ETFNotSupportedNote, 0, 0, 0, 0, 0, 10707, ETFAsyNone, ReqAccRequestNone, KErrNone, 20000000}, - }; - - - - -/***************************** *********************************/ -/***************************** Accessory Settings *********************************/ -/***************************** *********************************/ - - -// -// [M10801] [[AccServer] Set Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeStates[3]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset,1, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10802] [[AccServer] Get Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFGetLoopsetModeStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10803] [[AccServer] Set And Get Loopset Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetModeStates[6]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10804] [[AccServer] Set TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeStates[3]= - { - { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0,KASTTY, 1, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10805] [[AccServer] Get TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFGetTTYModeStates[3]= - { - { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHWDeviceSettings, 0,1, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10806] [[AccServer] Set And Get TTY Mode] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetTTYModeStates[6]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 1, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10807] [[AccServer] Set Loopset Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeAfterConnectionStates[17]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10807, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 1, KASLoopset, 1, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10807, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10808] [[AccServer] Set TTY Mode After Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[17]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10808, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 1, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10809] [[AccServer] Set Loopset Mode Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[15]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10809, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10810] [[AccServer] Set TTY Mode Before Connection] -// -const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[15]= - { - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10810, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10811] [[AccServer] Get Supported HW Devices] -// -const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[3]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetSupportedHWDeviceSettings, 0, KASTTY, KASLoopset, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10812] [[AccServer] Accessory Mode Settings (TInt)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTIntStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10813] [[AccServer] Accessory Mode Settings (TBool)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTBoolStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M10814] [[AccServer] Accessory Mode Settings (TDes)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTDesStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -#ifdef __WINS__ -// -// [M10815] [[AccServer] Accessory Mode Settings (Array)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsArrayStates[4]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; -#endif - -// -// [M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWiredCarkitAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetTextDeviceAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting ] -// -const TTFAccessoryTestCaseStateControl KTFSetAndGetMusicStandAccessoryModeSettingsStates[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)] -// -const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsGsSettingsState[5]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsAutomatic, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 200000}, - }; - -/***************************** *********************************/ -/***************************** Multible Connections *********************************/ -/***************************** *********************************/ - -// -// [M10901] [[AccServer] Connect Wired And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFConnectWiredAndBTArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10901, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, -}; - -// -// [M10902] [[AccServer] Disconnect Wired And Wireleass] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectWiredAndBTArrayStates[]= -{ - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10902, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} -}; - -// -// [M10903] [[AccServer] Connect Wireless And Wired] -// -const TTFAccessoryTestCaseStateControl KTFConnectBTAndWiredArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 1, 0x010103, 0, 0, 0, 10903, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - }; - -// -// [M10904] [[AccServer] Disconnect Wireless And Wired] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndWiredArrayStates[]= -{ - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 1, 0, 0, 0, 0, 10904, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} -}; - - -// -// [M10905] [[AccServer] Connect Wireless And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFConnectBTAndBTArrayStates[]= - { - { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 4000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - }; - -// -// [M10906] [[AccServer] Disconnect Wireless And Wireless] -// -const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndBTArrayStates[]= - { - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} - }; - -/***************************** *********************************/ -/***************************** Selection Dialog *********************************/ -/***************************** *********************************/ - -// -// [11001] [[AccServer] Selection dialog test -// -const TTFAccessoryTestCaseStateControl KTFTestSelectionDialog[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [11002] [[AccServer] Selection dialog test -// -const TTFAccessoryTestCaseStateControl KTFTestSelectionDialogOpenCancel[]= - { - { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - // { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSelectionDialogCancel, 0, 0, 0, 0, 0, 11002, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; - -// -// [M11003] [[AccServer] Connect open cable, user select tv-out]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectTVOUT[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11003, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 20000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqNotifyNewAccessoryConnected,KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11003, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11004] [[AccServer] Connect open cable, ASY selects tv-out] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableAsySelectTVOUT[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11004, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11005, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11006] [[AccServer] Connect open cable, open selection dialog, disconnect] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableOpenSelectionDialogDisconnect[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11006, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11006, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11007] [[AccServer] Connect open cable, connect headset, user select headset] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset[]= - { - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11007, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 5000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyUpdateHeadset, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [11008] [[AccServer] Connect ECI accessory] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectECIAccessory[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11008, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - //Check ECI capability - { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11008, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11009] [[AccServer] Connect headset, default accessory headset, default is selected] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableDefaultSelection[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11010] [[AccServer] Connect Headset]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectHeadset[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11010, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11010, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, - { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11011] [[AccServer] Connect Headphones]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectHeadphones[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11011, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11011, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11012] [[AccServer] Connect Open Cable]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCable[]= - { - { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11012, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11012, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11013] [[AccServer] Connect TV Out]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectTVOUT[]= - { - { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 2, 11013, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11013, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11014 [[AccServer] Disconnect wired accessory]] -// -const TTFAccessoryTestCaseStateControl KTFTestDisconnectWired[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11014, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11015] [[AccServer] Connect Headphones, no selection, disconnect accessory]] -// -const TTFAccessoryTestCaseStateControl KTFTestConnectAndDisconnectHeadphones[]= - { - { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11015, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 5000000}, - { ETFDisconnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, - { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M10611 [[AccServer] KTFCheckConnectedAccessory]] -// -const TTFAccessoryTestCaseStateControl KTFCheckConnectedAccessory[]= - { - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10611, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckConnectedAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -/***************************** *********************************/ -/***************************** Policy Tests *********************************/ -/***************************** *********************************/ - -// -// [11101] [[AccPolicy] ValueRecord test -// - -const TTFAccessoryTestCaseStateControl KTFTestValueRecord[]= - { - { ETFValueRecordTests, 0, 0, 0, 0, 0, 11101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11103] [[AccPolicy] Object Base Serialization test -// -const TTFAccessoryTestCaseStateControl KTFTestObjectBaseSerialization[]= - { - { ETFObjectBaseSerializationTests, 0, 0, 0, 0, 0, 11103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/***************************** *********************************/ -/***************************** New tests to *********************************/ -/***************************** increase code *********************************/ -/***************************** coverage *********************************/ -/***************************** *********************************/ - -// -// [11101] [[AccServer] Cancel connects -// - -// -// [M11102] [[AccServer] Cancel connect Accessory] -// -/*const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectCancelStates[7]= - { - { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryBtCancelConnectAccessory, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtCancelDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - }; -*/ - -// -// [M11102] [[AccServer] Cancel connect Accessory] -// -const TTFAccessoryTestCaseStateControl KTFCallTClassMethods[1]= - { - { ETFCallTClassMethods, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -/************************ ****************************/ -/************************ CAccPolObjectBase related testcases (USB) ****************************/ -/************************ ****************************/ - -// -// [M11201] AccServer [ Connect USB headset ] -// -const TTFAccessoryTestCaseStateControl KTFConnectUSBheadsetStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11202] AccServer [ Get and Set USB headset audio streams format parameter] -// -const TTFAccessoryTestCaseStateControl KTFGetSetUSBheadsetValue[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_ObjectPubSub, 0, EAccPolAudioInputStreamObject, 2, EAccPolAudioOutputStreamObject, 2, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11203] [[AccServer] Get USB audio units (Audio Topology) ] -// -const TTFAccessoryTestCaseStateControl KTFUSBheadsetAudioControls[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11203, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11204] [[AccServer] Set/Get volume control] -// -const TTFAccessoryTestCaseStateControl KTFSetGetUSBvolumeControl[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11204, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetVolumeControlObjects, 0, 10, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 20, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 30, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 40, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 50, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetVolumeControlObjects, 0, 60, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11205] [[AccServer] Set/Get mute control] -// -const TTFAccessoryTestCaseStateControl KTFSetGetUSBmuteControl[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11205, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11205, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - - -// -// [M11206] AccServer [ Connect USB 2 headset / Policy test ] -// -const TTFAccessoryTestCaseStateControl KTFConnectUSB2headsetStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB2, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryGetStreamObjectsFromPolicy, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - -// -// [M11207] AccServer [ Cancel accessory object value changed notification request ] -// -const TTFAccessoryTestCaseStateControl KTFCancelNotifyAccessoryValueChangedObjectStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11207, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - -// -// [M11208] AccServer [ Accessory object value changed notification request ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11208, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11208, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11208, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -// -// [M11209] AccServer [ Accessory object value changed notification request and cancel ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectAndCancelStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11209, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11209, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFClearStack, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} - }; - - -/************************ ****************************/ -/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ -/************************ ****************************/ - -// -// [M11301] AccServer [ Connect HDMI device ] -// -const TTFAccessoryTestCaseStateControl KTFConnectHDMIDeviceStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoOut, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoFormat, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdcpSupport, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11302] AccServer [ Get HDMI device attributes ] -// -const TTFAccessoryTestCaseStateControl KTFGetHDMIDeviceAttributesStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFSetHdmiObject_PubSub, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHdmiObject, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11303] AccServer [ Notify HDMI device attributes changed ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyHDMIDeviceAttributesChangedStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11303, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11304] AccServer [ Get HDMI video format ] -// -const TTFAccessoryTestCaseStateControl KTFGetHDMIVideoFormatStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFSetHdmiObject_PubSub, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFGetHdmiObject, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11305] AccServer [ Notify HDMI video format changed ] -// -const TTFAccessoryTestCaseStateControl KTFNotifyHDMIVideoFormatChangedStates[]= - { - { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, - { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, - { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoFormat, 0, 11305, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, - { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, - { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, - { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, - { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, - { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -// -// [M11306] AccServer [ Test HDMI objects ] -// -const TTFAccessoryTestCaseStateControl KTCheckHdmiObjectsStates[]= - { - { ETFCheckHdmiObject, 0, EAccPolHdmiObjectCon, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiSinkObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiAudioFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiLatencyObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiSpeakerAllocationObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - { ETFCheckHdmiObject, 0, EAccPolHdmiVideoFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, - }; - - -/***************************** *********************************/ -/***************************** End Tests *********************************/ -/***************************** *********************************/ - - -CTFAccessoryTestControlPlugin::CTFAccessoryTestControlPlugin( TAny* aInitParams ) -: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) - { - } - -// Two-phased constructor. -CTFAccessoryTestControlPlugin* CTFAccessoryTestControlPlugin::NewL( TAny* aInitParams ) - { - return new ( ELeave ) CTFAccessoryTestControlPlugin( aInitParams ); - } - -// Destructor. -CTFAccessoryTestControlPlugin::~CTFAccessoryTestControlPlugin() - { - iInitParams = NULL; - } - -CTFStub* CTFAccessoryTestControlPlugin::GetStubL( void ) - { - - return new ( ELeave ) CTFAccessoryTestControl(); - } - -void CTFAccessoryTestControlPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) - { - // Memory checks are disabled since Accessory Server runs in separate thread and heap. - aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); - - TF_START_TEST_DECLARATION_L( aRootSuite ); - // Use case test cases - TF_ADD_TEST_SUITE_L( _L( "Module Tests" ) ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Session Tests" ), AccessorySessionsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wired Accessory Module Tests" ), WiredAccessoryModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wireless Accessory Module Tests" ), WirelessAccessoryModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Bt And Audio Link Module Tests" ), BtAndAudioLinkModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Mode Module Tests" ), AccessoryModeModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Special Module Tests" ), SpecialModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Settings Tests" ), AccessorySettingsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Multible Connections" ), MultibleConnectionsModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Signature Connection Tests" ), SignatureModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Policy Tests" ), PolicyModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "USB Object Tests" ), UsbObjectModuleTestSuiteL ); - TF_ADD_TEST_SUITE_FUNCTION_L( _L( "HDMI Object Tests" ), HdmiObjectModuleTestSuiteL ); - TF_END_TEST_SUITE(); - TF_END_TEST_DECLARATION(); - } - -MTFStubTestCase* CTFAccessoryTestControlPlugin::GetStubTestCaseL( TInt aTestCaseId ) - { - TF_START_STUB_TEST_CASES( aTestCaseId ); - -/***************************** Open And Close Services *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAccessoryConnectionOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAccessorySingleConnectionOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAccessoryControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10104, KTFAccessorySettingOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10105, KTFAccessoryModeOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10106, KTFAccessoryAudioControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAccessoryBTControlOpenCloseStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAccessoryAsyncsCalledTwice ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10109, KTFCancelValueChanged ); - -/***************************** Wired Accessory Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10201, KTFWiredHeadsetConnectStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10202, KTFWiredHeadsetDisconnectStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10203, KTFNotifyNewAccessoryConnectionState ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10204, KTFNotifyAccessoryDisconnectedStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10205, KTFNotifyAccessoryConnectionStatusChangeConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10206, KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10207, KTFSyncGetAccessoryConnectionStatusStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10208, KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10209, KTFRequestGetAccessoryConnectionStatusAfterConnectionStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10210, KTFNotifyAccessoryValueChangedIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10211, KTFNotifyAccessoryValueChangedBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10212, KTFAccessoryValueChangedNotifyIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10213, KTFAccessoryValueChangedNotifyBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10214, KTFSetValueIntegerStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10215, KTFSetValueBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10216, KTFGetTIntStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10217, KTFGetTBoolStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10218, KTFGetTDes8States ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10219, KTFConnDisConnCarkit ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10221, KTFConnErrorFromASY ) ; - -/***************************** Wireless Accessory Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10401, KTFBTHeadsetAndHandsfreeProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10402, KTFBTHeadsetAndHandsfreeProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10403, KTFBTHeadsetProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10404, KTFBTHeadsetProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10405, KTFBTHandsfreeProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10406, KTFBTHandsfreeProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10407, KTFBTEmptyProfileConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10408, KTFBTEmptyProfileDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10409, KTFBTNokiaSpesificDeviceIdConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10410, KTFBTNokiaSpesificDeviceIdDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10411, KTFBTNoResponseFromBtAsyConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10412, KTFBTNoResponseFromBtAsyDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10413, KTFBTAsyResponseWithErrorCodeConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10414, KTFBTAsyResponseWithErrorCodeDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10415, KTFBTAllServiceUUIDsConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10416, KTFBTAllServiceUUIDsDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10417, KTFBTAVRCPConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10418, KTFBTAVRCPDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10419, KTFBTA2DPConnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10420, KTFBTA2DPDisconnectStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10421, KTFBTAccessoryValueChangedNotifyBooleanStates ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10422, KTFBTFailedAudiotransferFromBT ) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10423, KTFBTAccessoryValueChangedNotifyIntStates ) ; - -/***************************** BT/Audio Link Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10501, KTFBtAndAudioLinkOpenStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10502, KTFBtAndAudioLinkCloseStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10503, KTFBtAudioTransferFromBTtoPhoneStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10504, KTFBtAudioLinkCancels) ; - -/***************************** Accessory Mode Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10601, KTFHandPortableAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10602, KTFWiredHeadsetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10603, KTFWirelessHeadesetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10604, KTFWiredCarkitAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10605, KTFWirelessCarKitAccessoryModeStatus) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10606, KTFTextDeviceAccessoryModeStatus) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10607, KTFLoopsetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10608, KTFMusicStandAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10609, KTFSyncGetAccessoryModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10610, KTFASyncGetAccessoryModeStates) ; - -/***************************** Special Tests *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10701, KTFMD1PowerSupplyOnAfterConnectionState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10702, KTFMD1PowerSupplyOnOffState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10703, KTFHS20AudioOutConnectorOnOffState) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10704, KTFUnsupportedWiredAccessoryStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10705, KTFTransactionMatchStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10706, KTFFastModeNotificationChange ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10707, KTFNotSupportedNote ); - -/***************************** Accessory Settings *********************************/ - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10801, KTFSetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10802, KTFGetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10803, KTFSetAndGetLoopsetModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10804, KTFSetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10805, KTFGetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10806, KTFSetAndGetTTYModeStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10807, KTFSetLoopsetModeAfterConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10808, KTFSetTTYModeAfterConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10809, KTFSetLoopsetModeBeforeConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10810, KTFSetTTYModeBeforeConnectionStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10811, KTFGetSupportedHWDevicesStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10812, KTFAccessoryModeSettingsTIntStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10813, KTFAccessoryModeSettingsTBoolStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10814, KTFAccessoryModeSettingsTDesStates) ; - -#ifdef __WINS__ - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10815, KTFAccessoryModeSettingsArrayStates) ; -#endif - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10816, KTFSetAndGetWirelessAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10817, KTFSetAndGetWiredCarkitAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10818, KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10819, KTFSetAndGetTextDeviceAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10820, KTFSetAndGetLoopsetAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10821, KTFSetAndGetMusicStandAccessoryModeSettingsStates) ; - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10822, KTFAccessoryModeSettingsGsSettingsState ) ; - -/***************************** Multible connections *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10901, KTFConnectWiredAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10902, KTFDisconnectWiredAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10903, KTFConnectBTAndWiredArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10904, KTFDisconnectBTAndWiredArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10905, KTFConnectBTAndBTArrayStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10906, KTFDisconnectBTAndBTArrayStates ); - -/***************************** Signature testcases *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11001, KTFTestSelectionDialog ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11002, KTFTestSelectionDialogOpenCancel ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11003, KTFTestConnectOpenCableUserSelectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11004, KTFTestConnectOpenCableAsySelectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11005, KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11006, KTFTestConnectOpenCableOpenSelectionDialogDisconnect ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11007, KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11008, KTFTestConnectECIAccessory ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11009, KTFTestConnectOpenCableDefaultSelection ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11010, KTFTestConnectHeadset ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11011, KTFTestConnectHeadphones ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11012, KTFTestConnectOpenCable ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11013, KTFTestConnectTVOUT ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11014, KTFTestDisconnectWired ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11015, KTFTestConnectAndDisconnectHeadphones ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10611, KTFCheckConnectedAccessory ); - -/***************************** Policy testcases *********************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11101, KTFTestValueRecord ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11103, KTFTestObjectBaseSerialization ); - -/************************ CAccPolObjectBase related testcases (USB) ****************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11201, KTFConnectUSBheadsetStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11202, KTFGetSetUSBheadsetValue ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11203, KTFUSBheadsetAudioControls ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11204, KTFSetGetUSBvolumeControl ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11205, KTFSetGetUSBmuteControl ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11206, KTFConnectUSB2headsetStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11207, KTFCancelNotifyAccessoryValueChangedObjectStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11208, KTFNotifyAccessoryValueChangedObjectStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11209, KTFNotifyAccessoryValueChangedObjectAndCancelStates ); - -/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ - - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11301, KTFConnectHDMIDeviceStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11302, KTFGetHDMIDeviceAttributesStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11303, KTFNotifyHDMIDeviceAttributesChangedStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11304, KTFGetHDMIVideoFormatStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11305, KTFNotifyHDMIVideoFormatChangedStates ); - TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11306, KTCheckHdmiObjectsStates ); - - TF_END_STUB_TEST_CASES(); - } - -static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10101, _L( "[M10101] [[AccServer] Open And Close Accessory Connection]") ); - TF_ADD_TEST_CASE_L( 10102, _L( "[M10102] [[AccServer] Open And Close Accessory Single Connection]" ) ); - TF_ADD_TEST_CASE_L( 10103, _L( "[M10103] [[AccServer] Open And Close Accessory Control]") ); - TF_ADD_TEST_CASE_L( 10104, _L( "[M10104] [[AccServer] Open And Close Accessory Settings]") ); - TF_ADD_TEST_CASE_L( 10105, _L( "[M10105] [[AccServer] Open And Close Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10106, _L( "[M10106] [[AccServer] Open And Close Accessory Audio Control]") ); - TF_ADD_TEST_CASE_L( 10107, _L( "[M10107] [[AccServer] Open And Close Accessory BT Control]") ); - TF_ADD_TEST_CASE_L( 10108, _L( "[M10108] [[AccServer] All Async method called twice]") ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10109, _L( "[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged]") ); -} - -static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10201, _L( "[M10201] [[AccServer] Connect Accessory]") ); - TF_ADD_TEST_CASE_L( 10202, _L( "[M10202] [[AccServer] Disconnect Accessory]") ); - TF_ADD_TEST_CASE_L( 10203, _L( "[M10203] [[AccServer] Notify New Accessory Connected]") ); - TF_ADD_TEST_CASE_L( 10204, _L( "[M10204] [[AccServer] Notify New Accessory Disconnected]") ); - TF_ADD_TEST_CASE_L( 10205, _L( "[M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)]") ); - TF_ADD_TEST_CASE_L( 10206, _L( "[M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)]") ); - TF_ADD_TEST_CASE_L( 10207, _L( "[M10207] [[AccServer] Sync Get Accessory Connection Status]" ) ); - TF_ADD_TEST_CASE_L( 10208, _L( "[M10208] [[AccServer] Request Get Accessory Connection Status Before Connection]" ) ); - TF_ADD_TEST_CASE_L( 10209, _L( "[M10209] [[AccServer] Request Get Accessory Connection Status After Connection]" ) ); - TF_ADD_TEST_CASE_L( 10210, _L( "[M10210] [[AccServer] Notify Accessory Value Changed (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10211, _L( "[M10211] [[AccServer] Notify Accessory Value Changed (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10212, _L( "[M10212] [[AccServer] Accessory Value Changed Notify (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10213, _L( "[M10213] [[AccServer] Accessory Value Changed Notify (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10214, _L( "[M10214] [[AccServer] Set Value (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10215, _L( "[M10215] [[AccServer] Set Value (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10216, _L( "[M10216] [[AccServer] Get Value (TInt)]" ) ); - TF_ADD_TEST_CASE_L( 10217, _L( "[M10217] [[AccServer] Get Value (TBool)]" ) ); - TF_ADD_TEST_CASE_L( 10218, _L( "[M10218] [[AccServer] Get Value fails (TDes8)]" ) ); - TF_ADD_TEST_CASE_L( 10219, _L( "[M10219] [[AccServer] Connect and Disconnect Carkit (CK-10)]" ) ); - TF_ADD_TEST_CASE_L( 10221, _L( "[M10221] [[AccServer] Connect Accessory, Error response from ASY" ) ); -} - -static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10401, _L( "[M10401] [[AccServer] Connect BT with Headset And Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10402, _L( "[M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10403, _L( "[M10403] [[AccServer] Connect BT with Headset Profile]")); - TF_ADD_TEST_CASE_L( 10404, _L( "[M10404] [[AccServer] Disconnect BT with Headset Profile]")); - TF_ADD_TEST_CASE_L( 10405, _L( "[M10405] [[AccServer] Connect BT with Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10406, _L( "[M10406] [[AccServer] Disconnect BT with Handsfree Profile]")); - TF_ADD_TEST_CASE_L( 10407, _L( "[M10407] [[AccServer] Connect BT with Empty Profile]")); - TF_ADD_TEST_CASE_L( 10408, _L( "[M10408] [[AccServer] Disconnect BT with Empty Profile]")); - TF_ADD_TEST_CASE_L( 10409, _L( "[M10409] [[AccServer] Connect BT with Nokia Spesific Device Id]")); - TF_ADD_TEST_CASE_L( 10410, _L( "[M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id]")); - TF_ADD_TEST_CASE_L( 10411, _L( "[M10411] [[AccServer] Connect BT, No Response From BT ASY]")); - TF_ADD_TEST_CASE_L( 10412, _L( "[M10412] [[AccServer] Disconnectect BT, No Response From BT ASY]")); - TF_ADD_TEST_CASE_L( 10413, _L( "[M10413] [[AccServer] Connect BT, Response with Error Code]")); - TF_ADD_TEST_CASE_L( 10414, _L( "[M10414] [[AccServer] Disconnect BT, Response with Error Code]")); - TF_ADD_TEST_CASE_L( 10415, _L( "[M10415] [[AccServer] Connect BT, All Service UUIDs]")); - TF_ADD_TEST_CASE_L( 10416, _L( "[M10416] [[AccServer] Disconnect BT, All Service UUIDs]")); - TF_ADD_TEST_CASE_L( 10417, _L( "[M10417] [[AccServer] BT Connect, BT with AVRCP profile]")); - TF_ADD_TEST_CASE_L( 10418, _L( "[M10418] [[AccServer] BT Disconnect, BT with AVRCP profile]")); - TF_ADD_TEST_CASE_L( 10419, _L( "[M10419] [[AccServer] BT Connect, BT with A2DP profile]")); - TF_ADD_TEST_CASE_L( 10420, _L( "[M10420] [[AccServer] BT Disconnect, BT with A2DP profile]")); - TF_ADD_TEST_CASE_L( 10421, _L( "[M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10422, _L( "[M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer]" ) ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10423, _L( "[M10423] [[AccServer] BT Accessory Value Changed Notify (TInt)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void BtAndAudioLinkModuleTestSuiteL(CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10501, _L( "[M10501] [[AccServer] BT And Audio Link Open] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10502, _L( "[M10502] [[AccServer] BT And Audio Link Close]")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10503, _L( "[M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory]")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10504, _L( "[M10504] [[AccServer] AudioLink Open and Close cancels]")); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10601, _L( "[M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable]") ); - TF_ADD_TEST_CASE_L( 10602, _L( "[M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset]") ); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10603, _L( "[M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset]") ); - TF_ADD_TEST_CASE_L( 10604, _L( "[M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit]") ); - TF_ADD_TEST_CASE_L( 10605, _L( "[M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit]") ); - TF_ADD_TEST_CASE_L( 10607, _L( "[M10607] [[AccServer] Notify Accessory Mode Changed to Loopset]") ); - TF_ADD_TEST_CASE_L( 10608, _L( "[M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand]") ); - TF_ADD_TEST_CASE_L( 10609, _L( "[M10609] [[AccServer] Sync Get Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10610, _L( "[M10610] [[AccServer] ASync Get Accessory Mode]") ); - TF_ADD_TEST_CASE_L( 10611, _L( "[M10611] [[AccServer] Check Connected Accessory]]")); -} - -static void SpecialModuleTestSuiteL(CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10701, _L( "[M10701] [[AccServer] MD-1, PowerSupply On After Connection] ")); - TF_ADD_TEST_CASE_L( 10702, _L( "[M10702] [[AccServer] MD-1 Power Supply On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10703, _L( "[M10703] [[AccServer] HS-20 Audio Out Connector On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10704, _L( "[M10704] [[AccServer] Connect Unsupported Accessory] ")); - TF_ADD_TEST_CASE_L( 10705, _L( "[M10705] [[AccServer] Transaction matching for ASY command] ")); - TF_ADD_TEST_CASE_L( 10706, _L( "[M10706] [[AccServer] Fast Mode Notification Change] ")); - TF_ADD_TEST_CASE_L( 10707, _L( "[M10707] [[AccServer] Not supported note ")); -} - -static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10801, _L( "[M10801] [[AccServer] Set Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10802, _L( "[M10802] [[AccServer] Get Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10803, _L( "[M10803] [[AccServer] Set And Get Loopset Mode] ") ); - TF_ADD_TEST_CASE_L( 10804, _L( "[M10804] [[AccServer] Set TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10805, _L( "[M10805] [[AccServer] Get TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10806, _L( "[M10806] [[AccServer] Set And Get TTY Mode] ") ); - TF_ADD_TEST_CASE_L( 10812, _L( "[M10812] [[AccServer] Accessory Mode Settings (TInt)] ") ); - TF_ADD_TEST_CASE_L( 10813, _L( "[M10813] [[AccServer] Accessory Mode Settings (TBool)] ") ); - TF_ADD_TEST_CASE_L( 10814, _L( "[M10814] [[AccServer] Accessory Mode Settings (TDes)] ") ); -#ifdef __WINS__ - TF_ADD_TEST_CASE_L( 10815, _L( "[M10815] [[AccServer] Accessory Mode Settings (Array)] ") ); -#endif - TF_ADD_TEST_CASE_L( 10816, _L( "[M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10817, _L( "[M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10818, _L( "[M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10819, _L( "[M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10820, _L( "[M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10821, _L( "[M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting]") ); - TF_ADD_TEST_CASE_L( 10822, _L( "[M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)]") ); -} - -static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 10901, _L( "[M10901] [[AccServer] Connect Wired And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10902, _L( "[M10902] [[AccServer] Disconnect Wired And Wireleass] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10903, _L( "[M10903] [[AccServer] Connect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10904, _L( "[M10904] [[AccServer] Disconnect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10905, _L( "[M10905] [[AccServer] Connect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); - TF_ADD_TEST_CASE_L( 10906, _L( "[M10906] [[AccServer] Disconnect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); -} - -static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11001, _L( "[M11001] [[AccServer] Selection dialog test] ")); - TF_ADD_TEST_CASE_L( 11002, _L( "[M11002] [[AccServer] Selection dialog open/cancel] ")); - TF_ADD_TEST_CASE_L( 11003, _L( "[M11003] [[AccServer] Connect open cable, user select tv-out]")); - TF_ADD_TEST_CASE_L( 11004, _L( "[M11004] [[AccServer] Connect open cable, ASY selects tv-out]")); - TF_ADD_TEST_CASE_L( 11005, _L( "[M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out]")); - TF_ADD_TEST_CASE_L( 11006, _L( "[M11006] [[AccServer] Connect open cable, open selection dialog, disconnect]")); - TF_ADD_TEST_CASE_L( 11007, _L( "[M11007] [[AccServer] Connect open cable, connect headset, user select headset]")); - TF_ADD_TEST_CASE_L( 11008, _L( "[M11008] [[AccServer] Connect ECI accessory]")); - TF_ADD_TEST_CASE_L( 11009, _L( "[M11009] [[AccServer] Connect open cable, default accessory headset, default is selected]")); - TF_ADD_TEST_CASE_L( 11010, _L( "[M11010] [[AccServer] Connect Headset]]")); - TF_ADD_TEST_CASE_L( 11011, _L( "[M11011] [[AccServer] Connect Headphones]]")); - TF_ADD_TEST_CASE_L( 11012, _L( "[M11012] [[AccServer] Connect Open Cable]]")); - TF_ADD_TEST_CASE_L( 11013, _L( "[M11013] [[AccServer] Connect TV Out]]")); - TF_ADD_TEST_CASE_L( 11014, _L( "[M11014] [[AccServer] Disconnect Wired Accessory]]")); - TF_ADD_TEST_CASE_L( 11015, _L( "[M11015] [[AccServer] Connect and disconnect Headphones]]")); -} - - -static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11101, _L( "[M11101] [[AccPolicy] ValueRecord test] ")); - //TF_ADD_TEST_CASE_L( 11102, _L( "[M11102] [[Code coverage] Cancel connects] ")); - TF_ADD_TEST_CASE_L( 11103, _L( "[M11103] [[AccPolicy] Object Base Serialization test] ")); -} - -static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11201, _L( "[M11201] [[AccServer] Connect USB headset] ")); - TF_ADD_TEST_CASE_L( 11202, _L( "[M11202] [[AccServer] Get and Set USB headset audio streams format parameter] ")); - TF_ADD_TEST_CASE_L( 11203, _L( "[M11203] [[AccServer] Get USB audio units (Audio Topology) ] ")); - TF_ADD_TEST_CASE_L( 11204, _L( "[M11204] [[AccServer] Set/Get volume control] ")); - TF_ADD_TEST_CASE_L( 11205, _L( "[M11205] [[AccServer] Set/Get mute control] ")); - TF_ADD_TEST_CASE_L( 11206, _L( "[M11206] [[AccServer] Connect USB 2 headset / Policy test]")); - TF_ADD_TEST_CASE_L( 11207, _L( "[M11207] [[AccServer] Cancel accessory object value changed notify]")); - TF_ADD_TEST_CASE_L( 11208, _L( "[M11208] [[AccServer] Accessory object value changed notify]")); - TF_ADD_TEST_CASE_L( 11209, _L( "[M11209] [[AccServer] Accessory object value changed notify and cancel]")); -} - -static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ) -{ - TF_INIT_TEST_SUITE_FUNCTION( aSuite ); - - TF_ADD_TEST_CASE_L( 11301, _L( "[M11301] [[AccServer] Connect HDMI device] ")); - TF_ADD_TEST_CASE_L( 11302, _L( "[M11302] [[AccServer] Get HDMI device attributes] ")); - TF_ADD_TEST_CASE_L( 11303, _L( "[M11303] [[AccServer] Notify HDMI device attributes changed] ")); - TF_ADD_TEST_CASE_L( 11304, _L( "[M11304] [[AccServer] Get HDMI video format] ")); - TF_ADD_TEST_CASE_L( 11305, _L( "[M11305] [[AccServer] Notify HDMI video format changed] ")); - TF_ADD_TEST_CASE_L( 11306, _L( "[M11306] [[AccServer] Check HDMI objects] ")); -} - -// End of File - +/* +* Copyright (c) 2005 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: +* +*/ + + +// INCLUDE FILES +#include +#include +#include "siftrace.h" +#include "CtfAccessoryTestControlPlugin.h" +#include "CtfAccessoryTestControl.h" +#include "CtfAccessoryTestCaseParamControl.h" +#include "CtfAccessoryTestCaseControl.h" +#include + + + +//M10703 KAccAudioOutConnector + +// LOCAL FUNCTIONS +static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); +static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ); +static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ); +static void BtAndAudioLinkModuleTestSuiteL( CTFATestSuite* aSuite ); +static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void SpecialModuleTestSuiteL( CTFATestSuite* aSuite ); +static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ); +static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ); +static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ); +static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ); +static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ); + +// +// [M10101] [[AccServer] Open And Close Accessory Connection] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryConnectionOpenCloseStates[2] = + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M10102] [[AccServer] Open And Close Accessory Single Connection] +// +const TTFAccessoryTestCaseStateControl KTFAccessorySingleConnectionOpenCloseStates[2] = + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10103] [[AccServer] Open And Close Accessory Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryControlOpenCloseStates[2] = + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; +// +// [M10104] [[AccServer] Open And Close Accessory Settings] +// +const TTFAccessoryTestCaseStateControl KTFAccessorySettingOpenCloseStates[2] = + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10104, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10105] [[AccServer] Open And Close Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeOpenCloseStates[2] = + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10105, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10106] [[AccServer] Open And Close Accessory Audio Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryAudioControlOpenCloseStates[2] = + { + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10106, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10107] [[AccServer] Open And Close Accessory BT Control] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryBTControlOpenCloseStates[2] = + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10107, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10108] [[AccServer] All Async method called twice] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryAsyncsCalledTwice[]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + + //***SingleConnection*** + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrAlreadyExists, 0}, + + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrAlreadyExists, 0}, + + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, + + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, + + { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //cancel with name + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrArgument, 0}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrArgument, 0}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryMode*** + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrAlreadyExists, 0}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFCancelGetAccessoryMode, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryConnection*** + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrAlreadyExists, 0}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFCancelGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryAudioControl*** + + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10108, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrAlreadyExists, 0}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrAlreadyExists, 0}, + + { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10108, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + + //***AccessoryBTControl + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrAlreadyExists, 0}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrAlreadyExists, 0}, + + { ETFCancelNotifyBluetoothAudioLinkOpenReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyBluetoothAudioLinkCloseReq, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + //*** + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10108, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +//[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged] +// +const TTFAccessoryTestCaseStateControl KTFCancelValueChanged[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10109, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10109, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + //Cancel both notifications with one call + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + //Cancel notifications with separate cancel-call + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccMuteAllAudio, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFClearStack, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10109, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10109, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Wired Accessory Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10201] [[AccServer] Connect Accessory] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectStates[3]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10201, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M10202] [[AccServer] Disconnect Accessory] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetDisconnectStates[3]= + { + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10203] [[AccServer] Notify New Accessory Connected] +// +const TTFAccessoryTestCaseStateControl KTFNotifyNewAccessoryConnectionState[4]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10203, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10203, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + }; + +// +// [M10204] [[AccServer] Notify Accessory Disconnected] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryDisconnectedStates[4]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeConnectionStates[4]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10205, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10205, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0} + }; + +// +// [M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)] +// + +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates[4]= + { + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10206, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10206, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10207] [[AccServer] Sync Get Accessory Connection Status] +// +const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryConnectionStatusStates[5]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10207, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSyncGetAccessoryConnectionStatus,0, 1, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10208] [[AccServer] Request Get Accessory Connection Status Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates[4]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10209] [[AccServer] Request Get Accessory Connection Status After Connection] +// +const TTFAccessoryTestCaseStateControl KTFRequestGetAccessoryConnectionStatusAfterConnectionStates[6]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10209, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFASyncGetAccessoryConnectionStatus, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10209, ETFAsyNone, ReqGetAccessoryConnectionStatus, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10210] [[AccServer] Notify Accessory Value Changed (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedIntegerStates[11]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10210, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyIntAccessoryValueChanged, 0, 0, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyIntNotify, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 1, 0, KAccAudioOutputType, 0,10210, ETFAsyNone, ReqNotifyIntegerAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10210, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10210, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10211] [[AccServer] Notify Accessory Value Changed (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10211, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10211, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10211, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10211, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10211, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M10212] [[AccServer] Accessory Value Changed Notify (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyIntegerStates[10]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10212, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryValueChangedNotifyInt, 0, 1, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10212, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10212, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10213] [[AccServer] Accessory Value Changed Notify (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryValueChangedNotifyBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10213, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryValueChangedNotifyBool, 0, 1, 0, KAccAudioOutConnector, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10213, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10213, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; +// +//[M10214] [[AccServer] Set Value (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFSetValueIntegerStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10214, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntValue, 0, EAccAudioOutPutTypePublic, 0, KAccAudioOutputType, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Integer + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePublic, KAccAudioOutputType ,0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10214, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10214, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + + +// +//[M10215] [[AccServer] Set Value (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFSetValueBooleanStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10215, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10215, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10215, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + + +// +// [M10216] AccServer [ Get Value (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFGetTIntStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10216, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10216, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, EAccAudioOutPutTypePrivate, KAccAudioOutputType, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10216, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10216, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10217] AccServer [ Get Value (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFGetTBoolStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10217, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAudioInConnector, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, //Boolean + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10217, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10217, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10218] AccServer [ Get Value fails (TDes8)] +// +const TTFAccessoryTestCaseStateControl KTFGetTDes8States[9]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10218, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, KAccECIAudioBlock, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrArgument, 2000000}, //Desc + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10218, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10218, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10219] AccServer [ Connect and Disconnect Carkit (CK-10)] +// +const TTFAccessoryTestCaseStateControl KTFConnDisConnCarkit[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10219, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10219, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10219, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10219, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10221] AccServer [ Connect Accessory, Error response from ASY] +// +const TTFAccessoryTestCaseStateControl KTFConnErrorFromASY[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x20108, 0, 0, 0, 10221, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10221, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10221, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFCancelNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCancelNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFClearStack, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10221, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Wireless test cases *********************************/ +/***************************** *********************************/ + + +// +// [M10401] [[AccServer] Connect BT with Headset And Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10401, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioOutputType, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccIntegratedAudioInput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccBTHSP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccBTHFP, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, EFalse, KAccNoDRMOutput, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetAndHandsfreeProfileDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10402, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + + +// +// [M10403] [[AccServer] Connect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10403, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 0, KAccBTHFP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 1, KAccBTHSP, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10403, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10404] [[AccServer] Disconnect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHeadsetProfileDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10404, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10405] [[AccServer] Connect BT with Handsfree Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10405, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 1, KAccIntegratedAudioInput, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 1, KAccBTHFP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, 0, KAccBTHSP, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10405, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10406] [[AccServer] Disconnect BT with Headset Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTHandsfreeProfileDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10406, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10407] [[AccServer] Connect BT with Empty Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10407, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, 0, KAccIntegratedAudioInput, 0, 10407, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10408] [[AccServer] Disconnect BT with Empty Profile] +// +const TTFAccessoryTestCaseStateControl KTFBTEmptyProfileDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetEmptyPR, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10408, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10409] [[AccServer] Connect BT with Nokia Spesific Device Id] +// +const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10409, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10409, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBAudioSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, ETrue, KSBBluetoothSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapabilityGroup, 0, 0, EFalse, KSBVideoSubblock, 0, 10401, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id] +// +const TTFAccessoryTestCaseStateControl KTFBTNokiaSpesificDeviceIdDisconnectStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetNokiaSPId, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10410, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +//*************************************************************************************** + +// +// [M10411] [[AccServer] BT Connect, No Response From BT ASY ] +// +const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10411, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10411, ETFAsyNone, ReqConnectBtAccessory, KErrTimedOut, 0}, + }; + +// +// [M10412] [[AccServer] BT Disconnect, No Response From BT ASY ] +// +const TTFAccessoryTestCaseStateControl KTFBTNoResponseFromBtAsyDisconnectStates[]= + { + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrNoResponse, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10412, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +//*************************************************************************************** + +// +// [M10413] [[AccServer] BT Connect, Response with Error Code] +// +const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10413, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10413, ETFAsyNone, ReqConnectBtAccessory, KErrGeneral, 2000000}, + }; + +// +// [M10414] [[AccServer] BT Disconnect, Response with Error Code] +// +const TTFAccessoryTestCaseStateControl KTFBTAsyResponseWithErrorCodeDisconnectStates[]= + { + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrErrCode, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqDisconnectBtAccessory, KErrArgument, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10414, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10415] [[AccServer] BT Connect, All Service UUIDs] +// +const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10415, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, ETrue, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, 0x3, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntValue, 0, KAccSetVolumeLevelAVRCP, 0, KAccSetVolumeLevel, 0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryIntGetValue, 0, 0, 0x7, KAccSetVolumeLevel ,0, 10415, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10416] [[AccServer] BT Disconnect, All Services UUIDs] +// +const TTFAccessoryTestCaseStateControl KTFBTAllServiceUUIDsDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAllBitsOn, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10416, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10417] [[AccServer] BT Connect, BT with AVRCP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTAVRCPConnectStates[6]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10417, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10417, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + }; + +// +// [M10418] [[AccServer] BT Disconnect, BT with AVRCP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTAVRCPDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetAVRCP, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10418, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10419] [[AccServer] BT Connect, BT with A2DP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTA2DPConnectStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10419, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFCheckCapability, 0, 0, ETrue, KAccNoDRMOutput, 0, 10419, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10420] [[AccServer] BT Disconnect, BT with A2DP profile] +// +const TTFAccessoryTestCaseStateControl KTFBTA2DPDisconnectStates[6]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadseA2DP, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10420, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyBooleanStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 0, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 0, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccAcousticEchoControl, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyBool, 0, KBTAddrHeadsetHFP, 0, KAccNoiseReduction, 1, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccAcousticEchoControl, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBoolGetValue, 0, 1, 0, KAccNoiseReduction, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10421, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer] +// +const TTFAccessoryTestCaseStateControl KTFBTFailedAudiotransferFromBT[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10422, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10422, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ // Change order because audio is changing audio routing status! + { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#else + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10402, ETFAsyNone, ReqDisconnectBtAccessory, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10422, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10422, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10423] [[AccServer] BT Accessory Value Changed Notify (TInt/KAccAudioLatency)] +// +const TTFAccessoryTestCaseStateControl KTFBTAccessoryValueChangedNotifyIntStates[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 0, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 70000, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 70000, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFBTAccessoryValueChangedNotifyInt, 0, KBTAddrHeadsetHFP, 0, KAccAudioLatency, 1, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryIntGetValue, 0, 0, 1, KAccAudioLatency, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHFP, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10423, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +/***************************** *********************************/ +/***************************** Bt and Audio Control Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10501] [[AccServer] BT And Audio Link Open] +// +const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkOpenStates[17]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10501, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10501, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, + }; + +// +// [M10502] [[AccServer] BT And Audio Link Close] +// +const TTFAccessoryTestCaseStateControl KTFBtAndAudioLinkCloseStates[17]= + { + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10502, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory] +// +const TTFAccessoryTestCaseStateControl KTFBtAudioTransferFromBTtoPhoneStates[26]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, +// { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq,0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, +// { ETFCancelNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +// { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkClosedNo, ReqAccRequestNone, KErrNone, 2000000}, + //This is made form asy + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + //Just in case + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFBTALinkOpenedNo, ReqAccRequestNone, KErrNone, 2000000}, + //This is made form asy + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryAudioLinkOpened, KErrNone, 2000000}, + //Just in case end + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10503, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10504] [[AccServer] AudioLink Open and Close cancels] +// +const TTFAccessoryTestCaseStateControl KTFBtAudioLinkCancels[]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + //********************************************* + // Open/CancalOpen/Close/CancelClose + //********************************************* + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkOpened, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryAudioLinkClosed, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, +/*CancalOpen*/ { ETFCancelAccessoryAudioLinkOpen, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, +/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, +/*CancelClose*/ { ETFCancelAccessoryAudioLinkClose, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, KErrGeneral,0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrCancel, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrCancel, 2000000}, + //********************************************* + // Open/Close + //********************************************* + { ETFAccessoryNotifyBluetoothAudioLinkOpenReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyBluetoothAudioLinkCloseReq, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +/*Open*/ { ETFAccessoryAudioLinkOpen, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkOpenReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkOpenResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkOpen, KErrNone, 2000000}, +/*Close*/ { ETFAccessoryAccessoryAudioLinkClose, 0, 0, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccStereoAudio, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyBluetoothAudioLinkCloseReq, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkClosedNotify, 0, KBTAddrHeadsetHSPAndHFP, 0, EAccStereoAudio, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, KTFDontDeleteObserver, 0, 0, 0, 10504, ETFAsyNone, ReqNotifyAccessoryAudioLinkClosed, KErrNone, 2000000}, + { ETFAccessoryBluetoothAudioLinkCloseResp, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccessoryAudioLinkClose, KErrNone, 2000000}, + // + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10504, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** Accessory Modes Tests *********************************/ +/***************************** *********************************/ + + +// +// [M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable] +// +const TTFAccessoryTestCaseStateControl KTFHandPortableAccessoryModeStates[7]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10601, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10601, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10601, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset] +// +const TTFAccessoryTestCaseStateControl KTFWiredHeadsetAccessoryModeStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10602, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 1000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, EFalse, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, +#ifdef __WINS__ // Just ignore because audio policy is set the routing status! + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10602, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryAccessoryModeSync, 0, EAccModeWiredHeadset, ETrue, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, +#endif + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10602, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAudioRoutingStatusNotify, 0, EFalse, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10602, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset] +// +const TTFAccessoryTestCaseStateControl KTFWirelessHeadesetAccessoryModeStates[9]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10603, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10603, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +// [M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit] +// +const TTFAccessoryTestCaseStateControl KTFWiredCarkitAccessoryModeStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10604, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x020104, 0, 0, 0, 10604, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 3, 0, 0, 0, 10604, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10604, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10604, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit] +// +const TTFAccessoryTestCaseStateControl KTFWirelessCarKitAccessoryModeStatus[9]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 4, 0, 0, 0, 10605, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrCarkit, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10605, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000} + }; + +// +// [M10606] [[AccServer] Notify Accessory Mode Changed to Text Device] +// +const TTFAccessoryTestCaseStateControl KTFTextDeviceAccessoryModeStatus[11]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10606, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10606, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be TTY + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10606, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set TTY On! + { ETFClearStack, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10606, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + + + +// +// [M10607] [[AccServer] Notify Accessory Mode Changed to Loopset] +// +const TTFAccessoryTestCaseStateControl KTFLoopsetAccessoryModeStates[11]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10607, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10607, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, // Mode should be Loopset + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10607, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFSetHWDeviceSettings, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, // Set Loopset On! + { ETFClearStack, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10607, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand] +// +const TTFAccessoryTestCaseStateControl KTFMusicStandAccessoryModeStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10608, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged,0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10608, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10608, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10608, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10608, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10609] [[AccServer] Sync Get Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFSyncGetAccessoryModeStates[5]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10609, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryAccessoryModeSync, 0, 1, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10609, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10609, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + +// +// [M10610] [[AccServer] ASync Get Accessory Mode] +// +const TTFAccessoryTestCaseStateControl KTFASyncGetAccessoryModeStates[7]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10610, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryAccessoryModeASync, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10610, ETFAsyNone, ReqGetAccessoryMode, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10610, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10610, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + }; + + +/***************************** *********************************/ +/***************************** Special cases *********************************/ +/***************************** *********************************/ + +// +// [M10701] [[AccServer] MD-1 Power Supply On After Connection] ////KAccExtPowerSupply connect(off)->on->disconnect +// +const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnAfterConnectionState[15]= + { + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10701, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10701, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10701, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10701, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10701, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10702] [[AccServer] MD-1 Power Supply On/Off] //KAccExtPowerSupply connect(on)->off->on->disconnect +// +const TTFAccessoryTestCaseStateControl KTFMD1PowerSupplyOnOffState[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x020202, 0, 0, 0, 10702, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //->Power Supply Off + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False +#else + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //->Power Supply On + { ETFNotifyBoolAccessoryValueChanged, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False +#else + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, //False + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 1, 0, KAccExtPowerSupply, 0, 10702, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 7, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //Disconnect + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10702, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10702, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// KAccAudioOutConnector is "On" in connection state and "Off" in disconnection state. +// +// [M10703] [[AccServer] HS-20 Audio Out Connector On/Off] //KAccAudioOutConnector +// +const TTFAccessoryTestCaseStateControl KTFHS20AudioOutConnectorOnOffState[23]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioOutConnector, 0, 10703, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 10703, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFNotifyBoolAccessoryValueChanged, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#ifdef __WINS__ + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, +#else + { ETFAccessoryPublishAndSubscribe, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyBoolNotify, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, +#endif + { ETFFindAndCheckRequest, 0, 0, 0, KAccAudioOutConnector, 0, 10703, ETFAsyNone, ReqNotifyBooleanAccessoryValueChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10703, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10703, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10704] [[AccServer] Connect Unsupported Accessory] +// +const TTFAccessoryTestCaseStateControl KTFUnsupportedWiredAccessoryStates[4]= + { + { ETFAccessoryControl_Open, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0,0x000000, 0, 0, 0, 10704, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0,0, 0, 0, 0, 10704, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0,0, 0, 0, 0, 10704, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +// +// [M10705] [[AccServer] Transaction matching for ASY command] +// +const TTFAccessoryTestCaseStateControl KTFTransactionMatchStates[]= + { + { ETFAccessoryPublishAndSubscribe, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsySetCapability, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010201, 0, 0, 0, 10705, ETFAsyConn, ReqAccRequestNone, KErrNone, 3000000}, + { ETFSetBoolValue, 0, 1, 0, KAccAudioInConnector, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, //Boolean + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10705, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10705, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M10706] [[AccServer] Fast Mode Notification Change] +// +// NotifyAccessoryModeChanged() is not reordered fast enough +// (e.g. due to different process sceduling by kernel) +// +const TTFAccessoryTestCaseStateControl KTFFastModeNotificationChange[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10706, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + //Ordering NotifyAccessoryModeChanged() after calling AudioRoutingStatusNotify() fakes the use-case under test + { ETFAudioRoutingStatusNotify, 0, ETrue, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, EAccModeWiredHeadset, 0, 0, 0, 10706, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10706, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10706, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10707] [[AccServer] Not supported note] +// +const TTFAccessoryTestCaseStateControl KTFNotSupportedNote[]= + { + { ETFNotSupportedNote, 0, 0, 0, 0, 0, 10707, ETFAsyNone, ReqAccRequestNone, KErrNone, 20000000}, + }; + + + + +/***************************** *********************************/ +/***************************** Accessory Settings *********************************/ +/***************************** *********************************/ + + +// +// [M10801] [[AccServer] Set Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeStates[3]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset,1, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10802] [[AccServer] Get Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFGetLoopsetModeStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10801, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10802, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10803] [[AccServer] Set And Get Loopset Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetModeStates[6]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 2, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10803, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10804] [[AccServer] Set TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeStates[3]= + { + { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0,KASTTY, 1, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10804, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10805] [[AccServer] Get TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFGetTTYModeStates[3]= + { + { ETFAccessorySettings_Open, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHWDeviceSettings, 0,1, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0,0, 0, 0, 0, 10805, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10806] [[AccServer] Set And Get TTY Mode] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetTTYModeStates[6]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 1, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetHWDeviceSettings, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10806, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10807] [[AccServer] Set Loopset Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeAfterConnectionStates[17]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10807, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 1, KASLoopset, 1, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10807, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10807, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10808] [[AccServer] Set TTY Mode After Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeAfterConnectionStates[17]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10808, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 1, KASTTY, 1, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10808, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10808, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10809] [[AccServer] Set Loopset Mode Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetLoopsetModeBeforeConnectionStates[15]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 1, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10809, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 6, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10809, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASLoopset, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10809, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10810] [[AccServer] Set TTY Mode Before Connection] +// +const TTFAccessoryTestCaseStateControl KTFSetTTYModeBeforeConnectionStates[15]= + { + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASTTY, 1, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 2, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010001, 0, 0, 0, 10810, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 5, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10810, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASTTY, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10810, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10811] [[AccServer] Get Supported HW Devices] +// +const TTFAccessoryTestCaseStateControl KTFGetSupportedHWDevicesStates[3]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetSupportedHWDeviceSettings, 0, KASTTY, KASLoopset, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10811, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10812] [[AccServer] Accessory Mode Settings (TInt)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTIntStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 1, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredHeadset, KAccServerWiredHSLights, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10812, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10813] [[AccServer] Accessory Mode Settings (TBool)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTBoolStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 1, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetBoolAccessoryModeSetting, 0, EAccModeWiredHeadset, 11, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10813, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M10814] [[AccServer] Accessory Mode Settings (TDes)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsTDesStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetDesAccessoryModeSetting, 0, EAccModeWiredHeadset, 12, 123456789, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10814, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +#ifdef __WINS__ +// +// [M10815] [[AccServer] Accessory Mode Settings (Array)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsArrayStates[4]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetSeveralAccessoryModeSetting, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10815, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; +#endif + +// +// [M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 1, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessHeadset, KAccServerWirelessHSLights, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10816, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWiredCarkitAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 1, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10817, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 1, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWirelessCarKit, KAccServerWirelessCarKitLights, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10818, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetTextDeviceAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 1, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeTextDevice, KAccServerTextDeviceLights, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10819, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetLoopsetAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 1, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeLoopset, KAccServerLoopsetLights, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10820, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting ] +// +const TTFAccessoryTestCaseStateControl KTFSetAndGetMusicStandAccessoryModeSettingsStates[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 1, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeMusicStand, KAccServerMusicStandLights, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10821, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)] +// +const TTFAccessoryTestCaseStateControl KTFAccessoryModeSettingsGsSettingsState[5]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFGetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsOn, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFSetIntAccessoryModeSetting, 0, EAccModeWiredCarKit, KAccServerWiredCarKitLights, 0, EAccLightsAutomatic, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 10822, ETFAsyNone, ReqAccRequestNone, KErrNone, 200000}, + }; + +/***************************** *********************************/ +/***************************** Multible Connections *********************************/ +/***************************** *********************************/ + +// +// [M10901] [[AccServer] Connect Wired And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFConnectWiredAndBTArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0x010103, 0, 0, 0, 10901, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10901, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10901, ETFAsyNone, ReqConnectBtAccessory, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10901, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, +}; + +// +// [M10902] [[AccServer] Disconnect Wired And Wireleass] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectWiredAndBTArrayStates[]= +{ + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10902, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 3000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10902, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} +}; + +// +// [M10903] [[AccServer] Connect Wireless And Wired] +// +const TTFAccessoryTestCaseStateControl KTFConnectBTAndWiredArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 1, 0x010103, 0, 0, 0, 10903, ETFAsyConn, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 1, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10903, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + }; + +// +// [M10904] [[AccServer] Disconnect Wireless And Wired] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndWiredArrayStates[]= +{ + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 1, 0, 0, 0, 0, 10904, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10904, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} +}; + + +// +// [M10905] [[AccServer] Connect Wireless And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFConnectBTAndBTArrayStates[]= + { + { ETFAccessoryMode_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryConnection_Open, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 2, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyNewAccessoryConnected, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10905, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 4000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10905, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + }; + +// +// [M10906] [[AccServer] Disconnect Wireless And Wireless] +// +const TTFAccessoryTestCaseStateControl KTFDisconnectBTAndBTArrayStates[]= + { + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryModeChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryNotifyAccessoryConnectionStatusChanged, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 1, KBTAddrHeadsetHFP, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 1, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryModeChanged, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqNotifyAccessoryConnectionStatusChanged, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryMode_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtControl_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryConnection_Close, 0, 0, 0, 0, 0, 10906, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000} + }; + +/***************************** *********************************/ +/***************************** Selection Dialog *********************************/ +/***************************** *********************************/ + +// +// [11001] [[AccServer] Selection dialog test +// +const TTFAccessoryTestCaseStateControl KTFTestSelectionDialog[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [11002] [[AccServer] Selection dialog test +// +const TTFAccessoryTestCaseStateControl KTFTestSelectionDialogOpenCancel[]= + { + { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + // { ETFSelectionDialogText, 0, 0, 0, 0, 0, 11001, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSelectionDialogCancel, 0, 0, 0, 0, 0, 11002, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; + +// +// [M11003] [[AccServer] Connect open cable, user select tv-out]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectTVOUT[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11003, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 20000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqNotifyNewAccessoryConnected,KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11003, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11003, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11004] [[AccServer] Connect open cable, ASY selects tv-out] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableAsySelectTVOUT[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11004, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11004, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11004, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11005, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11005, ETFAsyDisc, ReqAccRequestNone, KErrNone, 3000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11005, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11006] [[AccServer] Connect open cable, open selection dialog, disconnect] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableOpenSelectionDialogDisconnect[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11006, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11006, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11006, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11007] [[AccServer] Connect open cable, connect headset, user select headset] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset[]= + { + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11007, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 5000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyUpdateHeadset, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11007, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11007, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [11008] [[AccServer] Connect ECI accessory] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectECIAccessory[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11008, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + //Check ECI capability + { ETFAccessoryDes8GetValue, 0, KAccECIAudioBlock, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11008, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11008, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11009] [[AccServer] Connect headset, default accessory headset, default is selected] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCableDefaultSelection[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11009, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11010] [[AccServer] Connect Headset]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectHeadset[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadset, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySettings_Open, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFSetHWDeviceSettings, 0, KASHeadset, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11010, ETFAsyConnectHeadset, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11010, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHWDeviceSettings, 0, KASNoDevice, 1, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 100000}, + { ETFAccessorySettings_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11010, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11011] [[AccServer] Connect Headphones]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectHeadphones[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11011, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11011, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11011, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11012] [[AccServer] Connect Open Cable]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectOpenCable[]= + { + { ETFAccessorySet_PubSub, 0, KASHeadphones, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11012, ETFAsyConnOpenCable, ReqAccRequestNone, KErrNone, 10000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11012, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11012, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11013] [[AccServer] Connect TV Out]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectTVOUT[]= + { + { ETFAccessorySet_PubSub, 0, KASTVOut, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 2, 11013, ETFAsyUpdateTVOut, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11013, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11013, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11014 [[AccServer] Disconnect wired accessory]] +// +const TTFAccessoryTestCaseStateControl KTFTestDisconnectWired[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11014, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11014, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11015] [[AccServer] Connect Headphones, no selection, disconnect accessory]] +// +const TTFAccessoryTestCaseStateControl KTFTestConnectAndDisconnectHeadphones[]= + { + { ETFAccessorySet_PubSub, 0, KASNoDevice, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 11015, ETFAsyConnectOpenCable3Poles, ReqAccRequestNone, KErrNone, 5000000}, + { ETFDisconnectWiredAccessory, 0, 0, 1, 0, 0, 11009, ETFAsyDisc, ReqAccRequestNone, KErrNone, 1000000}, + { ETFAccessoryAudioControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11015, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M10611 [[AccServer] KTFCheckConnectedAccessory]] +// +const TTFAccessoryTestCaseStateControl KTFCheckConnectedAccessory[]= + { + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 1, 0, 0, 10611, ETFAsyConnectECIAccessory, ReqAccRequestNone, KErrNone, 5000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckConnectedAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 10611, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 10611, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +/***************************** *********************************/ +/***************************** Policy Tests *********************************/ +/***************************** *********************************/ + +// +// [11101] [[AccPolicy] ValueRecord test +// + +const TTFAccessoryTestCaseStateControl KTFTestValueRecord[]= + { + { ETFValueRecordTests, 0, 0, 0, 0, 0, 11101, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11103] [[AccPolicy] Object Base Serialization test +// +const TTFAccessoryTestCaseStateControl KTFTestObjectBaseSerialization[]= + { + { ETFObjectBaseSerializationTests, 0, 0, 0, 0, 0, 11103, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/***************************** *********************************/ +/***************************** New tests to *********************************/ +/***************************** increase code *********************************/ +/***************************** coverage *********************************/ +/***************************** *********************************/ + +// +// [11101] [[AccServer] Cancel connects +// + +// +// [M11102] [[AccServer] Cancel connect Accessory] +// +/*const TTFAccessoryTestCaseStateControl KTFWiredHeadsetConnectCancelStates[7]= + { + { ETFAccessoryBtControl_Open, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryBtCancelConnectAccessory, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtConnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtCancelDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessoryBtDisconnectAccessory, 0, KBTAddrHeadsetHSPAndHFP, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + }; +*/ + +// +// [M11102] [[AccServer] Cancel connect Accessory] +// +const TTFAccessoryTestCaseStateControl KTFCallTClassMethods[1]= + { + { ETFCallTClassMethods, 0, 0, 0, 0, 0, 11102, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +/************************ ****************************/ +/************************ CAccPolObjectBase related testcases (USB) ****************************/ +/************************ ****************************/ + +// +// [M11201] AccServer [ Connect USB headset ] +// +const TTFAccessoryTestCaseStateControl KTFConnectUSBheadsetStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11202] AccServer [ Get and Set USB headset audio streams format parameter] +// +const TTFAccessoryTestCaseStateControl KTFGetSetUSBheadsetValue[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_ObjectPubSub, 0, EAccPolAudioInputStreamObject, 2, EAccPolAudioOutputStreamObject, 2, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetStreamObjects, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11202, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11203] [[AccServer] Get USB audio units (Audio Topology) ] +// +const TTFAccessoryTestCaseStateControl KTFUSBheadsetAudioControls[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11202, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11202, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11203, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11203, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11204] [[AccServer] Set/Get volume control] +// +const TTFAccessoryTestCaseStateControl KTFSetGetUSBvolumeControl[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11204, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetVolumeControlObjects, 0, 10, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 20, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 30, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 40, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 50, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetVolumeControlObjects, 0, 60, 0x8000, KAccAudioControl, 0x7FFF, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetVolumeControlObjects, 0, 0, 0, KAccAudioControl, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11204, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11204, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11205] [[AccServer] Set/Get mute control] +// +const TTFAccessoryTestCaseStateControl KTFSetGetUSBmuteControl[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11205, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetTopologyObjects, 0, 0, 0, KAccAudioUnits, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryObjectParseTopology, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 1, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessorySetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryGetMuteControlObjects, 0, 0, 0, KAccAudioControl, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11205, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11205, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + + +// +// [M11206] AccServer [ Connect USB 2 headset / Policy test ] +// +const TTFAccessoryTestCaseStateControl KTFConnectUSB2headsetStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11201, ETFAsyConnUSB2, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccAudioStreamsFormat, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryGetStreamObjectsFromPolicy, 0, 0, 0, KAccAudioStreamsFormat, 0, 11202, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11201, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11201, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + +// +// [M11207] AccServer [ Cancel accessory object value changed notification request ] +// +const TTFAccessoryTestCaseStateControl KTFCancelNotifyAccessoryValueChangedObjectStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11207, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11207, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11207, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + +// +// [M11208] AccServer [ Accessory object value changed notification request ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11208, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11208, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11208, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11208, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11208, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +// +// [M11209] AccServer [ Accessory object value changed notification request and cancel ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyAccessoryValueChangedObjectAndCancelStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Open, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0x010602, 0, 0, 0, 11209, ETFAsyConnUSB, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFAccessorySet_TopologyObjectsPubSub, 0, 0, ETrue, KAccAudioUnits, 0, 11209, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFCancelNotifyAccessoryValueChanged, 0, 0, 0, KAccAudioUnits, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11209, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFClearStack, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryControl_Close, 0, 0, 0, 0, 0, 11209, ETFAsyNone, ReqAccRequestNone, KErrNone, 0} + }; + + +/************************ ****************************/ +/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ +/************************ ****************************/ + +// +// [M11301] AccServer [ Connect HDMI device ] +// +const TTFAccessoryTestCaseStateControl KTFConnectHDMIDeviceStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoOut, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoFormat, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckCapability, 0, 0, ETrue, KAccVideoHdcpSupport, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11301, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11301, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11302] AccServer [ Get HDMI device attributes ] +// +const TTFAccessoryTestCaseStateControl KTFGetHDMIDeviceAttributesStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFSetHdmiObject_PubSub, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHdmiObject, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11302, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11302, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11303] AccServer [ Notify HDMI device attributes changed ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyHDMIDeviceAttributesChangedStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoHdmiAttributes, 0, 11303, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoHdmiAttributes, 0, 11303, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11303, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11303, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11304] AccServer [ Get HDMI video format ] +// +const TTFAccessoryTestCaseStateControl KTFGetHDMIVideoFormatStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFSetHdmiObject_PubSub, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFGetHdmiObject, 0, 0, 0, KAccVideoFormat, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11304, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11304, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11305] AccServer [ Notify HDMI video format changed ] +// +const TTFAccessoryTestCaseStateControl KTFNotifyHDMIVideoFormatChangedStates[]= + { + { ETFAccessorySingleConnection_Open, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFAccessoryNotifyNewAccessoryConnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 1000000}, + { ETFConnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyConnHDMI, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyNewAccessoryConnected, KErrNone, 0}, + { ETFNotifyObjectAccessoryValueChanged, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFSetHdmiObject_PubSub, 0, 0, ETrue, KAccVideoFormat, 0, 11305, ETFAsyObjectNotify, ReqAccRequestNone, KErrNone, 0}, + { ETFFindAndCheckObjectRequest, 0, 0, 0, KAccVideoFormat, 0, 11305, ETFAsyNone, ReqNotifyObjectAccessoryValueChanged, KErrNone, 0}, + { ETFAccessoryNotifyAccessoryDisconnected, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 2000000}, + { ETFDisconnectWiredAccessory, 0, 0, 0, 0, 0, 11305, ETFAsyDisc, ReqAccRequestNone, KErrNone, 2000000}, + { ETFFindAndCheckRequest, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqNotifyAccessoryDisconnected, KErrNone, 0}, + { ETFAccessorySingleConnection_Close, 0, 0, 0, 0, 0, 11305, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +// +// [M11306] AccServer [ Test HDMI objects ] +// +const TTFAccessoryTestCaseStateControl KTCheckHdmiObjectsStates[]= + { + { ETFCheckHdmiObject, 0, EAccPolHdmiObjectCon, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiSinkObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiAudioFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiLatencyObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiSpeakerAllocationObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + { ETFCheckHdmiObject, 0, EAccPolHdmiVideoFormatObject, 0, 0, 0, 11306, ETFAsyNone, ReqAccRequestNone, KErrNone, 0}, + }; + + +/***************************** *********************************/ +/***************************** End Tests *********************************/ +/***************************** *********************************/ + + +CTFAccessoryTestControlPlugin::CTFAccessoryTestControlPlugin( TAny* aInitParams ) +: iInitParams( ( CTFStubModuleInterface::TInterfaceInitParams* ) aInitParams ) + { + } + +// Two-phased constructor. +CTFAccessoryTestControlPlugin* CTFAccessoryTestControlPlugin::NewL( TAny* aInitParams ) + { + return new ( ELeave ) CTFAccessoryTestControlPlugin( aInitParams ); + } + +// Destructor. +CTFAccessoryTestControlPlugin::~CTFAccessoryTestControlPlugin() + { + iInitParams = NULL; + } + +CTFStub* CTFAccessoryTestControlPlugin::GetStubL( void ) + { + + return new ( ELeave ) CTFAccessoryTestControl(); + } + +void CTFAccessoryTestControlPlugin::BuildTestSuiteL( CTFATestSuite* aRootSuite ) + { + // Memory checks are disabled since Accessory Server runs in separate thread and heap. + aRootSuite->Environment().SetTestCaseFlags( ETFMayLeakMemory | ETFMayLeakRequests | ETFMayLeakHandles ); + + TF_START_TEST_DECLARATION_L( aRootSuite ); + // Use case test cases + TF_ADD_TEST_SUITE_L( _L( "Module Tests" ) ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Session Tests" ), AccessorySessionsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wired Accessory Module Tests" ), WiredAccessoryModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Wireless Accessory Module Tests" ), WirelessAccessoryModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Bt And Audio Link Module Tests" ), BtAndAudioLinkModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Mode Module Tests" ), AccessoryModeModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Special Module Tests" ), SpecialModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Accessory Settings Tests" ), AccessorySettingsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Multible Connections" ), MultibleConnectionsModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Signature Connection Tests" ), SignatureModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "Policy Tests" ), PolicyModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "USB Object Tests" ), UsbObjectModuleTestSuiteL ); + TF_ADD_TEST_SUITE_FUNCTION_L( _L( "HDMI Object Tests" ), HdmiObjectModuleTestSuiteL ); + TF_END_TEST_SUITE(); + TF_END_TEST_DECLARATION(); + } + +MTFStubTestCase* CTFAccessoryTestControlPlugin::GetStubTestCaseL( TInt aTestCaseId ) + { + TF_START_STUB_TEST_CASES( aTestCaseId ); + +/***************************** Open And Close Services *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10101, KTFAccessoryConnectionOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10102, KTFAccessorySingleConnectionOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10103, KTFAccessoryControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10104, KTFAccessorySettingOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10105, KTFAccessoryModeOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10106, KTFAccessoryAudioControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10107, KTFAccessoryBTControlOpenCloseStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10108, KTFAccessoryAsyncsCalledTwice ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10109, KTFCancelValueChanged ); + +/***************************** Wired Accessory Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10201, KTFWiredHeadsetConnectStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10202, KTFWiredHeadsetDisconnectStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10203, KTFNotifyNewAccessoryConnectionState ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10204, KTFNotifyAccessoryDisconnectedStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10205, KTFNotifyAccessoryConnectionStatusChangeConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10206, KTFNotifyAccessoryConnectionStatusChangeDisconnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10207, KTFSyncGetAccessoryConnectionStatusStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10208, KTFRequestGetAccessoryConnectionStatusBeforeConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10209, KTFRequestGetAccessoryConnectionStatusAfterConnectionStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10210, KTFNotifyAccessoryValueChangedIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10211, KTFNotifyAccessoryValueChangedBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10212, KTFAccessoryValueChangedNotifyIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10213, KTFAccessoryValueChangedNotifyBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10214, KTFSetValueIntegerStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10215, KTFSetValueBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10216, KTFGetTIntStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10217, KTFGetTBoolStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10218, KTFGetTDes8States ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10219, KTFConnDisConnCarkit ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10221, KTFConnErrorFromASY ) ; + +/***************************** Wireless Accessory Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10401, KTFBTHeadsetAndHandsfreeProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10402, KTFBTHeadsetAndHandsfreeProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10403, KTFBTHeadsetProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10404, KTFBTHeadsetProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10405, KTFBTHandsfreeProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10406, KTFBTHandsfreeProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10407, KTFBTEmptyProfileConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10408, KTFBTEmptyProfileDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10409, KTFBTNokiaSpesificDeviceIdConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10410, KTFBTNokiaSpesificDeviceIdDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10411, KTFBTNoResponseFromBtAsyConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10412, KTFBTNoResponseFromBtAsyDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10413, KTFBTAsyResponseWithErrorCodeConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10414, KTFBTAsyResponseWithErrorCodeDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10415, KTFBTAllServiceUUIDsConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10416, KTFBTAllServiceUUIDsDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10417, KTFBTAVRCPConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10418, KTFBTAVRCPDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10419, KTFBTA2DPConnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10420, KTFBTA2DPDisconnectStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10421, KTFBTAccessoryValueChangedNotifyBooleanStates ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10422, KTFBTFailedAudiotransferFromBT ) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10423, KTFBTAccessoryValueChangedNotifyIntStates ) ; + +/***************************** BT/Audio Link Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10501, KTFBtAndAudioLinkOpenStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10502, KTFBtAndAudioLinkCloseStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10503, KTFBtAudioTransferFromBTtoPhoneStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10504, KTFBtAudioLinkCancels) ; + +/***************************** Accessory Mode Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10601, KTFHandPortableAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10602, KTFWiredHeadsetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10603, KTFWirelessHeadesetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10604, KTFWiredCarkitAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10605, KTFWirelessCarKitAccessoryModeStatus) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10606, KTFTextDeviceAccessoryModeStatus) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10607, KTFLoopsetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10608, KTFMusicStandAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10609, KTFSyncGetAccessoryModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10610, KTFASyncGetAccessoryModeStates) ; + +/***************************** Special Tests *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10701, KTFMD1PowerSupplyOnAfterConnectionState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10702, KTFMD1PowerSupplyOnOffState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10703, KTFHS20AudioOutConnectorOnOffState) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10704, KTFUnsupportedWiredAccessoryStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10705, KTFTransactionMatchStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10706, KTFFastModeNotificationChange ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10707, KTFNotSupportedNote ); + +/***************************** Accessory Settings *********************************/ + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10801, KTFSetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10802, KTFGetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10803, KTFSetAndGetLoopsetModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10804, KTFSetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10805, KTFGetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10806, KTFSetAndGetTTYModeStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10807, KTFSetLoopsetModeAfterConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10808, KTFSetTTYModeAfterConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10809, KTFSetLoopsetModeBeforeConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10810, KTFSetTTYModeBeforeConnectionStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10811, KTFGetSupportedHWDevicesStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10812, KTFAccessoryModeSettingsTIntStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10813, KTFAccessoryModeSettingsTBoolStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10814, KTFAccessoryModeSettingsTDesStates) ; + +#ifdef __WINS__ + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10815, KTFAccessoryModeSettingsArrayStates) ; +#endif + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10816, KTFSetAndGetWirelessAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10817, KTFSetAndGetWiredCarkitAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10818, KTFSetAndGetWirelessCarkitAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10819, KTFSetAndGetTextDeviceAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10820, KTFSetAndGetLoopsetAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10821, KTFSetAndGetMusicStandAccessoryModeSettingsStates) ; + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10822, KTFAccessoryModeSettingsGsSettingsState ) ; + +/***************************** Multible connections *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10901, KTFConnectWiredAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10902, KTFDisconnectWiredAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10903, KTFConnectBTAndWiredArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10904, KTFDisconnectBTAndWiredArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10905, KTFConnectBTAndBTArrayStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10906, KTFDisconnectBTAndBTArrayStates ); + +/***************************** Signature testcases *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11001, KTFTestSelectionDialog ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11002, KTFTestSelectionDialogOpenCancel ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11003, KTFTestConnectOpenCableUserSelectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11004, KTFTestConnectOpenCableAsySelectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11005, KTFTestConnectOpenCableUserSelectionAsySelectsTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11006, KTFTestConnectOpenCableOpenSelectionDialogDisconnect ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11007, KTFTestConnectOpenCableASYConnectHeadsetUserSelectHeadset ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11008, KTFTestConnectECIAccessory ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11009, KTFTestConnectOpenCableDefaultSelection ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11010, KTFTestConnectHeadset ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11011, KTFTestConnectHeadphones ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11012, KTFTestConnectOpenCable ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11013, KTFTestConnectTVOUT ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11014, KTFTestDisconnectWired ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11015, KTFTestConnectAndDisconnectHeadphones ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 10611, KTFCheckConnectedAccessory ); + +/***************************** Policy testcases *********************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11101, KTFTestValueRecord ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11103, KTFTestObjectBaseSerialization ); + +/************************ CAccPolObjectBase related testcases (USB) ****************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11201, KTFConnectUSBheadsetStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11202, KTFGetSetUSBheadsetValue ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11203, KTFUSBheadsetAudioControls ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11204, KTFSetGetUSBvolumeControl ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11205, KTFSetGetUSBmuteControl ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11206, KTFConnectUSB2headsetStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11207, KTFCancelNotifyAccessoryValueChangedObjectStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11208, KTFNotifyAccessoryValueChangedObjectStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11209, KTFNotifyAccessoryValueChangedObjectAndCancelStates ); + +/************************ CAccPolObjectBase related testcases (HDMI) ****************************/ + + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11301, KTFConnectHDMIDeviceStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11302, KTFGetHDMIDeviceAttributesStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11303, KTFNotifyHDMIDeviceAttributesChangedStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11304, KTFGetHDMIVideoFormatStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11305, KTFNotifyHDMIVideoFormatChangedStates ); + TF_ACCESSORY_SERVER_CONTROL_TEST_CASE_L( 11306, KTCheckHdmiObjectsStates ); + + TF_END_STUB_TEST_CASES(); + } + +static void AccessorySessionsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10101, _L( "[M10101] [[AccServer] Open And Close Accessory Connection]") ); + TF_ADD_TEST_CASE_L( 10102, _L( "[M10102] [[AccServer] Open And Close Accessory Single Connection]" ) ); + TF_ADD_TEST_CASE_L( 10103, _L( "[M10103] [[AccServer] Open And Close Accessory Control]") ); + TF_ADD_TEST_CASE_L( 10104, _L( "[M10104] [[AccServer] Open And Close Accessory Settings]") ); + TF_ADD_TEST_CASE_L( 10105, _L( "[M10105] [[AccServer] Open And Close Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10106, _L( "[M10106] [[AccServer] Open And Close Accessory Audio Control]") ); + TF_ADD_TEST_CASE_L( 10107, _L( "[M10107] [[AccServer] Open And Close Accessory BT Control]") ); + TF_ADD_TEST_CASE_L( 10108, _L( "[M10108] [[AccServer] All Async method called twice]") ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10109, _L( "[M10109] [[AccServer] Cancel NotifyAccessoryValueChanged]") ); +} + +static void WiredAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10201, _L( "[M10201] [[AccServer] Connect Accessory]") ); + TF_ADD_TEST_CASE_L( 10202, _L( "[M10202] [[AccServer] Disconnect Accessory]") ); + TF_ADD_TEST_CASE_L( 10203, _L( "[M10203] [[AccServer] Notify New Accessory Connected]") ); + TF_ADD_TEST_CASE_L( 10204, _L( "[M10204] [[AccServer] Notify New Accessory Disconnected]") ); + TF_ADD_TEST_CASE_L( 10205, _L( "[M10205] [[AccServer] Notify Accessory Connection Status Change (Connection)]") ); + TF_ADD_TEST_CASE_L( 10206, _L( "[M10206] [[AccServer] Notify Accessory Connection Status Change (Disconnection)]") ); + TF_ADD_TEST_CASE_L( 10207, _L( "[M10207] [[AccServer] Sync Get Accessory Connection Status]" ) ); + TF_ADD_TEST_CASE_L( 10208, _L( "[M10208] [[AccServer] Request Get Accessory Connection Status Before Connection]" ) ); + TF_ADD_TEST_CASE_L( 10209, _L( "[M10209] [[AccServer] Request Get Accessory Connection Status After Connection]" ) ); + TF_ADD_TEST_CASE_L( 10210, _L( "[M10210] [[AccServer] Notify Accessory Value Changed (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10211, _L( "[M10211] [[AccServer] Notify Accessory Value Changed (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10212, _L( "[M10212] [[AccServer] Accessory Value Changed Notify (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10213, _L( "[M10213] [[AccServer] Accessory Value Changed Notify (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10214, _L( "[M10214] [[AccServer] Set Value (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10215, _L( "[M10215] [[AccServer] Set Value (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10216, _L( "[M10216] [[AccServer] Get Value (TInt)]" ) ); + TF_ADD_TEST_CASE_L( 10217, _L( "[M10217] [[AccServer] Get Value (TBool)]" ) ); + TF_ADD_TEST_CASE_L( 10218, _L( "[M10218] [[AccServer] Get Value fails (TDes8)]" ) ); + TF_ADD_TEST_CASE_L( 10219, _L( "[M10219] [[AccServer] Connect and Disconnect Carkit (CK-10)]" ) ); + TF_ADD_TEST_CASE_L( 10221, _L( "[M10221] [[AccServer] Connect Accessory, Error response from ASY" ) ); +} + +static void WirelessAccessoryModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10401, _L( "[M10401] [[AccServer] Connect BT with Headset And Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10402, _L( "[M10402] [[AccServer] Disconnect BT with Headset And Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10403, _L( "[M10403] [[AccServer] Connect BT with Headset Profile]")); + TF_ADD_TEST_CASE_L( 10404, _L( "[M10404] [[AccServer] Disconnect BT with Headset Profile]")); + TF_ADD_TEST_CASE_L( 10405, _L( "[M10405] [[AccServer] Connect BT with Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10406, _L( "[M10406] [[AccServer] Disconnect BT with Handsfree Profile]")); + TF_ADD_TEST_CASE_L( 10407, _L( "[M10407] [[AccServer] Connect BT with Empty Profile]")); + TF_ADD_TEST_CASE_L( 10408, _L( "[M10408] [[AccServer] Disconnect BT with Empty Profile]")); + TF_ADD_TEST_CASE_L( 10409, _L( "[M10409] [[AccServer] Connect BT with Nokia Spesific Device Id]")); + TF_ADD_TEST_CASE_L( 10410, _L( "[M10410] [[AccServer] Disconnect BT with Nokia Spesific Device Id]")); + TF_ADD_TEST_CASE_L( 10411, _L( "[M10411] [[AccServer] Connect BT, No Response From BT ASY]")); + TF_ADD_TEST_CASE_L( 10412, _L( "[M10412] [[AccServer] Disconnectect BT, No Response From BT ASY]")); + TF_ADD_TEST_CASE_L( 10413, _L( "[M10413] [[AccServer] Connect BT, Response with Error Code]")); + TF_ADD_TEST_CASE_L( 10414, _L( "[M10414] [[AccServer] Disconnect BT, Response with Error Code]")); + TF_ADD_TEST_CASE_L( 10415, _L( "[M10415] [[AccServer] Connect BT, All Service UUIDs]")); + TF_ADD_TEST_CASE_L( 10416, _L( "[M10416] [[AccServer] Disconnect BT, All Service UUIDs]")); + TF_ADD_TEST_CASE_L( 10417, _L( "[M10417] [[AccServer] BT Connect, BT with AVRCP profile]")); + TF_ADD_TEST_CASE_L( 10418, _L( "[M10418] [[AccServer] BT Disconnect, BT with AVRCP profile]")); + TF_ADD_TEST_CASE_L( 10419, _L( "[M10419] [[AccServer] BT Connect, BT with A2DP profile]")); + TF_ADD_TEST_CASE_L( 10420, _L( "[M10420] [[AccServer] BT Disconnect, BT with A2DP profile]")); + TF_ADD_TEST_CASE_L( 10421, _L( "[M10421] [[AccServer] BT Accessory Value Changed Notify (TBool)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10422, _L( "[M10422] [[AccServer] Audio is routed to wired accessory and BT makes audio transfer]" ) ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10423, _L( "[M10423] [[AccServer] BT Accessory Value Changed Notify (TInt)]" ) ); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void BtAndAudioLinkModuleTestSuiteL(CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10501, _L( "[M10501] [[AccServer] BT And Audio Link Open] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10502, _L( "[M10502] [[AccServer] BT And Audio Link Close]")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10503, _L( "[M10503] [[AccServer] Accessory initiated BT Audio Transfer to Phone from BT Accessory]")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10504, _L( "[M10504] [[AccServer] AudioLink Open and Close cancels]")); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void AccessoryModeModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10601, _L( "[M10601] [[AccServer] Notify Accessory Mode Changed to HandPortable]") ); + TF_ADD_TEST_CASE_L( 10602, _L( "[M10602] [[AccServer] Notify Accessory Mode Changed to Wired Headset]") ); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10603, _L( "[M10603] [[AccServer] Notify Accessory Mode Changed to WirelessHeadset]") ); + TF_ADD_TEST_CASE_L( 10604, _L( "[M10604] [[AccServer] Notify Accessory Mode Changed to Wired CarKit]") ); + TF_ADD_TEST_CASE_L( 10605, _L( "[M10605] [[AccServer] Notify Accessory Mode Changed to Wireless CarKit]") ); + TF_ADD_TEST_CASE_L( 10607, _L( "[M10607] [[AccServer] Notify Accessory Mode Changed to Loopset]") ); + TF_ADD_TEST_CASE_L( 10608, _L( "[M10608] [[AccServer] Notify Accessory Mode Changed to Music Stand]") ); + TF_ADD_TEST_CASE_L( 10609, _L( "[M10609] [[AccServer] Sync Get Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10610, _L( "[M10610] [[AccServer] ASync Get Accessory Mode]") ); + TF_ADD_TEST_CASE_L( 10611, _L( "[M10611] [[AccServer] Check Connected Accessory]]")); +} + +static void SpecialModuleTestSuiteL(CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10701, _L( "[M10701] [[AccServer] MD-1, PowerSupply On After Connection] ")); + TF_ADD_TEST_CASE_L( 10702, _L( "[M10702] [[AccServer] MD-1 Power Supply On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10703, _L( "[M10703] [[AccServer] HS-20 Audio Out Connector On/Off] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10704, _L( "[M10704] [[AccServer] Connect Unsupported Accessory] ")); + TF_ADD_TEST_CASE_L( 10705, _L( "[M10705] [[AccServer] Transaction matching for ASY command] ")); + TF_ADD_TEST_CASE_L( 10706, _L( "[M10706] [[AccServer] Fast Mode Notification Change] ")); + TF_ADD_TEST_CASE_L( 10707, _L( "[M10707] [[AccServer] Not supported note ")); +} + +static void AccessorySettingsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10801, _L( "[M10801] [[AccServer] Set Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10802, _L( "[M10802] [[AccServer] Get Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10803, _L( "[M10803] [[AccServer] Set And Get Loopset Mode] ") ); + TF_ADD_TEST_CASE_L( 10804, _L( "[M10804] [[AccServer] Set TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10805, _L( "[M10805] [[AccServer] Get TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10806, _L( "[M10806] [[AccServer] Set And Get TTY Mode] ") ); + TF_ADD_TEST_CASE_L( 10812, _L( "[M10812] [[AccServer] Accessory Mode Settings (TInt)] ") ); + TF_ADD_TEST_CASE_L( 10813, _L( "[M10813] [[AccServer] Accessory Mode Settings (TBool)] ") ); + TF_ADD_TEST_CASE_L( 10814, _L( "[M10814] [[AccServer] Accessory Mode Settings (TDes)] ") ); +#ifdef __WINS__ + TF_ADD_TEST_CASE_L( 10815, _L( "[M10815] [[AccServer] Accessory Mode Settings (Array)] ") ); +#endif + TF_ADD_TEST_CASE_L( 10816, _L( "[M10816] [[AccServer] Set And Get Wireless Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10817, _L( "[M10817] [[AccServer] Set And Get Wired Carkit Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10818, _L( "[M10818] [[AccServer] Set And Get Wireless Carkit Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10819, _L( "[M10819] [[AccServer] Set And Get Text Device Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10820, _L( "[M10820] [[AccServer] Set And Get Loopset Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10821, _L( "[M10821] [[AccServer] Set And Get Music Stand Accessory Mode Setting]") ); + TF_ADD_TEST_CASE_L( 10822, _L( "[M10822] [[AccServer] Accessory Mode Settings (EAccLightsAutomatic / EAccLightsOn)]") ); +} + +static void MultibleConnectionsModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 10901, _L( "[M10901] [[AccServer] Connect Wired And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10902, _L( "[M10902] [[AccServer] Disconnect Wired And Wireleass] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10903, _L( "[M10903] [[AccServer] Connect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10904, _L( "[M10904] [[AccServer] Disconnect Wireless And Wired] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10905, _L( "[M10905] [[AccServer] Connect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); + TF_ADD_TEST_CASE_L( 10906, _L( "[M10906] [[AccServer] Disconnect Wireless And Wireless] ")); TF_SET_TEST_TIMEOUT( 200 ); +} + +static void SignatureModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11001, _L( "[M11001] [[AccServer] Selection dialog test] ")); + TF_ADD_TEST_CASE_L( 11002, _L( "[M11002] [[AccServer] Selection dialog open/cancel] ")); + TF_ADD_TEST_CASE_L( 11003, _L( "[M11003] [[AccServer] Connect open cable, user select tv-out]")); + TF_ADD_TEST_CASE_L( 11004, _L( "[M11004] [[AccServer] Connect open cable, ASY selects tv-out]")); + TF_ADD_TEST_CASE_L( 11005, _L( "[M11005] [[AccServer] Connect open cable, User selection device, after that ASY selects tv-out]")); + TF_ADD_TEST_CASE_L( 11006, _L( "[M11006] [[AccServer] Connect open cable, open selection dialog, disconnect]")); + TF_ADD_TEST_CASE_L( 11007, _L( "[M11007] [[AccServer] Connect open cable, connect headset, user select headset]")); + TF_ADD_TEST_CASE_L( 11008, _L( "[M11008] [[AccServer] Connect ECI accessory]")); + TF_ADD_TEST_CASE_L( 11009, _L( "[M11009] [[AccServer] Connect open cable, default accessory headset, default is selected]")); + TF_ADD_TEST_CASE_L( 11010, _L( "[M11010] [[AccServer] Connect Headset]]")); + TF_ADD_TEST_CASE_L( 11011, _L( "[M11011] [[AccServer] Connect Headphones]]")); + TF_ADD_TEST_CASE_L( 11012, _L( "[M11012] [[AccServer] Connect Open Cable]]")); + TF_ADD_TEST_CASE_L( 11013, _L( "[M11013] [[AccServer] Connect TV Out]]")); + TF_ADD_TEST_CASE_L( 11014, _L( "[M11014] [[AccServer] Disconnect Wired Accessory]]")); + TF_ADD_TEST_CASE_L( 11015, _L( "[M11015] [[AccServer] Connect and disconnect Headphones]]")); +} + + +static void PolicyModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11101, _L( "[M11101] [[AccPolicy] ValueRecord test] ")); + //TF_ADD_TEST_CASE_L( 11102, _L( "[M11102] [[Code coverage] Cancel connects] ")); + TF_ADD_TEST_CASE_L( 11103, _L( "[M11103] [[AccPolicy] Object Base Serialization test] ")); +} + +static void UsbObjectModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11201, _L( "[M11201] [[AccServer] Connect USB headset] ")); + TF_ADD_TEST_CASE_L( 11202, _L( "[M11202] [[AccServer] Get and Set USB headset audio streams format parameter] ")); + TF_ADD_TEST_CASE_L( 11203, _L( "[M11203] [[AccServer] Get USB audio units (Audio Topology) ] ")); + TF_ADD_TEST_CASE_L( 11204, _L( "[M11204] [[AccServer] Set/Get volume control] ")); + TF_ADD_TEST_CASE_L( 11205, _L( "[M11205] [[AccServer] Set/Get mute control] ")); + TF_ADD_TEST_CASE_L( 11206, _L( "[M11206] [[AccServer] Connect USB 2 headset / Policy test]")); + TF_ADD_TEST_CASE_L( 11207, _L( "[M11207] [[AccServer] Cancel accessory object value changed notify]")); + TF_ADD_TEST_CASE_L( 11208, _L( "[M11208] [[AccServer] Accessory object value changed notify]")); + TF_ADD_TEST_CASE_L( 11209, _L( "[M11209] [[AccServer] Accessory object value changed notify and cancel]")); +} + +static void HdmiObjectModuleTestSuiteL( CTFATestSuite* aSuite ) +{ + TF_INIT_TEST_SUITE_FUNCTION( aSuite ); + + TF_ADD_TEST_CASE_L( 11301, _L( "[M11301] [[AccServer] Connect HDMI device] ")); + TF_ADD_TEST_CASE_L( 11302, _L( "[M11302] [[AccServer] Get HDMI device attributes] ")); + TF_ADD_TEST_CASE_L( 11303, _L( "[M11303] [[AccServer] Notify HDMI device attributes changed] ")); + TF_ADD_TEST_CASE_L( 11304, _L( "[M11304] [[AccServer] Get HDMI video format] ")); + TF_ADD_TEST_CASE_L( 11305, _L( "[M11305] [[AccServer] Notify HDMI video format changed] ")); + TF_ADD_TEST_CASE_L( 11306, _L( "[M11306] [[AccServer] Check HDMI objects] ")); +} + +// End of File + diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlProxy.cpp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlProxy.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfAccessoryTestControlProxy.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,44 +1,44 @@ -/* -* Copyright (c) 2005 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: -* -*/ - - -// INCLUDE FILES -#include -#include -#include "CtfAccessoryTestControlPlugin.h" - -// CONSTANTS -const TImplementationProxy ImplementationTable[] = - { - IMPLEMENTATION_PROXY_ENTRY( 0x10200c70, CTFAccessoryTestControlPlugin::NewL ) - }; - -// ================= OTHER EXPORTED FUNCTIONS ============== - -// --------------------------------------------------------- -// ImplementationGroupProxy -// Returns: TImplementationProxy*: ?description -// --------------------------------------------------------- -// -EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) - { - aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); - - return ImplementationTable; - } - -// End of File +/* +* Copyright (c) 2005 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: +* +*/ + + +// INCLUDE FILES +#include +#include +#include "CtfAccessoryTestControlPlugin.h" + +// CONSTANTS +const TImplementationProxy ImplementationTable[] = + { + IMPLEMENTATION_PROXY_ENTRY( 0x10200c70, CTFAccessoryTestControlPlugin::NewL ) + }; + +// ================= OTHER EXPORTED FUNCTIONS ============== + +// --------------------------------------------------------- +// ImplementationGroupProxy +// Returns: TImplementationProxy*: ?description +// --------------------------------------------------------- +// +EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) + { + aTableCount = sizeof ( ImplementationTable ) / sizeof ( TImplementationProxy ); + + return ImplementationTable; + } + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfTestControlObserver.cpp --- a/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfTestControlObserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/AccessoryTestControl/src/TfTestControlObserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,753 +1,753 @@ -/* - * Copyright (c) 2005 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: - * - */ - -// INCLUDE FILES -#include -#include "siftrace.h" -#include "CtfTestControlObserver.h" -#include - -const TInt CTFTestControlObserver::iOffset = _FOFF(CTFTestControlObserver,iSlink); - -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver* CTFTestControlObserver::NewL() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver* CTFTestControlObserver::NewL( CTFAccessoryTestControl& aTestControl ) - { - CTFTestControlObserver* result = - new ( ELeave ) CTFTestControlObserver( aTestControl ); - result->iObjectValueBuf = HBufC8::NewL( 256 ); - result->iObjectValue.iValue.Set( result->iObjectValueBuf->Des() ); - CleanupStack::PushL( result ); - CleanupStack::Pop(); - return result; - } - -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::CTFTestControlObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver::CTFTestControlObserver( CTFAccessoryTestControl& aTestControl ) : - CActive( CActive::EPriorityHigh ), - iAccessoryTestControl( aTestControl ), - iObjectValue( TPtr8( NULL, 0, 0 ) ) - { - - iRequestCompleted = ReqAccRequestNone; - iCapabilityName = 0; - - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver()" ) ) ); - CActiveScheduler::Add( this ); - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver - return" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::~CTFTestControlObserver() -// ---------------------------------------------------------------------------------- -CTFTestControlObserver::~CTFTestControlObserver() - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - %d" ), iRequestType ) ); - delete iObjectValueBuf; - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - succesful" ) ) ); - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::RunL() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::RunL() - { - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - enter" ) ) ); - - switch( iRequestType ) - { - - case ReqDisconnectBtAccessory: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqDisconnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqConnectBtAccessory: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyNewAccessoryConnected: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyNewAccessoryConnected" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryDisconnected: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryDisconnected" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryConnectionStatusChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryConnectionStatusChanged" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyAccessoryModeChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryModeChanged" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccMode.iAccessoryMode; - } - break; - - case ReqGetAccessoryMode: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryMode" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccMode.iAccessoryMode; - } - break; - - case ReqNotifyAccessoryAudioLinkOpened: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqAccessoryAudioLinkOpen: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyBluetoothAudioLinkOpenReq: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkOpenReq" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqNotifyAccessoryAudioLinkClosed: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryAudioLinkClosed" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryAudioLinkClose: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryAudioLinkClose" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqNotifyBluetoothAudioLinkCloseReq: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkCloseReq" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAudioType; - } - break; - - case ReqNotifyIntegerAccessoryValueChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyIntegerAccessoryValueChanged" ) ) ); - iCapabilityName = 0; - iRequestCompleted = iRequestType; - iValue = iIntegerValue.iValue; - } - break; - - case ReqNotifyBooleanAccessoryValueChanged: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBooleanAccessoryValueChanged" ) ) ); - iCapabilityName = 0; - iRequestCompleted = iRequestType; - iValue = ( TInt )iBooleanValue.iValue; - } - break; - - case ReqNotifyObjectAccessoryValueChanged: - { - iCapabilityName = 0; - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryConnection: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryConnection" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqAccessoryDisconnection: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryDisconnection" ) ) ); - iRequestCompleted = iRequestType; - } - break; - - case ReqGetAccessoryConnectionStatus: - { - COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryConnectionStatus" ) ) ); - iRequestCompleted = iRequestType; - iValue = iAccessoryTestControl.iGenericIdArray.Count(); - } - break; - - default: - TRACE_ASSERT_ALWAYS; - break; - } - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - return" ) ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::RunError() -// ---------------------------------------------------------------------------------- -TInt CTFTestControlObserver::RunError( TInt aError ) - { - return aError; - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DoCancel() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DoCancel() - { - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - enter" ) ) ); - - switch( iRequestType ) - { - - case ReqDisconnectBtAccessory: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelDisconnectAccessory(); - } - } - break; - - case ReqConnectBtAccessory: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelConnectAccessory(); - } - } - break; - - case ReqNotifyNewAccessoryConnected: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); - } - } - break; - - case ReqNotifyAccessoryDisconnected: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); - } - } - break; - - case ReqNotifyAccessoryConnectionStatusChanged: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); - } - } - break; - - case ReqNotifyAccessoryModeChanged: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryMode->CancelNotifyAccessoryModeChanged(); - } - } - break; - - case ReqNotifyAccessoryAudioLinkOpened: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); - } - } - break; - - case ReqAccessoryAudioLinkOpen: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); - } - } - break; - - case ReqNotifyBluetoothAudioLinkOpenReq: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); - } - } - break; - - case ReqNotifyAccessoryAudioLinkClosed: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); - } - } - break; - - case ReqAccessoryAudioLinkClose: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); - } - } - break; - - case ReqNotifyBluetoothAudioLinkCloseReq: - { - if( IsActive() ) - { - iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); - } - } - break; - - case ReqGetAccessoryConnectionStatus: - { - //if(IsActive()) - //{ - //iAccessoryTestControl.iAccessoryConnection.CancelGetAccessoryConnectionStatus(); - // } - } - break; - - default: - TRACE_ASSERT_ALWAYS; - break; - } - - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - Leave" ) ) ); - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyNewAccessoryConnected -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyNewAccessoryConnected( TAccPolGenericID& aGenericId ) - { - - if( !IsActive() ) - { - SetRequestType( ReqNotifyNewAccessoryConnected ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyNewAccessoryConnected( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyNewAccessoryConnected outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryDisconnected -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyAccessoryDisconnected( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryDisconnected ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryDisconnected( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryDisconnected outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryModeChanged -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryModeChanged() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryModeChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryMode->NotifyAccessoryModeChanged( iStatus, - iAccMode ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryModeChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged -// ---------------------------------------------------------------------------------- - -void CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged( TAccPolGenericIDArray& aGenericIdArray ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryConnectionStatusChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryConnection->NotifyAccessoryConnectionStatusChanged( iStatus, - aGenericIdArray ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::AccessoryAudioLinkOpen() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::AccessoryAudioLinkOpen( TAccPolGenericID& aGenericId, - TUint32 aAudioType ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryAudioLinkOpen ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkOpen( iStatus, - aGenericId, - ( TAccAudioType )aAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkOpen outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryAudioLinkOpened -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryAudioLinkOpened( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryAudioLinkOpened ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkOpened( iStatus, - aGenericId, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkOpened outstanding" ) ) ); - } - } -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyAccessoryAudioLinkClosed -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyAccessoryAudioLinkClosed( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyAccessoryAudioLinkClosed ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkClosed( iStatus, - aGenericId, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkClosed outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::AccessoryAudioLinkClose -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::AccessoryAudioLinkClose( TAccPolGenericID& aGenericId, - TUint32 aAudioType ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryAudioLinkClose ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkClose( iStatus, - aGenericId, - ( TAccAudioType )aAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkClose outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyBluetoothAudioLinkOpenReq ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkOpenReq( iStatus, - iBTaddr, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq() - { - if( !IsActive() ) - { - SetRequestType( ReqNotifyBluetoothAudioLinkCloseReq ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkCloseReq( iStatus, - iBTaddr, - iAudioType ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::ConnectBTAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::ConnectBTAccessory( TBTDevAddr& btaddr ) - { - if( !IsActive() ) - { - SetRequestType( ReqConnectBtAccessory ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->ConnectAccessory( iStatus, - btaddr ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectBTAccessory outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DisconnectBTAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DisconnectBTAccessory( TBTDevAddr& btaddr ) - { - if( !IsActive() ) - { - SetRequestType( ReqDisconnectBtAccessory ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryBTControl->DisconnectAccessory( iStatus, - btaddr ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectBTAccessory outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyBooleanAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyBooleanAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyBooleanAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iBooleanValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBooleanAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyIntegerAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyIntegerAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iIntegerValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::NotifyObjectAccessoryValueChanged( TAccPolGenericID& aGenericId, - const TUint32& aName ) - { - if( !IsActive() ) - { - // Cleanup old data - iObjectValue.iValue.Zero(); - - TAccPolNameRecord nameRecord; - iCapabilityName = aName; - nameRecord.SetNameL( aName ); - SetRequestType( ReqNotifyObjectAccessoryValueChanged ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, - aGenericId, - nameRecord, - iObjectValue ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::GetAccessoryConnectionStatus() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::GetAccessoryConnectionStatus( TAccPolGenericIDArray& aGenericIdArray ) - { - if( !IsActive() ) - { - SetRequestType( ReqGetAccessoryConnectionStatus ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryConnection->GetAccessoryConnectionStatus( iStatus, - aGenericIdArray ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryConnectionStatus outstanding" ) ) ); - } - - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::ConnectAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::ConnectAccessory( TAccPolGenericID& aGenericId, - TUint64 aHWDeviceID ) - { - CAccConfigFileParser* accConfigFileParser = CAccConfigFileParser::NewL( _L("Configuration file") ); - - TBuf aHWModelID; - aHWModelID.Num( aHWDeviceID ); - - accConfigFileParser->FindL( aGenericId, aHWDeviceID, aHWModelID ); - - if( !IsActive() ) - { - SetRequestType( ReqAccessoryConnection ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryControl->ConnectAccessory( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectAccessory outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::DisconnectAccessory() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::DisconnectAccessory( TAccPolGenericID& aGenericId ) - { - if( !IsActive() ) - { - SetRequestType( ReqAccessoryDisconnection ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryControl->DisconnectAccessory( iStatus, - aGenericId ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectAccessory outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// CTFTestControlObserver::GetAccessoryMode() -// ---------------------------------------------------------------------------------- -void CTFTestControlObserver::GetAccessoryMode() - { - if( !IsActive() ) - { - SetRequestType( ReqGetAccessoryMode ); - iStatus = KRequestPending; - iAccessoryTestControl.iAccessoryMode->GetAccessoryMode( iStatus, - iAccMode ); - SetActive(); - TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryMode outstanding" ) ) ); - } - } - -// -// ---------------------------------------------------------------------------------- -// -// ---------------------------------------------------------------------------------- -TBool CTFTestControlObserver::FindRequest( TTFRequestType aRequest ) - { - TBool bFound = EFalse; - - if( aRequest == iRequestType ) - { - bFound = ETrue; - } - return bFound; - } - +/* + * Copyright (c) 2005 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: + * + */ + +// INCLUDE FILES +#include +#include "siftrace.h" +#include "CtfTestControlObserver.h" +#include + +const TInt CTFTestControlObserver::iOffset = _FOFF(CTFTestControlObserver,iSlink); + +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver* CTFTestControlObserver::NewL() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver* CTFTestControlObserver::NewL( CTFAccessoryTestControl& aTestControl ) + { + CTFTestControlObserver* result = + new ( ELeave ) CTFTestControlObserver( aTestControl ); + result->iObjectValueBuf = HBufC8::NewL( 256 ); + result->iObjectValue.iValue.Set( result->iObjectValueBuf->Des() ); + CleanupStack::PushL( result ); + CleanupStack::Pop(); + return result; + } + +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::CTFTestControlObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver::CTFTestControlObserver( CTFAccessoryTestControl& aTestControl ) : + CActive( CActive::EPriorityHigh ), + iAccessoryTestControl( aTestControl ), + iObjectValue( TPtr8( NULL, 0, 0 ) ) + { + + iRequestCompleted = ReqAccRequestNone; + iCapabilityName = 0; + + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver()" ) ) ); + CActiveScheduler::Add( this ); + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::CTFTestControlObserver - return" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::~CTFTestControlObserver() +// ---------------------------------------------------------------------------------- +CTFTestControlObserver::~CTFTestControlObserver() + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - %d" ), iRequestType ) ); + delete iObjectValueBuf; + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::~CTFTestControlObserver - succesful" ) ) ); + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::RunL() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::RunL() + { + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - enter" ) ) ); + + switch( iRequestType ) + { + + case ReqDisconnectBtAccessory: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqDisconnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqConnectBtAccessory: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyNewAccessoryConnected: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyNewAccessoryConnected" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryDisconnected: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryDisconnected" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryConnectionStatusChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryConnectionStatusChanged" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyAccessoryModeChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryModeChanged" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccMode.iAccessoryMode; + } + break; + + case ReqGetAccessoryMode: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryMode" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccMode.iAccessoryMode; + } + break; + + case ReqNotifyAccessoryAudioLinkOpened: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqAccessoryAudioLinkOpen: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqConnectBtAccessory" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyBluetoothAudioLinkOpenReq: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkOpenReq" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqNotifyAccessoryAudioLinkClosed: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyAccessoryAudioLinkClosed" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryAudioLinkClose: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryAudioLinkClose" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqNotifyBluetoothAudioLinkCloseReq: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBluetoothAudioLinkCloseReq" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAudioType; + } + break; + + case ReqNotifyIntegerAccessoryValueChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyIntegerAccessoryValueChanged" ) ) ); + iCapabilityName = 0; + iRequestCompleted = iRequestType; + iValue = iIntegerValue.iValue; + } + break; + + case ReqNotifyBooleanAccessoryValueChanged: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqNotifyBooleanAccessoryValueChanged" ) ) ); + iCapabilityName = 0; + iRequestCompleted = iRequestType; + iValue = ( TInt )iBooleanValue.iValue; + } + break; + + case ReqNotifyObjectAccessoryValueChanged: + { + iCapabilityName = 0; + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryConnection: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryConnection" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqAccessoryDisconnection: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqAccessoryDisconnection" ) ) ); + iRequestCompleted = iRequestType; + } + break; + + case ReqGetAccessoryConnectionStatus: + { + COMPONENT_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL() - ReqGetAccessoryConnectionStatus" ) ) ); + iRequestCompleted = iRequestType; + iValue = iAccessoryTestControl.iGenericIdArray.Count(); + } + break; + + default: + TRACE_ASSERT_ALWAYS; + break; + } + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::RunL - return" ) ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::RunError() +// ---------------------------------------------------------------------------------- +TInt CTFTestControlObserver::RunError( TInt aError ) + { + return aError; + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DoCancel() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DoCancel() + { + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - enter" ) ) ); + + switch( iRequestType ) + { + + case ReqDisconnectBtAccessory: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelDisconnectAccessory(); + } + } + break; + + case ReqConnectBtAccessory: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelConnectAccessory(); + } + } + break; + + case ReqNotifyNewAccessoryConnected: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyNewAccessoryConnected(); + } + } + break; + + case ReqNotifyAccessoryDisconnected: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessorySingleConnection->CancelNotifyAccessoryDisconnected(); + } + } + break; + + case ReqNotifyAccessoryConnectionStatusChanged: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryConnection->CancelNotifyAccessoryConnectionStatusChanged(); + } + } + break; + + case ReqNotifyAccessoryModeChanged: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryMode->CancelNotifyAccessoryModeChanged(); + } + } + break; + + case ReqNotifyAccessoryAudioLinkOpened: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkOpened(); + } + } + break; + + case ReqAccessoryAudioLinkOpen: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkOpen(); + } + } + break; + + case ReqNotifyBluetoothAudioLinkOpenReq: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkOpenReq(); + } + } + break; + + case ReqNotifyAccessoryAudioLinkClosed: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelNotifyAccessoryAudioLinkClosed(); + } + } + break; + + case ReqAccessoryAudioLinkClose: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryAudioControl->CancelAccessoryAudioLinkClose(); + } + } + break; + + case ReqNotifyBluetoothAudioLinkCloseReq: + { + if( IsActive() ) + { + iAccessoryTestControl.iAccessoryBTControl->CancelNotifyBluetoothAudioLinkCloseReq(); + } + } + break; + + case ReqGetAccessoryConnectionStatus: + { + //if(IsActive()) + //{ + //iAccessoryTestControl.iAccessoryConnection.CancelGetAccessoryConnectionStatus(); + // } + } + break; + + default: + TRACE_ASSERT_ALWAYS; + break; + } + + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DoCancel - Leave" ) ) ); + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyNewAccessoryConnected +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyNewAccessoryConnected( TAccPolGenericID& aGenericId ) + { + + if( !IsActive() ) + { + SetRequestType( ReqNotifyNewAccessoryConnected ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyNewAccessoryConnected( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyNewAccessoryConnected outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryDisconnected +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyAccessoryDisconnected( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryDisconnected ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryDisconnected( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryDisconnected outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryModeChanged +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryModeChanged() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryModeChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryMode->NotifyAccessoryModeChanged( iStatus, + iAccMode ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryModeChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged +// ---------------------------------------------------------------------------------- + +void CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged( TAccPolGenericIDArray& aGenericIdArray ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryConnectionStatusChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryConnection->NotifyAccessoryConnectionStatusChanged( iStatus, + aGenericIdArray ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryConnectionStatusChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::AccessoryAudioLinkOpen() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::AccessoryAudioLinkOpen( TAccPolGenericID& aGenericId, + TUint32 aAudioType ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryAudioLinkOpen ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkOpen( iStatus, + aGenericId, + ( TAccAudioType )aAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkOpen outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryAudioLinkOpened +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryAudioLinkOpened( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryAudioLinkOpened ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkOpened( iStatus, + aGenericId, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkOpened outstanding" ) ) ); + } + } +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyAccessoryAudioLinkClosed +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyAccessoryAudioLinkClosed( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyAccessoryAudioLinkClosed ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->NotifyAccessoryAudioLinkClosed( iStatus, + aGenericId, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyAccessoryAudioLinkClosed outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::AccessoryAudioLinkClose +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::AccessoryAudioLinkClose( TAccPolGenericID& aGenericId, + TUint32 aAudioType ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryAudioLinkClose ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryAudioControl->AccessoryAudioLinkClose( iStatus, + aGenericId, + ( TAccAudioType )aAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::AccessoryAudioLinkClose outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyBluetoothAudioLinkOpenReq ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkOpenReq( iStatus, + iBTaddr, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkOpenReq outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq() + { + if( !IsActive() ) + { + SetRequestType( ReqNotifyBluetoothAudioLinkCloseReq ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->NotifyBluetoothAudioLinkCloseReq( iStatus, + iBTaddr, + iAudioType ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBluetoothAudioLinkCloseReq outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::ConnectBTAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::ConnectBTAccessory( TBTDevAddr& btaddr ) + { + if( !IsActive() ) + { + SetRequestType( ReqConnectBtAccessory ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->ConnectAccessory( iStatus, + btaddr ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectBTAccessory outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DisconnectBTAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DisconnectBTAccessory( TBTDevAddr& btaddr ) + { + if( !IsActive() ) + { + SetRequestType( ReqDisconnectBtAccessory ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryBTControl->DisconnectAccessory( iStatus, + btaddr ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectBTAccessory outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyBooleanAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyBooleanAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyBooleanAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iBooleanValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyBooleanAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyIntegerAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyIntegerAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iIntegerValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::NotifyIntegerAccessoryValueChanged() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::NotifyObjectAccessoryValueChanged( TAccPolGenericID& aGenericId, + const TUint32& aName ) + { + if( !IsActive() ) + { + // Cleanup old data + iObjectValue.iValue.Zero(); + + TAccPolNameRecord nameRecord; + iCapabilityName = aName; + nameRecord.SetNameL( aName ); + SetRequestType( ReqNotifyObjectAccessoryValueChanged ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessorySingleConnection->NotifyAccessoryValueChanged( iStatus, + aGenericId, + nameRecord, + iObjectValue ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::NotifyIntegerAccessoryValueChanged outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::GetAccessoryConnectionStatus() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::GetAccessoryConnectionStatus( TAccPolGenericIDArray& aGenericIdArray ) + { + if( !IsActive() ) + { + SetRequestType( ReqGetAccessoryConnectionStatus ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryConnection->GetAccessoryConnectionStatus( iStatus, + aGenericIdArray ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryConnectionStatus outstanding" ) ) ); + } + + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::ConnectAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::ConnectAccessory( TAccPolGenericID& aGenericId, + TUint64 aHWDeviceID ) + { + CAccConfigFileParser* accConfigFileParser = CAccConfigFileParser::NewL( _L("Configuration file") ); + + TBuf aHWModelID; + aHWModelID.Num( aHWDeviceID ); + + accConfigFileParser->FindL( aGenericId, aHWDeviceID, aHWModelID ); + + if( !IsActive() ) + { + SetRequestType( ReqAccessoryConnection ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryControl->ConnectAccessory( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::ConnectAccessory outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::DisconnectAccessory() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::DisconnectAccessory( TAccPolGenericID& aGenericId ) + { + if( !IsActive() ) + { + SetRequestType( ReqAccessoryDisconnection ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryControl->DisconnectAccessory( iStatus, + aGenericId ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::DisconnectAccessory outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// CTFTestControlObserver::GetAccessoryMode() +// ---------------------------------------------------------------------------------- +void CTFTestControlObserver::GetAccessoryMode() + { + if( !IsActive() ) + { + SetRequestType( ReqGetAccessoryMode ); + iStatus = KRequestPending; + iAccessoryTestControl.iAccessoryMode->GetAccessoryMode( iStatus, + iAccMode ); + SetActive(); + TEST_CASE_TRACE( ( _L( "ACCESSORYTESTCONTROL - CTFTestControlObserver::GetAccessoryMode outstanding" ) ) ); + } + } + +// +// ---------------------------------------------------------------------------------- +// +// ---------------------------------------------------------------------------------- +TBool CTFTestControlObserver::FindRequest( TTFRequestType aRequest ) + { + TBool bFound = EFalse; + + if( aRequest == iRequestType ) + { + bFound = ETrue; + } + return bFound; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/dsytfstifadapter/conf/accessorytestcontrol.cfg --- a/dosservices/tsrc/dsytesttool/dsytfstifadapter/conf/accessorytestcontrol.cfg Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/dsytfstifadapter/conf/accessorytestcontrol.cfg Thu Jul 01 11:20:10 2010 +0300 @@ -1,10 +1,10 @@ -[Define] -// Add general definitions here -ETrue 1 -EFalse 0 -[Enddefine] - -[StifSettings] -// Add stif settings here -CheckHeapBalance= on -[EndStifSettings] +[Define] +// Add general definitions here +ETrue 1 +EFalse 0 +[Enddefine] + +[StifSettings] +// Add stif settings here +CheckHeapBalance= on +[EndStifSettings] diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/dsytfstifadapter/group/dsytfstifadapter.pkg --- a/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/dsytfstifadapter.pkg Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/dsytfstifadapter.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -1,35 +1,35 @@ -; -; 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: -; - - -;Languages -&EN - -#{"accessorytestcontrol"},(0x101FB3E7),1,0,0,TYPE=SA - -;Localised Vendor name -%{"accessorytestcontrol EN"} - -; Vendor name -: "accessorytestcontrol" - -"\epoc32\release\armv5\urel\dsytfcore.dll"-"c:\sys\bin\dsytfcore.dll" -"\epoc32\release\armv5\urel\dsytfstifadapter.dll"-"c:\sys\bin\dsytfstifadapter.dll" - -"\epoc32\release\armv5\urel\accessorytestcontrol.dll"-"c:\sys\bin\accessorytestcontrol.dll" -"\epoc32\data\z\resource\plugins\accessorytestcontrol.rsc"-"c:\resource\plugins\accessorytestcontrol.rsc" -"..\init\accessorytestcontrol.ini"-"c:\testframework\accessorytestcontrol.ini" -"..\conf\accessorytestcontrol.cfg"-"c:\testframework\accessorytestcontrol.cfg" +; +; 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: +; + + +;Languages +&EN + +#{"accessorytestcontrol"},(0x101FB3E7),1,0,0,TYPE=SA + +;Localised Vendor name +%{"accessorytestcontrol EN"} + +; Vendor name +: "accessorytestcontrol" + +"\epoc32\release\armv5\urel\dsytfcore.dll"-"c:\sys\bin\dsytfcore.dll" +"\epoc32\release\armv5\urel\dsytfstifadapter.dll"-"c:\sys\bin\dsytfstifadapter.dll" + +"\epoc32\release\armv5\urel\accessorytestcontrol.dll"-"c:\sys\bin\accessorytestcontrol.dll" +"\epoc32\data\z\resource\plugins\accessorytestcontrol.rsc"-"c:\resource\plugins\accessorytestcontrol.rsc" +"..\init\accessorytestcontrol.ini"-"c:\testframework\accessorytestcontrol.ini" +"..\conf\accessorytestcontrol.cfg"-"c:\testframework\accessorytestcontrol.cfg" diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envrecall.cmd --- a/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envrecall.cmd Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envrecall.cmd Thu Jul 01 11:20:10 2010 +0300 @@ -1,59 +1,59 @@ -@echo off -REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -REM All rights reserved. -REM This component and the accompanying materials are made available -REM under the terms of "Eclipse Public License v1.0" -REM which accompanies this distribution, and is available -REM at the URL "http://www.eclipse.org/legal/epl-v10.html". -REM -REM Initial Contributors: -REM Nokia Corporation - initial contribution. -REM -REM Contributors: -REM -REM Description: ?Description -REM -REM -@echo on - - -@echo Cleaning stubs... -pushd ..\..\..\public\basic\stubs\group\ -call bldmake bldfiles -call abld test reallyclean -popd -@echo Cleaning stubs... Finished - - -@echo build BT Audioman Client... -pushd \sf\mw\btservices\bluetoothengine\btaudioman\group -call bldmake bldfiles -call abld build -popd -@echo build BT Audioman Client... Finished - - -@echo build accfwuinotifier... -pushd \sf\mw\appsupport\coreapplicationuis\accfwuinotifier\group -call bldmake bldfiles -call abld build -popd -@echo build accfwuinotifier... Finished - - -@echo build accessoryadaptation... -pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ -call bldmake bldfiles -call abld cleanexport -call abld export -call abld build accessoryadaptation -popd -@echo build accessoryadaptation... Finished - - -@echo build Plugged Display ASY... -pushd \sf\os\devicesrv\accessoryservices\pluggeddisplay\pluggeddisplayasy\group -call bldmake bldfiles -call abld build -popd +@echo off +REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +REM All rights reserved. +REM This component and the accompanying materials are made available +REM under the terms of "Eclipse Public License v1.0" +REM which accompanies this distribution, and is available +REM at the URL "http://www.eclipse.org/legal/epl-v10.html". +REM +REM Initial Contributors: +REM Nokia Corporation - initial contribution. +REM +REM Contributors: +REM +REM Description: ?Description +REM +REM +@echo on + + +@echo Cleaning stubs... +pushd ..\..\..\public\basic\stubs\group\ +call bldmake bldfiles +call abld test reallyclean +popd +@echo Cleaning stubs... Finished + + +@echo build BT Audioman Client... +pushd \sf\mw\btservices\bluetoothengine\btaudioman\group +call bldmake bldfiles +call abld build +popd +@echo build BT Audioman Client... Finished + + +@echo build accfwuinotifier... +pushd \sf\mw\appsupport\coreapplicationuis\accfwuinotifier\group +call bldmake bldfiles +call abld build +popd +@echo build accfwuinotifier... Finished + + +@echo build accessoryadaptation... +pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ +call bldmake bldfiles +call abld cleanexport +call abld export +call abld build accessoryadaptation +popd +@echo build accessoryadaptation... Finished + + +@echo build Plugged Display ASY... +pushd \sf\os\devicesrv\accessoryservices\pluggeddisplay\pluggeddisplayasy\group +call bldmake bldfiles +call abld build +popd @echo build Plugged Display ASY... Finished \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envsetup.cmd --- a/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envsetup.cmd Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/dsytfstifadapter/group/envsetup.cmd Thu Jul 01 11:20:10 2010 +0300 @@ -1,61 +1,61 @@ -@echo off -REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -REM All rights reserved. -REM This component and the accompanying materials are made available -REM under the terms of "Eclipse Public License v1.0" -REM which accompanies this distribution, and is available -REM at the URL "http://www.eclipse.org/legal/epl-v10.html". -REM -REM Initial Contributors: -REM Nokia Corporation - initial contribution. -REM -REM Contributors: -REM -REM Description: ?Description -REM -REM -@echo on - - -@echo Cleaning BT Audioman Client... -pushd \sf\mw\btservices\bluetoothengine\btaudioman\group -call bldmake bldfiles -call abld makefile btaudiomanclient -call abld reallyclean btaudiomanclient -popd -@echo Cleaning BT Audioman Client... Finished - - -@echo Cleaning accfwuinotifier... -pushd \sf\mw\appsupport\coreapplicationuis\accfwuinotifier\group -call bldmake bldfiles -call abld makefile -call abld reallyclean -popd -@echo Cleaning accfwuinotifier... Finished - - -@echo Cleaning accessoryadaptation... -pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ -call bldmake bldfiles -call abld makefile accessoryadaptation -call abld clean accessoryadaptation -popd -@echo Cleaning accessoryadaptation... Finished - - -@echo Cleaning Plugged Display ASY... -pushd \sf\os\devicesrv\accessoryservices\pluggeddisplay\pluggeddisplayasy\group -call bldmake bldfiles -call abld reallyclean -popd -@echo Cleaning Plugged Display ASY... Finished - - -@echo Setting up stubs... -pushd ..\..\..\public\basic\stubs\group\ -call bldmake bldfiles -call abld test reallyclean -call abld test build -popd -@echo Setting up stubs... Finished +@echo off +REM Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +REM All rights reserved. +REM This component and the accompanying materials are made available +REM under the terms of "Eclipse Public License v1.0" +REM which accompanies this distribution, and is available +REM at the URL "http://www.eclipse.org/legal/epl-v10.html". +REM +REM Initial Contributors: +REM Nokia Corporation - initial contribution. +REM +REM Contributors: +REM +REM Description: ?Description +REM +REM +@echo on + + +@echo Cleaning BT Audioman Client... +pushd \sf\mw\btservices\bluetoothengine\btaudioman\group +call bldmake bldfiles +call abld makefile btaudiomanclient +call abld reallyclean btaudiomanclient +popd +@echo Cleaning BT Audioman Client... Finished + + +@echo Cleaning accfwuinotifier... +pushd \sf\mw\appsupport\coreapplicationuis\accfwuinotifier\group +call bldmake bldfiles +call abld makefile +call abld reallyclean +popd +@echo Cleaning accfwuinotifier... Finished + + +@echo Cleaning accessoryadaptation... +pushd \ncp_sw\corecom\modemadaptation_ext\adaptationlayer_ext\systemadaptation\accessoryadaptation\group\ +call bldmake bldfiles +call abld makefile accessoryadaptation +call abld clean accessoryadaptation +popd +@echo Cleaning accessoryadaptation... Finished + + +@echo Cleaning Plugged Display ASY... +pushd \sf\os\devicesrv\accessoryservices\pluggeddisplay\pluggeddisplayasy\group +call bldmake bldfiles +call abld reallyclean +popd +@echo Cleaning Plugged Display ASY... Finished + + +@echo Setting up stubs... +pushd ..\..\..\public\basic\stubs\group\ +call bldmake bldfiles +call abld test reallyclean +call abld test build +popd +@echo Setting up stubs... Finished diff -r f7565e9c9ce8 -r c87e5f80c17d dosservices/tsrc/dsytesttool/dsytfstifadapter/init/accessorytestcontrol.ini --- a/dosservices/tsrc/dsytesttool/dsytfstifadapter/init/accessorytestcontrol.ini Fri Jun 11 14:56:08 2010 +0300 +++ b/dosservices/tsrc/dsytesttool/dsytfstifadapter/init/accessorytestcontrol.ini Thu Jul 01 11:20:10 2010 +0300 @@ -1,197 +1,197 @@ -# -# This is STIF initialization file -# Comment lines start with '#'-character. -# See STIF TestFramework users guide.doc for instructions - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set following test engine settings: -# - Set Test Reporting mode. TestReportMode's possible values are: -# + 'Summary': Summary of the tested test cases. -# + 'Environment': Hardware and software info. -# + 'TestCases': Test case report. -# + 'FullReport': Set of all above ones. -# + Example 'TestReportMode= Summary TestCases' -# -# - CreateTestReport setting controls report creation mode -# + YES, Test report will created. -# + NO, No Test report. -# -# - File path indicates the base path of the test report. -# - File name indicates the name of the test report. -# -# - File format indicates the type of the test report. -# + TXT, Test report file will be txt type, for example 'TestReport.txt'. -# + HTML, Test report will be html type, for example 'TestReport.html'. -# -# - File output indicates output source of the test report. -# + FILE, Test report logging to file. -# + RDEBUG, Test report logging to using rdebug. -# -# - File Creation Mode indicates test report overwriting if file exist. -# + OVERWRITE, Overwrites if the Test report file exist. -# + APPEND, Continue logging after the old Test report information if -# report exist. -# - Sets a device reset module's dll name(Reboot). -# + If Nokia specific reset module is not available or it is not correct one -# StifHWResetStub module may use as a template for user specific reset -# module. -# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation -# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 -# - -[Engine_Defaults] - -TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', - 'TestCases' or 'FullReport' - -CreateTestReport= YES # Possible values: YES or NO - -TestReportFilePath= C:\LOGS\TestFramework\ -TestReportFileName= TestReport - -TestReportFormat= TXT # Possible values: TXT or HTML -TestReportOutput= FILE # Possible values: FILE or RDEBUG -TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting - -DisableMeasurement= stifmeasurementdisablenone # Possible values are: - # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' - # 'stifmeasurementplugin01', 'stifmeasurementplugin02', - # 'stifmeasurementplugin03', 'stifmeasurementplugin04', - # 'stifmeasurementplugin05' or 'stifbappeaprofiler' - -Timeout= 0 # Default timeout value for each test case. In milliseconds - -[End_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Module configurations start -# Modules are added between module tags -# tags. Module name is specified after ModuleName= tag, like -# ModuleName= XXXXXXXXX -# Modules might have initialisation file, specified as -# IniFile= c:\testframework\YYYYYY -# Modules might have several configuration files, like -# TestCaseFile= c:\testframework\NormalCases.txt -# TestCaseFile= c:\testframework\SmokeCases.txt -# TestCaseFile= c:\testframework\ManualCases.txt - -# (TestCaseFile is synonym for old term ConfigFile) - -# Following case specifies demo module settings. Demo module -# does not read any settings from file, so tags -# IniFile and TestCaseFile are not used. -# In the simplest case it is enough to specify only the -# name of the test module when adding new test module - -[New_Module] -ModuleName= dsytfstifadapter -TestCaseFile= c:\testframework\accessorytestcontrol.cfg -[End_Module] - - -# Load testmoduleXXX, optionally with initialization file and/or test case files -#[New_Module] -#ModuleName= testmodulexxx - -#TestModuleXXX used initialization file -#IniFile= c:\testframework\init.txt - -#TestModuleXXX used configuration file(s) -#TestCaseFile= c:\testframework\testcases1.cfg -#TestCaseFile= c:\testframework\testcases2.cfg -#TestCaseFile= c:\testframework\manualtestcases.cfg - -#[End_Module] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - - -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -# Set STIF logging overwrite parameters for Logger. -# Hardware and emulator environment logging path and styles can -# be configured from here to overwrite the Logger's implemented values. -# -# Settings description: -# - Indicates option for creation log directory/directories. If log directory/directories -# is/are not created by user they will make by software. -# + YES, Create log directory/directories if not allready exist. -# + NO, Log directory/directories not created. Only created one is used. -# -# - Overwrite emulator path setting. -# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined -# Logger's path 'D:\\LOGS\\Module\\' with those definition the path -# will be 'C:\LOGS\TestFramework\LOGS\Module\' -# -# - Overwrite emulator's logging format. -# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. -# + HTML, Log file(s) will be html type(s), for example 'Module.html'. -# -# - Overwrited emulator logging output source. -# + FILE, Logging to file(s). -# + RDEBUG, Logging to using rdebug(s). -# -# - Overwrite hardware path setting (Same description as above in emulator path). -# - Overwrite hardware's logging format(Same description as above in emulator format). -# - Overwrite hardware's logging output source(Same description as above in emulator output). -# -# - File Creation Mode indicates file overwriting if file exist. -# + OVERWRITE, Overwrites if file(s) exist. -# + APPEND, Continue logging after the old logging information if file(s) exist. -# -# - Will thread id include to the log filename. -# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. -# + NO, No thread id to log file(s), Example filename 'Module.txt'. -# -# - Will time stamps include the to log file. -# + YES, Time stamp added to each line in log file(s). Time stamp is -# for example'12.Nov.2003 115958 LOGGING INFO' -# + NO, No time stamp(s). -# -# - Will line breaks include to the log file. -# + YES, Each logging event includes line break and next log event is in own line. -# + NO, No line break(s). -# -# - Will event ranking include to the log file. -# + YES, Event ranking number added to each line in log file(s). Ranking number -# depends on environment's tics, for example(includes time stamp also) -# '012 12.Nov.2003 115958 LOGGING INFO' -# + NO, No event ranking. -# -# - Will write log file in unicode format. -# + YES, Log file will be written in unicode format -# + NO, Log will be written as normal, not unicode, file. -# - -[Logger_Defaults] - -#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' -#NOTE: TestEngine and TestServer logging settings cannot change here - -#CreateLogDirectories= YES # Possible values: YES or NO - -#EmulatorBasePath= C:\LOGS\TestFramework\ -#EmulatorFormat= HTML # Possible values: TXT or HTML -#EmulatorOutput= FILE # Possible values: FILE or RDEBUG - -#HardwareBasePath= D:\LOGS\TestFramework\ -#HardwareFormat= HTML # Possible values: TXT or HTML -#HardwareOutput= FILE # Possible values: FILE or RDEBUG - -#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND - -#ThreadIdToLogFile= YES # Possible values: YES or NO -#WithTimeStamp= YES # Possible values: YES or NO -#WithLineBreak= YES # Possible values: YES or NO -#WithEventRanking= YES # Possible values: YES or NO - -#FileUnicode= YES # Possible values: YES or NO - -[End_Logger_Defaults] -# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - +# +# This is STIF initialization file +# Comment lines start with '#'-character. +# See STIF TestFramework users guide.doc for instructions + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set following test engine settings: +# - Set Test Reporting mode. TestReportMode's possible values are: +# + 'Summary': Summary of the tested test cases. +# + 'Environment': Hardware and software info. +# + 'TestCases': Test case report. +# + 'FullReport': Set of all above ones. +# + Example 'TestReportMode= Summary TestCases' +# +# - CreateTestReport setting controls report creation mode +# + YES, Test report will created. +# + NO, No Test report. +# +# - File path indicates the base path of the test report. +# - File name indicates the name of the test report. +# +# - File format indicates the type of the test report. +# + TXT, Test report file will be txt type, for example 'TestReport.txt'. +# + HTML, Test report will be html type, for example 'TestReport.html'. +# +# - File output indicates output source of the test report. +# + FILE, Test report logging to file. +# + RDEBUG, Test report logging to using rdebug. +# +# - File Creation Mode indicates test report overwriting if file exist. +# + OVERWRITE, Overwrites if the Test report file exist. +# + APPEND, Continue logging after the old Test report information if +# report exist. +# - Sets a device reset module's dll name(Reboot). +# + If Nokia specific reset module is not available or it is not correct one +# StifHWResetStub module may use as a template for user specific reset +# module. +# - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation +# DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02 +# + +[Engine_Defaults] + +TestReportMode= FullReport # Possible values are: 'Empty', 'Summary', 'Environment', + 'TestCases' or 'FullReport' + +CreateTestReport= YES # Possible values: YES or NO + +TestReportFilePath= C:\LOGS\TestFramework\ +TestReportFileName= TestReport + +TestReportFormat= TXT # Possible values: TXT or HTML +TestReportOutput= FILE # Possible values: FILE or RDEBUG +TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting + +DisableMeasurement= stifmeasurementdisablenone # Possible values are: + # 'stifmeasurementdisablenone', 'stifmeasurementdisableall' + # 'stifmeasurementplugin01', 'stifmeasurementplugin02', + # 'stifmeasurementplugin03', 'stifmeasurementplugin04', + # 'stifmeasurementplugin05' or 'stifbappeaprofiler' + +Timeout= 0 # Default timeout value for each test case. In milliseconds + +[End_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Module configurations start +# Modules are added between module tags +# tags. Module name is specified after ModuleName= tag, like +# ModuleName= XXXXXXXXX +# Modules might have initialisation file, specified as +# IniFile= c:\testframework\YYYYYY +# Modules might have several configuration files, like +# TestCaseFile= c:\testframework\NormalCases.txt +# TestCaseFile= c:\testframework\SmokeCases.txt +# TestCaseFile= c:\testframework\ManualCases.txt + +# (TestCaseFile is synonym for old term ConfigFile) + +# Following case specifies demo module settings. Demo module +# does not read any settings from file, so tags +# IniFile and TestCaseFile are not used. +# In the simplest case it is enough to specify only the +# name of the test module when adding new test module + +[New_Module] +ModuleName= dsytfstifadapter +TestCaseFile= c:\testframework\accessorytestcontrol.cfg +[End_Module] + + +# Load testmoduleXXX, optionally with initialization file and/or test case files +#[New_Module] +#ModuleName= testmodulexxx + +#TestModuleXXX used initialization file +#IniFile= c:\testframework\init.txt + +#TestModuleXXX used configuration file(s) +#TestCaseFile= c:\testframework\testcases1.cfg +#TestCaseFile= c:\testframework\testcases2.cfg +#TestCaseFile= c:\testframework\manualtestcases.cfg + +#[End_Module] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + + + +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- +# Set STIF logging overwrite parameters for Logger. +# Hardware and emulator environment logging path and styles can +# be configured from here to overwrite the Logger's implemented values. +# +# Settings description: +# - Indicates option for creation log directory/directories. If log directory/directories +# is/are not created by user they will make by software. +# + YES, Create log directory/directories if not allready exist. +# + NO, Log directory/directories not created. Only created one is used. +# +# - Overwrite emulator path setting. +# + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined +# Logger's path 'D:\\LOGS\\Module\\' with those definition the path +# will be 'C:\LOGS\TestFramework\LOGS\Module\' +# +# - Overwrite emulator's logging format. +# + TXT, Log file(s) will be txt type(s), for example 'Module.txt'. +# + HTML, Log file(s) will be html type(s), for example 'Module.html'. +# +# - Overwrited emulator logging output source. +# + FILE, Logging to file(s). +# + RDEBUG, Logging to using rdebug(s). +# +# - Overwrite hardware path setting (Same description as above in emulator path). +# - Overwrite hardware's logging format(Same description as above in emulator format). +# - Overwrite hardware's logging output source(Same description as above in emulator output). +# +# - File Creation Mode indicates file overwriting if file exist. +# + OVERWRITE, Overwrites if file(s) exist. +# + APPEND, Continue logging after the old logging information if file(s) exist. +# +# - Will thread id include to the log filename. +# + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'. +# + NO, No thread id to log file(s), Example filename 'Module.txt'. +# +# - Will time stamps include the to log file. +# + YES, Time stamp added to each line in log file(s). Time stamp is +# for example'12.Nov.2003 115958 LOGGING INFO' +# + NO, No time stamp(s). +# +# - Will line breaks include to the log file. +# + YES, Each logging event includes line break and next log event is in own line. +# + NO, No line break(s). +# +# - Will event ranking include to the log file. +# + YES, Event ranking number added to each line in log file(s). Ranking number +# depends on environment's tics, for example(includes time stamp also) +# '012 12.Nov.2003 115958 LOGGING INFO' +# + NO, No event ranking. +# +# - Will write log file in unicode format. +# + YES, Log file will be written in unicode format +# + NO, Log will be written as normal, not unicode, file. +# + +[Logger_Defaults] + +#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#' +#NOTE: TestEngine and TestServer logging settings cannot change here + +#CreateLogDirectories= YES # Possible values: YES or NO + +#EmulatorBasePath= C:\LOGS\TestFramework\ +#EmulatorFormat= HTML # Possible values: TXT or HTML +#EmulatorOutput= FILE # Possible values: FILE or RDEBUG + +#HardwareBasePath= D:\LOGS\TestFramework\ +#HardwareFormat= HTML # Possible values: TXT or HTML +#HardwareOutput= FILE # Possible values: FILE or RDEBUG + +#FileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND + +#ThreadIdToLogFile= YES # Possible values: YES or NO +#WithTimeStamp= YES # Possible values: YES or NO +#WithLineBreak= YES # Possible values: YES or NO +#WithEventRanking= YES # Possible values: YES or NO + +#FileUnicode= YES # Possible values: YES or NO + +[End_Logger_Defaults] +# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- + # End of file \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d group/bld.inf --- a/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -32,7 +32,9 @@ #include "../mediator/group/bld.inf" #include "../psmservices/group/bld.inf" #include "../resourcemgmt/group/bld.inf" +#include "../resourceinterfaces/group/bld.inf" #include "../sysstatemgmt/group/bld.inf" +#include "../systemhealthmanagement/systemhealthmgr/group/bld.inf" PRJ_TESTMMPFILES diff -r f7565e9c9ce8 -r c87e5f80c17d hwrmhaptics/hapticsclient/src/hwrmhapticsimpl.cpp --- a/hwrmhaptics/hapticsclient/src/hwrmhapticsimpl.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/hwrmhaptics/hapticsclient/src/hwrmhapticsimpl.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -427,20 +427,11 @@ // send command to haptics server if ( KErrNone == err ) - { - if( aDevicePropertyType == EHWRMHapticsLicensekey ) - { - err = iClient.ExecuteOperation( + { + err = iClient.ExecuteOperation( EHWRMHapticsSetLicenseProp, - TIpcArgs( &iReqData, aDevicePropertyValue.Length() ) ); - } - else - { - err = iClient.ExecuteOperation( EHWRMHaptics, - TIpcArgs( &iReqData ) ); - } - } - + TIpcArgs( &iReqData, aDevicePropertyValue.Length() ) ); + } } API_TRACE( ( _L( "CHWRMHapticsImpl::SetDeviceProperty() - const TDesC8 overloaded - return %d" ), err ) ); diff -r f7565e9c9ce8 -r c87e5f80c17d psmservices/psmserver/inc/engine/psmstorage.h --- a/psmservices/psmserver/inc/engine/psmstorage.h Fri Jun 11 14:56:08 2010 +0300 +++ b/psmservices/psmserver/inc/engine/psmstorage.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-2010 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" @@ -20,7 +20,7 @@ #define PSMSTORAGE_H #include -#include +#include #include /** diff -r f7565e9c9ce8 -r c87e5f80c17d resourceinterfaces/group/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourceinterfaces/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,30 @@ +/* +* Copyright (c) 2006-2010 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: +* +*/ + + +PRJ_PLATFORMS +DEFAULT + +PRJ_EXPORTS + +PRJ_MMPFILES + +#include "../fmtransmittercontrol/group/bld.inf" + +PRJ_TESTMMPFILES + +// End of File diff -r f7565e9c9ce8 -r c87e5f80c17d resourceinterfaces/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourceinterfaces/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/group/bld.inf --- a/resourcemgmt/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -26,6 +26,9 @@ ../data/InternalHWRMFmTxPolicy.ini z:/private/101f7a02/customerhwrmfmtxpolicy.ini +#include "../hwresourcesmgr/group/bld.inf" +#include "../hwresourcesmgrconfig/bld.inf" +#include "../powerandmemorynotificationservice/group/bld.inf" #include "../hwrmfmtxwatcherplugin/group/bld.inf" #if defined(WINSCW) && !defined(__HWRM_TARGET_MODIFIER_PLUGIN) diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/power/inc/HWRMChargingStatusObserver.h --- a/resourcemgmt/hwresourcesmgr/power/inc/HWRMChargingStatusObserver.h Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/power/inc/HWRMChargingStatusObserver.h Thu Jul 01 11:20:10 2010 +0300 @@ -23,7 +23,8 @@ /* Observer class for charging status change */ -class CHWRMChargingStatusObs: public MPsPropertyObserver +class CHWRMChargingStatusObs: public CBase, + public MPsPropertyObserver { public: static CHWRMChargingStatusObs* NewL(MHWRMBatteryChargingStatusObserver* aChargingStatusCallback); diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp --- a/resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -166,10 +166,13 @@ delete iPowerService; iPowerService = NULL; - iMaxReportingPeriodNotifyHandler->StopListening(); - delete iMaxReportingPeriodNotifyHandler; - iMaxReportingPeriodNotifyHandler = NULL; - + if (iMaxReportingPeriodNotifyHandler) + { + iMaxReportingPeriodNotifyHandler->StopListening(); + delete iMaxReportingPeriodNotifyHandler; + iMaxReportingPeriodNotifyHandler = NULL; + } + delete iRepository; iRepository = NULL; diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/data/cenrep/10205043.txt Binary file resourcemgmt/hwresourcesmgr/test/data/cenrep/10205043.txt has changed diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/group/bld.inf --- a/resourcemgmt/hwresourcesmgr/test/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -40,6 +40,7 @@ ../data/cenrep/10200C8C.txt /epoc32/data/z/private/10202be9/10200c8c.txt ../data/cenrep/10200C8D.txt /epoc32/data/z/private/10202be9/10200c8d.txt ../data/cenrep/20008EA6.txt /epoc32/data/z/private/10202be9/20008ea6.txt +../data/cenrep/10205043.txt /epoc32/data/z/private/10202be9/10205043.txt ../data/cenrep/10200C8B.txt /epoc32/release/winscw/udeb/z/private/10202be9/10200c8b.txt ../data/cenrep/10200C8C.txt /epoc32/release/winscw/udeb/z/private/10202be9/10200c8c.txt @@ -98,5 +99,5 @@ ../multiclient/mctest_b/mctest_b.mmp ../plugins/testuiplugin_f/group/hwrmtestuiplugin_f.mmp ../plugins/testuiplugin_b/group/hwrmtestuiplugin_b.mmp -../multiclient/HWRMLightTestF/group/HWRMLightTestF.mmp -../multiclient/HWRMLightTestB/group/HWRMLightTestB.mmp +//../multiclient/HWRMLightTestF/group/HWRMLightTestF.mmp +//../multiclient/HWRMLightTestB/group/HWRMLightTestB.mmp diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/group/hwrm_rtests.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourcemgmt/hwresourcesmgr/test/group/hwrm_rtests.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,33 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"Hwrm_rtests EN"} + +; Vendor name +: "Hwrm_rtests" + +; RTest Cases +"\epoc32\release\armv5\urel\hwrmtests.exe"-"c:\sys\bin\hwrmtests.exe" +"\epoc32\release\armv5\urel\mctest_f.exe"-"c:\sys\bin\mctest_f.exe" + + + diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/group/te_hwrm.iby --- a/resourcemgmt/hwresourcesmgr/test/group/te_hwrm.iby Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/group/te_hwrm.iby Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -20,6 +20,10 @@ #include //for test purposes, include symbian's FmTx and UI plugin #include +// if the feature flag for FF_FMTX is undefined, include the dll here +#ifndef FF_FMTX +file=ABI_DIR\DEBUG_DIR\HWRMFmTxClient.dll SYSTEM_BINDIR\HWRMFmTxClient.dll +#endif //FF_FMTX #include #include @@ -53,10 +57,10 @@ #endif // cenrep registration files -#ifdef TEXT_ONLY_ROM +//#ifdef TEXT_ONLY_ROM // This is required because the cenrep files are now being included only via techview_base.iby data=DATAZ_\private\10202BE9\10205043.txt private\10202be9\10205043.txt -#endif +//#endif data=DATAZ_\private\10202BE9\10200C8B.txt private\10202be9\10200C8B.txt data=DATAZ_\private\10202BE9\10200C8C.txt private\10202be9\10200C8C.txt data=DATAZ_\private\10202BE9\10200C8D.txt private\10202be9\10200C8D.txt diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/group/te_hwrm.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourcemgmt/hwresourcesmgr/test/group/te_hwrm.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,29 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"Te_Hwrm EN"} + +; Vendor name +: "Te_Hwrm" + +"\sf\os\devicesrv\resourcemgmt\hwresourcesmgr\test\te_hwrm\te_hwrm.script"-"c:\devicesrv\hwrmtest\te_hwrm.script" +"\sf\os\devicesrv\resourcemgmt\hwresourcesmgr\test\TestCapsHWRMPolicing\scripts\Cap_HWRM_API_Policing.script"-"c:\devicesrv\hwrmtest\Cap_HWRM_API_Policing.script" diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.cpp --- a/resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -17,7 +17,7 @@ #include _LIT(KDirectoryPath, "C:\\logs\\"); -_LIT(KLogFile,"C:\\logs\\hwrmtests.log"); +_LIT(KLogFile,"C:\\logs\\testexecute\\hwrmtests.htm"); _LIT8(KCrLf,"\r\n"); _LIT8(KRTest,"RTEST:"); diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.mmp --- a/resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/multiclient/hwrmtests/hwrmtests.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -13,7 +13,7 @@ // Description: // -TARGET hwrmtests.exe +TARGET hwrmtests.exe //RTEST TARGETTYPE exe UID 0x102857BB 0x102857BB // 0 VENDORID 0x70000001 diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.cpp --- a/resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -16,7 +16,7 @@ #include "mctest_f.h" #include -_LIT(KLogFile,"C:\\logs\\mctest_f.log"); +_LIT(KLogFile,"C:\\logs\\testexecute\\mctest_f.htm"); _LIT8(KCrLf,"\r\n"); _LIT8(KRTest,"RTEST:"); diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.mmp --- a/resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/test/multiclient/mctest_f/mctest_f.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -13,7 +13,7 @@ // Description: // -TARGET mctest_f.exe +TARGET mctest_f.exe //RTEST TARGETTYPE exe UID 0x102857BB 0x102857BB VENDORID 0x70000001 diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourcemgmt/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/powerandmemorynotificationservice/group/PwrCliTests.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/resourcemgmt/powerandmemorynotificationservice/group/PwrCliTests.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,35 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"PwrCliTests EN"} + +; Vendor name +: "PwrCliTests" + +; RTest Cases +"\epoc32\release\armv5\urel\t_pwrbasic.exe"-"c:\sys\bin\t_pwrbasic.exe" +"\epoc32\release\armv5\urel\t_pwroffevents.exe"-"c:\sys\bin\t_pwroffevents.exe" +"\epoc32\release\armv5\urel\t_shutdownserver.exe"-"c:\sys\bin\t_shutdownserver.exe" + + + + diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/powerandmemorynotificationservice/group/t_pwrbasic.mmp --- a/resourcemgmt/powerandmemorynotificationservice/group/t_pwrbasic.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/powerandmemorynotificationservice/group/t_pwrbasic.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -15,7 +15,7 @@ // // -TARGET t_pwrbasic.exe +TARGET t_pwrbasic.exe //RTEST CAPABILITY PowerMgmt TARGETTYPE EXE diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/powerandmemorynotificationservice/group/t_pwroffevents.mmp --- a/resourcemgmt/powerandmemorynotificationservice/group/t_pwroffevents.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/powerandmemorynotificationservice/group/t_pwroffevents.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -16,7 +16,7 @@ // // -TARGET t_pwroffevents.exe +TARGET t_pwroffevents.exe //RTEST // requires PowerMgmt because it is a unit test of the server code that will call the Power API which requires it // requires DiskAdmin because the test will make the server call RFs::FinaliseDrives() as part of power-off sequence CAPABILITY PowerMgmt DiskAdmin diff -r f7565e9c9ce8 -r c87e5f80c17d resourcemgmt/powerandmemorynotificationservice/group/t_shutdownserver.mmp --- a/resourcemgmt/powerandmemorynotificationservice/group/t_shutdownserver.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/resourcemgmt/powerandmemorynotificationservice/group/t_shutdownserver.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -15,7 +15,7 @@ // // -TARGET t_shutdownserver.exe +TARGET t_shutdownserver.exe //RTEST CAPABILITY ProtServ PowerMgmt DiskAdmin TARGETTYPE EXE diff -r f7565e9c9ce8 -r c87e5f80c17d sensorservices/sensorserver/src/util/sensrvproperty.cpp --- a/sensorservices/sensorserver/src/util/sensrvproperty.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sensorservices/sensorserver/src/util/sensrvproperty.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -356,9 +356,12 @@ { API_TRACE( ( _L( "Sensor Util - TSensrvProperty::GetValue return %e" ), iRealValue ) ); - __ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); + //__ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); - aValue = iRealValue; + if( ESensrvRealProperty == iPropertyType ) + aValue = iRealValue; + else if( ESensrvIntProperty == iPropertyType ) + aValue = iIntValue; } // --------------------------------------------------------------------------- @@ -467,9 +470,13 @@ { API_TRACE( ( _L( "Sensor Util - TSensrvProperty::GetMaxValue return %e" ), iRealValueMax ) ); - __ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); + //__ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); - aMaxValue = iRealValueMax; + if( ESensrvRealProperty == iPropertyType ) + aMaxValue = iRealValueMax; + else if ( ESensrvIntProperty == iPropertyType ) + aMaxValue = iIntValueMax; + } // --------------------------------------------------------------------------- @@ -480,9 +487,11 @@ { API_TRACE( ( _L( "Sensor Util - TSensrvProperty::GetMinValue return %e" ), iRealValueMin ) ); - __ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); - - aMinValue = iRealValueMin; + //__ASSERT_ALWAYS( ESensrvRealProperty == iPropertyType, User::Panic( KSensrvPropertyPanic, 0 )); + if( ESensrvRealProperty == iPropertyType ) + aMinValue = iRealValueMin; + else if( ESensrvIntProperty == iPropertyType ) + aMinValue = iIntValueMin; } // --------------------------------------------------------------------------- diff -r f7565e9c9ce8 -r c87e5f80c17d sensorservices/tiltcompensationssy/inc/tcsendeventtimer.h --- a/sensorservices/tiltcompensationssy/inc/tcsendeventtimer.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sensorservices/tiltcompensationssy/inc/tcsendeventtimer.h Thu Jul 01 11:20:10 2010 +0300 @@ -71,6 +71,8 @@ // @see CActive TInt RunError( TInt aError ); + public: + void Start( ); private: // Private data for base channel diff -r f7565e9c9ce8 -r c87e5f80c17d sensorservices/tiltcompensationssy/src/tcsendeventtimer.cpp --- a/sensorservices/tiltcompensationssy/src/tcsendeventtimer.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sensorservices/tiltcompensationssy/src/tcsendeventtimer.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -74,7 +74,10 @@ ret = iTimer.CreateLocal(); User::LeaveIfError( ret ); iTimerToHzLevel = aSetTimerToHzLevel; - TTimeIntervalMicroSeconds32 interval( KOneSecondInMicroSeconds / aSetTimerToHzLevel ); + } +void CTCSendEventTimer::Start() + { + TTimeIntervalMicroSeconds32 interval( KOneSecondInMicroSeconds / iTimerToHzLevel ); if( !IsActive() ) { diff -r f7565e9c9ce8 -r c87e5f80c17d sensorservices/tiltcompensationssy/src/tcstatetiltlistendata.cpp --- a/sensorservices/tiltcompensationssy/src/tcstatetiltlistendata.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sensorservices/tiltcompensationssy/src/tcstatetiltlistendata.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -355,6 +355,7 @@ if( !iTimerToSend ) { iTimerToSend = CTCSendEventTimer::NewL( iHzSamplingRate, *this ); + iTimerToSend->Start(); } else if( iHasChanged ) { @@ -363,6 +364,10 @@ iTimerToSend = CTCSendEventTimer::NewL( iHzSamplingRate, *this ); iHasChanged = EFalse; } + else + { + iTimerToSend->Start(); + } } // ---------------------------------------------------------------------------------- @@ -375,8 +380,7 @@ if( iTimerToSend ) { - delete iTimerToSend; - iTimerToSend = NULL; + iTimerToSend->Cancel(); } } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/group/bld.inf --- a/sysstatemgmt/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -31,6 +31,10 @@ #include "../ssmcustcmds/group/bld.inf" #include "../syslangutil/group/bld.inf" #include "../sysrestart/group/bld.inf" +#include "../systemstarter/group/bld.inf" +#include "../systemstatemgr/group/bld.inf" +#include "../systemstatereferenceplugins/group/bld.inf" +#include "../systemstateplugins/group/bld.inf" #include "../sysuiprovider/group/bld.inf" diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/ssmcmdlists/data/noncriticalcmdlist_ext.rss --- a/sysstatemgmt/ssmcmdlists/data/noncriticalcmdlist_ext.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/ssmcmdlists/data/noncriticalcmdlist_ext.rss Thu Jul 01 11:20:10 2010 +0300 @@ -68,6 +68,7 @@ { commands = { + r_cmd_waitidle, //CR:ETIN-86JCY2 // prio 0xFFB7 #ifdef __JAVA r_cmd_javacaptain, @@ -395,6 +396,33 @@ } // --------------------------------------------------------------------------- +// r_cmd_waitidle +// --------------------------------------------------------------------------- +// +RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitidle + { + priority = 0xFFC5; + severity = ECmdCriticalSeverity; + dllname = "ssmsystemcmds.dll"; + ordinal = 5; // WaitPsKeyExact + dll_data = r_dlldata_waitidle; + unload_on_finish = ENeverUnload; + retries = 2; + execution_behaviour = ESsmWaitForSignal; + } + +// --------------------------------------------------------------------------- +// r_dlldata_waitidle +// --------------------------------------------------------------------------- +// +RESOURCE CMD_PARAM_WAIT_PS r_dlldata_waitidle + { + category = 0x101F8766; // KPSUidStartup + key = 0x00000043; // KPSIdlePhase1Ok + target = 101; // EIdlePhase1Ok + } + +// --------------------------------------------------------------------------- // r_cmd_watcher // --------------------------------------------------------------------------- // diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/ssmcmdlists/data/noncriticalswpcmdlists.rss --- a/sysstatemgmt/ssmcmdlists/data/noncriticalswpcmdlists.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/ssmcmdlists/data/noncriticalswpcmdlists.rss Thu Jul 01 11:20:10 2010 +0300 @@ -68,6 +68,10 @@ { // prio 0xFFF1 r_cmd_publishswp, + //prio 0x7EF9 + r_cmd_activitymonitor_hsrunningapp, + //prio 0x7EF8 + r_cmd_hsrunningappmonitor, //JJAA-85CDEA // prio 0x7EF7 r_cmd_activitymonitor1, // prio 0x7EF6 @@ -134,6 +138,21 @@ #endif // --------------------------------------------------------------------------- +// r_cmd_activitymonitor_hsrunningapp +// --------------------------------------------------------------------------- +// +RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_activitymonitor_hsrunningapp + { + priority = 0x7EF9; + severity = ECmdCriticalSeverity; + execution_behaviour = ESsmWaitForSignal; + dllname = "ssmactivitycmd.dll"; + ordinal = 1; // SsmActivityCmdNewL + retries = 2; + dll_data = r_dlldata_activitymonitor_timeout; + } + +// --------------------------------------------------------------------------- // r_cmd_activitymonitor1 // --------------------------------------------------------------------------- // @@ -298,6 +317,18 @@ execution_behaviour = ESsmWaitForSignal; } +// --------------------------------------------------------------------------- +// r_cmd_hsrunningappmonitor +// --------------------------------------------------------------------------- +// +RESOURCE SSM_START_PROCESS_INFO r_cmd_hsrunningappmonitor + { + priority = 0x7EF8; + name = "z:\\sys\\bin\\hsrunningappmonitor.exe"; + execution_behaviour = ESsmWaitForSignal; + monitor_info = r_mon_3_restarts_ignore; + } + // --------------------------------------------------------------------------- // r_cmd_msgnotifier diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/ssmcmdlists/data/securitycheckcmdlist.rss --- a/sysstatemgmt/ssmcmdlists/data/securitycheckcmdlist.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/ssmcmdlists/data/securitycheckcmdlist.rss Thu Jul 01 11:20:10 2010 +0300 @@ -69,7 +69,7 @@ r_cmd_publishstate, // prio 0xFFF1 r_cmd_psstate, // prio 0xFFF0 // prio 0xFFE7 - r_cmd_hbthemeserver, + r_cmd_idle, // prio 0xFFE6 r_cmd_multiwaitforever1, // prio 0xFFE3 @@ -77,10 +77,6 @@ r_cmd_phone, r_cmd_clockserver, r_cmd_multiwaitforever2, - // prio 0xFFDF - r_cmd_idle, - // prio 0xFFDE - r_cmd_multiwaitforever3, // prio 0xFFD8 r_cmd_createswp_simstatus, // prio 0xFFD7 @@ -116,18 +112,7 @@ key = 0x00000031; // KPSSimStatus filename = "ssm.swp.policy.simstatus.dll"; } - -// --------------------------------------------------------------------------- -// r_cmd_hbthemeserver -// --------------------------------------------------------------------------- -// -RESOURCE SSM_START_PROCESS_INFO r_cmd_hbthemeserver - { - priority = 0xFFE7; - name = "z:\\sys\\bin\\hbthemeserver.exe"; - execution_behaviour = ESsmDeferredWaitForSignal; - monitor_info = r_mon_100_restarts_reset; - } + // --------------------------------------------------------------------------- // r_cmd_idle @@ -135,7 +120,7 @@ // RESOURCE SSM_START_APP_INFO r_cmd_idle { - priority = 0xFFDF; + priority = 0xFFE7; name = "z:\\sys\\bin\\hsapplication.exe"; execution_behaviour = ESsmDeferredWaitForSignal; monitor_info = r_mon_max_restarts_ignore; @@ -159,14 +144,6 @@ priority = 0xFFE2; } -// --------------------------------------------------------------------------- -// r_cmd_multiwaitforever3 -// --------------------------------------------------------------------------- -// -RESOURCE SSM_MULTIPLE_WAIT r_cmd_multiwaitforever3 - { - priority = 0xFFDE; - } // --------------------------------------------------------------------------- // r_cmd_phone diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/ssmcmdlists/data/uiservicescmdlist.rss --- a/sysstatemgmt/ssmcmdlists/data/uiservicescmdlist.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/ssmcmdlists/data/uiservicescmdlist.rss Thu Jul 01 11:20:10 2010 +0300 @@ -93,6 +93,8 @@ r_cmd_loaduilanguage, // Observes changes in UI Language setting // prio 0xFF79 r_cmd_aknstart, // UI Framework + r_cmd_hbthemeserver, //CR:KJLN-7WBEGU + r_cmd_devicedialog, //CR:KJLN-7WBEGU // prio 0xFF77 r_cmd_apparc_init, // Init application framework // prio 0xFF75 @@ -142,6 +144,29 @@ } // --------------------------------------------------------------------------- +// r_cmd_devicedialog +// --------------------------------------------------------------------------- +// +RESOURCE SSM_START_PROCESS_INFO r_cmd_devicedialog + { + priority = 0xFF79; + severity = ECmdCriticalSeverity; + name = "Z:\\sys\\bin\\hbdevicedialogappserver.exe"; + execution_behaviour = ESsmWaitForSignal; + } + +// --------------------------------------------------------------------------- +// r_cmd_hbthemeserver +// --------------------------------------------------------------------------- +// +RESOURCE SSM_START_PROCESS_INFO r_cmd_hbthemeserver + { + priority = 0xFF79; + name = "z:\\sys\\bin\\hbthemeserver.exe"; + execution_behaviour = ESsmWaitForSignal; + } + +// --------------------------------------------------------------------------- // r_cmd_initclkeys // --------------------------------------------------------------------------- // diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/ssmcustcmds/ssmsystemcmds/src/ssminitpskeys.cpp --- a/sysstatemgmt/ssmcustcmds/ssmsystemcmds/src/ssminitpskeys.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/ssmcustcmds/ssmsystemcmds/src/ssminitpskeys.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -299,7 +299,7 @@ KWriteDeviceDataPolicy ); SetL( KPSStarterUid, KSSMUILanguagePSKey , 0 ); - INFO( "KPSUidStartup::KIgnoreSecurityEvent" ); + INFO( "KPSUidStartup::KIgnoreSecurityEvent" ); DefineL( KPSUidStartup, KIgnoreSecurityEvent, KReadDeviceDataPolicy, diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstarter/test/tsysstart/group/sysstarttest.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstarter/test/tsysstart/group/sysstarttest.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,29 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SysStartTests EN"} + +; Vendor name +: "SysStartTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstarter\test\tsysstart\scripts\appfwk_sysstart_test_ReRunSysStart.script"-"c:\devicesrv\sysstarttest\appfwk_sysstart_test_ReRunSysStart.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/cmd/src/cmdpublishsystemstate.cpp --- a/sysstatemgmt/systemstatemgr/cmd/src/cmdpublishsystemstate.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/cmd/src/cmdpublishsystemstate.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -294,6 +294,9 @@ if(iConnected) { iDomainManager.CancelTransition(); + // Close domain manager connection + iDomainManager.Close(); + iConnected = EFalse; } } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/ssm/src/ssmstatetransitionengine.cpp --- a/sysstatemgmt/systemstatemgr/ssm/src/ssmstatetransitionengine.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/ssm/src/ssmstatetransitionengine.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -533,7 +533,9 @@ { iResolver.ReleasePolicyResolver(); delete iQueuedTransition; + iQueuedTransition = NULL; delete iCurrentTransition; + iCurrentTransition = NULL; iCleSession.ReleaseCle(); } #endif diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/sus/src/ssmsuscli.cpp --- a/sysstatemgmt/systemstatemgr/sus/src/ssmsuscli.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/sus/src/ssmsuscli.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -109,7 +109,7 @@ Usage pattern: @code RSsmSusCli session; - session.Connect(); + User::LeaveIfError(fs.Connect()); CleanupStackClosePushL(session); TPckgC* infoBuf = new (ELeave) TPckgC(info); session.RequestLoadSup(*infoBuf, status); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp --- a/sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -278,8 +278,6 @@ DEBUGPRINT2A("CEmergencyCallRfAdaptationRequests processed the request with funtion id: %d", iCurrentMessage->Function()); iCurrentMessage->Complete(iStatus.Int()); DeleteAdaptationMessage(); - iCurrentMessage = NULL; - if( (iPendingEmergencyRequestsQueue.Count()) > 0 ) { CEmergencyAdaptationMessage *messageCopy = NULL; @@ -295,7 +293,6 @@ { iCurrentMessage->Complete(aError); DeleteAdaptationMessage(); - iCurrentMessage = NULL; } while( (iPendingEmergencyRequestsQueue.Count() > 0 )) @@ -303,7 +300,6 @@ Dequeue(iCurrentMessage); iCurrentMessage->Complete(aError); DeleteAdaptationMessage(); - iCurrentMessage = NULL; } return KErrNone; @@ -316,7 +312,6 @@ { iCurrentMessage->Complete(KErrCancel); DeleteAdaptationMessage(); - iCurrentMessage = NULL; } while( (iPendingEmergencyRequestsQueue.Count() > 0 )) @@ -324,7 +319,6 @@ Dequeue(iCurrentMessage); iCurrentMessage->Complete(KErrCancel); DeleteAdaptationMessage(); - iCurrentMessage = NULL; } } @@ -349,7 +343,8 @@ */ void CEmergencyCallRfAdaptation::DeleteAdaptationMessage() { - if(iCurrentMessage->IsMessageReserved()) + //Do not delete iCurrentMessage if it is owned by iAdaptationReservedMessageArray. + if(iCurrentMessage->IsMessageReserved()) { iCurrentMessage->UnsetMessageStatus(EMsgInUse); ++iReserveMsgCount; @@ -357,7 +352,8 @@ else { delete iCurrentMessage; - } + } + iCurrentMessage = NULL; } void CEmergencyCallRfAdaptation::Dequeue(CEmergencyAdaptationMessage *&aCurrentMessage) diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/sus/src/susstateadaptation.cpp --- a/sysstatemgmt/systemstatemgr/sus/src/susstateadaptation.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/sus/src/susstateadaptation.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -172,7 +172,11 @@ DEBUGPRINT1A("CStateAdaptationRequests cancelling current request as requested"); iStateAdaptation.RequestCancel(); } - iPendingRequestsQueue.RemoveFromQueueAndComplete(aMessage); + iPendingRequestsQueue.RemoveFromQueueAndComplete(aMessage); + if(iPendingRequestsQueue.IsEmpty()) + { + iPendingRequestsQueue.Close(); + } aMessage.Complete(KErrNone); } else diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tcle/group/ssmatest_tcle.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tcle/group/ssmatest_tcle.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,36 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmCleTests EN"} + +; Vendor name +: "SsmCleTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_rclesession.script"-"c:\devicesrv\ssmatest\ssmatest_cle_rclesession.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_pause.script"-"c:\devicesrv\ssmatest\ssmatest_cle_pause.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_dwfs_bad.script"-"c:\devicesrv\ssmatest\ssmatest_cle_dwfs_bad.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_dwfs_bad_norend.script"-"c:\devicesrv\ssmatest\ssmatest_cle_dwfs_bad_norend.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_dwfs_good.script"-"c:\devicesrv\ssmatest\ssmatest_cle_dwfs_good.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_fandf_bad.script"-"c:\devicesrv\ssmatest\ssmatest_cle_fandf_bad.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_fandf_good.script"-"c:\devicesrv\ssmatest\ssmatest_cle_fandf_good.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_wfs_bad.script"-"c:\devicesrv\ssmatest\ssmatest_cle_wfs_bad.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcle\scripts\ssmatest_cle_wfs_good.script"-"c:\devicesrv\ssmatest\ssmatest_cle_wfs_good.script" diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tcmd/group/ssmatest_tcmd.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tcmd/group/ssmatest_tcmd.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,46 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmCmdTests EN"} + +; Vendor name +: "SsmCmdTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_resourcereader.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_resourcereader.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_amastarter.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_amastarter.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_commandlist.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_commandlist.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_customcommand.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_customcommand.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_finalisedrives.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_finalisedrives.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_loadsup.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_loadsup.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_persisthalattributes.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_persisthalattributes.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_poweroff.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_poweroff.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_publishswp.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_publishswp.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_publishsystemstate.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_publishsystemstate.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_reqswpchange.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_reqswpchange.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_multiplewait.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_multiplewait.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_startapp.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_amastarter.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_startprocess.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_startprocess.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_waitforapparcinit.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_waitforapparcinit.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_setpandskey.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_setpandskey.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_custcmd_neverunload.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_custcmd_neverunload.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_i_bics.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_i_bics.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmd\scripts\ssmatest_cmd_runcletest.script"-"c:\devicesrv\ssmatest\ssmatest_cmd_runcletest.script" diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tcmd/src/tcmd_step_resourcereader.cpp --- a/sysstatemgmt/systemstatemgr/test/tcmd/src/tcmd_step_resourcereader.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/tcmd/src/tcmd_step_resourcereader.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1880,6 +1880,7 @@ User::WaitForRequest(status); TExitCategoryName category = thread.ExitCategory(); RDebug::Print(_L("***** Exit Category = %S *****"),&category); + INFO_PRINTF2(_L("***** Exit Category = %S *****"), &category); TEST(category.Compare(KPanicCmdResourceReader) == 0); // always expecting a resource reader panic const TInt exitReason = thread.ExitReason(); thread.Close(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tcmn/group/ssmatest_tcmn.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tcmn/group/ssmatest_tcmn.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,33 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmCmnTests EN"} + +; Vendor name +: "SsmCmnTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmn\scripts\ssmatest_cmn_state.script"-"c:\devicesrv\ssmatest\ssmatest_cmn_state.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmn\scripts\ssmatest_cmn_swpvalue.script"-"c:\devicesrv\ssmatest\ssmatest_cmn_swpvalue.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmn\scripts\ssmatest_cmn_systemwideproperty.script"-"c:\devicesrv\ssmatest\ssmatest_cmn_systemwideproperty.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tcmn\scripts\ssmatest_cmn_stateawaresession.script"-"c:\devicesrv\ssmatest\ssmatest_cmn_stateawaresession.script" + + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmcletestapplication.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmcletestapplication.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmcletestapplication.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -31,7 +31,7 @@ USERINCLUDE ../../../localinc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappgood.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappgood.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappgood.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -27,7 +27,8 @@ USERINCLUDE ../inc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappnorv.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappnorv.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappnorv.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -25,10 +25,11 @@ USERINCLUDE . USERINCLUDE ../inc -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppanic.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppanic.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppanic.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -25,10 +25,11 @@ USERINCLUDE . USERINCLUDE ../inc -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppaniczero.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppaniczero.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapppaniczero.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -25,10 +25,11 @@ USERINCLUDE . USERINCLUDE ../inc -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprvafterretry.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprvafterretry.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprvafterretry.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -26,7 +26,8 @@ USERINCLUDE ../inc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprverror.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprverror.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestapprverror.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -25,10 +25,11 @@ USERINCLUDE . USERINCLUDE ../inc -SYSTEMINCLUDE /epoc32/include/techview +//SYSTEMINCLUDE /epoc32/include/techview OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappslow.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappslow.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappslow.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -27,7 +27,8 @@ USERINCLUDE ../inc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE +//SYSTEMINCLUDE /epoc32/include/techview LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappsucessfulafterretry.mmp --- a/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappsucessfulafterretry.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/group/ssmtestappsucessfulafterretry.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -26,7 +26,8 @@ USERINCLUDE ../inc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE + LIBRARY euser.lib LIBRARY apparc.lib @@ -36,16 +37,7 @@ LIBRARY estor.lib LIBRARY efsrv.lib -RESOURCE ssmtestappsucessfulafterretry.rss -START RESOURCE ssmtestappsucessfulafterretry.rss -TARGETPATH /resource/apps -END -// Registration file -SOURCEPATH ../src -START RESOURCE ssmtestappsucessfulafterretry_reg.rss -TARGETPATH /private/10003a3f/apps -END SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/inc/ssmtestapps.h --- a/sysstatemgmt/systemstatemgr/test/testapps/inc/ssmtestapps.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/inc/ssmtestapps.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -46,6 +46,7 @@ _LIT(KTestProcTranFromNormalWoCap, "ssmstatetranfromnormalwocap.exe"); _LIT(KTestAppLogFileLoc, "C:\\logs\\ssmtest\\"); +_LIT(KFileForFAndF, "c:\\countforfnf.dat"); //This file is used by KTestAppForFAndF const TInt KTestCommandLineMaxLength = 200; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/inc/ssmtestappsucessfulafterretry.h --- a/sysstatemgmt/systemstatemgr/test/testapps/inc/ssmtestappsucessfulafterretry.h Fri Jun 11 14:56:08 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,85 +0,0 @@ -// Copyright (c) 2007-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: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -#ifndef __SSMTESTAPPSUCESSFULAFTERRETRY_H -#define __SSMTESTAPPSUCESSFULAFTERRETRY_H - -#include -#include - -_LIT(KFileForFAndF, "c:\\countforfnf.dat"); // this file should be deleted by the test application - -/** -Application class -*/ -#include - -class CTestFAndFApplication : public CEikApplication - { -public: - static CApaApplication* NewApplication(); - ~CTestFAndFApplication(); - -private: -CTestFAndFApplication(); - - // from CApaApplication - TUid AppDllUid() const; - CApaDocument* CreateDocumentL(); - }; - -/** -Document class -*/ -#include - -class CEikAppUi; -class CEikApplication; -class CTestFAndFDocument : public CEikDocument - { -public: - static CTestFAndFDocument* NewL(CEikApplication& aApp); - ~CTestFAndFDocument(); - -private: - CTestFAndFDocument(CEikApplication& aApp); - - // from CEikDocument - CEikAppUi* CreateAppUiL(); - }; - -/** -Application UI class, root of all graphical user interface in this application -*/ -#include - -class CTestAppAo; -class CTestFAndFAppUi : public CEikAppUi - { -public: - CTestFAndFAppUi(); - ~CTestFAndFAppUi(); - - // from CEikAppUi - void ConstructL(); - }; - -#endif // __SSMTESTAPPSUCESSFILAFTERRETRY_H diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappgood.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappgood.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappgood.rss Thu Jul 01 11:20:10 2010 +0300 @@ -22,8 +22,8 @@ NAME STAG -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappnorv.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappnorv.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappnorv.rss Thu Jul 01 11:20:10 2010 +0300 @@ -22,8 +22,8 @@ NAME STAN -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppanic.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppanic.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppanic.rss Thu Jul 01 11:20:10 2010 +0300 @@ -22,8 +22,8 @@ NAME STAP -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppaniczero.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppaniczero.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapppaniczero.rss Thu Jul 01 11:20:10 2010 +0300 @@ -21,8 +21,8 @@ NAME STAZ -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprvafterretry.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprvafterretry.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprvafterretry.rss Thu Jul 01 11:20:10 2010 +0300 @@ -21,8 +21,8 @@ NAME STAR -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprverror.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprverror.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestapprverror.rss Thu Jul 01 11:20:10 2010 +0300 @@ -21,8 +21,8 @@ NAME STAE -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappslow.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappslow.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappslow.rss Thu Jul 01 11:20:10 2010 +0300 @@ -21,8 +21,8 @@ NAME STAS -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry.cpp --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -19,107 +19,14 @@ @internalComponent - Internal Symbian test code */ -#include -#include -#include "ssmtestappsucessfulafterretry.h" +#include +#include #include "ssmtestapps.h" - -/** -Standard DLL entry point function. -Creates and returns an instance of the CApaApplication-derived class. -@return an instance of the CApaApplication-derived class -*/ -TInt E32Main() - { - return EikStart::RunApplication(CTestFAndFApplication::NewApplication); - } - -CTestFAndFApplication::CTestFAndFApplication() - { - } - -CTestFAndFApplication::~CTestFAndFApplication() - { - } - -/** -@return The application's UID -*/ -TUid CTestFAndFApplication::AppDllUid() const - { - const TUid dll = {KTestAppForFAndFUid}; - return dll; - } - -/** -@return CTestFAndFApplication or NULL if KErrNoMemory -*/ -CApaApplication* CTestFAndFApplication::NewApplication() - { - // As the framework has at this point not started up enough, and therefore the TRAP-harness and - // exception handlers aren’t available yet, this factory function is a non-leaving function and - // can't use the new(Eleave) operator. - return new CTestFAndFApplication(); - } - -/** -Called by the UI framework at application start-up to create an instance of the document class. -@leave KErrNoMemory -@return A CTestFAndFDocument -*/ -CApaDocument* CTestFAndFApplication::CreateDocumentL() - { - return CTestFAndFDocument::NewL(*this); - } - -CTestFAndFDocument::CTestFAndFDocument(CEikApplication& aApp) : CEikDocument(aApp) - { - } - -CTestFAndFDocument::~CTestFAndFDocument() - { - } - -/** -Factory function for this class -@return a new CEndTaskTestDocument instance. -*/ -CTestFAndFDocument* CTestFAndFDocument::NewL(CEikApplication& aApp) - { - return new(ELeave) CTestFAndFDocument(aApp); - } - - - -/** -Called by the UI framework to construct the application UI class. -Note that the app UI's ConstructL() is called by the UI framework. -*/ -CEikAppUi* CTestFAndFDocument::CreateAppUiL() - { - return new(ELeave) CTestFAndFAppUi(); - } - - - -CTestFAndFAppUi::CTestFAndFAppUi() - { - } - - - -CTestFAndFAppUi::~CTestFAndFAppUi() - { - } - - - -void CTestFAndFAppUi::ConstructL() - { - // Complete the UI framework's construction of the App UI. - BaseConstructL(CEikAppUi::ENoAppResourceFile); - +// This exe fails to start for a specified number of times given in failCount, +// decrements the failCount each time and starts successfully once the fail count is exhausted +static void StartProcessL() +{ RFs fs; RFileReadStream readStream; RFileWriteStream writeStream; @@ -159,6 +66,29 @@ RProcess::Rendezvous(KErrGeneral); } CleanupStack::PopAndDestroy(3, &fs); +} + +/** +Process entry point function. +@return KErrNone if successful; KErrNoMemory if there is insufficient memory; otherwise, one of the other system-wide error codes. +*/ +TInt E32Main() + { + CTrapCleanup* cleanup=CTrapCleanup::New(); + + TInt error = KErrNoMemory; + if (cleanup) + { + TRAP(error, StartProcessL()); + delete cleanup; + } + + if (KErrNone != error) + { + User::Panic(_L("SUCCESSFULRETRY"),error); + } + User::WaitForAnyRequest(); + return error; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry.rss Fri Jun 11 14:56:08 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -// Copyright (c) 2007-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: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -NAME FNDF - -#include -#include - -RESOURCE RSS_SIGNATURE { } - -RESOURCE TBUF { buf=""; } - - diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry_reg.rss --- a/sysstatemgmt/systemstatemgr/test/testapps/src/ssmtestappsucessfulafterretry_reg.rss Fri Jun 11 14:56:08 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -// Copyright (c) 2007-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: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -#include - -UID2 KUidAppRegistrationResourceFile -UID3 0x20010332 - -RESOURCE APP_REGISTRATION_INFO - { - // filename of application binary (minus extension) - app_file="ssmtestappsucessfulafterretry"; - } - diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tipcfuzz/group/tipcfuzz.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tipcfuzz/group/tipcfuzz.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,28 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmIpcFuzzTests EN"} + +; Vendor name +: "SsmIpcFuzzTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tipcfuzz\scripts\tipcfuzz.script"-"c:\devicesrv\ssmatest\tipcfuzz.script" diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tss/group/ssmatest_tss.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tss/group/ssmatest_tss.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,38 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmTssTests EN"} + +; Vendor name +: "SsmTssTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_appstart.script"-"c:\devicesrv\ssmatest\ssmatest_tss_appstart.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_appstartapparcinit.script"-"c:\devicesrv\ssmatest\ssmatest_tss_appstartapparcinit.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_apptimeout.script"-"c:\devicesrv\ssmatest\ssmatest_tss_apptimeout.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_procstart.script"-"c:\devicesrv\ssmatest\ssmatest_tss_procstart.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_procstartmon.script"-"c:\devicesrv\ssmatest\ssmatest_tss_procstartmon.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_errors.script"-"c:\devicesrv\ssmatest\ssmatest_tss_errors.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_appstartrverror.script"-"c:\devicesrv\ssmatest\ssmatest_tss_appstartrverror.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_startandcancel.script"-"c:\devicesrv\ssmatest\ssmatest_tss_startandcancel.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_appstartmultiple.script"-"c:\devicesrv\ssmatest\ssmatest_tss_appstartmultiple.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tss\scripts\ssmatest_tss_procstartwithfandf.script"-"c:\devicesrv\ssmatest\ssmatest_tss_procstartwithfandf.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tss/src/tss_apptimeout.cpp --- a/sysstatemgmt/systemstatemgr/test/tss/src/tss_apptimeout.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/tss/src/tss_apptimeout.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -26,7 +26,6 @@ #include "tss_apptimeout.h" #include "ssmtestapps.h" -#include "ssmtestappsucessfulafterretry.h" #include "ssmtestappslow.h" const TInt KWaitTime = 300; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tss/src/tss_procstartwithfandf.cpp --- a/sysstatemgmt/systemstatemgr/test/tss/src/tss_procstartwithfandf.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/tss/src/tss_procstartwithfandf.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -24,8 +24,8 @@ #include "tss_procstartwithfandf.h" -#include "ssmtestappsucessfulafterretry.h" #include "ssmtestappslow.h" +#include "ssmtestapps.h" const TInt KProcStartStopperTimeout = 5000000; const TInt KWaitTimeForTestAppForFAndF = 500; // 500ms is the delay given for the KTestAppForFAndF test app for each retry. diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tssm/group/ssmatest_tssm.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tssm/group/ssmatest_tssm.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,50 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmTSsmTests EN"} + +; Vendor name +: "SsmTSsmTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swptransitionengine.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swptransitionengine.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_platsec.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_platsec.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_paniccle.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_paniccle.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_server.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_server.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_statefurthertransition.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_statefurthertransition.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_conditionalcommands.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_conditionalcommands.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_ssmcledeadlock.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_ssmcledeadlock.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_repeatedpublishstate.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_repeatedpublishstate.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_statepolicyresolver.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_statepolicyresolver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_statetransitionengine.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_statetransitionengine.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swpcommonplugin.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swpcommonplugin.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swphandlecleret.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swphandlecleret.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swpdependencies.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swpdependencies.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swppolicymap.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swppolicymap.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swppolicyresolver.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swppolicyresolver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swptransitionscheduler.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swptransitionscheduler.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_swprequesthandler.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_swprequesthandler.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_validstatelist.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_validstatelist.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_validswplist.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_validswplist.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_notifypropertychange.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_notifypropertychange.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_rswppolicysess.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_rswppolicysess.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tssm\scripts\ssmatest_ssm_cmdexecution_oom.script"-"c:\devicesrv\ssmatest\ssmatest_ssm_cmdexecution_oom.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_swptransitionengine.cpp --- a/sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_swptransitionengine.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_swptransitionengine.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -281,7 +281,9 @@ CleanupStack::PushL(cleSession); // Define and set the rproperty - TEST(KErrNone == iProperty.Define(RProcess().SecureId(), KSwpTestKey1, RProperty::EInt)); + TInt err = (iProperty.Define(RProcess().SecureId(), KSwpTestKey1, RProperty::EInt)); + INFO_PRINTF2(_L("doTestRequestSimpleL :: Define KSwpTestKey1 returns : %d "), err); + TEST ((KErrNone == err) ||(KErrAlreadyExists == err)); TEST(KErrNone == iProperty.Set(RProcess().SecureId(), KSwpTestKey1, 0)); TInt value; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_validswplist.cpp --- a/sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_validswplist.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatemgr/test/tssm/src/tssm_step_validswplist.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -19,6 +19,7 @@ @internalComponent - Internal Symbian test code */ +#include #include "ssmserverpanic.h" #include "ssmswppolicyframe.h" #include "ssmswppolicyresolver.h" @@ -33,6 +34,8 @@ const TInt KTestInvalidPanicCategory = -988; +// property uids should be real uids (use these temporarily for test purposes) +const TUint key={0x01}; _LIT(KSsmSwpPolicyServerName, "TestSsmSwpPolicyServer"); //---------------------------------------------------------------------------------------------------------------- @@ -65,7 +68,7 @@ User::SetJustInTime(EFalse); thread.Resume(); User::WaitForRequest(status); - + // always expecting a state transition engine panic TExitCategoryName category = thread.ExitCategory(); if (category.Compare(KPanicSysStateMgr) != 0) @@ -101,9 +104,6 @@ CleanupStack::PushL(sched); CActiveScheduler::Install(sched); - // property uids should be real uids (use these temporarily for test purposes) - const TUint key={0x01}; - // Create a swp policy resolver and register our property CSsmSwpPolicyResolver* resolver = CSsmSwpPolicyResolver::NewL(); CleanupStack::PushL(resolver); @@ -129,6 +129,7 @@ //Request transition according to the reason action, which will define the invalid list const TSsmSwp swp(key, aSsmValidSwpListTest->Function()); + handler->SubmitRequestL(swp); sched->Start(); @@ -200,10 +201,12 @@ __UHEAP_MARK; + TInt err = RProperty::Define(RProcess().SecureId(), key, RProperty::EInt); + TEST(err == KErrNone || err == KErrAlreadyExists); INFO_PRINTF1(_L("Checking cmd list without a Publish System Swp command")); TInt exitReason(0); SetFunction(ESwpCmdWithoutPublishSwp); - TRAPD(err, exitReason = StartSwpInvalidListInThreadL(this)); + TRAP(err, exitReason = StartSwpInvalidListInThreadL(this)); TEST(err == KErrNone); INFO_PRINTF2(_L(" -- StartSwpInvalidListInThreadL method completed with '%d'."), err); TEST(exitReason == ESwpTransitionEngineError16); @@ -243,12 +246,13 @@ TEST(err == KErrNone); INFO_PRINTF2(_L(" -- StartSwpInvalidListInThreadL method completed with '%d'."), err); const TInt threadExitReason = iThread.ExitReason(); + TBuf<16> threadExitCategory = iThread.ExitCategory(); // This is the exit reason for the ssmswppolicyserver TEST(threadExitReason == KSsmTestAppRvError); // this is the exit reason for the engine. TEST(exitReason == ESwpTransitionEngineError20); iThread.Close(); - INFO_PRINTF3(_L(" -- received panic '%d', expected was '%d'."), threadExitReason, KSsmTestAppRvError); + INFO_PRINTF4(_L(" -- received panic '%d', category '%S', expected was '%d'."), threadExitReason, &threadExitCategory, KSsmTestAppRvError); INFO_PRINTF1(_L("Checking cmd list with too many Multiple Wait command and and no deferred commands - Validation should be OK - Panic originates in HandleCleReturnValue returning an error")); exitReason=0; @@ -267,7 +271,9 @@ INFO_PRINTF2(_L(" -- StartSwpInvalidListInThreadL method completed with '%d'."), err); TEST(exitReason == ESwpTransitionEngineError20); INFO_PRINTF3(_L(" -- received panic '%d', expected was '%d'."), exitReason, ESwpTransitionEngineError20); - + + err = RProperty::Delete(RProcess().SecureId(), key); + TEST(err == KErrNone); __UHEAP_MARKEND; // this test raises panics due to negative testing - close them to clear the screen. diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatemgr/test/tsus/group/ssmatest_tsus.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatemgr/test/tsus/group/ssmatest_tsus.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,38 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SsmTSusTests EN"} + +; Vendor name +: "SsmTSusTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_adaptationpluginloader.script"-"c:\devicesrv\ssmatest\ssmatest_sus_adaptationpluginloader.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_adaptionserver.script"-"c:\devicesrv\ssmatest\ssmatest_sus_adaptionserver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_supinfo.script"-"c:\devicesrv\ssmatest\ssmatest_sus_supinfo.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_suploader.script"-"c:\devicesrv\ssmatest\ssmatest_sus_suploader.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_platsec.script"-"c:\devicesrv\ssmatest\ssmatest_sus_platsec.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_platsec2.script"-"c:\devicesrv\ssmatest\ssmatest_sus_platsec2.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_utilserver.script"-"c:\devicesrv\ssmatest\ssmatest_sus_utilserver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_loadplugin.script"-"c:\devicesrv\ssmatest\ssmatest_sus_loadplugin.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatemgr\test\tsus\scripts\ssmatest_sus_adptpluginloaderoom.script"-"c:\devicesrv\ssmatest\ssmatest_sus_adptpluginloaderoom.script" + + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/group/stateadaptationref.mmp --- a/sysstatemgmt/systemstateplugins/adptplugin/group/stateadaptationref.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/group/stateadaptationref.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -36,5 +36,6 @@ deffile stateadaptationref.def library euser.lib +library ssmcmn.lib SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/inc/emergencycallrfadaptationref.h --- a/sysstatemgmt/systemstateplugins/adptplugin/inc/emergencycallrfadaptationref.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/inc/emergencycallrfadaptationref.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -37,10 +37,17 @@ void ActivateRfForEmergencyCall(TRequestStatus& aStatus); void DeactivateRfForEmergencyCall(TRequestStatus& aStatus); void Cancel(); - + private: CEmergencyCallRfAdaptationRef(); ~CEmergencyCallRfAdaptationRef(); + void ConstructL(); + //Helper function to check for P&S Key + TBool IsTestPsKeyDefined(); + +private: + MEmergencyCallRfAdaptation* iSaaEmergencyCallRfAdaptationDll; + RLibrary iSaaEmergencyCallRfAdaptationLib; }; #endif // __EMERGENCYCALLRFADAPTATION_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/inc/miscadaptationref.h --- a/sysstatemgmt/systemstateplugins/adptplugin/inc/miscadaptationref.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/inc/miscadaptationref.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -59,16 +59,20 @@ void GetSimLanguagesL(CBufBase* aBuf, TInt aCount); void GetHiddenReset(TDes8& aHiddenResetPckg, TRequestStatus& aStatus); void Cancel(); - + private: CMiscAdaptationRef(); void ConstructL(); ~CMiscAdaptationRef(); + //Helper function to check for P&S Key + TBool IsTestPsKeyDefined(); private: TInt iTestCaseNum; RFs iFs; RFileReadStream iFile; + MMiscAdaptation* iSaaMiscAdaptationDll; + RLibrary iSaaMiscAdaptationLib; }; #endif // __MISCADAPTATION_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/inc/rtcadaptationref.h --- a/sysstatemgmt/systemstateplugins/adptplugin/inc/rtcadaptationref.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/inc/rtcadaptationref.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -37,6 +37,13 @@ private: CRtcAdaptationRef(); + void ConstructL(); + //Helper function to check for P&S Key + TBool IsTestPsKeyDefined(); + +private: + MRtcAdaptation* iSaaRtcAdaptationDll; + RLibrary iSaaRtcAdaptationLib; }; #endif // __RTCADAPTATION_H__ diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/inc/simadaptationref.h --- a/sysstatemgmt/systemstateplugins/adptplugin/inc/simadaptationref.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/inc/simadaptationref.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,8 +27,7 @@ On a device when NotifySimEvent is called, Sim Adaptation Plug-in would request for notification from the Cooperating System for 'aEvent'. - On HRP/Techview,the reference implementation has to complete the notification request with KErrNotSupported - since there is no Cooperating System on HRP/Techview. + The reference implementation has to complete the notification request with KErrNotSupported. But this implementation will cause problems in the following scenario. @@ -45,7 +44,7 @@ In this context if NotifySimEvent just completes the message immediately this results in a infinite loop and starves other active objects with same priority. - This makes testing of Adaptation servers notification functionality impossible on HRP/Techview. + This makes testing of Adaptation servers notification functionality impossible on PlatSim/device. *********Solution********* @@ -97,8 +96,13 @@ private: CSimAdaptationRef(); void ConstructL(); + //Helper function to check for P&S Key + TBool IsTestPsKeyDefined(); + private: CSimRefAdaptationTimer* iTimer; + MSimAdaptation* iSaaSimAdaptationDll; + RLibrary iSaaSimAdaptationLib; }; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/inc/stateadaptationref.h --- a/sysstatemgmt/systemstateplugins/adptplugin/inc/stateadaptationref.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/inc/stateadaptationref.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,8 +27,7 @@ On a device when NotifyCoopSysEvent is called, State Adaptation Plug-in would request for notification from the Cooperating System for 'aEvent'. - On HRP/Techview,the reference implementation has to complete the notification request with KErrNotSupported - since there is no Cooperating System on HRP/Techview. + The reference implementation has to complete the notification request with KErrNotSupported. But this implementation will cause problems in the following scenario. @@ -45,7 +44,7 @@ In this context if NotifyCoopSysEvent just completes the message immediately this results in a infinite loop and starves other active objects with same priority. - This makes testing of Adaptation servers notification functionality impossible on HRP/Techview. + This makes testing of Adaptation servers notification functionality impossible on PlatSim/device. *********Solution********* @@ -97,13 +96,17 @@ void NotifyCoopSysEvent(TDes8& aEvent, TRequestStatus& aStatus); void NotifyCancel(); - + private: CStateAdaptationRef(); void ConstructL(); + //Helper function to check for P&S Key + TBool IsTestPsKeyDefined(); private: - CStateRefAdaptationTimer* iTimer; + CStateRefAdaptationTimer* iTimer; + MStateAdaptation* iSaaStateAdaptationDll; + RLibrary iSaaStateAdaptationLib; }; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/src/emergencycallrfadaptationref.cpp --- a/sysstatemgmt/systemstateplugins/adptplugin/src/emergencycallrfadaptationref.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/src/emergencycallrfadaptationref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -10,11 +10,21 @@ // // Contributors: // -// Description: +// Description: This adaptation plugin implementation is for test/reference purposes. +// The loading of this plugin is controlled through test macro defined in the iby file "ssmcompatibility.iby". +// If the macro "TEST_SSM_MACRO" is not defined, original plugins are loaded and this plugin is not loaded. +// If the test P & S key is set in the test code, the calls are routed to the reference or dummy implementations. +// Else the actual plugins are loaded and the calls are routed to the actual implementations. +// The test P & S key which it looks for is KEmergencyCallRfAdaptationPluginPropertyKey(0x2000E657) // +#include "ssmdebug.h" +#include #include "emergencycallrfadaptationref.h" +const TUint32 KEmergencyCallRfAdaptationPluginPropertyKey = 0x2000E657; +const TUid KPropertyCategory={0x2000D75B}; + /** Function to create new Emergency Call RF Adaptation Plugin. @@ -32,11 +42,25 @@ CEmergencyCallRfAdaptationRef* CEmergencyCallRfAdaptationRef::NewL() { CEmergencyCallRfAdaptationRef* self = new(ELeave) CEmergencyCallRfAdaptationRef; + + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; } +void CEmergencyCallRfAdaptationRef::ConstructL() + { + DEBUGPRINT1A("Loading Actual plugins"); + _LIT(KSaaEmergencyCallRfAdaptationDLL, "saaemergencycallrfadaptation.dll"); + User::LeaveIfError(iSaaEmergencyCallRfAdaptationLib.Load(KSaaEmergencyCallRfAdaptationDLL)); + iSaaEmergencyCallRfAdaptationDll = (MEmergencyCallRfAdaptation *)(iSaaEmergencyCallRfAdaptationLib.Lookup(1)()); + } + CEmergencyCallRfAdaptationRef::~CEmergencyCallRfAdaptationRef() { + iSaaEmergencyCallRfAdaptationLib.Close(); } CEmergencyCallRfAdaptationRef::CEmergencyCallRfAdaptationRef() @@ -48,36 +72,65 @@ */ void CEmergencyCallRfAdaptationRef::Release() { - delete this; + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Release:: Calling Actual plugins functions (saaemergencycallrfadaptation.dll)"); + iSaaEmergencyCallRfAdaptationDll->Release(); + } + else + { + DEBUGPRINT1A("Release:: Calling Reference plugins functions (emergencycallrfadaptationref.dll)"); + } + delete this; } /** Request RF activation so that an emergency call can be made. - Reference implementation completes the request with KErrNone as support for RF activation is not available on Techview/H4 hrp. + Reference implementation completes the request with KErrNone. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing @param aStatus to complete when the operation has finished @see TRequestStatus */ void CEmergencyCallRfAdaptationRef::ActivateRfForEmergencyCall(TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("ActivateRfForEmergencyCall:: Calling Actual plugins functions (saaemergencycallrfadaptation.dll)"); + iSaaEmergencyCallRfAdaptationDll->ActivateRfForEmergencyCall(aStatus); + } + else + { + DEBUGPRINT1A("ActivateRfForEmergencyCall:: Calling Reference plugins functions (emergencycallrfadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } /** Request RF deactivation after an emergency call have been made. - Reference implementation completes the request with KErrNone as support for RF deactivation is not available on Techview/H4 hrp. - + Reference implementation completes the request with KErrNone. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing + @param aStatus to complete when the operation has finished @see TRequestStatus */ void CEmergencyCallRfAdaptationRef::DeactivateRfForEmergencyCall(TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); - } + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("DeactivateRfForEmergencyCall:: Calling Actual plugins functions (saaemergencycallrfadaptation.dll)"); + iSaaEmergencyCallRfAdaptationDll->DeactivateRfForEmergencyCall(aStatus); + } + else + { + DEBUGPRINT1A("DeactivateRfForEmergencyCall:: Calling Reference plugins functions (emergencycallrfadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } + } /** Cancel the outstanding request. Reference implementation completes the requests immediately so there is nothing to cancel. @@ -85,4 +138,26 @@ */ void CEmergencyCallRfAdaptationRef::Cancel() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Cancel:: Calling Actual plugins functions (saaemergencycallrfadaptation.dll)"); + iSaaEmergencyCallRfAdaptationDll->Cancel(); + } } + +/** + Helper function to check for P&S Key +*/ +TBool CEmergencyCallRfAdaptationRef::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KEmergencyCallRfAdaptationPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + //Could not retrieve property value. Tests might fail + DEBUGPRINT1A("IsTestPsKeyDefined ERROR :: Could not retrieve property value)"); + } + return testPsKeyDefined; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/src/miscadaptationref.cpp --- a/sysstatemgmt/systemstateplugins/adptplugin/src/miscadaptationref.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/src/miscadaptationref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -10,14 +10,23 @@ // // Contributors: // -// Description: +// Description: This adaptation plugin implementation is for test/reference purposes. +// The loading of this plugin is controlled through test macro defined in the iby file "ssmcompatibility.iby". +// If the macro "TEST_SSM_MACRO" is not defined, original plugins are loaded and this plugin is not loaded. +// If the test P & S key is set in the test code, the calls are routed to the reference or dummy implementations. +// Else the actual plugins are loaded and the calls are routed to the actual implementations. +// The test P & S key which it looks for is KMiscPluginPropertyKey(0x2000E658) // +#include "ssmdebug.h" #include "miscadaptationref.h" #include +#include _LIT(KTestCmdSecurityCheckTestFile, "c:\\cmdsecuritychecktest\\pinchecksecuritycaseno.txt"); +const TUint32 KMiscPluginPropertyKey = 0x2000E658; +const TUid KPropertyCategory={0x2000D75B}; // tcustomcmd_server SID = KSsmServerName SID (changed in tcustomcmd_server.mmp file) /** Function to create new Misc Adaptation Plugin. Used for a collection of activities. @@ -42,6 +51,7 @@ CMiscAdaptationRef::~CMiscAdaptationRef() { iFs.Close(); + iSaaMiscAdaptationLib.Close(); } CMiscAdaptationRef::CMiscAdaptationRef() @@ -50,6 +60,11 @@ void CMiscAdaptationRef::ConstructL() { + DEBUGPRINT1A("Loading Actual plugins"); + _LIT(KSaaMiscAdaptationDLL, "saamiscadaptation.dll"); + User::LeaveIfError(iSaaMiscAdaptationLib.Load(KSaaMiscAdaptationDLL)); + iSaaMiscAdaptationDll = (MMiscAdaptation *)(iSaaMiscAdaptationLib.Lookup(1)()); + iTestCaseNum = 1; User::LeaveIfError(iFs.Connect()); } @@ -59,29 +74,45 @@ */ void CMiscAdaptationRef::Release() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Release :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->Release(); + } delete this; } /** Get the start-up mode from the Cooperating System. - Reference implementation completes with KErrNone as a cooperating system does not exist on Techview/H4 hrp. + Reference implementation completes the request with KErrNone. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing @param aModePckg should contain start-up of the Cooperating System on completion @param aStatus to complete when the operation has finished @see TRequestStatus */ -void CMiscAdaptationRef::GetGlobalStartupMode(TDes8& /*aModePckg*/, TRequestStatus& aStatus) +void CMiscAdaptationRef::GetGlobalStartupMode(TDes8& aModePckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("GetGlobalStartupMode :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->GetGlobalStartupMode(aModePckg,aStatus); + } + else + { + DEBUGPRINT1A("GetGlobalStartupMode :: Calling ref plugins functions (miscadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } /** Prepare language codes stored in the SIM in preferred language lists. The next call should be GetSimLanguagesL() - Reference implementation completes with KErrNotSupported as SIM support is not available on Techview/H4 hrp. - + Reference implementation completes with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing + @param aPriority priority for which the language lists need to be prepared @param aSizePckg on return contains the size of the buffer, which a client should allocate and pass as one of the parameters (TInt aCount) to GetSimLanguagesL() @param aStatus to complete when the operation has finished @@ -90,34 +121,62 @@ @see TRequestStatus @see GetSimLanguagesL */ -void CMiscAdaptationRef::PrepareSimLanguages(TSsmLanguageListPriority /*aPriority*/, TDes8& /*aSizePckg*/, TRequestStatus& aStatus) +void CMiscAdaptationRef::PrepareSimLanguages(TSsmLanguageListPriority aPriority, TDes8& aSizePckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - // No support for SIM on H4hrp/Techview. - User::RequestComplete(status, KErrNotSupported); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("PrepareSimLanguages :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->PrepareSimLanguages(aPriority,aSizePckg,aStatus); + } + else + { + DEBUGPRINT1A("PrepareSimLanguages :: Calling ref plugins functions (miscadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + // No support for SIM on H4hrp/Techview. + User::RequestComplete(status, KErrNotSupported); + } } /** Get language codes stored in the SIM in preferred language lists. PrepareSimLanguages() call should precede this call. - Reference implementation completes with KErrNotSupported as SIM support is not available on Techview/H4 hrp. - + Reference implementation completes with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing + @param aBuf should contain the language lists on completion @param aCount to contain the count of the languages @see PrepareSimLanguages */ -void CMiscAdaptationRef::GetSimLanguagesL(CBufBase* /*aBuf*/, TInt /*aCount*/) +void CMiscAdaptationRef::GetSimLanguagesL(CBufBase* aBuf, TInt aCount) { - User::Leave(KErrNotSupported); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("GetSimLanguagesL :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->GetSimLanguagesL(aBuf,aCount); + } + else + { + DEBUGPRINT1A("GetSimLanguagesL :: Calling ref plugins functions (miscadaptationref.dll)"); + User::Leave(KErrNotSupported); + } } -void CMiscAdaptationRef::GetHiddenReset(TDes8& /*aHiddenResetPckg*/, TRequestStatus& aStatus) +void CMiscAdaptationRef::GetHiddenReset(TDes8& aHiddenResetPckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - // No support for Reset in HRP/Techview. - User::RequestComplete(status, KErrNotSupported); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("GetHiddenReset :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->GetHiddenReset(aHiddenResetPckg,aStatus); + } + else + { + DEBUGPRINT1A("GetHiddenReset :: Calling ref plugins functions (miscadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + // No support for Reset in HRP/Techview. + User::RequestComplete(status, KErrNotSupported); + } } @@ -127,11 +186,18 @@ */ void CMiscAdaptationRef::Cancel() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Cancel :: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->Cancel(); + } } /** Request the next security state. - Techview/H4hrp does not support SIM operations so a reference implementation would always return 'KErrNotSupported'. + Reference implementation would always return 'KErrNotSupported'. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing + The function is modified to suit testing needs for PinCheck Security Command. A real implementation is intended to differ a lot based on the runtime changes/events on the device. @@ -155,251 +221,276 @@ */ void CMiscAdaptationRef::SecurityStateChange(TInt aState, TDes8& aResponsePckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - StartupAdaptation::TSecurityStateInfo info = StartupAdaptation::EYes; - - //Read Test case number from the file - TInt err = iFile.Open(iFs, KTestCmdSecurityCheckTestFile, EFileRead); - if (err == KErrNone) - { - TRAP(err,iTestCaseNum = iFile.ReadInt32L()); - iFile.Close(); - if(err) - { - RDebug::Printf("Error while reading tst case number from the file pinchecksecuritycaseno.txt"); - User::RequestComplete(status, err); - return; - } - } - switch(iTestCaseNum) - { - case EPINCHECK01: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("SecurityStateChange:: Calling Actual plugins functions (saamiscadaptation.dll)"); + iSaaMiscAdaptationDll->SecurityStateChange(aState,aResponsePckg,aStatus); + } + else + { + DEBUGPRINT1A("SecurityStateChange:: Calling ref plugins functions (miscadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + StartupAdaptation::TSecurityStateInfo info = StartupAdaptation::EYes; + + //Read Test case number from the file + TInt err = iFile.Open(iFs, KTestCmdSecurityCheckTestFile, EFileRead); + if (err == KErrNone) + { + TRAP(err,iTestCaseNum = iFile.ReadInt32L()); + iFile.Close(); + if(err) + { + RDebug::Printf("Error while reading tst case number from the file pinchecksecuritycaseno.txt"); + User::RequestComplete(status, err); + return; + } + } + switch(iTestCaseNum) + { + case EPINCHECK01: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::EPINRequired: + info = StartupAdaptation::EPIN1Required; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockOk; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::EPINRequired: - info = StartupAdaptation::EPIN1Required; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockOk; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK02: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + case EPINCHECK02: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK03: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::EPUK1Required; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockOk; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK04: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + case EPINCHECK03: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::EPUK1Required; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockOk; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::EPUK1Required; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockOk; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK05: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + case EPINCHECK04: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::EPUK1Required; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockOk; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::EUPUKRequired; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockRestrictionOn; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK06: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + case EPINCHECK05: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::EUPUKRequired; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockRestrictionOn; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::EUPUKRequired; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockRestrictionPending; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK07: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; + case EPINCHECK06: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::EUPUKRequired; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockRestrictionPending; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::EUPUKRequired; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockRestricted; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - case EPINCHECK08: - switch(aState) - { - case StartupAdaptation::ESIMPresent: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESIMInvalid: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMRejected: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::ESIMBlocked: - info = StartupAdaptation::ENo; - break; - case StartupAdaptation::EPINRequired: - info = StartupAdaptation::EPIN1Required; - break; - case StartupAdaptation::ESIMLock: - info = StartupAdaptation::ESimLockOk; - break; - case StartupAdaptation::ESecurityCheckOK: - info = StartupAdaptation::EYes; - break; - case StartupAdaptation::ESecurityCheckFailed: - info = StartupAdaptation::EYes; - break; - default: - break; - } - break; - default: - break; - } - TPckgBuf securityStateInfoResult(info); - aResponsePckg = securityStateInfoResult; - User::RequestComplete(status, KErrNone); + case EPINCHECK07: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::EUPUKRequired; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockRestricted; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } + break; + case EPINCHECK08: + switch(aState) + { + case StartupAdaptation::ESIMPresent: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESIMInvalid: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMRejected: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::ESIMBlocked: + info = StartupAdaptation::ENo; + break; + case StartupAdaptation::EPINRequired: + info = StartupAdaptation::EPIN1Required; + break; + case StartupAdaptation::ESIMLock: + info = StartupAdaptation::ESimLockOk; + break; + case StartupAdaptation::ESecurityCheckOK: + info = StartupAdaptation::EYes; + break; + case StartupAdaptation::ESecurityCheckFailed: + info = StartupAdaptation::EYes; + break; + default: + break; + } + break; + default: + break; + } + TPckgBuf securityStateInfoResult(info); + aResponsePckg = securityStateInfoResult; + User::RequestComplete(status, KErrNone); + } } +/** + Helper function to check for P&S Key +*/ +TBool CMiscAdaptationRef::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KMiscPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KMiscPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + //Could not retrieve property value. Tests might fail + DEBUGPRINT1A("IsTestPsKeyDefined ERROR :: Could not retrieve property value)"); + } + return testPsKeyDefined; + } + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/src/rtcadaptationref.cpp --- a/sysstatemgmt/systemstateplugins/adptplugin/src/rtcadaptationref.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/src/rtcadaptationref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -10,16 +10,26 @@ // // Contributors: // -// Description: +// Description: This adaptation plugin implementation is for test/reference purposes. +// The loading of this plugin is controlled through test macro defined in the iby file "ssmcompatibility.iby". +// If the macro "TEST_SSM_MACRO" is not defined, original plugins are loaded and this plugin is not loaded. +// If the test P & S key is set in the test code, the calls are routed to the reference or dummy implementations. +// Else the actual plugins are loaded and the calls are routed to the actual implementations. +// The test P & S key which it looks for is KRtcAdaptationPluginPropertyKey (0x2000D76A) // #include "rtcadaptationref.h" #include +#include "ssmdebug.h" const TUid KAlarmServerUID = {0x101f5027}; const TInt KTestRTCValueKey = 200; + +const TUint32 KRtcAdaptationPluginPropertyKey = 0x2000D76C; +const TUid KPropertyCategory={0x2000D75B}; + /** Function to create new Rtc Adaptation Plugin. @@ -34,11 +44,25 @@ CRtcAdaptationRef* CRtcAdaptationRef::NewL() { CRtcAdaptationRef* self = new(ELeave) CRtcAdaptationRef; + + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(); + return self; } +void CRtcAdaptationRef::ConstructL() + { + DEBUGPRINT1A("Loading Actual plugins"); + _LIT(KSaaRtcAdaptationDLL, "saartcadaptation.dll"); + User::LeaveIfError(iSaaRtcAdaptationLib.Load(KSaaRtcAdaptationDLL)); + iSaaRtcAdaptationDll = (MRtcAdaptation *)(iSaaRtcAdaptationLib.Lookup(1)()); + } + CRtcAdaptationRef::~CRtcAdaptationRef() { + iSaaRtcAdaptationLib.Close(); } CRtcAdaptationRef::CRtcAdaptationRef() @@ -50,28 +74,44 @@ */ void CRtcAdaptationRef::Release() { - delete this; + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Release:: Calling Actual plugins functions (saartcadaptation.dll)"); + iSaaRtcAdaptationDll->Release(); + } + delete this; } /** Check that the RTC is valid. - Reference implementation completes the request with KErrNotSupported as support for RTC is not available on Techview/H4 hrp. - + Reference implementation completes the request with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing + @param aValidityPckg on return contains the status of the validity of the RTC as a boolean value @param aStatus to complete when the operation has finished @see TRequestStatus */ -void CRtcAdaptationRef::ValidateRtc(TDes8& /*aValidityPckg*/, TRequestStatus& aStatus) +void CRtcAdaptationRef::ValidateRtc(TDes8& aValidityPckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNotSupported); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("ValidateRtc:: Calling Actual plugins functions (saartcadaptation.dll)"); + iSaaRtcAdaptationDll->ValidateRtc(aValidityPckg, aStatus); + } + else + { + DEBUGPRINT1A("ValidateRtc:: Calling ref plugins functions (rtcadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNotSupported); + } } /** Set a device wake-up alarm time, in UTC (coordinated universal time), in the RTC. - Reference implementation completes the request with KErrNotSupported as support for RTC is not available on Techview/H4 hrp. + Reference implementation completes the request with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing For testing purposes it sets a pub sub property defined in test code. @param aAlarmTimePckg requested wake up time @@ -81,19 +121,29 @@ */ void CRtcAdaptationRef::SetWakeupAlarm(TDesC8& aAlarmTimePckg, TRequestStatus& aStatus) { - // Set this pub sub property (for testing purposes) - // The property is defined in the test code. In normal operation this will fail silently because the property has not been defined. - RProperty::Set(KAlarmServerUID, KTestRTCValueKey, aAlarmTimePckg); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("SetWakeupAlarm:: Calling Actual plugins functions (saartcadaptation.dll)"); + iSaaRtcAdaptationDll->SetWakeupAlarm(aAlarmTimePckg, aStatus); + } + else + { + DEBUGPRINT1A("SetWakeupAlarm:: Calling ref plugins functions (rtcadaptationref.dll)"); + // Set this pub sub property (for testing purposes) + // The property is defined in the test code. In normal operation this will fail silently because the property has not been defined. + RProperty::Set(KAlarmServerUID, KTestRTCValueKey, aAlarmTimePckg); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + // No support for RTC on HRP/Techview. + User::RequestComplete(status, KErrNotSupported); + } + } - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - // No support for RTC on HRP/Techview. - User::RequestComplete(status, KErrNotSupported); - } /** Delete the current device wake-up alarm time in the RTC. - Reference implementation completes the request with KErrNotSupported as support for RTC is not available on Techview/H4 hrp. + Reference implementation completes the request with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing For testing purposes it sets a pub sub property to a NULL value defined in test code. @param aStatus to complete when the operation has finished @@ -102,16 +152,24 @@ */ void CRtcAdaptationRef::UnsetWakeupAlarm(TRequestStatus& aStatus) { - // Set this pub sub property to a NULL value because we are unsetting the RTC (for testing purposes) - // The property is defined in the test code. In normal operation this will fail silently because the property has not been defined. - TTime nullTime(Time::NullTTime()); - TPckgC wakeupAlarmTimePckg(nullTime); - RProperty::Set(KAlarmServerUID, KTestRTCValueKey, wakeupAlarmTimePckg); - - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - // No support for RTC on HRP/Techview. - User::RequestComplete(status, KErrNotSupported); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("UnsetWakeupAlarm:: Calling Actual plugins functions (saartcadaptation.dll)"); + iSaaRtcAdaptationDll->UnsetWakeupAlarm(aStatus); + } + else + { + DEBUGPRINT1A("UnsetWakeupAlarm:: Calling ref plugins functions (rtcadaptationref.dll)"); + // Set this pub sub property to a NULL value because we are unsetting the RTC (for testing purposes) + // The property is defined in the test code. In normal operation this will fail silently because the property has not been defined. + TTime nullTime(Time::NullTTime()); + TPckgC wakeupAlarmTimePckg(nullTime); + RProperty::Set(KAlarmServerUID, KTestRTCValueKey, wakeupAlarmTimePckg); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + // No support for RTC on HRP/Techview. + User::RequestComplete(status, KErrNotSupported); + } } /** @@ -120,4 +178,25 @@ */ void CRtcAdaptationRef::Cancel() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("Cancel:: Calling Actual plugins functions (saartcadaptation.dll)"); + iSaaRtcAdaptationDll->Cancel(); + } } + +/** + Helper function to check for P&S Key +*/ +TBool CRtcAdaptationRef::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KRtcAdaptationPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KRtcAdaptationPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + //Could not retrieve property value. Tests might fail + DEBUGPRINT1A("IsTestPsKeyDefined ERROR :: Could not retrieve property value)"); + } + return testPsKeyDefined; + } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/src/simadaptationref.cpp --- a/sysstatemgmt/systemstateplugins/adptplugin/src/simadaptationref.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/src/simadaptationref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -10,10 +10,20 @@ // // Contributors: // -// Description: +// Description: This adaptation plugin implementation is for test/reference purposes. +// The loading of this plugin is controlled through test macro defined in the iby file "ssmcompatibility.iby". +// If the macro "TEST_SSM_MACRO" is not defined, original plugins are loaded and this plugin is not loaded. +// If the test P & S key is set in the test code, the calls are routed to the reference or dummy implementations. +// Else the actual plugins are loaded and the calls are routed to the actual implementations. +// The test P & S key which it looks for is KSimPluginPropertyKey (0x2000D76A) // #include "simadaptationref.h" +#include "ssmdebug.h" +#include + +const TUint32 KSimPluginPropertyKey = 0x2000D76B; +const TUid KPropertyCategory={0x2000D75B}; /** Function to create new Sim Adaptation Plugin. @@ -40,6 +50,7 @@ CSimAdaptationRef::~CSimAdaptationRef() { delete iTimer; + iSaaSimAdaptationLib.Close(); } CSimAdaptationRef::CSimAdaptationRef() @@ -48,6 +59,11 @@ void CSimAdaptationRef::ConstructL() { + DEBUGPRINT1A("Loading Actual plugins"); + _LIT(KSaaSimAdaptationDLL, "saaSimadaptation.dll"); + User::LeaveIfError(iSaaSimAdaptationLib.Load(KSaaSimAdaptationDLL)); + iSaaSimAdaptationDll = (MSimAdaptation *)(iSaaSimAdaptationLib.Lookup(1)()); + iTimer = CSimRefAdaptationTimer::NewL(); } @@ -57,11 +73,20 @@ delete this; } -void CSimAdaptationRef::GetSimOwned(TDes8& /*aOwnedPckg*/, TRequestStatus& aStatus) +void CSimAdaptationRef::GetSimOwned(TDes8& aOwnedPckg, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* pStatus = &aStatus; - User::RequestComplete(pStatus, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("GetSimOwned:: Calling Actual plugins functions (saaSimadaptation.dll)"); + iSaaSimAdaptationDll->GetSimOwned(aOwnedPckg,aStatus); + } + else + { + DEBUGPRINT1A("GetSimOwned :: Calling ref plugins functions (Simadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* pStatus = &aStatus; + User::RequestComplete(pStatus, KErrNone); + } } /** @@ -70,10 +95,16 @@ */ void CSimAdaptationRef::GetCancel() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("GetCancel ::Calling Actual plugins functions (saaSimadaptation.dll)"); + iSaaSimAdaptationDll->GetCancel(); + } } /** - The reference implementation completes with KErrNotSupported since there is no SIM support on HRP/Techview. + The reference implementation completes with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing On a device, Sim Adaptation Plug-in would complete 'aTypePckg' with one of the event types in TSsmSimEventType. @@ -94,8 +125,23 @@ */ void CSimAdaptationRef::NotifySimEvent(TDes8& /*aTypePckg*/, TRequestStatus& aStatus) { - aStatus = KRequestPending; - iTimer->After(2000000,aStatus); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("NotifySimEvent :: Calling Actual plugins functions (saaSimadaptation.dll)"); + /* Only clayersup.dll has an outstanding request. If this is passed to the actual plugin, the + request will never complete till a SIM event happens. This would add the test code requests in a queue + and the test code waits indefinitely. Hence, complete the request with KErrCancel. This would free the + queue for test code to be executed. It has not impact on the test environment */ + TRequestStatus *request = &aStatus; + User::RequestComplete(request, KErrCancel); + } + else + { + DEBUGPRINT1A("NotifySimEvent :: Calling ref plugins functions (Simadaptationref.dll)"); + aStatus = KRequestPending; + iTimer->After(2000000,aStatus); + } + } /** @@ -104,12 +150,36 @@ */ void CSimAdaptationRef::NotifyCancel() { - if(iTimer->IsActive()) - { - iTimer->Cancel(); - } + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("NotifyCancel :: Calling Actual plugins functions (saaSimadaptation.dll)"); + iSaaSimAdaptationDll->NotifyCancel(); + } + else + { + DEBUGPRINT1A("NotifyCancel :: Calling ref plugins functions (Simadaptationref.dll)"); + if(iTimer->IsActive()) + { + iTimer->Cancel(); + } + } } +/** + Helper function to check for P&S Key +*/ +TBool CSimAdaptationRef::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KSimPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KSimPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + //Could not retrieve property value. Tests might fail + DEBUGPRINT1A("IsTestPsKeyDefined ERROR :: Could not retrieve property value)"); + } + return testPsKeyDefined; + } CSimRefAdaptationTimer::CSimRefAdaptationTimer():CTimer(CActive::EPriorityUserInput) diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/adptplugin/src/stateadaptationref.cpp --- a/sysstatemgmt/systemstateplugins/adptplugin/src/stateadaptationref.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/adptplugin/src/stateadaptationref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -10,10 +10,21 @@ // // Contributors: // -// Description: +// Description: This adaptation plugin implementation is for test/reference purposes. +// The loading of this plugin is controlled through test macro defined in the iby file "ssmcompatibility.iby". +// If the macro "TEST_SSM_MACRO" is not defined, original plugins are loaded and this plugin is not loaded. +// If the test P & S key is set in the test code, the calls are routed to the reference or dummy implementations. +// Else the actual plugins are loaded and the calls are routed to the actual implementations. +// The test P & S key which it looks for is KStateAdaptationPluginPropertyKey (0x2000D76A) // +#include +#include #include "stateadaptationref.h" +#include "ssmdebug.h" + +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; /** Static method to create new State Adaptation Plugin. @@ -40,6 +51,7 @@ CStateAdaptationRef::~CStateAdaptationRef() { delete iTimer; + iSaaStateAdaptationLib.Close(); } CStateAdaptationRef::CStateAdaptationRef() @@ -48,6 +60,10 @@ void CStateAdaptationRef::ConstructL() { + DEBUGPRINT1A("Loading Actual plugins"); + _LIT(KSaaStateAdaptationDLL, "saastateadaptation.dll"); + User::LeaveIfError(iSaaStateAdaptationLib.Load(KSaaStateAdaptationDLL)); + iSaaStateAdaptationDll = (MStateAdaptation *)(iSaaStateAdaptationLib.Lookup(1)()); iTimer = CStateRefAdaptationTimer::NewL(); } @@ -57,39 +73,84 @@ delete this; } -void CStateAdaptationRef::RequestCoopSysStateChange(TSsmState /*aState*/, TRequestStatus& aStatus) +void CStateAdaptationRef::RequestCoopSysStateChange(TSsmState aState, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCoopSysStateChange:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCoopSysStateChange(aState, aStatus); + } + else + { + DEBUGPRINT1A("RequestCoopSysStateChange:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } void CStateAdaptationRef::RequestCoopSysSelfTest(TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCoopSysSelfTest:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCoopSysSelfTest(aStatus); + } + else + { + DEBUGPRINT1A("RequestCoopSysSelfTest:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } -void CStateAdaptationRef::RequestCoopSysPerformRestartActions(TInt /*aReason*/, TRequestStatus& aStatus) +void CStateAdaptationRef::RequestCoopSysPerformRestartActions(TInt aReason, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCoopSysPerformRestartActions:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCoopSysPerformRestartActions(aReason, aStatus); + } + else + { + DEBUGPRINT1A("RequestCoopSysPerformRestartActions:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } -void CStateAdaptationRef::RequestCoopSysPerformShutdownActions(TInt /*aReason*/, TRequestStatus& aStatus) +void CStateAdaptationRef::RequestCoopSysPerformShutdownActions(TInt aReason, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCoopSysPerformShutdownActions:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCoopSysPerformShutdownActions(aReason, aStatus); + } + else + { + DEBUGPRINT1A("RequestCoopSysPerformShutdownActions:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } -void CStateAdaptationRef::RequestCoopSysPerformRfsActions(TSsmRfsType /*aRfsType*/, TRequestStatus& aStatus) +void CStateAdaptationRef::RequestCoopSysPerformRfsActions(TSsmRfsType aRfsType, TRequestStatus& aStatus) { - aStatus = KRequestPending; - TRequestStatus* status = &aStatus; - User::RequestComplete(status, KErrNone); + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCoopSysPerformRfsActions:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCoopSysPerformRfsActions(aRfsType, aStatus); + } + else + { + DEBUGPRINT1A("RequestCoopSysPerformRfsActions:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrNone); + } } /** @@ -98,10 +159,16 @@ */ void CStateAdaptationRef::RequestCancel() { + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RequestCancel:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->RequestCancel(); + } } /** - The reference implementation completes with KErrNotSupported since there isn't a Cooperating System on HRP/Techview. + The reference implementation completes with KErrNotSupported. This is required for automated testing. + Actual plugins return expected values and this can be verified by manual testing On a device, State Adaptation Plug-in would request for notification from the Cooperating System for 'aEvent'. The above mentioned implementation is modified to facilitate testing and increase the code coverage of the Adaptation @@ -120,8 +187,22 @@ */ void CStateAdaptationRef::NotifyCoopSysEvent(TDes8& /*aEvent*/, TRequestStatus& aStatus) { - aStatus = KRequestPending; - iTimer->After(2000000,aStatus); + if(!IsTestPsKeyDefined()) + { + /* Only ssmpowersup.dll has an outstanding request. If this is passed to the actual plugin, the + request will never complete till a power event happens. This would add the test code requests in a queue + and the test code waits indefinitely. Hence, complete the request with KErrServerTerminated. This would free + the queue for test code to be executed. It has not impact on the test environment */ + aStatus = KRequestPending; + TRequestStatus* status = &aStatus; + User::RequestComplete(status, KErrServerTerminated); + } + else + { + DEBUGPRINT1A("NotifyCoopSysEvent:: Calling ref plugins functions (stateadaptationref.dll)"); + aStatus = KRequestPending; + iTimer->After(2000000,aStatus); + } } /** @@ -130,13 +211,36 @@ */ void CStateAdaptationRef::NotifyCancel() { - if(iTimer->IsActive()) - { - iTimer->Cancel(); - } + if(!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("NotifyCancel:: Calling Actual plugins functions (saastateadaptation.dll)"); + iSaaStateAdaptationDll->NotifyCancel(); + } + else + { + DEBUGPRINT1A("NotifyCancel:: Calling ref plugins functions (stateadaptationref.dll)"); + if(iTimer->IsActive()) + { + iTimer->Cancel(); + } + } } - +/** + Helper function to check for P&S Key +*/ +TBool CStateAdaptationRef::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KStateAdaptationPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KStateAdaptationPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + //Could not retrieve property value. Tests might fail + DEBUGPRINT1A("IsTestPsKeyDefined ERROR :: Could not retrieve property value)"); + } + return testPsKeyDefined; + } CStateRefAdaptationTimer::CStateRefAdaptationTimer():CTimer(CActive::EPriorityUserInput) { diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tappgsapolicy/resource/sspluginstest_tappgsapolicy.rss --- a/sysstatemgmt/systemstateplugins/test/tappgsapolicy/resource/sspluginstest_tappgsapolicy.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tappgsapolicy/resource/sspluginstest_tappgsapolicy.rss Thu Jul 01 11:20:10 2010 +0300 @@ -22,8 +22,8 @@ NAME STAG -#include -#include +#include +#include RESOURCE RSS_SIGNATURE { } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tcmncustomcmd/group/sspluginstest_tcmncustomcmd.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tcmncustomcmd/group/sspluginstest_tcmncustomcmd.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,33 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SspluginsCmnCustomcmdTests EN"} + +; Vendor name +: "SspluginsCmnCustomcmdTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tcmncustomcmd\scripts\sspluginstest_cmncustomcmd_rendezvouswithestart.script"-"c:\devicesrv\sspluginstest\sspluginstest_cmncustomcmd_rendezvouswithestart.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tcmncustomcmd\scripts\sspluginstest_cmncustomcmd_persistreboots.script"-"c:\devicesrv\sspluginstest\sspluginstest_cmncustomcmd_persistreboots.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tcmncustomcmd\scripts\sspluginstest_cmncustomcmd_cancelmonitoring.script"-"c:\devicesrv\sspluginstest\sspluginstest_cmncustomcmd_cancelmonitoring.script" + + + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/testapps/group/gsatestappgood.mmp --- a/sysstatemgmt/systemstateplugins/test/testapps/group/gsatestappgood.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/testapps/group/gsatestappgood.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -27,7 +27,8 @@ USERINCLUDE ../inc OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE +//SYSTEMINCLUDE /epoc32/include/techview LIBRARY euser.lib LIBRARY apparc.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/bld.inf --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/bld.inf Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/bld.inf Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -33,10 +33,12 @@ PRJ_TESTMMPFILES tiadaptation_plugin.mmp +definetestps.mmp PRJ_TESTEXPORTS sspluginstest_i_adaptation.iby /epoc32/rom/include/sspluginstest_i_adaptation.iby +definetestps.iby /epoc32/rom/include/definetestps.iby // batch files for emulator / hardware test execution ../scripts/sspluginstest_adaptation_i_run.bat /epoc32/data/z/sspluginstest/sspluginstest_adaptation_i_run.bat diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/definetestps.iby --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/definetestps.iby Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,23 @@ +// Copyright (c) 2010 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: +// + +#ifndef __DEFINETEST_IBY__ +#define __DEFINETEST_IBY__ + +file=ABI_DIR\BUILD_DIR\definetestps.exe sys\bin\definetestps.exe + +data=EPOCROOT##epoc32\data\Z\private\10003a3f\apps\definetestps_reg.rsc private\10003a3f\apps\definetestps_reg.rsc + +#endif // __DEFINETEST_IBY__ diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/definetestps.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/definetestps.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,51 @@ +// Copyright (c) 2010 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: +// + +TARGET definetestps.exe +TARGETTYPE exe +CAPABILITY WriteDeviceData + +UID 0x100039CE 0x200315B2 +VENDORID 0x70000001 + +//Secure id of sysstatemgr.exe +SECUREID 0x2000D75B + +SOURCEPATH ../src +SOURCE definetestps.cpp + +USERINCLUDE . +USERINCLUDE ../inc + + +OS_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE_SYMBIAN +MW_LAYER_SYSTEMINCLUDE + + +// Registration file +SOURCEPATH ../src +START RESOURCE definetestps_reg.rss +TARGETPATH /private/10003a3f/apps +END + +LIBRARY euser.lib +LIBRARY apparc.lib +LIBRARY apgrfx.lib +LIBRARY cone.lib +LIBRARY eikcore.lib +LIBRARY ssmuiproviderdll.lib + +SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/sspluginstest_i_adaptation.iby --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/sspluginstest_i_adaptation.iby Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/sspluginstest_i_adaptation.iby Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -16,6 +16,8 @@ #ifndef __SSPLUGINSTEST_I_ADAPTATION_IBY__ #define __SSPLUGINSTEST_I_ADAPTATION_IBY__ +#include + // test server data=ABI_DIR\DEBUG_DIR\tiadaptation_plugin.exe sys\bin\tiadaptation_plugin.exe diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/sspluginstest_i_tadaptation.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/sspluginstest_i_tadaptation.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,35 @@ +; +; Copyright (c) 2010 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: +; + + +;Languages +&EN + + +;Localised Vendor name +%{"SspluginsiAdaptationTests EN"} + +; Vendor name +: "SspluginsiAdaptationTests" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_emergency.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_emergency.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_misc.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_misc.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_rtc.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_rtc.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_sim.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_sim.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_state.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_state.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintadptplugin\scripts\sspluginstest_adaptation_i_statenotify.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_i_statenotify.script" + + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/group/tiadaptation_plugin.mmp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/tiadaptation_plugin.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/group/tiadaptation_plugin.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,6 +27,9 @@ UID 0x1000007A 0x10285A52 VENDORID 0x70000001 +//Secure id of sysstatemgr.exe +SECUREID 0x2000D75B + CAPABILITY PowerMgmt ReadDeviceData WriteDeviceData ProtServ SwEvent ReadUserData WriteUserData DiskAdmin OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/inc/definetestps.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/inc/definetestps.h Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,76 @@ +// Copyright (c) 2010 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: This is the header file for "DefineTestPs" app. This app is used to define the P & S keys required for activating the reference plugins. +// + +/** + @file + @test + @internalComponent - Internal Symbian test code +*/ + +#ifndef __DEFINETESTPS_H +#define __DEFINETESTPS_H + +/** +Application class +*/ +#include +class CTestApplication : public CEikApplication + { +public: + static CApaApplication* NewApplication(); + ~CTestApplication(); + +private: + CTestApplication(); + + // from CApaApplication + TUid AppDllUid() const; + CApaDocument* CreateDocumentL(); + }; + +/** +Document class +*/ +#include +class CEikAppUi; +class CEikApplication; +class CTestDocument : public CEikDocument + { +public: + static CTestDocument* NewL(CEikApplication& aApp); + ~CTestDocument(); + +private: + CTestDocument(CEikApplication& aApp); + + // from CEikDocument + CEikAppUi* CreateAppUiL(); + }; + +/** +Application UI class, root of all graphical user interface in this application +*/ +#include +class CTestAppUi : public CEikAppUi + { +public: + CTestAppUi(); + ~CTestAppUi(); + + // from CEikAppUi + void ConstructL(); + }; + +#endif // __DEFINETESTPS_H diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/inc/ti_adaptationplugin_stepbase.h --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/inc/ti_adaptationplugin_stepbase.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/inc/ti_adaptationplugin_stepbase.h Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,6 +27,14 @@ #include #include +//for define, set and unset of P&S keys. +const TUint32 KEmergencyCallRfAdaptationPluginPropertyKey = 0x2000E657; +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUint32 KRtcAdaptationPluginPropertyKey = 0x2000D76C; +const TUint32 KSimPluginPropertyKey = 0x2000D76B; +const TUint32 KMiscPluginPropertyKey = 0x2000E658; + +const TUid KPropertyCategory={0x2000D75B}; class CTestAdaptStep : public CTestStep { diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/definetestps.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/definetestps.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,154 @@ +// Copyright (c) 2010 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: This app is used to define the P & S keys required for activating the reference plugins. +// + +/** + @file + @test + @internalComponent - Internal Symbian test code +*/ + +#include +#include +#include +#include "definetestps.h" +#include "ti_adaptationplugin_stepbase.h" + + +/** +Standard DLL entry point function. +Creates and returns an instance of the CApaApplication-derived class. +@return an instance of the CApaApplication-derived class +*/ +TInt E32Main() + { + return EikStart::RunApplication( CTestApplication::NewApplication ); + } + +CTestApplication::CTestApplication() + { + } + +CTestApplication::~CTestApplication() + { + } + +/** +@return The application's UID +*/ +TUid CTestApplication::AppDllUid() const + { + const TUid dll = {0x200315B2}; + return dll; + } + +/** +@return CTestApplication or NULL if KErrNoMemory +*/ +CApaApplication* CTestApplication::NewApplication() + { + // As the framework has at this point not started up enough, and therefore the TRAP-harness and + // exception handlers aren’t available yet, this factory function is a non-leaving function and + // can't use the new(Eleave) operator. + return new CTestApplication(); + } + +/** +Called by the UI framework at application start-up to create an instance of the document class. +@leave KErrNoMemory +@return A CTestDocument +*/ +CApaDocument* CTestApplication::CreateDocumentL() + { + return CTestDocument::NewL(*this); + } + +CTestDocument::CTestDocument(CEikApplication& aApp) : CEikDocument(aApp) + { + } + +CTestDocument::~CTestDocument() + { + } + +/** +Factory function for this class +@return a new CEndTaskTestDocument instance. +*/ +CTestDocument* CTestDocument::NewL(CEikApplication& aApp) + { + return new(ELeave) CTestDocument(aApp); + } + + +/** +Called by the UI framework to construct the application UI class. +Note that the app UI's ConstructL() is called by the UI framework. +*/ +CEikAppUi* CTestDocument::CreateAppUiL() + { + return new(ELeave) CTestAppUi(); + } + +CTestAppUi::CTestAppUi() + { + } + +CTestAppUi::~CTestAppUi() + { + } + +void CTestAppUi::ConstructL() + { + //This appplication is used to define the property for using dummy plugins. Uid3 of the application should be + //same as the SSM's Secure Id. + + + //Define the property for using Dummy plugins. + TInt result = KErrNone; + result = RProperty::Define(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, RProperty::EInt); + if ((KErrNone != result) && (KErrAlreadyExists !=result)) + { + User::Leave(result); + } + + + result = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + if ((KErrNone != result) && (KErrAlreadyExists !=result)) + { + User::Leave(result); + } + + result = RProperty::Define(KPropertyCategory, KRtcAdaptationPluginPropertyKey, RProperty::EInt); + if ((KErrNone != result) && (KErrAlreadyExists !=result)) + { + User::Leave(result); + } + + result = RProperty::Define(KPropertyCategory, KSimPluginPropertyKey, RProperty::EInt); + if ((KErrNone != result) && (KErrAlreadyExists !=result)) + { + User::Leave(result); + } + + result = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + if ((KErrNone != result) && (KErrAlreadyExists !=result)) + { + User::Leave(result); + } + + RProcess::Rendezvous(KErrNone); + // Complete the UI framework's construction of the App UI. + BaseConstructL(CEikAppUi::ENoAppResourceFile); + } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/definetestps_reg.rss --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/definetestps_reg.rss Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,33 @@ +// Copyright (c) 2010 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: This is the registration resource file for "DefineTestPs" app. This app is used +// to define the P & S keys required for activating the reference plugins. +// + +/** + @file + @test + @internalComponent - Internal Symbian test code +*/ + +#include + +UID2 KUidAppRegistrationResourceFile +UID3 0x200315B2 + +RESOURCE APP_REGISTRATION_INFO + { + // filename of application binary (minus extension) + app_file="definetestps"; + newfile = KAppDoesNotSupportNewFile; + } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/temergencycallrf_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/temergencycallrf_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/temergencycallrf_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -157,10 +157,9 @@ TInt RTestSsmEmergencyCallRfAdaptation::CleanupAdaptations() { TInt ret = KErrNone; - if(Handle()) - { - ret = SendReceive(EDebugCleanupAdaptations); - } + // Since actual plugins are being used, they cannot be unloaded. + // Hence return without doing anything. There will be HeapMarkEnd to check that + // memory is not leaked. return ret; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/ti_adaptationplugin_stepbase.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/ti_adaptationplugin_stepbase.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/ti_adaptationplugin_stepbase.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -21,6 +21,9 @@ #include "ti_adaptationplugin_stepbase.h" #include +#include + +_LIT (KExeToDefineTestPS, "\\sys\\bin\\definetestps.exe"); static TInt StopScheduler(TAny* aTestAdaptStep) { @@ -51,6 +54,41 @@ TVerdict CTestAdaptStep::doTestStepPreambleL() { + RProcess processHandle; + CleanupClosePushL(processHandle); + + //Start the test exe which defines property keys for loading reference plugins + + TInt err = processHandle.Create(KExeToDefineTestPS, KNullDesC); + INFO_PRINTF2(_L("Process creation returned : %d"), err); + User::LeaveIfError(err); + processHandle.Resume(); + + // wait for the newly created process to rendezvous + TRequestStatus status; + processHandle.Rendezvous(status); + User::WaitForRequest(status); + TInt retVal = status.Int(); + INFO_PRINTF2(_L("iStatus.Int() returned : %d"), retVal); + TEST(KErrNone == retVal); + CleanupStack::PopAndDestroy(); + + // Set all the property keys + err = RProperty::Set(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KRtcAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KSimPluginPropertyKey, 1); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + TEST(KErrNone == err); + INFO_PRINTF1(_L("Starting the scheduler in CTestEmergencyAdaptStep::doTestStepPreambleL ...")); iActiveScheduler = new(ELeave) CActiveScheduler; CActiveScheduler::Install (iActiveScheduler); @@ -65,5 +103,22 @@ /** */ TVerdict CTestAdaptStep::doTestStepPostambleL() { + //Unset all the PandS keys + TInt err = RProperty::Set(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, 0); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 0); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KRtcAdaptationPluginPropertyKey, 0); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KSimPluginPropertyKey, 0); + TEST(KErrNone == err); + + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 0); + TEST(KErrNone == err); + + return CTestStep::doTestStepPostambleL(); } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tmisc_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tmisc_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tmisc_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -199,10 +199,9 @@ TInt RTestSsmMiscAdaptation::CleanupAdaptations() { TInt ret = KErrNone; - if(Handle()) - { - ret = SendReceive(EDebugCleanupAdaptations); - } + // Since actual plugins are being used, they cannot be unloaded. + // Hence return without doing anything. There will be HeapMarkEnd to check that + // memory is not leaked. return ret; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/trtc_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/trtc_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/trtc_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -165,10 +165,9 @@ TInt RTestSsmRtcAdaptation::CleanupAdaptations() { TInt ret = KErrNone; - if(Handle()) - { - ret = SendReceive(EDebugCleanupAdaptations); - } + // Since actual plugins are being used, they cannot be unloaded. + // Hence return without doing anything. There will be HeapMarkEnd to check that + // memory is not leaked. return ret; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tsim_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tsim_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tsim_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -162,10 +162,9 @@ TInt RTestSsmSimAdaptation::CleanupAdaptations() { TInt ret = KErrNone; - if(Handle()) - { - ret = SendReceive(EDebugCleanupAdaptations); - } + // Since actual plugins are being used, they cannot be unloaded. + // Hence return without doing anything. There will be HeapMarkEnd to check that + // memory is not leaked. return ret; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tstate_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tstate_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tintadptplugin/src/tstate_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -176,10 +176,9 @@ TInt RTestSsmStateAdaptation::CleanupAdaptations() { TInt ret = KErrNone; - if(Handle()) - { - ret = SendReceive(EDebugCleanupAdaptations); - } + // Since actual plugins are being used, they cannot be unloaded. + // Hence return without doing anything. There will be HeapMarkEnd to check that + // memory is not leaked. return ret; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tintconditionevaluator/group/sspluginstest_tintconditionevaluator.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tintconditionevaluator/group/sspluginstest_tintconditionevaluator.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,28 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssplugins_tintconditionevaluator EN"} + +; Vendor name +: "Ssplugins_tintconditionevaluator" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tintconditionevaluator\scripts\sspluginstest_conditionevaluator_evaluate.script"-"c:\devicesrv\sspluginstest\sspluginstest_conditionevaluator_evaluate.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/group/sspluginstest_tadaptation.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/group/sspluginstest_tadaptation.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,31 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssplugins_TUnitAdptPlugin EN"} + +; Vendor name +: "Ssplugins_TUnitAdptPlugin" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitadptplugin\scripts\sspluginstest_adaptation_emergency.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_emergency.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitadptplugin\scripts\sspluginstest_adaptation_misc.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_misc.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitadptplugin\scripts\sspluginstest_adaptation_rtc.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_rtc.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitadptplugin\scripts\sspluginstest_adaptation_sim.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_sim.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitadptplugin\scripts\sspluginstest_adaptation_state.script"-"c:\devicesrv\sspluginstest\sspluginstest_adaptation_state.script" diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/group/tadaptation_plugin.mmp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/group/tadaptation_plugin.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/group/tadaptation_plugin.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,11 +22,10 @@ TARGET tadaptation_plugin.exe TARGETTYPE exe -TARGETPATH /sys/bin -UID 0x1000007A 0x1028359E +TARGETPATH /sys/bin +UID 0x1000007A 0x2000D75B VENDORID 0x70000001 -//CAPABILITY All -Tcb CAPABILITY PowerMgmt ReadDeviceData WriteDeviceData ProtServ SwEvent ReadUserData WriteUserData diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/temergencycallrf_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/temergencycallrf_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/temergencycallrf_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,8 +22,12 @@ #include +#include #include "temergencycallrf_adaptationplugin_step.h" +const TUint32 KEmergencyCallRfAdaptationPluginPropertyKey = 0x2000E657; +const TUid KPropertyCategory={0x2000D75B}; + // // Run the tests // @@ -73,10 +77,13 @@ //from CAdaptationTestBase TVerdict CTestEmergencyCallRfAdaptationPlugin::doTestStepL() { - TInt err = KErrNone; - __UHEAP_MARK; + TInt err = RProperty::Define(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, RProperty::EInt); + TEST((KErrNone == err) || (KErrAlreadyExists == err)); + err = RProperty::Set(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + TRAP(err, TestActivateRfForEmergencyCall()); TEST(iStatus.Int() == KErrDisconnected); TEST(err == KErrNone); @@ -97,6 +104,8 @@ TestCancel(); //TestRelease(); // have to test this part too ... + err = RProperty::Delete(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey); + TEST(KErrNone == err); __UHEAP_MARKEND; return TestStepResult(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tmisc_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tmisc_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tmisc_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -20,7 +20,7 @@ */ - +#include #include #include "tmisc_adaptationplugin_step.h" @@ -28,6 +28,9 @@ // Run the tests // +const TUid KPropertyCategory={0x2000D75B}; // tcustomcmd_server SID = KSsmServerName SID (changed in tcustomcmd_server.mmp file) +const TUint32 KMiscPluginPropertyKey = 0x2000E658; + CTestMiscAdaptationPlugin::CTestMiscAdaptationPlugin() :CAdaptationTestBase(KTCTestMiscAdaptationPlugin) { @@ -174,6 +177,12 @@ { __UHEAP_MARK; + TInt err = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + INFO_PRINTF2(_L("Defining KMiscPluginPropertyKey returns %d"), err); + TEST((KErrNone == err) || (KErrAlreadyExists == err)); + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + TEST(KErrNone == err); + TestSecurityStateChange(); TestGetGlobalStartupMode(); @@ -200,7 +209,10 @@ TestCancel(); //TestRelease(); // have to test this part too ... - + + err = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); + TEST(KErrNone == err); + __UHEAP_MARKEND; return TestStepResult(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/trtc_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/trtc_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/trtc_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -20,14 +20,16 @@ */ - +#include #include #include "trtc_adaptationplugin_step.h" // // Run the tests // - +_LIT (KExeToDefineTestPS, "\\sys\\bin\\definetestps.exe"); +const TUint32 KRtcAdaptationPluginPropertyKey = 0x2000D76C; +const TUid KPropertyCategory={0x2000D75B}; CTestRtcAdaptationPlugin::CTestRtcAdaptationPlugin() :CAdaptationTestBase(KTCTestRtcAdaptationPlugin) @@ -53,7 +55,7 @@ if(iSsmRtcAdaptation.Handle()) { TEST(KErrNotSupported == status.Int()); - INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestValidateRtc completed with %d error : expected %d>"),status.Int(),KErrNone); + INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestValidateRtc completed with %d error : expected %d>"),status.Int(),KErrNotSupported); } else { @@ -74,7 +76,7 @@ if(iSsmRtcAdaptation.Handle()) { TEST(KErrNotSupported == status.Int()); - INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestSetWakeupAlarm completed with %d error : expected %d>"),status.Int(),KErrNone); + INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestSetWakeupAlarm completed with %d error : expected %d>"),status.Int(),KErrNotSupported); } else { @@ -94,7 +96,7 @@ if(iSsmRtcAdaptation.Handle()) { TEST(KErrNotSupported == status.Int()); - INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestUnsetWakeupAlarm completed with %d error : expected %d>"),status.Int(),KErrNone); + INFO_PRINTF3(_L("CTestRtcAdaptationPlugin::TestUnsetWakeupAlarm completed with %d error : expected %d>"),status.Int(),KErrNotSupported); } else { @@ -114,9 +116,29 @@ //from CAdaptationTestBase TVerdict CTestRtcAdaptationPlugin::doTestStepL() { - TInt err = KErrNone; - __UHEAP_MARK; + + RProcess processHandle; + CleanupClosePushL(processHandle); + + //Start the test exe which defines startup related property keys + + TInt err = processHandle.Create(KExeToDefineTestPS, KNullDesC); + INFO_PRINTF2(_L("Process creation returned : %d"), err); + User::LeaveIfError(err); + processHandle.Resume(); + + // wait for the newly created process to rendezvous + TRequestStatus status; + processHandle.Rendezvous(status); + User::WaitForRequest(status); + TInt retVal = status.Int(); + INFO_PRINTF2(_L("iStatus.Int() returned : %d"), retVal); + TEST(KErrNone == retVal); + CleanupStack::PopAndDestroy(); + + err = RProperty::Set(KPropertyCategory, KRtcAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); TRAP(err, TestValidateRtc()); TEST(err == KErrNone); @@ -142,7 +164,8 @@ TestCancel(); //TestRelease(); // have to test this part too ... - + err = RProperty::Set(KPropertyCategory, KRtcAdaptationPluginPropertyKey, 0); + TEST(KErrNone == err); __UHEAP_MARKEND; return TestStepResult(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tsim_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tsim_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tsim_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,12 +22,14 @@ #include +#include #include "tsim_adaptationplugin_step.h" // // Run the tests // - +const TUint32 KSimPluginPropertyKey = 0x2000D76B; +const TUid KPropertyCategory={0x2000D75B}; // tcustomcmd_server SID = KSsmServerName SID (changed in tcustomcmd_server.mmp file) CTestSimAdaptationPlugin::CTestSimAdaptationPlugin() :CAdaptationTestBase(KTCTestSimAdaptationPlugin) @@ -102,10 +104,13 @@ //from CAdaptationTestBase TVerdict CTestSimAdaptationPlugin::doTestStepL() { - TInt err = KErrNone; - __UHEAP_MARK; + TInt err = RProperty::Define(KPropertyCategory, KSimPluginPropertyKey, RProperty::EInt); + TEST((KErrNone == err) || (KErrAlreadyExists == err)); + err = RProperty::Set(KPropertyCategory, KSimPluginPropertyKey, 1); + TEST(KErrNone == err); + TRAP(err, TestGetSimOwned()); TEST(err == KErrNone); @@ -128,6 +133,8 @@ TestGetCancel(); //TestRelease(); // have to test this part too ... + err = RProperty::Delete(KPropertyCategory, KSimPluginPropertyKey); + TEST(KErrNone == err); __UHEAP_MARKEND; return TestStepResult(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tstate_adaptationplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tstate_adaptationplugin_step.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitadptplugin/src/tstate_adaptationplugin_step.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,9 +22,13 @@ #include +#include #include #include "tstate_adaptationplugin_step.h" +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; + typedef MStateAdaptation* (*TFuncNewL)(); CTestStateAdaptationPlugin::CTestStateAdaptationPlugin() @@ -181,7 +185,10 @@ //from CAdaptationTestBase TVerdict CTestStateAdaptationPlugin::doTestStepL() { - TInt err = KErrNone; + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST((KErrNone == err) || (KErrAlreadyExists == err)); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); __UHEAP_MARK; TRAP(err, TestRequestCoopSysStateChangeL()); @@ -256,6 +263,8 @@ TestNotifyCancel(); TEST(err == KErrNone); - + + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); return TestStepResult(); } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitconditionevaluator/group/sspluginstest_tunitconditionevaluator.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tunitconditionevaluator/group/sspluginstest_tunitconditionevaluator.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,28 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssplugins_TUnitConditionEvaluator EN"} + +; Vendor name +: "Ssplugins_TUnitConditionEvaluator" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitconditionevaluator\scripts\sspluginstest_cndeval_conditionevaluator.script"-"c:\devicesrv\sspluginstest\sspluginstest_cndeval_conditionevaluator.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitgsapolicy/group/sspluginstest_tgsa.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/group/sspluginstest_tgsa.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,31 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssplugins_TGsa EN"} + +; Vendor name +: "Ssplugins_TGsa" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitgsapolicy\scripts\sspluginstest_gsa_startup.script"-"c:\devicesrv\sspluginstest\sspluginstest_gsa_startup.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitgsapolicy\scripts\sspluginstest_gsa_normal.script"-"c:\devicesrv\sspluginstest\sspluginstest_gsa_normal.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitgsapolicy\scripts\sspluginstest_gsa_shutdown.script"-"c:\devicesrv\sspluginstest\sspluginstest_gsa_shutdown.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitgsapolicy\scripts\sspluginstest_gsa_fail.script"-"c:\devicesrv\sspluginstest\sspluginstest_gsa_fail.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitgsapolicy/group/tgsa_server.mmp --- a/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/group/tgsa_server.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/group/tgsa_server.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -34,6 +34,7 @@ USERINCLUDE ../inc USERINCLUDE ../../../gsapolicy/inc USERINCLUDE ../../../localinc +USERINCLUDE ../../../../ssmpolicyplugins/inc SOURCEPATH ../src SOURCE tgsa_server.cpp diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_fail.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_fail.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_fail.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,12 +27,19 @@ #include #include #include +#include "ssmsubstateext.hrh" #include "tgsa_step_fail.h" -TSsmCommandType ArrFail[] = { ESsmCmdPublishSystemState, ESsmCmdPersistHalAttributes, - ESsmCmdFinaliseDrives, ESsmCmdPowerOff }; - +TSsmCommandType ArrFail[] = { ESsmCmdCustomCommand, //r_cmd_sastate + ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdSetPAndSKey, //r_cmd_psstate + ESsmCmdCustomCommand, //r_cmd_cancelmonitoring + ESsmCmdSetPAndSKey, //r_cmd_killsplash + ESsmCmdCustomCommand, //r_cmd_contactservice + ESsmCmdStartApp, //r_cmd_sysap + ESsmCmdMultipleWait //r_cmd_multiwaitforever + }; CGsaFailTest::~CGsaFailTest() { } @@ -112,8 +119,10 @@ void CGsaFailTest::doTestPrepareCommandListL() { INFO_PRINTF1(_L("> CGsaFailTest::doTestPrepareCommandListL")); - TestPrepareCommandListL(ESsmFail ,KSsmAnySubState, KErrNone); - TestPrepareCommandListL(ESsmFail ,KSsmAnySubState, KErrNone); + //The default substate in the actual (fail policy) is mapped to + //ESsmStateFail = 0x30 + //Hence testing for the same. + TestPrepareCommandListL(ESsmFail ,ESsmStateFail , KErrNone); TestPrepareCommandListL(ESsmFail ,100, KErrNotFound); } @@ -125,7 +134,7 @@ { INFO_PRINTF1(_L("> CGsaFailTest::doTestCommandListL")); - TestCommandListL(ESsmFail, KSsmAnySubState, (sizeof(ArrFail)/sizeof(ArrFail[0]))); + TestCommandListL(ESsmFail, ESsmStateFail, (sizeof(ArrFail)/sizeof(ArrFail[0]))); } /** @@ -137,11 +146,11 @@ { CGsaStatePolicyFail* policy = CreateAndInitializeFailPolicyLC(); - TSsmState state(ESsmFail, KSsmAnySubState); + TSsmState state(ESsmFail, ESsmStateFail); TSsmState result(0, 0); TestGetNextState(policy, state, KErrNone, result); - TSsmState firstState(ESsmFail, KSsmAnySubState); + TSsmState firstState(ESsmFail, ESsmStateFail); TestGetNextState(policy, firstState, KErrNone, result); TSsmState unknownState(ESsmFail, 100); @@ -266,7 +275,7 @@ void CGsaFailTest::TestGetNextState(CGsaStatePolicyFail* aPolicy, TSsmState aCurrentTransition, TInt aError, TSsmState aResult) { TRequestStatus trs; - TSsmState state(ESsmFail, KSsmAnySubState); + TSsmState state(ESsmFail, ESsmStateFail); aPolicy->PrepareCommandList(state, KErrNone, trs); StartScheduler(); User::WaitForRequest(trs); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_shutdown.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_shutdown.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_shutdown.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,12 +27,24 @@ #include #include #include +#include #include "tgsa_step_shutdown.h" -TSsmCommandType ArrCriticalShutdown[] = { ESsmCmdPublishSystemState}; -TSsmCommandType ArrNonCriticalShutdown[] = { ESsmCmdPublishSystemState, ESsmCmdPersistHalAttributes, ESsmCmdFinaliseDrives}; -TSsmCommandType ArrPowerOffShutdown[] = { ESsmCmdPublishSystemState, ESsmCmdPowerOff }; +TSsmCommandType ArrCriticalShutdown[] = { ESsmCmdCustomCommand, //r_cmd_sastate + ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdSetPAndSKey, //r_cmd_psstate + ESsmCmdCustomCommand, //r_cmd_cancelmonitoring + ESsmCmdCustomCommand //r_cmd_shutdownapps + }; +TSsmCommandType ArrNonCriticalShutdown[] = {ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdSetPAndSKey, //r_cmd_killsplash + ESsmCmdCustomCommand, //r_cmd_sashutdown + ESsmCmdFinaliseDrives //r_cmd_finalisedrives + }; +TSsmCommandType ArrPowerOffShutdown[] = { ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdPowerOff //r_cmd_poweroff + }; const TUint16 KUnknownState = 100; @@ -132,11 +144,11 @@ { INFO_PRINTF1(_L("> CGsaShutdownTest::doTestCommandListL")); - TestCommandListL(ESsmShutdown, ESsmShutdownSubStateCritical, 1); + TestCommandListL(ESsmShutdown, ESsmShutdownSubStateCritical, (sizeof(ArrCriticalShutdown)/sizeof(ArrCriticalShutdown[0]))); // KSsmAnySubState - TestCommandListL(ESsmShutdown, KSsmAnySubState, 1); - TestCommandListL(ESsmShutdown, ESsmShutdownSubStateNonCritical, 3); - TestCommandListL(ESsmShutdown, ESsmShutdownSubStatePowerOff, 2); + TestCommandListL(ESsmShutdown, KSsmAnySubState, (sizeof(ArrCriticalShutdown)/sizeof(ArrCriticalShutdown[0]))); + TestCommandListL(ESsmShutdown, ESsmShutdownSubStateNonCritical, (sizeof(ArrNonCriticalShutdown)/sizeof(ArrNonCriticalShutdown[0]))); + TestCommandListL(ESsmShutdown, ESsmShutdownSubStatePowerOff, (sizeof(ArrPowerOffShutdown)/sizeof(ArrPowerOffShutdown[0]))); } /** diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_startup.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_startup.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/test/tunitgsapolicy/src/tgsa_step_startup.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -27,10 +27,20 @@ #include #include #include +#include #ifdef SYMBIAN_SSM_GRACEFUL_SHUTDOWN -TSsmCommandType ArrCriticalStartUp[] = { ESsmCmdCustomCommand,ESsmCmdPublishSystemState,ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess,ESsmCmdStartProcess, ESsmCmdSetPAndSKey, ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdLoadSup }; +TSsmCommandType ArrCriticalStartUp[] = {ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdStartProcess, //r_cmd_sysagt + ESsmCmdCustomCommand, //r_cmd_initpskeys + ESsmCmdCustomCommand, //r_cmd_checkuserdrive + ESsmCmdCustomCommand, //r_cmd_deltempfiles + ESsmCmdStartProcess, //r_cmd_reservedisk + ESsmCmdStartProcess, //r_cmd_sysmon + ESsmCmdStartProcess, //r_cmd_ssmutilsrv + ESsmCmdMultipleWait //r_cmd_multiwaitforever + }; #else TSsmCommandType ArrCriticalStartUp[] = { ESsmCmdCustomCommand,ESsmCmdPublishSystemState,ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess,ESsmCmdStartProcess, ESsmCmdSetPAndSKey, ESsmCmdStartProcess, ESsmCmdStartProcess, ESsmCmdStartProcess }; #endif @@ -39,8 +49,45 @@ #ifdef TEST_SSM_GRACEFUL_OFFLINE TSsmCommandType ArrNonCriticalStartUp[] = { ESsmCmdSetPAndSKey, ESsmCmdSetPAndSKey,ESsmCmdSetPAndSKey,ESsmCmdPublishSystemState ,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdAMAStarter}; #else -TSsmCommandType ArrNonCriticalStartUp[] = { ESsmCmdPublishSystemState ,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdStartProcess,ESsmCmdAMAStarter}; +TSsmCommandType ArrNonCriticalStartUp[] = { ESsmCmdCustomCommand, //r_cmd_sastate + ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdSetPAndSKey, //r_cmd_psstate + ESsmCmdCustomCommand, //r_cmd_startupmode + ESsmCmdLoadSup, //r_cmd_loadpowersup + ESsmCmdCustomCommand, //r_cmd_rfsfirstboot + ESsmCmdCustomCommand, //r_cmd_rfsdeep + ESsmCmdCustomCommand, //r_cmd_rfsnormal + ESsmCmdCustomCommand, //r_cmd_initclkeys + ESsmCmdCustomCommand, //r_cmd_initramdrive + ESsmCmdStartProcess, //r_cmd_wserv + ESsmCmdStartProcess, //r_cmd_splash + ESsmCmdStartProcess, //r_cmd_tzsrv + ESsmCmdStartProcess, //r_cmd_mediator + ESsmCmdStartProcess, //r_cmd_hwrmsrv + ESsmCmdCustomCommand, //r_cmd_rtc + ESsmCmdMultipleWait, //r_cmd_multiwaitforever1 + ESsmCmdStartProcess, //r_cmd_dbrecovery + ESsmCmdStartProcess, //r_cmd_accsrv + ESsmCmdCustomCommand, //r_cmd_selectlanguage + ESsmCmdMultipleWait, //r_cmd_multiwaitforever2 + ESsmCmdLoadSup, //r_cmd_loadlocalesup + ESsmCmdLoadSup, //r_cmd_loadcollation + ESsmCmdLoadSup, //r_cmd_loadregion + ESsmCmdLoadSup, //r_cmd_loaduilanguage + ESsmCmdCustomCommand, //r_cmd_aknstart + ESsmCmdWaitForApparcInit, //r_cmd_apparc_init + ESsmCmdCustomCommand //r_cmd_rfspostui + }; #endif +TSsmCommandType ArrCriticalAppsStartUp[] = {ESsmCmdCustomCommand, //r_cmd_sastate + ESsmCmdPublishSystemState, //r_cmd_publishstate + ESsmCmdSetPAndSKey, //r_cmd_psstate + ESsmCmdCustomCommand, //r_cmd_selftest + ESsmCmdStartProcess, //r_cmd_cfserver + ESsmCmdStartApp, //r_cmd_sysap + ESsmCmdStartProcess, //r_cmd_profmon + ESsmCmdMultipleWait //r_cmd_multiwaitforever + }; CGsaStartupTest::~CGsaStartupTest() { @@ -123,9 +170,8 @@ INFO_PRINTF1(_L("> CGsaStartupTest::doTestPrepareCommandListL")); TestPrepareCommandListL(ESsmStartup ,ESsmStartupSubStateCriticalStatic, KErrNone); TestPrepareCommandListL(ESsmStartup ,KSsmAnySubState, KErrNone); - TestPrepareCommandListL(ESsmStartup ,ESsmStartupSubStateCriticalDynamic, KErrNone); - TestPrepareCommandListL(ESsmStartup ,ESsmStartupSubStateNetworkingCritical, KErrNone); TestPrepareCommandListL(ESsmStartup ,ESsmStartupSubStateNonCritical, KErrNone); + TestPrepareCommandListL(ESsmStartup ,ESsmStateStartingCriticalApps, KErrNone); //ESsmStateStartingCriticalApps = 0x31 TestPrepareCommandListL(ESsmStartup ,100, KErrNotFound); } @@ -139,10 +185,8 @@ INFO_PRINTF1(_L("> CGsaStartupTest::doTestCommandListL")); TestCommandListL(ESsmStartup, ESsmStartupSubStateCriticalStatic, sizeof(ArrCriticalStartUp) / sizeof(ArrCriticalStartUp[0])); - TestCommandListL(ESsmStartup, KSsmAnySubState, sizeof(ArrCriticalStartUp) / sizeof(ArrCriticalStartUp[0])); - TestCommandListL(ESsmStartup, ESsmStartupSubStateCriticalDynamic, sizeof(ArrDynamicStartUp) / sizeof(ArrDynamicStartUp[0])); - TestCommandListL(ESsmStartup, ESsmStartupSubStateNetworkingCritical, sizeof(ArrNetworkingStartUp) / sizeof(ArrNetworkingStartUp[0])); TestCommandListL(ESsmStartup, ESsmStartupSubStateNonCritical, sizeof(ArrNonCriticalStartUp) / sizeof(ArrNonCriticalStartUp[0])); + TestCommandListL(ESsmStartup, ESsmStateStartingCriticalApps, sizeof(ArrCriticalAppsStartUp) / sizeof(ArrCriticalAppsStartUp[0])); } /** @@ -156,46 +200,22 @@ CGsaStatePolicyStartup* policy = CreateAndInitializeStartUpPolicyLC(); TSsmState state(ESsmStartup, KSsmAnySubState); - TSsmState result(ESsmStartup, ESsmStartupSubStateCriticalDynamic); - // KSsmAnySubState (KSsmAnySubState) will return ESsmStartUpSubStateCriticalDynamic only for the first time, + TSsmState result(ESsmStartup, ESsmStartupSubStateNonCritical); + // KSsmAnySubState (KSsmAnySubState) will return ESsmStartupSubStateNonCritical only for the first time, // next call will always return the next sub state for transition. TestGetNextState(policy, state, KErrNone, result); TSsmState firstState(ESsmStartup, ESsmStartupSubStateCriticalStatic); - TSsmState firstResult(ESsmStartup, ESsmStartupSubStateCriticalDynamic); + TSsmState firstResult(ESsmStartup, ESsmStartupSubStateNonCritical); TestGetNextState(policy, firstState, KErrNone, firstResult); - TSsmState secondState(ESsmStartup, ESsmStartupSubStateCriticalDynamic); - TSsmState secondResult(ESsmStartup, ESsmStartupSubStateNetworkingCritical); + TSsmState secondState(ESsmStartup, ESsmStartupSubStateNonCritical); + TSsmState secondResult(ESsmStartup, ESsmStateStartingCriticalApps); TestGetNextState(policy, secondState, KErrNone, secondResult); - TSsmState thirdState(ESsmStartup, ESsmStartupSubStateNetworkingCritical); - TSsmState thirdResult(ESsmStartup, ESsmStartupSubStateNonCritical); + TSsmState thirdState(ESsmStartup, ESsmStateStartingCriticalApps); + TSsmState thirdResult(ESsmStartup, ESsmStateSelfTestOK); TestGetNextState(policy, thirdState, KErrNone, thirdResult); -#ifdef __WINS__ - TSsmState fourthState(ESsmStartup, ESsmStartupSubStateNonCritical); - TSsmState fourthResult(ESsmNormal, KSsmAnySubState); - TestGetNextState(policy, fourthState, KErrNone, fourthResult); -#else - TSsmState fourthState(ESsmStartup, ESsmStartupSubStateNonCritical); - TSsmState fourthResult(ESsmStartup, 0x48);//Added 0x48 sub-state for new test for ARMV5 - TestGetNextState(policy, fourthState, KErrNone, fourthResult); - //This new state test Added for the one more sub-state available in ARMV5 compare to WINSCW - TSsmState fourthToNextState(ESsmStartup, 0x48); - TSsmState fourthToNextStateResult(ESsmNormal, KSsmAnySubState); - TestGetNextState(policy, fourthToNextState, KErrNone, fourthToNextStateResult); -#endif - - TSsmState fifthState(ESsmStartup, KSsmAnySubState); - TSsmState fifthResult(ESsmStartup, ESsmStartupSubStateCriticalDynamic); - // KSsmAnySubState (0xffff) will return ESsmStartUpSubStateCriticalDynamic only for the first time, - // next call will always return the next sub state for transition. - TestGetNextState(policy, fifthState, KErrNone, fifthResult); - - //Commented this test because CGsaStatePolicyStartup::GETNExtstate panicks if substate is unknown - //TSsmState unknownState(ESsmStartup, 100); - //TSsmState knownResult(ESsmStartup, 0); - //TestGetNextState(policy, unknownState, KErrNone, knownResult); CleanupStack::PopAndDestroy(policy); } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_tutility.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_tutility.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,29 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssplugins_TUtility EN"} + +; Vendor name +: "Ssplugins_TUtility" + +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitutilityplugin\scripts\sspluginstest_utility.script"-"c:\devicesrv\sspluginstest\sspluginstest_utility.script" +"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitutilityplugin\scripts\sspluginstest_unit_utility.script"-"c:\devicesrv\sspluginstest\sspluginstest_unit_utility.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/custcmd/group/ssmuiproviderdlldefault.mmp --- a/sysstatemgmt/systemstatereferenceplugins/custcmd/group/ssmuiproviderdlldefault.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/custcmd/group/ssmuiproviderdlldefault.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -35,15 +35,33 @@ NOEXPORTLIBRARY SOURCEPATH ../src +// This is a temporary fix for fixing the build issues arising out of XSymbian code +// getting compiled before xS60 code is in the mainline. This will be removed after +// the merged package issues are resolved +#ifdef FF_SIMLESS_OFFLINE_SUPPORT SOURCE ssmuiproviderdlldefault.cpp +#else //FF_SIMLESS_OFFLINE_SUPPORT +SOURCE ssmuiproviderdllref.cpp +#endif //FF_SIMLESS_OFFLINE_SUPPORT USERINCLUDE ../inc USERINCLUDE ../../localinc USERINCLUDE ../../clayer/inc +#ifdef FF_SIMLESS_OFFLINE_SUPPORT +USERINCLUDE ../../../ssmmapperutility/inc +USERINCLUDE ../../../ssmmapperutility/pubsub +USERINCLUDE ../../../ssmpolicyplugins/inc +#endif //FF_SIMLESS_OFFLINE_SUPPORT + OS_LAYER_SYSTEMINCLUDE_SYMBIAN LIBRARY euser.lib LIBRARY efsrv.lib +#ifdef FF_SIMLESS_OFFLINE_SUPPORT +LIBRARY platformenv.lib +LIBRARY ssmcmn.lib +LIBRARY ssmmapperutility.lib +#endif //FF_SIMLESS_OFFLINE_SUPPORT SMPSAFE diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/custcmd/inc/ssmuiproviderdll.h --- a/sysstatemgmt/systemstatereferenceplugins/custcmd/inc/ssmuiproviderdll.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/custcmd/inc/ssmuiproviderdll.h Thu Jul 01 11:20:10 2010 +0300 @@ -63,6 +63,9 @@ private: CSsmUiSpecific(); void ConstructL(); + + //Helper function to check for P&S Key + static TBool IsTestPsKeyDefined(); private: TStrtSecurityStatus iStrtSecurityStatus; TInt iReferenceCount; diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/custcmd/src/ssmuiproviderdlldefault.cpp --- a/sysstatemgmt/systemstatereferenceplugins/custcmd/src/ssmuiproviderdlldefault.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/custcmd/src/ssmuiproviderdlldefault.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -22,8 +22,20 @@ #include "ssmpanic.h" #include #include "ssmdebug.h" +#include +#include +#include +#include +#include +#include +#include +#include "ssmmapperutilitystatic.h" +#include "ssmmapperutilityinternalpskeys.h" +#include "ssmsubstateext.hrh" +#include "ssmswp.hrh" +#include "trace.h" -const TUid KPSStartupUid = {0x2000E65E}; +const TUid KPSStartupDefaultUid = {0x2000E65E}; const TUid KSecurityPinNotifierUid = {0x2000E667}; const TUid KScreenOutputChannel = {0x10009D48}; const TUid KEmergencyCallPropertyCategory = {0x2001032C}; @@ -40,8 +52,17 @@ //Number of clusterSize to be reserve for phone memory space const TInt KNumberOfCluster = 2; -_LIT(KTsyModuleName, "mm.tsy"); -_LIT(KTsyPhoneName, "GsmPhone1"); +//For test code +/** Channel used to communicate with Security Notifier. */ +static const TUid KSecurityNotifierChannel = { 0x1000598F }; + +// Type definitions for a buffer containing a drive id (drive letter + :). +const TInt KDriveIdLength = 2; +typedef TBuf TDriveId; + +const TUint32 KMiscPluginPropertyKey = 0x2000E658; +const TUid KPropertyCategory={0x2000D75B}; // tcustomcmd_server SID = KSsmServerName SID (changed in tcustomcmd_server.mmp file) + CSsmUiSpecific::CSsmUiSpecific() : iReferenceCount(1), iReservedPhoneMemory(0) @@ -55,36 +76,85 @@ EXPORT_C TUid CSsmUiSpecific::StartupPSUid() { - return KPSStartupUid; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("StartupPSUid :: Calling S60 plugins functions "); + return KPSUidStartup; + } + else + { + DEBUGPRINT1A("StartupPSUid :: Calling Symbian(dummy) plugins functions "); + return KPSStartupDefaultUid; + } } EXPORT_C TUid CSsmUiSpecific::SecurityPinNotifierUid() { - return KSecurityPinNotifierUid; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("SecurityPinNotifierUid :: Calling S60 plugins functions "); + return KSecurityNotifierUid; + } + else + { + DEBUGPRINT1A("SecurityPinNotifierUid :: Calling Symbian(dummy) plugins functions "); + return KSecurityPinNotifierUid; + } + } EXPORT_C TUint CSsmUiSpecific::EmergencyCallPropertyKey() { - return KEmergencyCallPropertyKey; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("EmergencyCallPropertyKey :: Calling S60 plugins functions "); + return KCTsyCallState; + } + else + { + DEBUGPRINT1A("EmergencyCallPropertyKey :: Calling Symbian(dummy) plugins functions "); + return KEmergencyCallPropertyKey; + } + } EXPORT_C TUid CSsmUiSpecific::EmergencyCallPropertyCategory() { - return KEmergencyCallPropertyCategory; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("EmergencyCallPropertyCategory :: Calling S60 plugins functions "); + return KPSUidCtsyCallInformation; + } + else + { + DEBUGPRINT1A("EmergencyCallPropertyCategory :: Calling Symbian(dummy) plugins functions "); + return KEmergencyCallPropertyCategory; + } + } EXPORT_C TBool CSsmUiSpecific::IsSimSupported() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsSimSupported :: Calling S60 plugins functions "); + return SsmMapperUtility::FeatureStatus( TUid::Uid( KFeatureIdSimCard ) ); + } + else + { + DEBUGPRINT1A("IsSimSupported :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } + } EXPORT_C void CSsmUiSpecific::SetSecurityStatus(const TStrtSecurityStatus& aSecurityStatus) - { + { iStrtSecurityStatus = aSecurityStatus; } EXPORT_C TStrtSecurityStatus CSsmUiSpecific::SecurityStatus() const - { + { return iStrtSecurityStatus; } @@ -127,83 +197,269 @@ EXPORT_C TUid CSsmUiSpecific::ScreenOutputChannelUid() { - return KScreenOutputChannel; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("ScreenOutputChannelUid :: Calling S60 plugins functions "); + return KSecurityNotifierChannel; + } + else + { + DEBUGPRINT1A("ScreenOutputChannelUid :: Calling Symbian(dummy) plugins functions "); + return KScreenOutputChannel; + } + } EXPORT_C TUint CSsmUiSpecific::SimStatusPropertyKey() { - return KSimStatusPropertyKey; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("SimStatusPropertyKey :: Calling S60 plugins functions "); + return KPSSimStatus; + } + else + { + DEBUGPRINT1A("SimStatusPropertyKey :: Calling Symbian(dummy) plugins functions "); + return KSimStatusPropertyKey; + } } EXPORT_C TBool CSsmUiSpecific::IsSimStateChangeAllowed() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsSimStateChangeAllowed :: Calling S60 plugins functions "); + TSsmState state; + TInt err = SsmMapperUtility::GetCurrentState( state ); + ERROR( err, "Failed to get current state" ); + return ( err == KErrNone && + ( state.MainState() == ESsmStartup && state.SubState() == ESsmStateSecurityCheck ) || + ( state.MainState() == ESsmStartup && state.SubState() == ESsmStateNonCritical ) || + state.MainState() == ESsmNormal ); + } + else + { + DEBUGPRINT1A("IsSimStateChangeAllowed :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } + } EXPORT_C TBool CSsmUiSpecific::IsAmaStarterSupported() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsAmaStarterSupported :: Calling S60 plugins functions "); + return SsmMapperUtility::FeatureStatus( TUid::Uid( KFeatureIdExtendedStartup ) ); + } + else + { + DEBUGPRINT1A("IsAmaStarterSupported :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } + } EXPORT_C HBufC* CSsmUiSpecific::GetTsyModuleNameL() { - HBufC* tstModuleName = KTsyModuleName().AllocL(); - return tstModuleName; + DEBUGPRINT1A("GetTsyModuleNameL :: Calling S60 plugins functions "); + /***************************************************** + * Series 60 Customer / TSY + * Needs customer TSY implementation + *****************************************************/ + + HBufC* name = KMmTsyModuleName().AllocL(); + INFO_1( "TSY name: %S", name ); + return name; } EXPORT_C TUid CSsmUiSpecific::StarterPSUid() { - return KSecurityStatusPropertyCategory; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("StarterPSUid :: Calling S60 plugins functions "); + return KPSStarterUid; + } + else + { + DEBUGPRINT1A("StartupPSUid :: Calling Symbian(dummy) plugins functions "); + return KSecurityStatusPropertyCategory; + } } EXPORT_C HBufC* CSsmUiSpecific::PhoneTsyNameL() { - HBufC* tsyPhoneName = KTsyPhoneName().AllocL(); - return tsyPhoneName; + DEBUGPRINT1A("PhoneTsyNameL :: Calling S60 plugins functions "); + /***************************************************** + * Series 60 Customer / TSY + * Needs customer TSY implementation + *****************************************************/ + + HBufC* name = KMmTsyPhoneName().AllocL(); + INFO_1( "Phone name: %S", name ); + return name; } EXPORT_C TBool CSsmUiSpecific::IsSimPresent() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsSimPresent :: Calling S60 plugins functions "); + TInt value( 0 ); + TInt err = RProperty::Get( SsmMapperUtility::PsUid( KPSUidStartup ), KPSSimStatus, value ); + ERROR( err, "Failed to get value of KPSUidStartup::KPSSimStatus" ); + return ( err == KErrNone && + ( value == ESimUsable || + value == ESimReadable || + value == ESimNotReady ) ); + } + else + { + DEBUGPRINT1A("IsSimPresent :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } } EXPORT_C TBool CSsmUiSpecific::IsSimlessOfflineSupported() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsSimlessOfflineSupported :: Calling S60 plugins functions "); + return SsmMapperUtility::FeatureStatus( + TUid::Uid( KFeatureIdFfSimlessOfflineSupport ) ); + } + else + { + DEBUGPRINT1A("IsSimlessOfflineSupported :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } } EXPORT_C TBool CSsmUiSpecific::IsNormalBoot() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsNormalBoot :: Calling S60 plugins functions "); + TInt value( 0 ); + TInt errorCode = RProperty::Get( SsmMapperUtility::PsUid( KPSUidStartup ), KPSStartupReason, value ); + ERROR( errorCode, "Failed to get value of KPSUidStartup::KPSStartupReason" ); + + TBool ret = ( errorCode == KErrNone && value == ENormalStartup ); + INFO_1( "Is normal boot = %d", ret ); + return ret; + } + else + { + DEBUGPRINT1A("IsNormalBoot :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } } EXPORT_C TBool CSsmUiSpecific::IsSimChangedReset() { - return ETrue; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("IsSimChangedReset :: Calling S60 plugins functions "); + TUid startupPsUid( SsmMapperUtility::PsUid( KPSUidStartup ) ); + TInt value( 0 ); + TInt errorCode = RProperty::Get( startupPsUid, KPSStartupReason, value ); + ERROR( errorCode, "Failed to get value of KPSUidStartup::KPSStartupReason" ); + + TBool ret( EFalse ); + if ( errorCode == KErrNone && value == ESIMStatusChangeReset ) + { + errorCode = RProperty::Get( startupPsUid, KPSSimChanged, value ); + ret = ( errorCode == KErrNone && value == ESimChanged ); + } + + INFO_1( "Is SIM changed reset = %d", ret ); + return ret; + } + else + { + DEBUGPRINT1A("IsSimChangedReset :: Calling Symbian(dummy) plugins functions "); + return ETrue; + } } EXPORT_C TUint CSsmUiSpecific::RFStatusPropertyKey() { - return KRFStatusPropertyKey; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RFStatusPropertyKey :: Calling S60 plugins functions "); + return SWP_UID_SSM_RF_STATUS; + } + else + { + DEBUGPRINT1A("RFStatusPropertyKey :: Calling Symbian(dummy) plugins functions "); + return KRFStatusPropertyKey; + } } EXPORT_C TUid CSsmUiSpecific::RFStatusPropertyCategory() { - return KRFStatusPropertyCategory; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("RFStatusPropertyCategory :: Calling S60 plugins functions "); + return TUid::Uid( SWP_UID_SSM_RF_STATUS ); + } + else + { + DEBUGPRINT1A("RFStatusPropertyCategory :: Calling Symbian(dummy) plugins functions "); + return KRFStatusPropertyCategory; + } } + EXPORT_C TUint CSsmUiSpecific::ValidateRTCPropertyKey() { - return KValidateRTCPropertyKey; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("ValidateRTCPropertyKey :: Calling S60 plugins functions "); + return KRTCPropertyKey; + } + else + { + DEBUGPRINT1A("ValidateRTCPropertyKey :: Calling Symbian(dummy) plugins functions "); + return KValidateRTCPropertyKey; + } + } EXPORT_C TUid CSsmUiSpecific::ValidateRTCPropertyCategory() { - return KValidateRTCPropertyCategory; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("ValidateRTCPropertyCategory :: Calling S60 plugins functions "); + return KPSStarterUid; + } + else + { + DEBUGPRINT1A("ValidateRTCPropertyCategory :: Calling Symbian(dummy) plugins functions "); + return KValidateRTCPropertyCategory; + } } EXPORT_C TInt CSsmUiSpecific::PhoneMemoryRootDriveId() { - return EDriveC; + if (!IsTestPsKeyDefined()) + { + DEBUGPRINT1A("PhoneMemoryRootDriveId :: Calling S60 plugins functions "); + TInt driveId = EDriveC; + TDriveId driveIdBuf = PathInfo::PhoneMemoryRootPath().Left( KDriveIdLength ); + if ( driveIdBuf.Length() > 0 ) + { + TInt err = RFs::CharToDrive( driveIdBuf[0], driveId ) ; + INFO_1( "PhoneMemoryRootDriveId - CharToDrive returns: %d", err ); + } + + INFO_1( "Phone memory root path ID: %d", driveId ); + return driveId; + } + else + { + DEBUGPRINT1A("PhoneMemoryRootDriveId :: Calling Symbian(dummy) plugins functions "); + return EDriveC; + } } /** @@ -215,6 +471,21 @@ } /** + Helper function to check for P&S Key +*/ +TBool CSsmUiSpecific::IsTestPsKeyDefined() + { + TBool testPsKeyDefined = EFalse; + TInt result = RProperty::Get(KPropertyCategory, KMiscPluginPropertyKey, testPsKeyDefined); + DEBUGPRINT3(_L("KMiscPluginPropertyKey %d Error %d"), testPsKeyDefined, result); + if ((KErrNone != result) && (KErrNotFound != result)) + { + User::Leave(result); + } + return testPsKeyDefined; + } + +/** Reserve two ClusterSize in Phone Memory Space on H/W and 512 bytes for __WINS__ @return KErrNone if successful or systemwide error diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/custcmd/src/ssmuiproviderdllref.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatereferenceplugins/custcmd/src/ssmuiproviderdllref.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,278 @@ +// Copyright (c) 2007-2010 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: +// + +/** + @internalComponent + @released +*/ + +#include "ssmuiproviderdll.h" +#include "ssmpanic.h" +#include +#include "ssmdebug.h" + +const TUid KPSStartupUid = {0x2000E65E}; +const TUid KSecurityPinNotifierUid = {0x2000E667}; +const TUid KScreenOutputChannel = {0x10009D48}; +const TUid KEmergencyCallPropertyCategory = {0x2001032C}; + +const TUint KEmergencyCallPropertyKey = 0x0101; +const TUint KSimStatusPropertyKey = 0x0102; + +const TUid KSecurityStatusPropertyCategory = {0x2000E664}; + +const TUid KRFStatusPropertyCategory = {0x2000D75B}; +const TUint KRFStatusPropertyKey = 0x2001D2A9; +const TUid KValidateRTCPropertyCategory = {0x2000D75B}; +const TUint KValidateRTCPropertyKey = 0x2001D2AB; +//Number of clusterSize to be reserve for phone memory space +const TInt KNumberOfCluster = 2; + +_LIT(KTsyModuleName, "mm.tsy"); +_LIT(KTsyPhoneName, "GsmPhone1"); + +CSsmUiSpecific::CSsmUiSpecific() +: iReferenceCount(1), iReservedPhoneMemory(0) + { + } + +EXPORT_C CSsmUiSpecific::~CSsmUiSpecific() + { + iReservedPhoneMemoryFs.Close(); + } + +EXPORT_C TUid CSsmUiSpecific::StartupPSUid() + { + return KPSStartupUid; + } + +EXPORT_C TUid CSsmUiSpecific::SecurityPinNotifierUid() + { + return KSecurityPinNotifierUid; + } + +EXPORT_C TUint CSsmUiSpecific::EmergencyCallPropertyKey() + { + return KEmergencyCallPropertyKey; + } + +EXPORT_C TUid CSsmUiSpecific::EmergencyCallPropertyCategory() + { + return KEmergencyCallPropertyCategory; + } + +EXPORT_C TBool CSsmUiSpecific::IsSimSupported() + { + return ETrue; + } + +EXPORT_C void CSsmUiSpecific::SetSecurityStatus(const TStrtSecurityStatus& aSecurityStatus) + { + iStrtSecurityStatus = aSecurityStatus; + } + +EXPORT_C TStrtSecurityStatus CSsmUiSpecific::SecurityStatus() const + { + return iStrtSecurityStatus; + } + +EXPORT_C CSsmUiSpecific* CSsmUiSpecific::InstanceL() + { + CSsmUiSpecific* self; + + //Check Tls data + if (NULL == Dll::Tls()) + { + //Instantiate CSsmUiSpecific if TLS is null + self = new (ELeave) CSsmUiSpecific(); + CleanupStack::PushL(self); + self->ConstructL(); + //Copy CSsmUiSpecific pointer in TLS + User::LeaveIfError(Dll::SetTls(self)); + CleanupStack::Pop(self); + } + else + { + //CSsmUiSpecific has already been instantiated + self = static_cast(Dll::Tls()); + ++self->iReferenceCount; + } + return self; + } + +EXPORT_C void CSsmUiSpecific::Release() + { + TAny* tlsPtr = Dll::Tls(); + __ASSERT_DEBUG(NULL != tlsPtr, User::Panic(KPanicSsmUiSpecific, KErrNotFound)); + + CSsmUiSpecific* self = static_cast(tlsPtr); + if (0 == --self->iReferenceCount) + { + Dll::FreeTls(); + delete self; + } + } + +EXPORT_C TUid CSsmUiSpecific::ScreenOutputChannelUid() + { + return KScreenOutputChannel; + } + +EXPORT_C TUint CSsmUiSpecific::SimStatusPropertyKey() + { + return KSimStatusPropertyKey; + } + +EXPORT_C TBool CSsmUiSpecific::IsSimStateChangeAllowed() + { + return ETrue; + } + +EXPORT_C TBool CSsmUiSpecific::IsAmaStarterSupported() + { + return ETrue; + } + +EXPORT_C HBufC* CSsmUiSpecific::GetTsyModuleNameL() + { + HBufC* tstModuleName = KTsyModuleName().AllocL(); + return tstModuleName; + } + +EXPORT_C TUid CSsmUiSpecific::StarterPSUid() + { + return KSecurityStatusPropertyCategory; + } + +EXPORT_C HBufC* CSsmUiSpecific::PhoneTsyNameL() + { + HBufC* tsyPhoneName = KTsyPhoneName().AllocL(); + return tsyPhoneName; + } + +EXPORT_C TBool CSsmUiSpecific::IsSimPresent() + { + return ETrue; + } + +EXPORT_C TBool CSsmUiSpecific::IsSimlessOfflineSupported() + { + return ETrue; + } + +EXPORT_C TBool CSsmUiSpecific::IsNormalBoot() + { + return ETrue; + } + +EXPORT_C TBool CSsmUiSpecific::IsSimChangedReset() + { + return ETrue; + } + +EXPORT_C TUint CSsmUiSpecific::RFStatusPropertyKey() + { + return KRFStatusPropertyKey; + } + +EXPORT_C TUid CSsmUiSpecific::RFStatusPropertyCategory() + { + return KRFStatusPropertyCategory; + } +EXPORT_C TUint CSsmUiSpecific::ValidateRTCPropertyKey() + { + return KValidateRTCPropertyKey; + } + +EXPORT_C TUid CSsmUiSpecific::ValidateRTCPropertyCategory() + { + return KValidateRTCPropertyCategory; + } + +EXPORT_C TInt CSsmUiSpecific::PhoneMemoryRootDriveId() + { + return EDriveC; + } + +/** +Leaving construction inside ConstructL +*/ +void CSsmUiSpecific::ConstructL() + { + User::LeaveIfError( iReservedPhoneMemoryFs.Connect() ); + } + +/** +Reserve two ClusterSize in Phone Memory Space on H/W +and 512 bytes for __WINS__ +@return KErrNone if successful or systemwide error +*/ +EXPORT_C TInt CSsmUiSpecific::ReservePhoneMemorySpace() + { + TVolumeIOParamInfo volumeParamInfo; + const TInt phoneMemoryDriveID = PhoneMemoryRootDriveId(); + TInt errorCode = iReservedPhoneMemoryFs.VolumeIOParam(phoneMemoryDriveID, volumeParamInfo); + if( KErrNone == errorCode ) + { +#ifdef __WINS__ + //512 bytes for __WINS__ + const TInt reservedMemory = 512; +#else + //Reserving two clusterSize Phone memory + const TInt reservedMemory = KNumberOfCluster * (volumeParamInfo.iClusterSize); +#endif //__WINS__ + errorCode = iReservedPhoneMemoryFs.ReserveDriveSpace(phoneMemoryDriveID, reservedMemory); + + if ( KErrNone == errorCode ) + { + iReservedPhoneMemory = reservedMemory; + } + } + return errorCode; + } + +/** +Free reserved bytes from Phone Memory Space. If aSpaceToFree is 0 bytes +then free complete reserved memory +@param aSpaceToFree request to free memory +@return KErrNone if successful or systemwide error +*/ +EXPORT_C TInt CSsmUiSpecific::FreeReservedPhoneMemorySpace(const TInt aSpaceToFree) + { + TInt errorCode(KErrGeneral); + DEBUGPRINT3A("Reserved memory is = %d bytes, Request to free memory is = %d bytes", iReservedPhoneMemory, aSpaceToFree); + if(0 < iReservedPhoneMemory) + { + if(0 == aSpaceToFree) + { + //Free complete reserved phone memory + errorCode = iReservedPhoneMemoryFs.ReserveDriveSpace( PhoneMemoryRootDriveId(), 0 ); + DEBUGPRINT2A("Freeing memory completed with = %d", errorCode); + iReservedPhoneMemory = 0; + } + else + { + TInt newReserveSize = iReservedPhoneMemory - aSpaceToFree; + newReserveSize = newReserveSize >= 0 ? newReserveSize : 0; + errorCode = iReservedPhoneMemoryFs.ReserveDriveSpace( PhoneMemoryRootDriveId(), newReserveSize ); + DEBUGPRINT2A("Freeing partial phone memory completed with = %d", errorCode); + if(KErrNone == errorCode) + { + iReservedPhoneMemory = newReserveSize; + } + } + } + return errorCode; + } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/group/ssrefpluginstest_tclayer.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/group/ssrefpluginstest_tclayer.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,33 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssrefplugins_TClayer EN"} + +; Vendor name +: "Ssrefplugins_TClayer" + +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_startersession.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_startersession.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_startupadaptationadapter.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_startupadaptationadapter.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_ssmpropertyobserver.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_ssmpropertyobserver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_ssmsimstatusobserver.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_ssmsimstatusobserver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_ssmsecurityeventobserver.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_ssmsecurityeventobserver.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tclayer\scripts\ssrefpluginstest_clayer_startersessionwithssm.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_clayer_startersessionwithssm.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/group/tclayer_server.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/group/tclayer_server.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/group/tclayer_server.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -25,8 +25,9 @@ TARGETPATH /sys/bin UID 0x1000007A 0xA00056EB VENDORID 0x70000001 -// Use KPSUidStartup as the secure id of this test server to allow P+S keys to be defined -SECUREID 0x101F8766 +SECUREID 0x2000D75B + +CAPABILITY WriteDeviceData OS_LAYER_SYSTEMINCLUDE_SYMBIAN @@ -47,6 +48,7 @@ LIBRARY etel.lib LIBRARY etelmm.lib LIBRARY centralrepository.lib +LIBRARY ws32.lib // testcode SOURCEPATH ../src diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/scripts/ssrefpluginstest_clayer_ssmsimstatusobserver.script --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/scripts/ssrefpluginstest_clayer_ssmsimstatusobserver.script Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/scripts/ssrefpluginstest_clayer_ssmsimstatusobserver.script Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -15,9 +15,7 @@ PRINT Run SSM SIM Status Observer tests -PRINT Swapping SID over to CSsmUiSpecific::StartupPSUid() -RUN_PROGRAM -1 setcap tclayer_server.exe 0 -SID 2000e65e tclayer_serverSID.exe -LOAD_SUITE tclayer_serverSID +LOAD_SUITE tclayer_server START_TESTCASE DEVSRVS-SSREFPLUGINS-CLAYER-0023 //! @SYMTestCaseID DEVSRVS-SSREFPLUGINS-CLAYER-0023 @@ -38,6 +36,6 @@ //! are no panics. //! All methods handle the object data appropriately, with no errors reported and there //! are no panics. -RUN_TEST_STEP 100 tclayer_serverSID CCLayerTestSsmSimStatusObserver +RUN_TEST_STEP 100 tclayer_server CCLayerTestSsmSimStatusObserver END_TESTCASE DEVSRVS-SSREFPLUGINS-CLAYER-0023 diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsecurityeventobserver.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsecurityeventobserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsecurityeventobserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -19,6 +19,8 @@ @internalComponent - Internal Symbian test code */ +#include +#include #include "ssmdebug.h" #include "strtsecphaseobserver.h" #include "ssmsecurityeventobserver.h" @@ -33,6 +35,8 @@ //Exe name which defines security state PS keys _LIT (KExeToDefineSecurityStatePS, "\\sys\\bin\\definesecuritystateps.exe"); +const TUint32 KMiscPluginPropertyKey = 0x2000E658; +const TUid KPropertyCategory={0x2000D75B}; CLayerTestSsmEventObserver::CLayerTestSsmEventObserver() { @@ -60,15 +64,31 @@ //Start the test exe which defines security state related property keys RProcess processHandle; + CleanupClosePushL(processHandle); processHandle.Create(KExeToDefineSecurityStatePS, KNullDesC); processHandle.Resume(); - processHandle.Close(); + TRequestStatus status; + processHandle.Rendezvous(status); + User::WaitForRequest(status); + + TInt retVal = status.Int(); + INFO_PRINTF2(_L("retVal = %d"),retVal); + TEST(KErrNone == retVal); + // leave if the process has not started properly + User::LeaveIfError(retVal); + CleanupStack::PopAndDestroy(); + //processHandle.Close(); + + TInt error = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + TInt error1 = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + INFO_PRINTF3(_L("Defining and setting property returned %d & %d"), error, error1); return CTestStep::doTestStepPreambleL(); } TVerdict CLayerTestSsmEventObserver::doTestStepPostambleL() { + TInt error = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); return CTestStep::doTestStepPostambleL(); } @@ -82,6 +102,9 @@ void CLayerTestSsmEventObserver::SimulatePasswordEntry() { + /*RWsSession wsSession; + wsSession.Connect();*/ + TRawEvent eventDown; TRawEvent eventUp; @@ -90,12 +113,21 @@ UserSvr::AddEvent(eventDown); eventUp.Set(TRawEvent::EKeyUp, EStdKeyComma); UserSvr::AddEvent(eventUp); + User::After(1000000); - eventDown.Set(TRawEvent::EKeyDown, EStdKeyEnter); +/* eventDown.Set(TRawEvent::EKeyDown, EStdKeyEnter); + UserSvr::AddEvent(eventDown); + eventUp.Set(TRawEvent::EKeyUp, EStdKeyEnter); + UserSvr::AddEvent(eventUp);*/ + + eventDown.Set(TRawEvent::EButton1Down, 60, 600); UserSvr::AddEvent(eventDown); - eventUp.Set(TRawEvent::EKeyUp, EStdKeyEnter); + eventUp.Set(TRawEvent::EButton1Up, 60, 600); UserSvr::AddEvent(eventUp); User::After(1000000); + + /* wsSession.Flush(); + wsSession.Close();*/ } void CLayerTestSsmEventObserver::CallBackRunL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsimstatusobserver.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsimstatusobserver.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_ssmsimstatusobserver.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -185,8 +185,9 @@ __UHEAP_MARK; // Delete any existing defines, ignore return value - (void) RProperty::Delete(CSsmUiSpecific::StartupPSUid(), KPSSimChanged); - (void) RProperty::Delete(CSsmUiSpecific::StartupPSUid(), KPSSimOwned); + TInt err1 = RProperty::Delete(CSsmUiSpecific::StartupPSUid(), KPSSimChanged); + TInt err2 = RProperty::Delete(CSsmUiSpecific::StartupPSUid(), KPSSimOwned); + INFO_PRINTF3(_L("Value of err1 & err2 = %d & %d"), err1, err2); TInt err = KErrNone; INFO_PRINTF1(_L("Constructing SSM SIM publish cmd")); @@ -230,6 +231,7 @@ INFO_PRINTF1(_L("Initializing SSM SIM status observer without defining SIM changed property")); err = RProperty::Define(CSsmUiSpecific::StartupPSUid(), KPSSimOwned, RProperty::EInt); + INFO_PRINTF2(_L("Define returns err = %d") ,err); TEST(err == KErrNone); simCustomCmd->Execute(emptyBuf, iRequestStatus); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startersession.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startersession.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startersession.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -335,28 +335,35 @@ INFO_PRINTF1(_L("Deleting splash screen property")); ret = RProperty::Delete(KPSUidStartup, KPSSplashShutdown); TEST(ret == KErrNone || ret == KErrNotFound); + INFO_PRINTF2(_L("ret val is : %d"), ret); INFO_PRINTF1(_L("Ending splashscreen without defining property")); ret = starterSession.EndSplashScreen(); TEST(ret == KErrNotFound); + INFO_PRINTF2(_L("ret val is : %d"), ret); INFO_PRINTF1(_L("Defining splash screen property")); // In a test enviroment we don't need to worry about protecting the property // so allow anything to change it _LIT_SECURITY_POLICY_PASS(KAllPass); //lint !e648 Suppress overflow in computing constant for operation ret = RProperty::Define(KPSUidStartup, KPSSplashShutdown, RProperty::EInt, KAllPass, KAllPass); + INFO_PRINTF3(_L("KPSUidStartup = %x, KPSSplashShutdown = %x"), KPSUidStartup, KPSSplashShutdown); TEST(ret == KErrNone); + INFO_PRINTF2(_L("ret val is : %d"), ret); INFO_PRINTF1(_L("Ending splashscreen with property defined")); ret = starterSession.EndSplashScreen(); TEST(ret == KErrNone); + INFO_PRINTF2(_L("ret val is : %d"), ret); INFO_PRINTF1(_L("Reading splash screen property")); TInt value; ret = RProperty::Get(KPSUidStartup, KPSSplashShutdown, value); TEST(ret == KErrNone); + INFO_PRINTF2(_L("ret val is : %d"), ret); TEST(value == ESplashShutdown); + INFO_PRINTF3(_L("Property value is : %d .Expected : %d"), ret, ESplashShutdown); INFO_PRINTF1(_L("Close on connected RStartSession")); starterSession.Close(); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startupadaptationadapter.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startupadaptationadapter.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tclayer/src/tclayer_step_startupadaptationadapter.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -1740,11 +1740,11 @@ } // declare exported functions for test AFSS-CLAYER-0019 -MEmergencyCallRfAdaptation* CreateEmergencyCallRfAdaptationL(void); -MMiscAdaptation* CreateMiscAdaptationL(void); -MRtcAdaptation* CreateRtcAdaptationL(void); -MSimAdaptation* CreateSimAdaptationL(void); -MStateAdaptation* CreateStateAdaptationL(void); +IMPORT_C MEmergencyCallRfAdaptation* CreateEmergencyCallRfAdaptationL(void); +IMPORT_C MMiscAdaptation* CreateMiscAdaptationL(void); +IMPORT_C MRtcAdaptation* CreateRtcAdaptationL(void); +IMPORT_C MSimAdaptation* CreateSimAdaptationL(void); +IMPORT_C MStateAdaptation* CreateStateAdaptationL(void); /** Old Test CaseID AFSS-CLAYER-0019 diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/definesecuritystateps.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/definesecuritystateps.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/definesecuritystateps.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -17,7 +17,7 @@ TARGET definesecuritystateps.exe TARGETTYPE exe -CAPABILITY none +CAPABILITY WriteDeviceData UID 0x100039CE 0x2000E664 VENDORID 0x70000001 @@ -32,7 +32,7 @@ OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview + // Registration file SOURCEPATH ../src diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/ssrefpluginstest_tintcustcmd.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/ssrefpluginstest_tintcustcmd.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,32 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssrefplugins_TIntCustCmd EN"} + +; Vendor name +: "Ssrefplugins_TIntCustCmd" + +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tintcustcmd\scripts\ssrefpluginstest_custcmd_simsecuritypincheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_simsecuritypincheck.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tintcustcmd\scripts\ssrefpluginstest_custcmd_activateemergencycallcheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_activateemergencycallcheck.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tintcustcmd\scripts\ssrefpluginstest_custcmd_deactivateemergencycallcheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_deactivateemergencycallcheck.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tintcustcmd\scripts\ssrefpluginstest_custcmd_devicesecuritypincheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_devicesecuritypincheck.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tintcustcmd\scripts\ssrefpluginstest_custcmd_int_execute.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_int_execute.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/tcustomcmd_server.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/tcustomcmd_server.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/group/tcustomcmd_server.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -47,6 +47,15 @@ SOURCE tcustcmd_step_devicesecuritypincheck.cpp SOURCE tcustcmd_step_int_execute.cpp +USERINCLUDE ../../../custcmd/inc +SOURCEPATH ../../../custcmd/src +SOURCE ssmsecuritychecknotifier.cpp + +#ifndef TEST_CUSTCMD +#define TEST_CUSTCMD +MACRO TEST_CUSTCMD_MACRO +#endif + LIBRARY euser.lib LIBRARY efsrv.lib LIBRARY testexecuteutils.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_devicesecuritypincheck.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_devicesecuritypincheck.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_devicesecuritypincheck.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -84,17 +84,6 @@ iAsyncStopScheduler = new(ELeave) CAsyncCallBack(CActive::EPriorityIdle); - //Start the test exe which defines startup related property keys - RProcess processHandle; - - TInt temp = processHandle.Create(KExeToDefineStartUpPS, KNullDesC); - processHandle.Resume(); - processHandle.Close(); - - processHandle.Create(KExeToDefineStartUpStatePS, KNullDesC); - processHandle.Resume(); - processHandle.Close(); - //For stopping the key simulation iStopSimulatekey = CStopSimulateDevicekey::NewL(this); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_simsecuritypincheck.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_simsecuritypincheck.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tintcustcmd/src/tcustcmd_step_simsecuritypincheck.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -20,6 +20,7 @@ #include const TInt KNumOfTestCases = 8; +const TUint32 KMiscPluginPropertyKey = 0x2000E658; static TInt CustomCmdTestSecurityCheckCallBackL(TAny* aCustomCmdTestSecurityPinCheck) { @@ -35,6 +36,8 @@ */ void CCustomCmdTestSecurityPinCheck::CallBackForEnterPin() { + const TInt okButtonPos1 = 60; //the position of ok button + const TInt okButtonPos2 = 600; //the position of ok button iAsyncStopScheduler->CallBack(); RWsSession wsSession; @@ -52,9 +55,9 @@ User::After(100000); } - eventDown.Set(TRawEvent::EKeyDown, EStdKeyEnter); + eventDown.Set(TRawEvent::EButton1Down, okButtonPos1,okButtonPos2); UserSvr::AddEvent(eventDown); - eventUp.Set(TRawEvent::EKeyUp, EStdKeyEnter); + eventUp.Set(TRawEvent::EButton1Up, okButtonPos1,okButtonPos2); UserSvr::AddEvent(eventUp); User::After(100000); @@ -91,6 +94,11 @@ iAsyncStopScheduler = new(ELeave) CAsyncCallBack(CActive::EPriorityIdle); + TInt err = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + TEST ((KErrNone == err) || (KErrAlreadyExists == err)); + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + TEST (KErrNone == err); + //Start the test exe which defines startup related property keys RProcess processHandle; CleanupClosePushL(processHandle); @@ -108,23 +116,36 @@ User::LeaveIfError(retVal); CleanupStack::PopAndDestroy(); + //Start the test exe which defines startup state related property keys RProcess processHandle1; - TInt err1 = processHandle1.Create(KExeToDefineStartUpStatePS, KNullDesC); - INFO_PRINTF2(_L("KExeToDefineStartUpStatePS ret is %d"), err1); + CleanupClosePushL(processHandle1); + err = processHandle1.Create(KExeToDefineStartUpStatePS, KNullDesC); + INFO_PRINTF2(_L("KExeToDefineStartUpStatePS ret is %d"), err); + User::LeaveIfError(err); processHandle1.Resume(); - processHandle1.Close(); + + // wait for the newly created process to rendezvous + processHandle1.Rendezvous(status); + User::WaitForRequest(status); + retVal = status.Int(); + //leave if the process has not started properly + INFO_PRINTF2(_L("KExeToDefineStartUpStatePS rendezvous returns %d"), retVal); + User::LeaveIfError(retVal); + CleanupStack::PopAndDestroy(); //there are 8 different scenarios to test the custom command. Check the test spec for the scenarios. //CMiscAdaptationRef::SecurityStateChange() has been changed to simulate the scenarios. //CMiscAdaptationRef::SecurityStateChange() uses KTestCmdSecurityCheckTestFile to get the scenario number //connect to file server + User::LeaveIfError(iFs.Connect()); - TInt err = iFs.MkDirAll(KDirNameOfTestCasesNumFile); + err = iFs.MkDirAll(KDirNameOfTestCasesNumFile); if (KErrAlreadyExists != err && KErrNone != err) { User::Leave(err); } err = iFile.Replace(iFs, KTestCmdSecurityCheckTestFile, EFileWrite | EFileStream); + TEST(KErrNone == err); iFile.Close(); //For stopping the key simulation when execution behaviour is deferredwaitforsignal and fireandforget @@ -135,7 +156,8 @@ TEST(KErrNone == connect); //RProperty property; - iProperty.Define(KCustomcmdServerSID, iSwp.Key(), RProperty::EInt); + err = iProperty.Define(KCustomcmdServerSID, iSwp.Key(), RProperty::EInt); + TEST ((KErrNone == err) || (KErrAlreadyExists == err)); // Register mapping between keys and swp policy DLL (done once per ssmserver) INFO_PRINTF1(_L("Registering swp...")); @@ -455,6 +477,8 @@ TVerdict CCustomCmdTestSecurityPinCheck::doTestStepPostambleL() { TEST(KErrNone == iProperty.Delete(KCustomcmdServerSID, iSwp.Key())); + TInt err = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); + TEST (KErrNone == err); iProperty.Close(); iClient.Close(); //delete the file diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/defineemergencycallps.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/defineemergencycallps.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/defineemergencycallps.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -17,7 +17,7 @@ TARGET defineemergencycallps.exe TARGETTYPE exe -CAPABILITY none +CAPABILITY WriteDeviceData UID 0x100039CE 0x2001032C VENDORID 0x70000001 @@ -32,7 +32,7 @@ OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview +MW_LAYER_SYSTEMINCLUDE // Registration file SOURCEPATH ../src diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/definestartupps.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/definestartupps.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/definestartupps.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -15,7 +15,7 @@ TARGET definestartupps.exe TARGETTYPE exe -CAPABILITY none +CAPABILITY WriteDeviceData UID 0x100039CE 0x2000E65E VENDORID 0x70000001 @@ -30,7 +30,6 @@ OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview // Registration file SOURCEPATH ../src diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/ssrefpluginstest_tuintcustcmd.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/ssrefpluginstest_tuintcustcmd.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,39 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Ssrefplugins_TUnitCustCmd EN"} + +; Vendor name +: "Ssrefplugins_TUnitCustCmd" + +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_coopsysperformrestartactions.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_coopsysperformrestartactions.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_coopsysperformrfsactions.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_coopsysperformrfsactions.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_coopsysperformshutdownactions.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_coopsysperformshutdownactions.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_coopsysselftest.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_coopsysselftest.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_activaterfforemergencycall.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_activaterfforemergencycall.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_deactivaterfforemergencycall.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_deactivaterfforemergencycall.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_coopsysstatechange.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_coopsysstatechange.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_publishstartupmode.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_publishstartupmode.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_execute.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_execute.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_publishsimownedandchanged.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_publishsimownedandchanged.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_simsecuritycheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_simsecuritycheck.script" +"\sf\os\devicesrv\sysstatemgmt\systemstatereferenceplugins\test\tunitcustcmd\scripts\ssrefpluginstest_custcmd_devicesecuritycheck.script"-"c:\devicesrv\ssrefpluginstest\ssrefpluginstest_custcmd_devicesecuritycheck.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifier.rss --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifier.rss Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifier.rss Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -19,8 +19,13 @@ @internalComponent - Internal Symbian test code */ -#include -#include +#include +#include + +#include +#include + +#define qtn_sen_pindlg_auth_title "Security check" NAME SPIN @@ -30,21 +35,31 @@ RESOURCE TBUF16 { buf=""; } + + RESOURCE DIALOG r_security_pin { - title="Security check"; - buttons=R_EIK_BUTTONS_CANCEL_OK; + flags = EGeneralQueryFlags; + title="Security check"; + buttons=R_AVKON_SOFTKEYS_OK_CANCEL; items = { - DLG_LINE - { - type = EEikCtSecretEd; //Control factory id. - id = 0; - control = SECRETED - { - num_letters=8; - }; - } + DLG_LINE + { + type = EAknCtQuery; + id = EGeneralQuery; + control = AVERELL_DATA_QUERY + { + layout = EPinLayout; + label = qtn_sen_pindlg_auth_title; + control = SECRETED + { + num_letters = 8 ;//KSenMaxPasswordLength + }; + }; + } }; } + +RESOURCE TBUF r_pinnotdlg_auth_title { buf = qtn_sen_pindlg_auth_title; } diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifierplugin.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifierplugin.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/testpinnotifierplugin.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -35,7 +35,6 @@ OS_LAYER_SYSTEMINCLUDE_SYMBIAN MW_LAYER_SYSTEMINCLUDE_SYMBIAN -SYSTEMINCLUDE /epoc32/include/techview #ifndef SYMBIAN_OLD_EXPORT_LOCATION SYSTEMINCLUDE /epoc32/include/platform/app #endif @@ -49,7 +48,7 @@ TARGET testpinnotifierplugin.rsc END -SOURCEPATH ./../src +SOURCEPATH ../src SOURCE testpinnotifierplugin.cpp LIBRARY euser.lib diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/tunitcustcmd_server.mmp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/tunitcustcmd_server.mmp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/group/tunitcustcmd_server.mmp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -101,6 +101,7 @@ LIBRARY centralrepository.lib LIBRARY ssmuiproviderdll.lib LIBRARY ssmadaptationcli.lib +LIBRARY ws32.lib LIBRARY etelmm.lib //Device security check LIBRARY etel.lib //Device security check diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/inc/testpinnotifierplugin.h --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/inc/testpinnotifierplugin.h Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/inc/testpinnotifierplugin.h Thu Jul 01 11:20:10 2010 +0300 @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_activaterfforemergencycall.script --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_activaterfforemergencycall.script Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_activaterfforemergencycall.script Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -13,7 +13,7 @@ // Description: // -PRINT Run CCustomCmdTestDeactivateRfForEmergencyCall tests +PRINT Run CCustomCmdTestActivateRfForEmergencyCall tests LOAD_SUITE tunitcustcmd_server @@ -30,5 +30,5 @@ //! 2. Initialize - Initialising the custom cmd //! 3. Execute - Executing the custom cmd //! @SYMTestExpectedResults Command should execute normally and should complete with KErrNone. -RUN_TEST_STEP 100 tunitcustcmd_server CCustomCmdTestDeactivateRfForEmergencyCall +RUN_TEST_STEP 100 tunitcustcmd_server CCustomCmdTestActivateRfForEmergencyCall END_TESTCASE DEVSRVS-SSREFPLUGINS-CUSTCMD-0001 diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_deactivaterfforemergencycall.script --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_deactivaterfforemergencycall.script Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/scripts/ssrefpluginstest_custcmd_deactivaterfforemergencycall.script Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -13,7 +13,7 @@ // Description: // -PRINT Run CCustomCmdTestActivateRfForEmergencyCall tests +PRINT Run CCustomCmdTestDeactivateRfForEmergencyCall tests LOAD_SUITE tunitcustcmd_server @@ -30,6 +30,6 @@ //! 2. Initialize - Initialising the custom cmd //! 3. Execute - Executing the custom cmd //! @SYMTestExpectedResults Command should execute normally and should complete with KErrNone. -RUN_TEST_STEP 100 tunitcustcmd_server CCustomCmdTestActivateRfForEmergencyCall +RUN_TEST_STEP 100 tunitcustcmd_server CCustomCmdTestDeactivateRfForEmergencyCall END_TESTCASE DEVSRVS-SSREFPLUGINS-CUSTCMD-0008 diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_activaterfforemergencycall.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_activaterfforemergencycall.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_activaterfforemergencycall.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,9 @@ #include "tcmd_step_activaterfforemergencycall.h" #include "ssmcustomcmdfactory.h" #include "cmdactivaterfforemergencycall.h" +#include +const TUint32 KEmergencyCallRfAdaptationPluginPropertyKey = 0x2000E657; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestActivateRfForEmergencyCall::~CCustomCmdTestActivateRfForEmergencyCall() { @@ -41,6 +44,11 @@ { _LIT(KTESTLOG, "TestCustomCmdActivateRfForEmergencyCallL"); INFO_PRINTF1(KTESTLOG); + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); //Create Deactivate Rf For Emergency Call custom command MSsmCustomCommand* customCmdActivateRfForEmergencyCall = SsmCustomCmdFactory::CmdActivateRfForEmergencyCallNewL(); @@ -56,12 +64,11 @@ //Command parameter is not used inside the Execute. So passing any dummy data should be fine //Execute the command customCmdActivateRfForEmergencyCall->Execute(dummy, status); - TEST(KRequestPending == status.Int()); //Wait for the request to be completed User::WaitForRequest(status); TEST(KErrNone == status.Int()); - + //Execute the command once again customCmdActivateRfForEmergencyCall->Execute(dummy, status); @@ -73,12 +80,14 @@ //checking the status to KErrNone instead of KErrCancel. User::WaitForRequest(status); TEST(KErrNone == status.Int()); - + //Close the command customCmdActivateRfForEmergencyCall->Close(); //Releasing the comand will delete itself. customCmdActivateRfForEmergencyCall->Release(); + err = RProperty::Delete(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestActivateRfForEmergencyCall::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrestartactions.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrestartactions.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrestartactions.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,10 @@ #include "tcmd_step_coopsysperformrestartactions.h" #include "ssmcustomcmdfactory.h" #include "cmdcoopsysperformrestartactions.h" +#include + +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestCoopSysPerformRestartActions::~CCustomCmdTestCoopSysPerformRestartActions() { @@ -39,6 +43,12 @@ void CCustomCmdTestCoopSysPerformRestartActions::TestCustomCmdCoopSysPerformRestartActionsL() { + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + _LIT(KTESTLOG, "TestCustomCmdCoopSysPerformRestartActionsL"); INFO_PRINTF1(KTESTLOG); @@ -80,6 +90,9 @@ //Releasing the comand will delete itself. customCmdCoopSysPerformRestartActions->Release(); + + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestCoopSysPerformRestartActions::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrfsactions.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrfsactions.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformrfsactions.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,10 @@ #include "tcmd_step_coopsysperformrfsactions.h" #include "ssmcustomcmdfactory.h" #include "cmdcoopsysperformrfsactions.h" +#include + +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestCoopSysPerformRfsActions::~CCustomCmdTestCoopSysPerformRfsActions() { @@ -39,6 +43,11 @@ void CCustomCmdTestCoopSysPerformRfsActions::TestCustomCmdCoopSysPerformRfsActionsL() { + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); _LIT(KTESTLOG, "TestCustomCmdCoopSysPerformRfsActionsL"); INFO_PRINTF1(KTESTLOG); @@ -87,6 +96,8 @@ //Releasing the comand will delete itself. customCmdCoopSysPerformRfsActions->Release(); + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestCoopSysPerformRfsActions::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformshutdownactions.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformshutdownactions.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysperformshutdownactions.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,10 @@ #include "tcmd_step_coopsysperformshutdownactions.h" #include "ssmcustomcmdfactory.h" #include "cmdcoopsysperformshutdownactions.h" +#include + +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestCoopSysPerformShutdownActions::~CCustomCmdTestCoopSysPerformShutdownActions() { @@ -39,6 +43,11 @@ void CCustomCmdTestCoopSysPerformShutdownActions::TestCustomCmdCoopSysPerformShutdownActionsL() { + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); _LIT(KTESTLOG, "TestCustomCmdCoopSysPerformShutdownActionsL"); INFO_PRINTF1(KTESTLOG); @@ -81,6 +90,8 @@ //Releasing the comand will delete itself. customCmdCoopSysPerformShutdownActions->Release(); + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestCoopSysPerformShutdownActions::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysselftest.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysselftest.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysselftest.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,10 @@ #include "tcmd_step_coopsysselftest.h" #include "ssmcustomcmdfactory.h" #include "cmdcoopsysselftest.h" +#include + +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestCoopSysSelfTest::~CCustomCmdTestCoopSysSelfTest() { @@ -39,6 +43,11 @@ void CCustomCmdTestCoopSysSelfTest::TestCustomCmdCoopSysSelfTestL() { + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); _LIT(KTESTLOG, "TestCustomCmdCoopSysSelfTestL"); INFO_PRINTF1(KTESTLOG); @@ -80,6 +89,8 @@ //Releasing the comand will delete itself. customCmdCoopSysSelfTest->Release(); + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestCoopSysSelfTest::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysstatechange.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysstatechange.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_coopsysstatechange.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,7 +22,10 @@ #include "tcmd_step_coopsysstatechange.h" #include "ssmcustomcmdfactory.h" #include +#include #include "cmdcoopsysstatechange.h" +const TUint32 KStateAdaptationPluginPropertyKey = 0x2000D76A; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestCoopSysStateChange::~CCustomCmdTestCoopSysStateChange() { @@ -40,6 +43,12 @@ void CCustomCmdTestCoopSysStateChange::TestCustomCmdCoopSysStateChangeL() { + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KStateAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KStateAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + _LIT(KTESTLOG, "TestCustomCmdCoopSysStateChangeL"); INFO_PRINTF1(KTESTLOG); @@ -79,6 +88,8 @@ //Releasing the comand will delete itself. customCmdCoopSysStateChange->Release(); + err = RProperty::Delete(KPropertyCategory, KStateAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestCoopSysStateChange::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_deactivaterfforemergencycall.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_deactivaterfforemergencycall.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_deactivaterfforemergencycall.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -22,6 +22,9 @@ #include "tcmd_step_deactivaterfforemergencycall.h" #include "ssmcustomcmdfactory.h" #include "cmddeactivaterfforemergencycall.h" +#include +const TUint32 KEmergencyCallRfAdaptationPluginPropertyKey = 0x2000E657; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestDeactivateRfForEmergencyCall::~CCustomCmdTestDeactivateRfForEmergencyCall() { @@ -41,6 +44,11 @@ { _LIT(KTESTLOG, "TestCustomCmdDeactivateRfForEmergencyCallL"); INFO_PRINTF1(KTESTLOG); + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); //Create Deactivate Rf For Emergency Call custom command MSsmCustomCommand* customCmdDeactivateRfForEmergencyCall = CCustomCmdDeactivateRfForEmergencyCall::NewL(); @@ -56,12 +64,12 @@ //Command parameter is not used inside the Execute. So passing any dummy data should be fine //Execute the command customCmdDeactivateRfForEmergencyCall->Execute(dummy, status); - TEST(KRequestPending == status.Int()); + //Wait for the request to be completed User::WaitForRequest(status); TEST(KErrNone == status.Int()); - + //Execute the command once again customCmdDeactivateRfForEmergencyCall->Execute(dummy, status); @@ -72,12 +80,14 @@ //is called it might have completed executing Execute() function. Thats is the reason for //checking the status to KErrNone instead of KErrCancel. TEST(KErrNone == status.Int()); - + //Close the command customCmdDeactivateRfForEmergencyCall->Close(); //Releasing the comand will delete itself. customCmdDeactivateRfForEmergencyCall->Release(); + err = RProperty::Delete(KPropertyCategory, KEmergencyCallRfAdaptationPluginPropertyKey); + TEST(KErrNone == err); } TVerdict CCustomCmdTestDeactivateRfForEmergencyCall::doTestStepL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_devicesecuritycheck.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_devicesecuritycheck.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_devicesecuritycheck.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -23,6 +23,11 @@ #include "ssmsecuritychecknotifier.h" #include "ssmuiproviderdll.h" #include "ssmcustomcmdfactory.h" +#include +#include + +const TUid KPropertyCategory={0x2000D75B}; +const TUint32 KMiscPluginPropertyKey = 0x2000E658; CCustomCmdTestDeviceSecurityCheck::~CCustomCmdTestDeviceSecurityCheck() { @@ -44,6 +49,10 @@ iActiveScheduler = new(ELeave) CActiveScheduler; CActiveScheduler::Install (iActiveScheduler); iActiveSchedulerWait = new(ELeave) CActiveSchedulerWait; + TInt err = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + TEST(KErrNone == err); //Needed for calling calback for stopping active scheduler iAsyncStopScheduler = new(ELeave) CAsyncCallBack(CActive::EPriorityIdle); @@ -52,12 +61,20 @@ TVerdict CCustomCmdTestDeviceSecurityCheck::doTestStepPostambleL() { + TInt err = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); + TEST(KErrNone == err); return CTestStep::doTestStepPostambleL(); } void CCustomCmdTestDeviceSecurityCheck::SimulatePasswordEntry() { - //Simulate the key press ,(comma) in to pin notifier dialogue + RWsSession wsSession; + TInt err = wsSession.Connect(); + TEST(KErrNone == err); + + const TInt okButtonPos1 = 60; //the position of ok button + const TInt okButtonPos2 = 600; //the position of ok button + //Simulate the key press ,(comma) in to pin notifier dialogue TRawEvent eventDown; TRawEvent eventUp; @@ -80,11 +97,14 @@ iWrongPwd = EFalse; } - eventDown.Set(TRawEvent::EKeyDown, EStdKeyEnter); - UserSvr::AddEvent(eventDown); - eventUp.Set(TRawEvent::EKeyUp, EStdKeyEnter); - UserSvr::AddEvent(eventUp); - User::After(100000); + eventDown.Set(TRawEvent::EButton1Down, okButtonPos1,okButtonPos2); + UserSvr::AddEvent(eventDown); + eventUp.Set(TRawEvent::EButton1Up, okButtonPos1,okButtonPos2); + UserSvr::AddEvent(eventUp); + User::After(100000); + + wsSession.Flush(); + wsSession.Close(); } static TInt CallBackL(TAny* aCCustomCmdTestSimSecurityCheck) @@ -145,13 +165,9 @@ TestLockPhoneDeviceRespReceivedHelperL(); -#ifdef __WINS__ INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); TEST(KErrNone == iRequest.Int()); -#else - INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); - TEST(KErrNotSupported == iRequest.Int()); -#endif + } void CCustomCmdTestDeviceSecurityCheck::TestLockPhoneDeviceRespReceived2L() @@ -160,14 +176,16 @@ iCustomCmdDevSecurityCheck->iLockInfo.iStatus = RMobilePhone::EStatusLockUnknown; TestLockPhoneDeviceRespReceivedHelperL(); - INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); - TEST(KErrNotSupported == iRequest.Int()); + -/*#ifdef __WINS__ - TEST(KErrNone == iRequest.Int()); +#ifdef __WINS__ + INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); + TEST(KErrNotFound == iRequest.Int()); #else - TEST(KErrNotSupported == iRequest.Int()); -#endif*/ + INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); + TEST(KErrNone == iRequest.Int()); +#endif + INFO_PRINTF1(_L("TestLockPhoneDeviceRespReceived2L")); } void CCustomCmdTestDeviceSecurityCheck::TestLockPhoneDeviceRespReceived3L() @@ -224,8 +242,13 @@ iAsyncStopScheduler->CallBack(); iActiveSchedulerWait->Start(); - INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); - TEST(KErrNotSupported == iRequest.Int()); +#ifdef __WINS__ + INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); + TEST(KErrNotFound == iRequest.Int()); +#else + INFO_PRINTF3(_L("Result at line %d is %d "),__LINE__ + 1, iRequest.Int()); + TEST(KErrNone == iRequest.Int()); +#endif } void CCustomCmdTestDeviceSecurityCheck::TestLockPhoneToIccRespReceivedHelperL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_execute.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_execute.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_execute.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2009 - 2010 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" @@ -21,6 +21,9 @@ */ #include "tcmd_step_execute.h" +#include +const TUint32 KRtcAdaptationPluginPropertyKey = 0x2000D76C; +const TUid KPropertyCategory={0x2000D75B}; /** This function is wrapped in Callback and used to stop the CActiveScheduler @@ -84,19 +87,29 @@ void CTestCustomCmdExecute::TestCustomCmdValidateRTC() { INFO_PRINTF1(_L("TestCustomCmdValidateRTC started")); + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KRtcAdaptationPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KRtcAdaptationPluginPropertyKey, 1); + TEST(KErrNone == err); + //Create ValidateRTC custom command MSsmCustomCommand* customCmdValidateRTC = SsmCustomCmdFactory::CmdValidateRTCNewL(); customCmdValidateRTC->Initialize(iCmdEnv); ExecuteCommand(customCmdValidateRTC); + // In the reference plugins, the API completes with KErrNotSupported. Hence we check for the same TEST(KErrNotSupported == iStatus.Int()); ExecuteCommand(customCmdValidateRTC); customCmdValidateRTC->ExecuteCancel(); + // In the reference plugins, the API completes with KErrNotSupported. Hence we check for the same TEST(KErrNotSupported == iStatus.Int()); //Close the command customCmdValidateRTC->Close(); //Releasing the comand will delete itself. customCmdValidateRTC->Release(); - INFO_PRINTF3(_L("TestCustomCmdValidateRTC completed with %d Expected %d"),iStatus.Int(),KErrNotSupported); + INFO_PRINTF3(_L("TestCustomCmdValidateRTC completed with %d Expected %d"),iStatus.Int(),KErrNone); + err = RProperty::Delete(KPropertyCategory, KRtcAdaptationPluginPropertyKey); + TEST(KErrNone == err); } /** diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_publishstartupmode.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_publishstartupmode.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_publishstartupmode.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -38,6 +38,8 @@ //Exe name which defines startup PS keys _LIT (KExeToDefineStartUpPS, "\\sys\\bin\\definestartupps.exe"); _LIT(KStartUpPSKeys, "startupkeys"); +const TUint32 KMiscPluginPropertyKey = 0x2000E658; +const TUid KPropertyCategory={0x2000D75B}; CCustomCmdTestPublishStartupMode::~CCustomCmdTestPublishStartupMode() { @@ -93,11 +95,17 @@ //Needed for calling callback for stopping active scheduler iAsyncStopScheduler = new(ELeave) CAsyncCallBack(CActive::EPriorityIdle); - + + // Setting the P and S key will route the request to the reference plugins instead of the actual plugins + TInt err = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + TEST (KErrNone == err); + INFO_PRINTF1(_L("Define global startup mode property")); //Start the test exe which defines startup related property keys - TInt err = process.Create(KExeToDefineStartUpPS, KStartUpPSKeys()); + err = process.Create(KExeToDefineStartUpPS, KStartUpPSKeys()); INFO_PRINTF2(_L("Define global startup mode property process created with %d"), err); TEST(KErrNone == err); User::LeaveIfError(err); @@ -116,6 +124,11 @@ TVerdict CCustomCmdTestPublishStartupMode::doTestStepPostambleL() { + if (iTestStepName == KTestPublishStartupModeWithCap) + { + TInt err = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); + TEST (KErrNone == err); + } return CTestStep::doTestStepPostambleL(); } @@ -201,8 +214,8 @@ TEST(iRequestStatus == KErrNone); err = RProperty::Get(CSsmUiSpecific::StartupPSUid(), KPSGlobalStartupMode, startUpMode); - INFO_PRINTF3(_L("Startup mode is %d ; Expected %d"), startUpMode, 0); - TEST(startUpMode == 0); + INFO_PRINTF3(_L("Startup mode is %d ; Expected %d"), startUpMode, EStartupModeNormal); + TEST(startUpMode == EStartupModeNormal); // Hidden Reset functionality is not supported in techview\hrp, so the request will be completed with KErrNotSupported // And the hidden reset reason would same as we set in the test code, ie., ENormalStartup. @@ -230,6 +243,7 @@ void CCustomCmdTestPublishStartupMode::doTestFactoryCreateAndExecuteCancelL() { INFO_PRINTF1(_L("Entering test for factory create, execute cancel and destroy")); + __UHEAP_MARK; INFO_PRINTF1(_L("Testing factory create for publish startup mode")); diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_simsecuritycheck.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_simsecuritycheck.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_simsecuritycheck.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 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" @@ -40,6 +40,9 @@ // Use to write the PIN Check Security test case nos. _LIT(KTestCmdSecurityCheckTestFile, "c:\\cmdsecuritychecktest\\pinchecksecuritycaseno.txt"); +const TUid KPropertyCategory={0x2000D75B}; +const TUint32 KMiscPluginPropertyKey = 0x2000E658; + static TInt CallBack2L(TAny* aCCustomCmdTestSecurityCheck); CCustomCmdTestSimSecurityCheck::~CCustomCmdTestSimSecurityCheck() @@ -65,6 +68,14 @@ //Needed fro calling calback for stopping active scheduler iAsyncStopScheduler = new(ELeave) CAsyncCallBack(CActive::EPriorityIdle); + + TInt err = RProperty::Define(KPropertyCategory, KMiscPluginPropertyKey, RProperty::EInt); + INFO_PRINTF2(_L("Define Test Property returns : %d "), err); + TEST(KErrNone == err || KErrAlreadyExists == err); + err = RProperty::Set(KPropertyCategory, KMiscPluginPropertyKey, 1); + INFO_PRINTF2(_L("Set Test Property returns : %d "), err); + TEST(KErrNone == err); + RProcess processHandle; CleanupClosePushL(processHandle); @@ -98,7 +109,7 @@ //connect to file server User::LeaveIfError(iFs.Connect()); - TInt err = iFs.MkDirAll(KDirNameOfTestCasesNumFile); + err = iFs.MkDirAll(KDirNameOfTestCasesNumFile); if (KErrAlreadyExists != err && KErrNone != err) { INFO_PRINTF1(_L("Leaving as it could not create directory")); @@ -125,6 +136,8 @@ { iFs.Delete(KTestCmdSecurityCheckTestFile); iFs.Close(); + TInt err = RProperty::Delete(KPropertyCategory, KMiscPluginPropertyKey); + TEST(KErrNone == err); return CTestStep::doTestStepPostambleL(); } @@ -170,9 +183,11 @@ TUid uid1 = CSsmUiSpecific::StartupPSUid(); TEST(KPSStartupUid == uid1); + INFO_PRINTF3(_L("Test GeneralL : KPSStartupUid = %d ; Got from CSsmUiSpecific::StartupPSUid = %d "), KPSStartupUid, uid1); TUid uid2 = CSsmUiSpecific::SecurityPinNotifierUid(); TEST(KSecurityPinNotifierUid == uid2); + INFO_PRINTF3(_L("Test GeneralL : KSecurityPinNotifierUid = %d ; Got from CSsmUiSpecific::SecurityPinNotifierUid = %d "), KPSStartupUid, uid2); TEST( CSsmUiSpecific::IsSimlessOfflineSupported() ); @@ -953,6 +968,8 @@ void CCustomCmdTestSimSecurityCheck::SimulatePasswordEntry() { + const TInt okButtonPos1 = 60; //the position of ok button + const TInt okButtonPos2 = 600; //the position of ok button TRawEvent eventDown; TRawEvent eventUp; @@ -963,11 +980,11 @@ UserSvr::AddEvent(eventUp); User::After(100000); - eventDown.Set(TRawEvent::EKeyDown, EStdKeyEnter); - UserSvr::AddEvent(eventDown); - eventUp.Set(TRawEvent::EKeyUp, EStdKeyEnter); - UserSvr::AddEvent(eventUp); - User::After(100000); + eventDown.Set(TRawEvent::EButton1Down, okButtonPos1,okButtonPos2); + UserSvr::AddEvent(eventDown); + eventUp.Set(TRawEvent::EButton1Up, okButtonPos1, okButtonPos2); + UserSvr::AddEvent(eventUp); + User::After(100000); } void CCustomCmdTestSimSecurityCheck::CallBack3RunL() diff -r f7565e9c9ce8 -r c87e5f80c17d sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/testpinnotifierplugin.cpp --- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/testpinnotifierplugin.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/testpinnotifierplugin.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -21,13 +21,13 @@ #include "testpinnotifierplugin.h" #include -#include +#include #include #include #include #include #include -#include +#include #include const TUint KCustomcmdServerPropertyKey = 0x0012AC; @@ -36,8 +36,6 @@ _LIT(KPinNotifierResFileNameAndPath,"\\resource\\apps\\testpinnotifier.rsc"); _LIT(KPinNotifierTitle,"Security Check"); -//Hardcoding security pin code. -_LIT(KPinCode,","); CArrayPtr* NotifierArrayL() { @@ -69,8 +67,12 @@ CSecurityPinNotifier::TNotifierInfo CSecurityPinNotifier::RegisterL() { - iInfo.iUid = CSsmUiSpecific::SecurityPinNotifierUid(); - iInfo.iChannel = CSsmUiSpecific::ScreenOutputChannelUid(); + const TUid KSecurityPinNotifierUid = {0x2000E667}; + iInfo.iUid = KSecurityPinNotifierUid; + + const TUid KScreenOutputChannel = {0x10009D48}; + iInfo.iChannel = KScreenOutputChannel; + iInfo.iPriority = ENotifierPriorityVHigh; return iInfo; } @@ -160,19 +162,7 @@ securityResultBuffer = KErrGeneral; if (iMessage != RMessagePtr2()) { - TBuf<5> newPINValueVerify; - - //Get pinter for the secret editor control - CEikSecretEditor* pinEditor = static_cast(Control(0)); - pinEditor->GetText(newPINValueVerify); - - //Verify the entered pin number - if(0 == newPINValueVerify.Compare(KPinCode)) - { - securityResultBuffer = KErrNone; - } - - pinEditor->Reset(); + securityResultBuffer = KErrNone; iMessage.Write(iReplySlot,securityResultBuffer); iMessage.Complete(KErrNone); // Set this swp to indicate to stop the active schaduler diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/layers.sysdef.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemhealthmanagement/layers.sysdef.xml Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/trestartsys/group/shmatest_trestartsys.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemhealthmanagement/systemhealthmgr/test/trestartsys/group/shmatest_trestartsys.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,29 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Shmatest_TRestartSys EN"} + +; Vendor name +: "Shmatest_TRestartSys" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\trestartsys\scripts\shmatest_restartsyswithmode.script"-"c:\devicesrv\shmatest\shmatest_restartsyswithmode.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\trestartsys\scripts\shmatest_restartsysabort.script"-"c:\devicesrv\shmatest\shmatest_restartsysabort.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/tstartsafe/group/shmatest_tstartsafe.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemhealthmanagement/systemhealthmgr/test/tstartsafe/group/shmatest_tstartsafe.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,43 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Shmatest_TStartSafe EN"} + +; Vendor name +: "Shmatest_TStartSafe" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_appasynchstart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_appasynchstart.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_appretry.script"-"c:\devicesrv\shmatest\shmatest_startsafe_appretry.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_appstart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_appstart.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_appstartapparcinit.script"-"c:\devicesrv\shmatest\shmatest_startsafe_appstartapparcinit.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_apptimeout.script"-"c:\devicesrv\shmatest\shmatest_startsafe_apptimeout.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_apptimesucc.script"-"c:\devicesrv\shmatest\shmatest_startsafe_apptimesucc.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procasynchstart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procasynchstart.script" +;"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procfailsysrestart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procfailsysrestart.script" +;"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procmonsysrestart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procmonsysrestart.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procretry.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procretry.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procstart.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procstart.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procstartmon.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procstartmon.script" +;"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_proctimeout.script"-"c:\devicesrv\shmatest\shmatest_startsafe_proctimeout.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_proctimesucc.script"-"c:\devicesrv\shmatest\shmatest_startsafe_proctimesucc.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_errors.script"-"c:\devicesrv\shmatest\shmatest_startsafe_errors.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_appstartrverror.script"-"c:\devicesrv\shmatest\shmatest_startsafe_appstartrverror.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartsafe\scripts\shmatest_startsafe_procstartrverror.script"-"c:\devicesrv\shmatest\shmatest_startsafe_procstartrverror.script" diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/tstartupproperties/group/shmatest_tstartupproperties.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemhealthmanagement/systemhealthmgr/test/tstartupproperties/group/shmatest_tstartupproperties.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,29 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Shmatest_TStartupProperties EN"} + +; Vendor name +: "Shmatest_TStartupProperties" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartupproperties\scripts\shmatest_startupproperties_defval.script"-"c:\devicesrv\shmatest\shmatest_startupproperties_defval.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tstartupproperties\scripts\shmatest_startupproperties_internalexternal.script"-"c:\devicesrv\shmatest\shmatest_startupproperties_internalexternal.script" + diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/tsysmon/data/tsysmon.ini --- a/systemhealthmanagement/systemhealthmgr/test/tsysmon/data/tsysmon.ini Fri Jun 11 14:56:08 2010 +0300 +++ b/systemhealthmanagement/systemhealthmgr/test/tsysmon/data/tsysmon.ini Thu Jul 01 11:20:10 2010 +0300 @@ -58,7 +58,7 @@ Filename=sysmontest_register_protserv+powermgmt.exe Policy=ERestartOSWithMode Mode=0 -ExpectedResult=0 +ExpectedResult=-5 TestDereg=true DeregExpectedResult=0 @@ -82,7 +82,7 @@ Filename=sysmontest_selfregister_protserv+powermgmt.exe Policy=ERestartOSWithMode Mode=0 -ExpectedResult=0 +ExpectedResult=-5 TestDereg=true DeregExpectedResult=0 diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/tsysmon/group/shmatest_tsysmon.pkg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemhealthmanagement/systemhealthmgr/test/tsysmon/group/shmatest_tsysmon.pkg Thu Jul 01 11:20:10 2010 +0300 @@ -0,0 +1,63 @@ +; +; Copyright (c) 2010 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: +; + +;Languages +&EN + + +;Localised Vendor name +%{"Shmatest_TSysMon EN"} + +; Vendor name +: "Shmatest_TSysMon" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_procmoninit.script"-"c:\devicesrv\shmatest\shmatest_sysmon_procmoninit.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_multiprocmon.script"-"c:\devicesrv\shmatest\shmatest_sysmon_multiprocmon.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_procrestart.script"-"c:\devicesrv\shmatest\shmatest_sysmon_procrestart.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_restartthrottle.script"-"c:\devicesrv\shmatest\shmatest_sysmon_restartthrottle.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_procmonignore.script"-"c:\devicesrv\shmatest\shmatest_sysmon_procmonignore.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_selfmonignore.script"-"c:\devicesrv\shmatest\shmatest_sysmon_selfmonignore.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_noprocmon.script"-"c:\devicesrv\shmatest\shmatest_sysmon_noprocmon.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_selfmoncancel.script"-"c:\devicesrv\shmatest\shmatest_sysmon_selfmoncancel.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_selfmoncancel2.script"-"c:\devicesrv\shmatest\shmatest_sysmon_selfmoncancel2.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_nomoncancel.script"-"c:\devicesrv\shmatest\shmatest_sysmon_nomoncancel.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_loadsysmon.script"-"c:\devicesrv\shmatest\shmatest_sysmon_loadsysmon.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_oom.script"-"c:\devicesrv\shmatest\shmatest_sysmon_oom.script" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_conndiscon.script"-"c:\devicesrv\shmatest\shmatest_sysmon_conndiscon.script" + +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_reg1proctwice.script"-"c:\devicesrv\shmatest\shmatest_sysmon_reg1proctwice.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_reg2procs.script"-"c:\devicesrv\shmatest\shmatest_sysmon_reg2procs.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeiofcapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeiofcapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeiofcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeiofcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeroscapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeroscapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeroscapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeroscapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeroswmcapsnopm.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeroswmcapsnopm.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeroswmcapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeroswmcapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regeroswmcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regeroswmcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselfeiofcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselfeiofcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselferoscapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselferoscapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselferoscapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselferoscapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselferoswmcapsnopm.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselferoswmcapsnopm.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselferoswmcapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselferoswmcapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselferoswmcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselferoswmcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regcritical.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regcritical.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regecnorcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regecnorcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regecnorcapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regecnorcapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselfecnorcapsok.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselfecnorcapsok.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_regselfecnorcapsnops.script"-"c:\devicesrv\shmatest\shmatest_sysmon_regselfecnorcapsnops.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_cancelallmonitors.script"-"c:\devicesrv\shmatest\shmatest_sysmon_cancelallmonitors.script" +"\sf\os\devicesrv\systemhealthmanagement\systemhealthmgr\test\tsysmon\scripts\shmatest_sysmon_cancelallmonwithssmsid.script"-"c:\devicesrv\shmatest\shmatest_sysmon_cancelallmonwithssmsid.script" diff -r f7565e9c9ce8 -r c87e5f80c17d systemhealthmanagement/systemhealthmgr/test/tsysmon/src/tsysmon_stepcancelallmonitors.cpp --- a/systemhealthmanagement/systemhealthmgr/test/tsysmon/src/tsysmon_stepcancelallmonitors.cpp Fri Jun 11 14:56:08 2010 +0300 +++ b/systemhealthmanagement/systemhealthmgr/test/tsysmon/src/tsysmon_stepcancelallmonitors.cpp Thu Jul 01 11:20:10 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2007-2010 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" @@ -176,6 +176,7 @@ iAppStartSignalSem.Wait(); INFO_PRINTF2(_L("Process killed with %d"), err); + User::After(2000000); TEST(EFalse == Exists(KTestAppGood)); }