--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserverplugins/common_tsy/test/component/inc/cctsycallbarringfu.h Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,147 @@
+// Copyright (c) 2007-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:
+// The TEFUnit header file which tests the CallBarring
+// functional unit of the Common TSY.
+//
+//
+
+#ifndef CCTSYCALLBARRINGFU_H
+#define CCTSYCALLBARRINGFU_H
+
+#include <test/tefunit.h>
+
+#include <etelmm.h>
+#include <etelmmcs.h>
+#include <mmretrieve.h>
+
+#include "cctsycomponenttestbase.h"
+
+class CCTsyCallBarringFU : public CCtsyComponentTestBase
+ {
+public:
+ // Create a suite of all the tests
+ static CTestSuite* CreateSuiteL(const TDesC& aName);
+
+public:
+ // Individual test steps
+
+ void TestStart0001L();
+ void TestStart0002L();
+ void TestStart0003L();
+ void TestStart0004L();
+ void TestStart0005L();
+ void TestSetSSPassword0001L();
+ void TestSetSSPassword0002L();
+ void TestSetSSPassword0003L();
+ void TestSetSSPassword0004L();
+ void TestSetSSPassword0005L();
+ void TestGetCompMethodName0001L();
+ void TestSetCallBarringStatus0001L();
+ void TestSetCallBarringStatus0002L();
+ void TestSetCallBarringStatus0003L();
+ void TestSetCallBarringStatus0004L();
+ void TestSetCallBarringStatus0005L();
+ void TestSetCallBarringPassword0001L();
+ void TestNotifyCallBarringStatusChange0001L();
+ void TestNotifyCallBarringStatusChange0002L();
+ void TestNotifyCallBarringStatusChange0004L();
+
+
+private:
+
+ void OpenPhoneCBListLC();
+
+private:
+ CRetrieveMobilePhoneCBList* iCBList;
+
+ }; // class CCTsyCallBarringFU
+
+typedef void (CCTsyCallBarringFU::*TestStepFunc)();
+
+class MFuncHolderBase
+ {
+public:
+ virtual void Call() = 0;
+ };
+
+template <typename T, void (T::*TFunctionPtr)(TRequestStatus& aStatus)>
+/*class MFuncHolder0 : public MFuncHolderBase
+ {
+private:
+ T& iT;
+
+public:
+ MFuncHolder0(T& aT) : iT(aT) {}
+
+public:
+ void Call()
+ {
+ (iT.*TFunctionPtr)();
+ }
+ };
+*/
+class CTestStepRunner : public CActive
+ {
+public:
+ static CTestStepRunner* NewLC(T& aT);
+ void RunTestAsyncL();
+
+private:
+// static void DoRunTestAsyncL(CCtsyComponentTestBase* aTestSuite, TestStepFunc aTestStep);
+
+// CTestStepRunner(CCtsyComponentTestBase* aTestSuite, TestStepFunc aTestStep, TBool aStopSchedulerWhenFinish);
+ CTestStepRunner(T& aT);
+ virtual ~CTestStepRunner();
+
+ void ConstructL();
+
+ void RunL();
+ void DoCancel();
+
+ inline TRequestStatus* Status() {return &iStatus;}
+
+ void Call(TRequestStatus& aStatus)
+ {
+ (iT.*TFunctionPtr)(aStatus);
+ }
+
+ TInt StatusCompleteThreadFunc(TAny* );
+private:
+ T& iT;
+// TestStepFunc iTestStep;
+ TBool iStopSchedulerWhenFinish;
+ TInt iStage;
+ CActiveScheduler* iScheduler;
+// CCtsyComponentTestBase* iTestSuite;
+ };
+
+class CAsyncRequestStatusHolder : public CActive
+ {
+public:
+ static CAsyncRequestStatusHolder* NewLC();
+ inline TRequestStatus* Status(){ return &iStatus; }
+private:
+ CAsyncRequestStatusHolder();
+ ~CAsyncRequestStatusHolder();
+ void ConstructL();
+
+ virtual void DoCancel();
+ virtual void RunL();
+private:
+ TBool iSchedulerAlreadyStopped;
+
+ };
+
+#endif // CCTSYCALLBARRINGFU_H
+