--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datacommsserver/esockserver/test/CapTests/Resolver/Common/CSuite.h Thu Dec 17 09:22:25 2009 +0200
@@ -0,0 +1,192 @@
+// Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies 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
+*/
+
+#if (!defined CAP_PARAM_SVR_SUITENAME_SERVER_H_)
+#define CAP_PARAM_SVR_SUITENAME_SERVER_H_
+
+
+
+#include <e32base.h>
+#include <e32svr.h>
+#include "f32file.h"
+#include "e32test.h"
+#include <in_sock.h>
+
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+#include <TestExecuteStepBase.h>
+#include <TestExecuteServerBase.h>
+#else
+#include <test/TestExecuteStepBase.h>
+#include <test/TestExecuteServerBase.h>
+#endif
+
+//The two ways to get thru
+#define API_RetValue_ServerPanic 0
+#define API_RetValue_NoCapError 0
+
+//The only way to get rejected
+#define API_RetValue_PermissionDenied 1
+#define DEBUG_ONLY 1
+#define DYNAMIC_IPC 2
+
+
+//
+// Bunch up IPCs that need similar action
+//
+template <TInt S>
+struct dispatch_num
+ {
+ enum { result = S };
+ /*enum { result =
+ S >= ESSProtocolStart && S <= ESSProtocolStop ? ESSProtocolStart :
+ S >= ESoCreate && S <= ESoCreateNull ? ESoCreate :
+ S >= ESoSend && S <= ESoWrite ? ESoSend :
+ S >= ESoSendTo && S <= ESoRecvFromNoLength ? ESoSendTo :
+ S >= ESoSetOpt && S <= ESoGetOpt ? ESoSetOpt :
+ S >= ESoGetDiscData && S <= ESoGetRemoteName ? ESoGetDiscData :
+ S >= EHRGetHostName && S <= EHRSetHostName ? EHRGetHostName :
+ S >= ESRRegisterService && S <= ESRRemoveService ? ESRRegisterService:
+ S >= ENDAdd && S <= ENDRemove ? ENDAdd :
+ S >= ECNCreate && S<= ECNCreateWithName ? ECNCreate :
+ S == ECNProgress || S == ECNLastProgressError ? ECNProgress :
+ #if defined(_DEBUG)
+ S >= ESSDbgCheckHeap && S <= ESSDbgCheckMbuf ? ESSDbgCheckHeap :
+ S >= ESSDbgMbufFreeSpace && S <= ESSDbgMbufTotalSpace ? ESSDbgMbufFreeSpace :
+ #else
+ S >= ESSDbgMarkHeap && S <= ESSDbgMbufTotalSpace ? ESSDbgMbufFreeSpace:
+ #endif
+ S };*/
+ };
+
+template <TInt v>
+struct Int2Type
+ {
+ enum { value = v};
+ };
+
+
+// TS_PARAM_SVR_SUITENAMEServer.h
+//
+// This contains CTestPARAM_SVR_SUITENAMESuite
+
+const TUint KTestSecureServerMajorVersionNumber = 0;
+const TUint KTestSecureServerMinorVersionNumber = 1;
+const TUint KTestSecureServerBuildVersionNumber = 1;
+
+
+class CTestPARAM_SVR_SUITENAMEServer : public CTestServer
+{
+public:
+ static CTestPARAM_SVR_SUITENAMEServer* NewL();
+ // Base class pure virtual override
+ virtual CTestStep* CreateTestStep(const TDesC& aStepName);
+
+private:
+ void CTestPARAM_SVR_SUITENAMEServer::RetrieveUpsAuthorisationGrantedL();
+
+private:
+ // Flag indicating whether UPS authorisation will always be granted and thus override
+ // the standard Platform Security check.
+ TBool iUpsAuthorisationGranted;
+};
+
+
+
+class CCapabilityTestStep : public CTestStep, public RSessionBase
+{
+public:
+ virtual TVerdict doTestStepPreambleL( void );
+ virtual TVerdict doTestStepPostambleL( void );
+// void ServerClose(RTelServer& aServer);
+ CActiveScheduler* testScheduler;
+
+ TInt StartServer() ;
+// from CStep.h
+ #define SR_MESSAGE_TYPE_CHNGED 2
+ #define SR_MESSAGE_ID_CHNGED 10
+ #define SR_ServerName_CHNGED _L("FLogger server")
+
+ #define SR_CAPTEST_INVERSE 0
+
+ //The Server Name (eg: CommServer, EtelServer,FLogger server, etc)
+ TBuf<100> SR_ServerName;
+ TBuf<100> iServer_Panic;
+
+ //Following flags influence inverse tests
+ TBool iExpect_Rejection;
+
+ TUint32 iStepCap;
+
+
+ //Is it Async or sync?
+ TInt SR_MESSAGE_TYPE;
+
+ //It holds the IPC number
+ TInt SR_MESSAGE_ID;
+
+ //Holds the cap mask for the message
+ TInt SR_MESSAGE_MASK;
+
+ //We name the child thread appended by the IPC_Number it tests
+ TBuf<100> ChildThread_SR;
+
+ //The flag informs the main thread whether the connection to the server was established
+ volatile TBool iSessionCreated;
+
+ //To find out if an Async message was completed and if then with what result?
+ TRequestStatus RequestStatus_SR;
+
+ //For an Sync message, nResult_SR get you the return value
+ TInt iResult_SR;
+
+ //Hold the retusn value from "CreateSession" API
+ TInt iResult_Server;
+
+ TInt iResult_C32;
+
+ enum TDbgFns {MarkHeapStart, MarkHeapEnd, CheckHeap, FailNext, ResetFailNext};
+
+ TInt iOptions;
+
+
+ //The Child thread object
+ RThread tChildThread;
+
+ //This is the Function called from "doTestStepL" by the test Suite,and it creates an
+ //child thread which internally calls the corresponding Exec_SendReceive_SERVERNAME fn.
+ TVerdict MainThread();
+ TVerdict GetVerdict(TInt aAPIretValue);
+ TVerdict GetVerdict(TExitType aExit,TInt aInitRetValue, TInt aApiRetValue);
+ TInt TestDebugHeap(TInt *iDbgIPCNo);
+
+
+ //This is for the scheduler test framework
+ virtual enum TVerdict doTestStepL();
+
+ // Stuff that derived classes need to implement
+ virtual TVersion Version()=0;
+ virtual TInt Exec_SendReceive()=0;
+
+
+};
+
+
+#endif /* TS_PARAM_SVR_SUITENAME_SERVER_H_ */
+