diff -r 000000000000 -r 2f259fa3e83a commonuisupport/uikon/test/tmultiplealarm/TMultipleAlarmStep.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonuisupport/uikon/test/tmultiplealarm/TMultipleAlarmStep.h Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,175 @@ +// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies 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 + @internalComponent - Internal Symbian test code +*/ + +#ifndef __TMULTIPLEALARMSTEP_H +#define __TMULTIPLEALARMSTEP_H + +/** +includes +*/ +#include +#include + +#include +#include "TRemoteControl.h" +#include "TAlarm.h" +#include "appfwk_tmsteststep.h" + +/** +needed classes +*/ +class RASAltClientSession; + +/** +constants and definitions +*/ +const TInt KInvalidAlarmId = -1; + + +/** +Test step utility class, contains test methods. +*/ +class TAlarmData + { +public: + TAlarmData(TAlarmId aId, TPtrC aData) : iAlarmId(aId), iData(aData) + { + } + TAlarmData(TAlarmId aId) : iAlarmId(aId) + { + } + static TInt Compare(const TAlarmData& aD1, const TAlarmData& aD2) + { + return (aD1.iAlarmId - aD2.iAlarmId); + } + + TAlarmId iAlarmId; + TBuf<256> iData; + }; + +/** +Test step utility class, contains test methods. +*/ + + +/** +Test step base class, contains test methods. +*/ +class CTMultipleAlarmStep : public CTmsTestStep + { +public: + CTMultipleAlarmStep(); + ~CTMultipleAlarmStep(); + + virtual TVerdict doTestStepPreambleL(); + virtual TVerdict doTestStepPostambleL(); + virtual TVerdict doTestStepL(); + +private: + void LaunchServerL(const TInt aMaxAlarms, const TBool aReplies, const TAlarmId aId, const TInt aResponse, const TTime& aTime, TInt aSnoozeTime, TBool aUpdateSnooze,TInt aInitialState); + + void StartAlertServerL(const TInt aMaxAlarms); + void StartAlertServerL(const TInt aMaxAlarms, const TAlarmId aId, const TInt aResponse); + void StartAlertServerL(const TInt aMaxAlarms, const TAlarmId aId, const TInt aResponse, const TTime& aTime); + void StartAlertServerL(const TInt aMaxAlarms, const TAlarmId aId, const TInt aResponse, const TTime& aTime, TInt aSnoozeTime, TBool aUpdateSnooze, TInt aInitialState); + void StopAlertServer(); + + void SendInt(const TInt aValue); + void SendBool(const TBool aValue); + TInt ReadInt(); + TInt ReadIntL(); + void ReadData(TDes8& aBuffer); + + void ResetConfigValues(); + +private: + void MaxAlarmTestL(); + void AddAlarmTestL(); + TInt AddAlarmsL(RASAltClientSession& aSession); + TInt AddAlarmL(RASAltClientSession& aSession, const TAlarmId aId, const TDesC8& aData); + void DelAlarmTestL(const TInt aDeleteAll = 0); + void SoundTestL(); + void VisibleTestL(); + void StateTestL(); + void QuietTestL(); + void NotifyTestL(); + void ServerDeathTestL(); + void SwitchEventTestL(); + void SessionTestL(); + +private: + void DoMaxAlarmTestL(); + void DoAddAlarmTestL(); + void DoDelAlarmTestL(); + void DoSoundTestL(); + void DoVisibleTestL(); + void DoStateTestL(); + void DoQuietTestL(); + void DoNotifyTest1L(); + void DoNotifyTest2L(); + void DoNotifyTest3L(); + void DoNotifyTest4L(); + void DoServerDeathTestL(); + void DoSwitchEventTestL(); + void DoSessionTestL(); + +private: + RMsgQueue iMsgQ; + RProcess iServer; + + TInt iMaxAlarms; + TInt iAlarmCount; + TInt iInitialState; + TAlarmId iId; + TInt iState; + TInt iQuietTime; + + RArray iDataArray; + + // Notify tests + TInt iResponse; + TInt iSnoozeTime; + TBool iQueueResponse; + TBool iCancelNotify; + TBool iNoResponse; + TBool iWaitForUpdate; + TTime iTime; + + TInt iPauseTime; + TInt iExpectedSnoozeTime; + TInt iAction; + +private: + class RTestSession : public RSessionBase + { + public: + TInt Connect(TInt aVersion); + TInt SendOpCode(TInt aOpCode); + }; + + TInt iSessionCount; + TInt iSessionVersion; + TBool iInvalidOpCode; + }; + + +_LIT(KTMultipleAlarm, "TMultipleAlarm"); + +#endif // __TMULTIPLEALARMSTEP_H