187 EUNIT_ASSERT( effect1 == iDefaultEffectManager->Effect( 1 ) ); |
174 EUNIT_ASSERT( effect1 == iDefaultEffectManager->Effect( 1 ) ); |
188 EUNIT_ASSERT( effect1 == iDefaultEffectManager->Effect( -1 ) ); |
175 EUNIT_ASSERT( effect1 == iDefaultEffectManager->Effect( -1 ) ); |
189 EUNIT_ASSERT( effect2 == iDefaultEffectManager->Effect( 2 ) ); |
176 EUNIT_ASSERT( effect2 == iDefaultEffectManager->Effect( 2 ) ); |
190 } |
177 } |
191 |
178 |
192 /* |
|
193 void T_CShwDefaultEffectManager::TestProgrammedEffectL() |
|
194 { |
|
195 // Create two effects |
|
196 T_MShwTestEffect* effect0 = new(ELeave) T_MShwTestEffect(0); |
|
197 CleanupStack::PushL(effect0); |
|
198 T_MShwTestEffect* effect1 = new(ELeave) T_MShwTestEffect(1); |
|
199 CleanupStack::PushL(effect1); |
|
200 |
|
201 // Add the effects |
|
202 iDefaultEffectManager->AddEffectL(effect0); // takes ownership |
|
203 iDefaultEffectManager->AddEffectL(effect1); // takes ownership |
|
204 |
|
205 CleanupStack::Pop(2, effect0); |
|
206 |
|
207 // Specify programmed order |
|
208 iDefaultEffectManager->SetEffectOrder(MShwEffectManager::EShwEffectOrderProgrammed); |
|
209 |
|
210 // Create the programmed order |
|
211 RArray<MShwEffect*> programme; |
|
212 CleanupClosePushL(programme); |
|
213 // CleanupStack::PushL(&programme); |
|
214 programme.AppendL(effect1); |
|
215 programme.AppendL(effect0); |
|
216 programme.AppendL(effect1); |
|
217 |
|
218 // Set the order |
|
219 iDefaultEffectManager->SetProgrammedEffects(programme); |
|
220 |
|
221 // |
|
222 // Check the first effect |
|
223 MShwEffect* inEffect = static_cast<MShwEffect*>(effect1); |
|
224 MShwEffect* outEffect = iDefaultEffectManager->CurrentEffect(); |
|
225 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
226 |
|
227 inEffect = static_cast<MShwEffect*>(effect0); |
|
228 outEffect = iDefaultEffectManager->NextEffect(); |
|
229 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
230 |
|
231 iDefaultEffectManager->ProceedToNextEffect(); |
|
232 |
|
233 inEffect = static_cast<MShwEffect*>(effect1); |
|
234 outEffect = iDefaultEffectManager->NextEffect(); |
|
235 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
236 |
|
237 CleanupStack::PopAndDestroy(&programme); |
|
238 } |
|
239 |
|
240 |
|
241 void T_CShwDefaultEffectManager::TestMultiProgrammedEffectL() |
|
242 { |
|
243 // Create two effects |
|
244 T_MShwTestEffect* effect0 = new(ELeave) T_MShwTestEffect(0); |
|
245 CleanupStack::PushL(effect0); |
|
246 T_MShwTestEffect* effect1 = new(ELeave) T_MShwTestEffect(1); |
|
247 CleanupStack::PushL(effect1); |
|
248 T_MShwTestEffect* effect2 = new(ELeave) T_MShwTestEffect(2); |
|
249 CleanupStack::PushL(effect2); |
|
250 |
|
251 // Add the effects |
|
252 iDefaultEffectManager->AddEffectL(effect0); // takes ownership |
|
253 iDefaultEffectManager->AddEffectL(effect1); // takes ownership |
|
254 iDefaultEffectManager->AddEffectL(effect2); // takes ownership |
|
255 |
|
256 CleanupStack::Pop(3, effect0); |
|
257 |
|
258 // Specify programmed order |
|
259 iDefaultEffectManager->SetEffectOrder(MShwEffectManager::EShwEffectOrderProgrammed); |
|
260 |
|
261 // Create the programmed order |
|
262 RArray<MShwEffect*> programme; |
|
263 CleanupClosePushL(programme); |
|
264 // CleanupStack::PushL(&programme); |
|
265 programme.AppendL(effect2); |
|
266 programme.AppendL(effect1); |
|
267 programme.AppendL(effect0); |
|
268 programme.AppendL(effect2); |
|
269 programme.AppendL(effect1); |
|
270 programme.AppendL(effect0); |
|
271 |
|
272 // Set the order |
|
273 iDefaultEffectManager->SetProgrammedEffects(programme); |
|
274 |
|
275 // |
|
276 // Check the effect order is retrieved as 2, 1, 0 |
|
277 MShwEffect* inEffect = static_cast<MShwEffect*>(effect2); |
|
278 MShwEffect* outEffect = iDefaultEffectManager->CurrentEffect(); |
|
279 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
280 |
|
281 inEffect = static_cast<MShwEffect*>(effect1); |
|
282 outEffect = iDefaultEffectManager->NextEffect(); |
|
283 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
284 |
|
285 iDefaultEffectManager->ProceedToNextEffect(); |
|
286 |
|
287 inEffect = static_cast<MShwEffect*>(effect2); |
|
288 outEffect = iDefaultEffectManager->NextEffect(); |
|
289 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
290 |
|
291 iDefaultEffectManager->ProceedToNextEffect(); |
|
292 |
|
293 inEffect = static_cast<MShwEffect*>(effect1); |
|
294 outEffect = iDefaultEffectManager->NextEffect(); |
|
295 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
296 |
|
297 iDefaultEffectManager->ProceedToNextEffect(); |
|
298 |
|
299 inEffect = static_cast<MShwEffect*>(effect0); |
|
300 outEffect = iDefaultEffectManager->NextEffect(); |
|
301 EUNIT_ASSERT_EQUALS(inEffect, outEffect); |
|
302 iDefaultEffectManager->ProceedToNextEffect(); |
|
303 |
|
304 CleanupStack::PopAndDestroy(&programme); |
|
305 } |
|
306 */ |
|
307 |
|
308 // TEST TABLE |
179 // TEST TABLE |
309 EUNIT_BEGIN_TEST_TABLE( |
180 EUNIT_BEGIN_TEST_TABLE( |
310 T_CShwDefaultEffectManager, |
181 T_CShwDefaultEffectManager, |
311 "Test suite for CShwDefaultEffectManager.", |
182 "Test suite for CShwDefaultEffectManager.", |
312 "UNIT" ) |
183 "UNIT" ) |