os/ossrv/lowlevellibsandfws/pluginfw/Test_Bed/TransitionTest/TransitionUnitTest.h
Update contrib.
1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // The unit test class definitions for the CTransition class.
18 #ifndef __TRANSITIONUNITTEST_H__
19 #define __TRANSITIONUNITTEST_H__
21 #include <ecom/test_bed/testbeddefinitions.h>
22 #include "TransitionStateAccessor.h"
23 #include "TransitionTransitionValidation.h"
24 #include "TransitionTransitions.h"
26 // ______________________________________________________________________________
31 Comments : Unit Test for CreateAndDestroy on CTransition, the class under test.
33 class CTransition_CreateAndDestroy_UnitTest : public CUnitTest
37 @fn NewL(CDataLogger& aDataLogger,
38 MUnitTestObserver& aObserver)
39 Intended Usage : Standard two-phase construction which leaves nothing on the
41 Error Condition : Leaves with the error code.
44 @param aDataLogger The output logging object.
45 @param aObserver The observer of this UnitTest.
46 @return CTransition_CreateAndDestroy_UnitTest* The constructed object.
48 @post CTransition_CreateAndDestroy_UnitTest is fully constructed, and initialised.
50 static CTransition_CreateAndDestroy_UnitTest* NewL(CDataLogger& aDataLogger,
51 MUnitTestObserver& aObserver);
54 @fn RunError(TInt aError)
55 Intended Usage : Intercept the panic caused by a RunL leave,
56 to restore the CTransition_CreateAndDestroy_UnitTest
57 object to a sensible state.
58 (called by the Active Scheduler immediately before the Panic).
59 Error Condition : @see CUnitTest::RunError().
61 @return TInt KErrNone if cleanup successful, otherwise
62 @see CUnitTest::RunError()
63 @pre CTransition_CreateAndDestroy_UnitTest is fully constructed, and initialised.
64 @post The object has been restored to a sensible state.
66 inline TInt RunError(TInt aError);
69 @fn ~CTransition_CreateAndDestroy_UnitTest()
70 Intended Usage : Standard Destructor.
71 Error Condition : None.
73 @pre CTransition_CreateAndDestroy_UnitTest is fully constructed.
74 @post CTransition_CreateAndDestroy_UnitTest is fully destroyed.
76 ~CTransition_CreateAndDestroy_UnitTest();
80 @fn CTransition_CreateAndDestroy_UnitTest(CDataLogger& aDataLogger,
81 MUnitTestObserver& aObserver)
82 Intended Usage : Default constructor.
83 Error Condition : None.
85 @param aDataLogger The output logging object.
86 @param aObserver The observer of this UnitTest.
87 @param aStateAccessor WhiteBox state access to the CTransition class.
89 @post CTransition_CreateAndDestroy_UnitTest is fully constructed.
91 inline CTransition_CreateAndDestroy_UnitTest(CDataLogger& aDataLogger,
92 MUnitTestObserver& aObserver);
96 Intended Usage : Second phase of safe two phase construction,
97 to complete the object initialisation.
98 Error Condition : Leaves with an error code.
99 @leave KErrNoMemory, and @see CUnitTest::BaseNewL().
102 @pre CTransition_CreateAndDestroy_UnitTest is fully constructed.
103 @post CTransition_CreateAndDestroy_UnitTest is fully initialised.
108 The context of the Unit Test.
109 i.e The CTransition class tested by this UnitTest's transitions.
111 CTransition_UnitTestContext* iUTContext;
112 TTransition_StateAccessor* iStateAccessor;
113 /* C'tor, d'tor, and method transition validators */
114 TTransition_Ctor_TransitionValidator* iCtorValidator;
115 TTransition_Dtor_TransitionValidator* iDtorValidator;
116 }; // CTransition_CreateAndDestroy_UnitTest
118 // ______________________________________________________________________________
123 Comments : Unit Test for TransitMethodL on CTransition, the class under test.
125 class CTransition_TransitMethodL_UnitTest : public CUnitTest
129 @fn NewL(CDataLogger& aDataLogger,
130 MUnitTestObserver& aObserver)
131 Intended Usage : Standard two-phase construction which leaves nothing on the
133 Error Condition : Leaves with the error code.
136 @param aDataLogger The output logging object.
137 @param aObserver The observer of this UnitTest.
138 @return CTransition_TransitMethodL_UnitTest* The constructed object.
140 @post CTransition_TransitMethodL_UnitTest is fully constructed, and initialised.
142 static CTransition_TransitMethodL_UnitTest* NewL(CDataLogger& aDataLogger,
143 MUnitTestObserver& aObserver);
146 @fn RunError(TInt aError)
147 Intended Usage : Intercept the panic caused by a RunL leave,
148 to restore the CTransition_TransitMethodL_UnitTest
149 object to a sensible state.
150 (called by the Active Scheduler immediately before the Panic).
151 Error Condition : @see CUnitTest::RunError().
153 @return TInt KErrNone if cleanup successful, otherwise
154 @see CUnitTest::RunError()
155 @pre CTransition_TransitMethodL_UnitTest is fully constructed, and initialised.
156 @post The object has been restored to a sensible state.
158 inline TInt RunError(TInt aError);
161 @fn ~CTransition_TransitMethodL_UnitTest()
162 Intended Usage : Standard Destructor.
163 Error Condition : None.
165 @pre CTransition_TransitMethodL_UnitTest is fully constructed.
166 @post CTransition_TransitMethodL_UnitTest is fully destroyed.
168 ~CTransition_TransitMethodL_UnitTest();
172 @fn CTransition_TransitMethodL_UnitTest(CDataLogger& aDataLogger,
173 MUnitTestObserver& aObserver)
174 Intended Usage : Default constructor.
175 Error Condition : None.
177 @param aDataLogger The output logging object.
178 @param aObserver The observer of this UnitTest.
179 @param aStateAccessor WhiteBox state access to the CTransition class.
181 @post CTransition_TransitMethodL_UnitTest is fully constructed.
183 inline CTransition_TransitMethodL_UnitTest(CDataLogger& aDataLogger,
184 MUnitTestObserver& aObserver);
187 @fn void ConstructL()
188 Intended Usage : Second phase of safe two phase construction,
189 to complete the object initialisation.
190 Error Condition : Leaves with an error code.
191 @leave KErrNoMemory, and @see CUnitTest::BaseNewL().
194 @pre CTransition_TransitMethodL_UnitTest is fully constructed.
195 @post CTransition_TransitMethodL_UnitTest is fully initialised.
200 The context of the Unit Test.
201 i.e The CTransition class tested by this UnitTest's transitions.
203 CTransition_UnitTestContext* iUTContext;
204 TTransition_StateAccessor* iStateAccessor;
205 /* C'tor, d'tor, and method transition validators */
206 TTransition_Ctor_TransitionValidator* iCtorValidator;
207 TTransition_RepeatOnce_TransitionValidator* iRepeatOnceValidator;
208 TTransition_TransitionId_TransitionValidator* iTransitionIdValidator;
209 TTransition_TransitionInfo_TransitionValidator* iTransitionInfoValidator;
210 TTransition_IsBlocking_TransitionValidator* iIsBlockingValidator;
211 TTransition_SetBlocking_TransitionValidator* iSetBlockingValidator;
212 TTransition_TransitMethodL_TransitionValidator* iTransitMethodLValidator;
213 TTransition_Dtor_TransitionValidator* iDtorValidator;
214 }; // CTransition_TransitMethodL_UnitTest
216 // ______________________________________________________________________________
221 Comments : Unit Test for AsyncOperation on CTransition, the class under test.
223 class CTransition_AsyncOperation_UnitTest : public CUnitTest
227 @fn NewL(CDataLogger& aDataLogger,
228 MUnitTestObserver& aObserver)
229 Intended Usage : Standard two-phase construction which leaves nothing on the
231 Error Condition : Leaves with the error code.
234 @param aDataLogger The output logging object.
235 @param aObserver The observer of this UnitTest.
236 @return CTransition_AsyncOperation_UnitTest* The constructed object.
238 @post CTransition_AsyncOperation_UnitTest is fully constructed, and initialised.
240 static CTransition_AsyncOperation_UnitTest* NewL(CDataLogger& aDataLogger,
241 MUnitTestObserver& aObserver);
244 @fn RunError(TInt aError)
245 Intended Usage : Intercept the panic caused by a RunL leave,
246 to restore the CTransition_AsyncOperation_UnitTest
247 object to a sensible state.
248 (called by the Active Scheduler immediately before the Panic).
249 Error Condition : @see CUnitTest::RunError().
251 @return TInt KErrNone if cleanup successful, otherwise
252 @see CUnitTest::RunError()
253 @pre CTransition_AsyncOperation_UnitTest is fully constructed, and initialised.
254 @post The object has been restored to a sensible state.
256 inline TInt RunError(TInt aError);
259 @fn ~CTransition_AsyncOperation_UnitTest()
260 Intended Usage : Standard Destructor.
261 Error Condition : None.
263 @pre CTransition_AsyncOperation_UnitTest is fully constructed.
264 @post CTransition_AsyncOperation_UnitTest is fully destroyed.
266 ~CTransition_AsyncOperation_UnitTest();
270 @fn CTransition_AsyncOperation_UnitTest(CDataLogger& aDataLogger,
271 MUnitTestObserver& aObserver)
272 Intended Usage : Default constructor.
273 Error Condition : None.
275 @param aDataLogger The output logging object.
276 @param aObserver The observer of this UnitTest.
277 @param aStateAccessor WhiteBox state access to the CTransition class.
279 @post CTransition_AsyncOperation_UnitTest is fully constructed.
281 inline CTransition_AsyncOperation_UnitTest(CDataLogger& aDataLogger,
282 MUnitTestObserver& aObserver);
285 @fn void ConstructL()
286 Intended Usage : Second phase of safe two phase construction,
287 to complete the object initialisation.
288 Error Condition : Leaves with an error code.
289 @leave KErrNoMemory, and @see CUnitTest::BaseNewL().
292 @pre CTransition_AsyncOperation_UnitTest is fully constructed.
293 @post CTransition_AsyncOperation_UnitTest is fully initialised.
298 The context of the Unit Test.
299 i.e The CTransition class tested by this UnitTest's transitions.
301 CTransition_UnitTestContext* iUTContext;
302 TTransition_StateAccessor* iStateAccessor;
303 /* C'tor, d'tor, and method transition validators */
304 TTransition_Ctor_TransitionValidator* iCtorValidator;
305 TTransition_RunTransition_TransitionValidator* iRunTransitionValidator;
306 TTransition_Cancel_TransitionValidator* iCancelValidator;
307 TTransition_GetErrorCode_TransitionValidator* iGetErrorCodeValidator;
308 TTransition_Dtor_TransitionValidator* iDtorValidator;
309 }; // CTransition_AsyncOperation_UnitTest
312 #endif // __TRANSITIONUNITTEST_H__