--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/networkingtestandutils/networkingintegrationtest/inc/TestStep.h Tue Jan 26 15:23:49 2010 +0200
@@ -0,0 +1,234 @@
+/**
+* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies 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 CTestCase which is the base class for all the Testcases
+*
+*
+*/
+
+
+
+/**
+ @file TestStep.h
+*/
+
+#if (!defined __TESTSTEP_H__)
+#define __TESTSTEP_H__
+
+#include "cinidata.h"
+#include "networking/log.h"
+
+class CTestSuite;
+
+/**
+Maximum length for test step name
+@internalComponent
+*/
+#define MAX_LEN_TEST_STEP_NAME 55
+
+class CTestStep : public CBase
+/**
+CtestStep is an abstract base class for all test steps. Each test step
+consists of a class derived from CTestStep, which implements doTestStepL.
+Common test step functionality, which is required for a particular suite,
+can be implemented using an intermediate class.
+@internalComponent
+*/
+{
+public:
+
+ // Constructor
+ IMPORT_C CTestStep(const TDesC &aName);
+ IMPORT_C CTestStep();
+
+ /** destructor */
+ IMPORT_C virtual ~CTestStep();
+
+ /**
+ Every test step must implement one of these.
+ This function contains the main code for a test step
+ and returns a test result.
+ */
+ virtual enum TVerdict doTestStepL( void ) = 0;
+
+ /** Tests may optionaly implement pre amble. */
+ IMPORT_C virtual enum TVerdict doTestStepPreambleL( void );
+
+ /** Tests may optionaly implement post amble. */
+ IMPORT_C virtual enum TVerdict doTestStepPostambleL( void );
+
+ /** the name of the test step */
+ TBuf<MAX_LEN_TEST_STEP_NAME> iTestStepName;
+
+ /** Pointer to test suite which owns this test. */
+ CTestSuite * iSuite;
+
+ /** The current test step verdict. */
+ TVerdict iTestStepResult;
+
+ /** initialise the config parameter system. */
+ IMPORT_C void LoadConfig( TDesC &config );
+
+ IMPORT_C void UnLoadConfig( void );
+
+
+protected:
+
+ /** read bool value from the Config file functions */
+ IMPORT_C TBool GetBoolFromConfig(const TDesC &aSectName,const TDesC &aKeyName,TBool &aResult);
+
+ /** read int value from the Config file functions */
+ IMPORT_C TBool GetIntFromConfig(const TDesC &aSectName,const TDesC &aKeyName,TInt &aResult);
+
+ /** read string value from the Config file functions */
+ IMPORT_C TBool GetStringFromConfig(const TDesC &aSectName,const TDesC &aKeyName,TPtrC &aResult);
+
+ /** test function */
+ IMPORT_C void testBooleanTrue( TBool aCondition, char* aFile, TInt aLine );
+
+ /** test function */
+ IMPORT_C void testBooleanTrueL( TBool aCondition, char* aFile, TInt aLine );
+
+ /** test function */
+ IMPORT_C void testBooleanTrueWithErrorCode( TBool aCondition, TInt errorCode , char* aFile, TInt aLine );
+
+ /** test function */
+ IMPORT_C void testBooleanTrueWithErrorCodeL( TBool aCondition, TInt errorCode , char* aFile, TInt aLine );
+
+ /** test function */
+ IMPORT_C void teste( TBool aCondition, TInt value2 );
+
+ /** test function */
+ IMPORT_C void TestCheckPointCompareL(TInt aVal,TInt aExpectedVal,
+ const TDesC& aText, char* aFile,TInt aLine);
+
+ /** printf format log */
+ IMPORT_C void Log( TRefByValue<const TDesC16> format, ... );
+
+ /** printf format log */
+ IMPORT_C void Log( TInt aSeverity, TRefByValue<const TDesC16> format, ... );
+
+ /** printf format log */
+ IMPORT_C void LogExtra(const TText8* aFile, TInt aLine, TInt aSeverity,
+ TRefByValue<const TDesC> aFmt,...);
+
+ IMPORT_C TPtrC EpocErrorToText(TInt aError);
+
+ /** Config file data. */
+ CIniData * iConfigData;
+
+ /** Print buffer used by ErrorToText. */
+ TBuf <20> iPrnBuf;
+
+private:
+ /** True if ConfigData has been loaded. */
+ TBool iConfigDataAvailable;
+};
+
+class MControlNotify
+/**
+@internalComponent
+*/
+{
+public:
+ virtual TInt CallStateMachine() = 0;
+};
+
+class CActiveControl : public CActive
+/**
+@internalComponent
+*/
+{
+public:
+ static CActiveControl* NewL(MControlNotify* aControl);
+ CActiveControl(MControlNotify* aControl);
+ ~CActiveControl();
+ void ConstructL();
+ virtual void RunL();
+ virtual void DoCancel();
+ IMPORT_C void ReStart();
+ inline TRequestStatus* Status() {return &iStatus;}
+private:
+ MControlNotify* iControl;
+};
+
+class CTestActiveStep : public CTestStep, public MControlNotify
+/**
+@internalComponent
+*/
+{
+public:
+ // Constructor
+ IMPORT_C CTestActiveStep(const TDesC &aName);
+ IMPORT_C CTestActiveStep();
+
+ /** destructor */
+ IMPORT_C virtual ~CTestActiveStep();
+
+ IMPORT_C virtual enum TVerdict doTestStepPreambleL( void );
+ IMPORT_C virtual enum TVerdict doTestStepPostambleL( void );
+
+protected:
+ CActiveControl* iControl;
+ TRequestStatus* iStatus;
+
+private:
+ CActiveScheduler* iScheduler;
+
+};
+
+
+/**
+Checks the expression (a) is true, if not,
+then displays error information, records a test verdict of fail and leaves.
+@internalAll
+*/
+#define TESTL(a) testBooleanTrueL((a), __FILE__, __LINE__)
+
+/**
+Checks the expression (a) is true, if not,
+then display error information and records a test verdict of fail.
+@internalAll
+*/
+#define TEST(a) testBooleanTrue((a), __FILE__, __LINE__)
+
+/**
+Checks the expression (a) is true, if not,
+then displays error code b, and records a fail verdict.
+@internalAll
+*/
+#define TESTE(a, b) testBooleanTrueWithErrorCode((a), (b), __FILE__, __LINE__)
+
+/**
+Checks the expression (a) is true, if not,
+then displays error code b, and records a fail verdict and leaves.
+@internalAll
+*/
+#define TESTEL(a, b) testBooleanTrueWithErrorCodeL((a), (b), __FILE__, __LINE__)
+
+/**
+Check the value against an expected value.
+If not record error and error code.
+@internalComponent
+*/
+#define TEST_CHECKL(p1, p2, p3) TestCheckPointCompareL((p1), (p2), (p3), __FILE__, __LINE__)
+
+/**
+leave error code
+@internalComponent
+*/
+#define TEST_ERROR_CODE 84
+
+
+#endif /* __TESTSTEP_H__ */