diff -r 000000000000 -r 40261b775718 mmlibs/mmfw/tsrc/mmfintegrationtest/ACLNT/tonetruepause.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mmlibs/mmfw/tsrc/mmfintegrationtest/ACLNT/tonetruepause.h Tue Feb 02 01:56:55 2010 +0200 @@ -0,0 +1,210 @@ +// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies 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 TONETRUEPAUSE_H +#define TONETRUEPAUSE_H + +#include +#include "TSI_MMFACLNT.h" +#include "truepauseconstants.h" + +/* + *======================================================================================================== + * Base class for TruePause Tone utility test steps in this suite. + *======================================================================================================== + */ + +class RMdaToneUtilityTestBase: public RAsyncTestStep, public MMdaAudioToneObserver + { +public: + // from RAsyncTestStep + void KickoffTestL(); + void CloseTest(); +protected: + RMdaToneUtilityTestBase(const TDesC& aTestName, const TDesC& aSectName); + ~RMdaToneUtilityTestBase(); + virtual void DoKickoffTestL() = 0; + virtual void DoTimerCallback() = 0; + static TInt TimerCallback(TAny*); + void StartTimer(TTimeIntervalMicroSeconds32 aWaitTime); + + // Executes events of MdaToneUtility using a Finite State Machine + virtual void Fsm(TMdaAudioUtilityEvent aMdaAudioUtilityEvent, TInt aError); + + // From MMdaAudioToneObserver + virtual void MatoPrepareComplete(TInt aError); + virtual void MatoPlayComplete(TInt aError); + +protected: + TMdaAudioUtilityState iToneUtilityState; + CMdaAudioToneUtility* iToneUtility; + CPeriodic* iTimer; + TBool iWait; + TBool iStop; + TBool iConfig; + TBool iPrepare; + TBool iNegative; + TInt iCount; + TInt iVolume; + TInt iBalance; + TInt iDuration; + TInt iPause; + TInt iExpected; + + //To track elapsed time + TTime iEndTime; + TTime iStartTime; + + // Handle for the audio file for playing and recording + RFile iFile; + TFileName iFilename; + // Handle to a file server session + RFs iFs; + TBuf iSectName; // Section name for retrieving filename + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0168-HP + *======================================================================================================== + */ +class RMdaToneUtilityResumeTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityResumeTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityResumeTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0169-HP + *======================================================================================================== + */ +class RMdaToneUtilityResumeThreeTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityResumeThreeTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityResumeThreeTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0170-HP + *======================================================================================================== + */ +class RMdaToneUtilityPlayPauseStopPlayTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityPlayPauseStopPlayTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityPlayPauseStopPlayTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0171-HP + *======================================================================================================== + */ +class RMdaToneUtilityConfigResumeTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityConfigResumeTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityConfigResumeTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0172-HP + *======================================================================================================== + */ +class RMdaToneUtilityPrepareInPauseTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityPrepareInPauseTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityPrepareInPauseTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + // From MMdaAudioToneObserver + void MatoPrepareComplete(TInt aError); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0173-HP + *======================================================================================================== + */ +class RMdaToneUtilityPauseBeforePlayTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityPauseBeforePlayTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityPauseBeforePlayTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + // From MMdaAudioToneObserver + void MatoPrepareComplete(TInt aError); + // Executes events of MdaToneUtility using a Finite State Machine + void Fsm(TMdaAudioUtilityEvent aMdaAudioUtilityEvent, TInt aError); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0174-HP + *======================================================================================================== + */ +class RMdaToneUtilityNegPauseResumeTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityNegPauseResumeTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityNegPauseResumeTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + // From MMdaAudioToneObserver + void MatoPlayComplete(TInt aError); + }; + +/* + *======================================================================================================== + * MM-MMF-ACLNT-I-0183-HP + *======================================================================================================== + */ +class RMdaToneUtilityPauseNonA3fTest : public RMdaToneUtilityTestBase + { +public: + static RMdaToneUtilityPauseNonA3fTest* NewL(const TDesC& aTestName, const TDesC& aSectName); +private: + RMdaToneUtilityPauseNonA3fTest(const TDesC& aTestName, const TDesC& aSectName); + void DoKickoffTestL(); + void DoTimerCallback(); + // From MMdaAudioToneObserver + void MatoPrepareComplete(TInt aError); + // Executes events of MdaToneUtility using a Finite State Machine + void Fsm(TMdaAudioUtilityEvent aMdaAudioUtilityEvent, TInt aError); + }; + +#endif// __TONETRUEPAUSE_H__