diff -r 000000000000 -r 3553901f7fa8 telephonyprotocols/psdagt/TS_PsdAgt/TestStepPsdAgt.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/telephonyprotocols/psdagt/TS_PsdAgt/TestStepPsdAgt.h Tue Feb 02 01:41:59 2010 +0200 @@ -0,0 +1,100 @@ +// Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies 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 contains CTestCasePsdAgt which is the base class for all +// the Psd Agt suite test steps +// +// + +#if (!defined __PSDAGTTESTSTEP_H__) +#define __PSDAGTTESTSTEP_H__ + +#include // MDummyNifToAgtHarnessNotify +#include "AgtNotify.h" // AgtNotify - used to talk to dummy ETEL +#include "tdummynifagentref.h" // CNifAgentRefN1 + +#include "PsdDialogServer.h" +#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS +#include +#endif + +class CTestSuite; +class CTestSuitePsdAgt; + +class CTestStepPsdAgt : public CTestStep, public MDummyNifToAgtHarnessNotify, public CDialogServer::MObserver +{ +public: + CTestStepPsdAgt(const TPtrC &aName); + + // tests may optionaly implement pre and post ambles + virtual enum TVerdict doTestStepPreambleL( void ); + virtual enum TVerdict doTestStepPostambleL( void ); + + // pointer to suite which owns this test + CTestSuitePsdAgt * iPsdAgtSuite; + + void DelayL(TInt aMicroseconds); + + // MDummyNifToAgtHarnessNotify + virtual TInt Notification(TAgentToNifEventType aEvent, TAny* aInfo); + virtual void AgentProgress(TInt aStage, TInt aError); + + // Called by framework to do the test + virtual enum TVerdict doTestStepL( void ); + + // Pure Virtual, overridden by derived classes to implement a specific PSDAGX test + virtual enum TVerdict doPsdAgtTestStepL( void )=0; + +public: + // From CDialogServer::MObserver + virtual void DialogHasAppeared(); + +public: + enum TVerdict iResult; + +protected: + + // Functions to switch between GPRS and CDMA modes + void SetGPRSModeL(MAgtNotify & aAgtNotify); + + + // Common Connection Routines + void NormalConnectL(); + void ReConnectL(); + void NormalConnectOOML(); + void ReConnectOOML(); + void ConnectExpectErrorL(TInt aError, TInt aStage); + void QoSChangeDisconnectL(MAgtNotify & aAgtNotify); + void QoSChangeNoDisconnectL(MAgtNotify & aAgtNotify); + void QoSChangeWithinTimeoutL(MAgtNotify & aAgtNotify); + void ConnectAndWaitForAsyncronousRequestL(); + void ConnectAndWaitForEightySecondsL(); + void ConnectAndWaitForTwentySecondsL(); + + + // Internal virtual functions called by the Notification() member + // Should be overridden when required in base classes + virtual void PsdAgtGetDataVolumeRequest(TUint32 &aSent, TUint32 &aReceived); + virtual void PsdAgtDisconnectRequest(); + + CDialogServer* iDlgSvr; + TInt iStage; // Current stage in a test case + CActiveScheduler *iActiveScheduler; + +private: + // Callback for Delay() function + static TInt TimerCallback(TAny *); + +}; + +#endif /* __PSDAGTTESTSTEP_H__ */