2 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
22 #include <dali/public-api/dali-core.h>
23 #include <dali/devel-api/object/handle-devel.h>
25 #include <dali-test-suite-utils.h>
29 void layer_test_startup(void)
31 test_return_value = TET_UNDEF;
34 void layer_test_cleanup(void)
36 test_return_value = TET_PASS;
40 int UtcDaliLayerNew(void)
42 TestApplication application;
43 Layer layer = Layer::New();
45 DALI_TEST_CHECK(layer);
49 int UtcDaliLayerDownCast(void)
51 TestApplication application;
52 tet_infoline("Testing Dali::Layer::DownCast()");
54 Layer actor1 = Layer::New();
55 Actor anActor = Actor::New();
58 Actor child = anActor.GetChildAt(0);
59 Layer layer = DownCast< Layer >(child);
61 DALI_TEST_CHECK(layer);
65 int UtcDaliLayerDownCast2(void)
67 TestApplication application;
68 tet_infoline("Testing Dali::Layer::DownCast()");
70 Actor actor1 = Actor::New();
71 Actor anActor = Actor::New();
74 Actor child = anActor.GetChildAt(0);
75 Layer layer = DownCast< Layer >(child);
76 DALI_TEST_CHECK(!layer);
78 Actor unInitialzedActor;
79 layer = Layer::DownCast( unInitialzedActor );
80 DALI_TEST_CHECK(!layer);
85 int UtcDaliLayerGetDepth(void)
87 tet_infoline("Testing Dali::Layer::GetDepth()");
88 TestApplication application;
89 Layer layer1 = Layer::New();
90 Layer layer2 = Layer::New();
92 // layers are not on stage
93 DALI_TEST_EQUALS(layer1.GetDepth(), 0u, TEST_LOCATION);
94 DALI_TEST_EQUALS(layer2.GetDepth(), 0u, TEST_LOCATION);
97 Layer root = Stage::GetCurrent().GetLayer( 0 );
98 DALI_TEST_EQUALS(root.GetDepth(), 0u, TEST_LOCATION);
100 Stage::GetCurrent().Add(layer1);
101 Stage::GetCurrent().Add(layer2);
103 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION);
104 DALI_TEST_EQUALS(layer1.GetDepth(), 1u, TEST_LOCATION);
105 DALI_TEST_EQUALS(layer2.GetDepth(), 2u, TEST_LOCATION);
109 int UtcDaliLayerRaise(void)
111 tet_infoline("Testing Dali::Layer::Raise()");
112 TestApplication application;
113 Layer layer1 = Layer::New();
114 Layer layer2 = Layer::New();
116 Stage::GetCurrent().Add(layer1);
117 Stage::GetCurrent().Add(layer2);
118 DALI_TEST_EQUALS(layer1.GetDepth(), 1u, TEST_LOCATION);
121 DALI_TEST_EQUALS(layer1.GetDepth(), 2u, TEST_LOCATION);
124 Layer root = Stage::GetCurrent().GetLayer( 0 );
125 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION);
127 DALI_TEST_EQUALS( root.GetDepth(), 1u, TEST_LOCATION);
128 DALI_TEST_EQUALS(layer1.GetDepth(), 2u, TEST_LOCATION);
129 DALI_TEST_EQUALS(layer2.GetDepth(), 0u, TEST_LOCATION);
133 int UtcDaliLayerLower(void)
135 tet_infoline("Testing Dali::Layer::Lower()");
136 TestApplication application;
137 Layer layer1 = Layer::New();
138 Layer layer2 = Layer::New();
140 Stage::GetCurrent().Add(layer1);
141 Stage::GetCurrent().Add(layer2);
142 DALI_TEST_EQUALS(layer2.GetDepth(), 2u, TEST_LOCATION);
145 DALI_TEST_EQUALS(layer2.GetDepth(), 1u, TEST_LOCATION);
148 Layer root = Stage::GetCurrent().GetLayer( 0 );
150 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION);
152 DALI_TEST_EQUALS( root.GetDepth(), 1u, TEST_LOCATION);
153 DALI_TEST_EQUALS(layer2.GetDepth(), 0u, TEST_LOCATION);
157 int UtcDaliLayerRaiseToTop(void)
159 tet_infoline("Testing Dali::Layer::RaiseToTop()");
160 TestApplication application;
161 Layer layer1 = Layer::New();
162 Layer layer2 = Layer::New();
163 Layer layer3 = Layer::New();
165 Stage::GetCurrent().Add(layer1);
166 Stage::GetCurrent().Add(layer2);
167 Stage::GetCurrent().Add(layer3);
168 Layer root = Stage::GetCurrent().GetLayer( 0 );
170 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION);
171 DALI_TEST_EQUALS(layer1.GetDepth(), 1u, TEST_LOCATION);
172 DALI_TEST_EQUALS(layer2.GetDepth(), 2u, TEST_LOCATION);
173 DALI_TEST_EQUALS(layer3.GetDepth(), 3u, TEST_LOCATION);
176 DALI_TEST_EQUALS(layer1.GetDepth(), 3u, TEST_LOCATION);
179 DALI_TEST_EQUALS( root.GetDepth(), 3u, TEST_LOCATION);
183 int UtcDaliLayerLowerToBottom(void)
185 tet_infoline("Testing Dali::Layer::LowerToBottom()");
186 TestApplication application;
187 Layer layer1 = Layer::New();
188 Layer layer2 = Layer::New();
189 Layer layer3 = Layer::New();
191 Stage::GetCurrent().Add(layer1);
192 Stage::GetCurrent().Add(layer2);
193 Stage::GetCurrent().Add(layer3);
195 DALI_TEST_EQUALS(layer1.GetDepth(), 1u, TEST_LOCATION);
196 DALI_TEST_EQUALS(layer2.GetDepth(), 2u, TEST_LOCATION);
197 DALI_TEST_EQUALS(layer3.GetDepth(), 3u, TEST_LOCATION);
199 layer3.LowerToBottom();
200 DALI_TEST_EQUALS(layer3.GetDepth(), 0u, TEST_LOCATION);
204 int UtcDaliLayerSetClipping(void)
206 tet_infoline("Testing Dali::Layer::SetClipping()");
207 TestApplication application;
209 Layer layer = Layer::New();
210 DALI_TEST_CHECK(!layer.IsClipping());
212 layer.SetClipping(true);
213 DALI_TEST_CHECK(layer.IsClipping());
217 int UtcDaliLayerIsClipping(void)
219 tet_infoline("Testing Dali::Layer::IsClipping()");
220 TestApplication application;
222 Layer layer = Layer::New();
223 DALI_TEST_CHECK(!layer.IsClipping());
227 int UtcDaliLayerSetClippingBox(void)
229 tet_infoline("Testing Dali::Layer::SetClippingBox()");
230 TestApplication application;
232 ClippingBox testBox(5,6, 77,83);
234 Layer layer = Layer::New();
235 DALI_TEST_CHECK(layer.GetClippingBox() != testBox);
237 layer.SetClippingBox(5,6, 77,83);
238 DALI_TEST_CHECK(layer.GetClippingBox() == testBox);
242 int UtcDaliLayerGetClippingBox(void)
244 tet_infoline("Testing Dali::Layer::GetClippingBox()");
245 TestApplication application;
247 Layer layer = Layer::New();
248 DALI_TEST_CHECK(layer.GetClippingBox() == ClippingBox(0,0,0,0));
252 static int gTestSortFunctionCalled;
254 static float TestSortFunction(const Vector3& /*position*/)
256 ++gTestSortFunctionCalled;
260 int UtcDaliLayerSetSortFunction(void)
262 tet_infoline("Testing Dali::Layer::SetSortFunction()");
263 TestApplication application;
264 BufferImage img = BufferImage::New( 1,1 );
265 // create two transparent actors so there is something to sort
266 Actor actor = CreateRenderableActor( img );
267 Actor actor2 = CreateRenderableActor( img );
269 actor.SetColor( Vector4(1, 1, 1, 0.5f ) ); // 50% transparent
271 actor2.SetColor( Vector4(1, 1, 1, 0.5f ) ); // 50% transparent
274 Stage::GetCurrent().Add( actor );
275 Stage::GetCurrent().Add( actor2 );
277 Layer root = Stage::GetCurrent().GetLayer( 0 );
278 gTestSortFunctionCalled = 0;
279 root.SetSortFunction(TestSortFunction);
281 // flush the queue and render once
282 application.SendNotification();
283 application.Render();
285 DALI_TEST_CHECK( gTestSortFunctionCalled > 0 );
290 int UtcDaliLayerRaiseAbove(void)
292 tet_infoline("Testing Dali::Layer::RaiseAbove()");
293 TestApplication application;
294 Layer layer = Layer::New();
295 // try to raise above root layer
296 Layer root = Stage::GetCurrent().GetLayer( 0 );
297 layer.RaiseAbove( root );
298 // layer depth is zero as its not on stage
299 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
301 Stage::GetCurrent().Add( layer );
302 layer.RaiseAbove( root );
303 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
304 root.RaiseAbove( layer );
305 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
306 layer.RaiseAbove( layer );
307 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
309 // make another layer on the stage
310 Layer layer2 = Layer::New();
311 Stage::GetCurrent().Add( layer2 );
312 layer.RaiseAbove( layer2 );
313 DALI_TEST_GREATER( layer.GetDepth(), layer2.GetDepth(), TEST_LOCATION );
314 layer2.RaiseAbove( layer );
315 DALI_TEST_GREATER( layer2.GetDepth(), layer.GetDepth(), TEST_LOCATION );
316 root.RaiseAbove( layer2 );
317 DALI_TEST_GREATER( root.GetDepth(), layer2.GetDepth(), TEST_LOCATION );
321 int UtcDaliLayerRaiseBelow(void)
323 tet_infoline("Testing Dali::Layer::RaiseBelow()");
324 TestApplication application;
325 Layer layer = Layer::New();
326 // try to lower below root layer
327 Layer root = Stage::GetCurrent().GetLayer( 0 );
328 layer.LowerBelow( root );
329 // layer depth is zero as its not on stage
330 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
332 Stage::GetCurrent().Add( layer );
333 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
334 layer.LowerBelow( root );
335 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
336 root.LowerBelow( layer );
337 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
338 layer.LowerBelow( layer );
339 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
341 // make another layer on the stage
342 Layer layer2 = Layer::New();
343 Stage::GetCurrent().Add( layer2 );
344 layer.LowerBelow( layer2 );
345 DALI_TEST_GREATER( layer2.GetDepth(), layer.GetDepth(), TEST_LOCATION );
346 layer2.LowerBelow( layer );
347 DALI_TEST_GREATER( layer.GetDepth(), layer2.GetDepth(), TEST_LOCATION );
348 root.LowerBelow( layer2 );
349 DALI_TEST_GREATER( layer2.GetDepth(), root.GetDepth(), TEST_LOCATION );
353 int UtcDaliLayerMoveAbove(void)
355 tet_infoline("Testing Dali::Layer::MoveAbove()");
356 TestApplication application;
357 Layer layer = Layer::New();
358 // try to raise above root layer
359 Layer root = Stage::GetCurrent().GetLayer( 0 );
360 layer.MoveAbove( root );
361 // layer depth is zero as its not on stage
362 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
363 root.MoveAbove( layer );
364 // root depth is zero as layer is not on stage
365 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
367 Stage::GetCurrent().Add( layer );
368 layer.MoveAbove( root );
369 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
370 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION );
371 root.MoveAbove( layer );
372 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
373 DALI_TEST_EQUALS( root.GetDepth(), 1u, TEST_LOCATION );
375 // make another layer on the stage
376 Layer layer2 = Layer::New();
377 Stage::GetCurrent().Add( layer2 );
378 layer.MoveAbove( layer2 );
379 DALI_TEST_EQUALS( layer.GetDepth(), layer2.GetDepth() + 1u, TEST_LOCATION );
380 layer2.MoveAbove( root );
381 DALI_TEST_EQUALS( layer2.GetDepth(), root.GetDepth() + 1u, TEST_LOCATION );
382 root.MoveAbove( layer );
383 DALI_TEST_EQUALS( root.GetDepth(), layer.GetDepth() + 1u, TEST_LOCATION );
385 Layer layer3 = Layer::New();
386 Stage::GetCurrent().Add( layer3 );
387 DALI_TEST_EQUALS( layer3.GetDepth(), 3u, TEST_LOCATION );
388 root.MoveAbove( layer3 );
389 DALI_TEST_EQUALS( root.GetDepth(), 3u, TEST_LOCATION );
390 DALI_TEST_EQUALS( layer3.GetDepth(), 2u, TEST_LOCATION );
391 DALI_TEST_EQUALS( Stage::GetCurrent().GetLayer( 0 ).GetDepth(), 0u, TEST_LOCATION );
392 layer3.MoveAbove( Stage::GetCurrent().GetLayer( 0 ) );
393 DALI_TEST_EQUALS( layer3.GetDepth(), 1u, TEST_LOCATION );
397 int UtcDaliLayerMoveBelow(void)
399 tet_infoline("Testing Dali::Layer::MoveBelow()");
400 TestApplication application;
401 Layer layer = Layer::New();
402 // try to raise above root layer
403 Layer root = Stage::GetCurrent().GetLayer( 0 );
404 layer.MoveBelow( root );
405 // layer depth is zero as its not on stage
406 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
407 root.MoveBelow( layer );
408 // root depth is zero as layer is not on stage
409 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
411 Stage::GetCurrent().Add( layer );
412 layer.MoveBelow( root );
413 DALI_TEST_EQUALS( layer.GetDepth(), 0u, TEST_LOCATION );
414 DALI_TEST_EQUALS( root.GetDepth(), 1u, TEST_LOCATION );
415 root.MoveBelow( layer );
416 DALI_TEST_EQUALS( layer.GetDepth(), 1u, TEST_LOCATION );
417 DALI_TEST_EQUALS( root.GetDepth(), 0u, TEST_LOCATION );
419 // make another layer on the stage
420 Layer layer2 = Layer::New();
421 Stage::GetCurrent().Add( layer2 );
422 layer.MoveBelow( layer2 );
423 DALI_TEST_EQUALS( layer.GetDepth(), layer2.GetDepth() - 1u, TEST_LOCATION );
424 layer2.MoveBelow( root );
425 DALI_TEST_EQUALS( layer2.GetDepth(), root.GetDepth() - 1u, TEST_LOCATION );
426 root.MoveBelow( layer );
427 DALI_TEST_EQUALS( root.GetDepth(), layer.GetDepth() - 1u, TEST_LOCATION );
429 Layer layer3 = Layer::New();
430 Stage::GetCurrent().Add( layer3 );
431 DALI_TEST_EQUALS( layer3.GetDepth(), 3u, TEST_LOCATION );
432 root.MoveBelow( layer3 );
433 DALI_TEST_EQUALS( root.GetDepth(), 2u, TEST_LOCATION );
434 DALI_TEST_EQUALS( layer3.GetDepth(), 3u, TEST_LOCATION );
438 int UtcDaliLayerDefaultProperties(void)
440 TestApplication application;
441 tet_infoline("Testing Dali::Layer DefaultProperties");
443 Layer actor = Layer::New();
445 std::vector<Property::Index> indices;
446 indices.push_back(Layer::Property::CLIPPING_ENABLE);
447 indices.push_back(Layer::Property::CLIPPING_BOX);
448 indices.push_back(Layer::Property::BEHAVIOR);
450 DALI_TEST_CHECK(actor.GetPropertyCount() == ( Actor::New().GetPropertyCount() + indices.size() ) );
452 for(std::vector<Property::Index>::iterator iter = indices.begin(); iter != indices.end(); ++iter)
454 DALI_TEST_CHECK( *iter == actor.GetPropertyIndex(actor.GetPropertyName(*iter)) );
455 DALI_TEST_CHECK( actor.IsPropertyWritable(*iter) );
456 DALI_TEST_CHECK( !actor.IsPropertyAnimatable(*iter) );
457 DALI_TEST_CHECK( actor.GetPropertyType(*iter) == actor.GetPropertyType(*iter) ); // just checking call succeeds
460 // set/get one of them
461 actor.SetClippingBox(0,0,0,0);
463 ClippingBox testBox(10,20,30,40);
464 DALI_TEST_CHECK(actor.GetClippingBox() != testBox);
466 actor.SetProperty(Layer::Property::CLIPPING_BOX, Property::Value(Rect<int>(testBox)));
468 DALI_TEST_CHECK(Property::RECTANGLE == actor.GetPropertyType(Layer::Property::CLIPPING_BOX));
470 Property::Value v = actor.GetProperty(Layer::Property::CLIPPING_BOX);
471 DALI_TEST_CHECK(v.Get<Rect<int> >() == testBox);
473 v = DevelHandle::GetCurrentProperty( actor, Layer::Property::CLIPPING_BOX );
474 DALI_TEST_CHECK(v.Get<Rect<int> >() == testBox);
476 // set the same boundaries, but through a clipping box object
477 actor.SetClippingBox( testBox );
479 DALI_TEST_CHECK( actor.GetClippingBox() == testBox );
481 Property::Value behavior = actor.GetProperty(Layer::Property::BEHAVIOR);
482 DALI_TEST_EQUALS(behavior.Get<std::string>().c_str(), "LAYER_2D", TEST_LOCATION );
484 behavior = DevelHandle::GetCurrentProperty( actor, Layer::Property::BEHAVIOR );
485 DALI_TEST_EQUALS(behavior.Get<std::string>().c_str(), "LAYER_2D", TEST_LOCATION );
490 int UtcDaliLayerSetDepthTestDisabled(void)
492 TestApplication application;
493 tet_infoline("Testing Dali::Layer::SetDepthTestDisabled() ");
495 Layer actor = Layer::New();
496 // Note that IsDepthTestDisabled does not depend on layer behavior,
497 // as 2D layers can still have depth tests performed on a per-renderer basis.
499 DALI_TEST_CHECK( actor.IsDepthTestDisabled() );
501 // Check Set / Unset.
502 actor.SetDepthTestDisabled( false );
503 DALI_TEST_CHECK( !actor.IsDepthTestDisabled() );
504 actor.SetDepthTestDisabled( true );
505 DALI_TEST_CHECK( actor.IsDepthTestDisabled() );
510 int UtcDaliLayerCreateDestroy(void)
512 tet_infoline("Testing Dali::Layer::CreateDestroy() ");
513 Layer* layer = new Layer;
514 DALI_TEST_CHECK( layer );
519 int UtcDaliLayerPropertyIndices(void)
521 TestApplication application;
522 Actor basicActor = Actor::New();
523 Layer layer = Layer::New();
525 Property::IndexContainer indices;
526 layer.GetPropertyIndices( indices );
527 DALI_TEST_CHECK( indices.Size() > basicActor.GetPropertyCount() );
528 DALI_TEST_EQUALS( indices.Size(), layer.GetPropertyCount(), TEST_LOCATION );
532 int UtcDaliLayerTouchConsumed(void)
534 TestApplication application;
535 Layer layer = Layer::New();
537 DALI_TEST_EQUALS( layer.IsTouchConsumed(), false, TEST_LOCATION );
538 layer.SetTouchConsumed( true );
539 DALI_TEST_EQUALS( layer.IsTouchConsumed(), true, TEST_LOCATION );
543 int UtcDaliLayerHoverConsumed(void)
545 TestApplication application;
546 Layer layer = Layer::New();
548 DALI_TEST_EQUALS( layer.IsHoverConsumed(), false, TEST_LOCATION );
549 layer.SetHoverConsumed( true );
550 DALI_TEST_EQUALS( layer.IsHoverConsumed(), true, TEST_LOCATION );
554 int UtcDaliLayerClippingGLCalls(void)
556 TestApplication application;
557 const TestGlAbstraction::ScissorParams& glScissorParams( application.GetGlAbstraction().GetScissorParams() );
558 Stage stage( Stage::GetCurrent() );
560 ClippingBox testBox( 5, 6, 77, 83 );
561 Layer layer = Stage::GetCurrent().GetRootLayer();
562 layer.SetClipping( true );
563 layer.SetClippingBox( testBox );
565 // Add at least one renderable actor so the GL calls are actually made
566 BufferImage img = BufferImage::New( 1,1 );
567 Actor actor = CreateRenderableActor( img );
570 // flush the queue and render once
571 application.SendNotification();
572 application.Render();
574 DALI_TEST_EQUALS( testBox.x, glScissorParams.x, TEST_LOCATION );
575 DALI_TEST_EQUALS( testBox.y, (int)(stage.GetSize().height - glScissorParams.y - testBox.height), TEST_LOCATION ); // GL Coordinates are from bottom left
576 DALI_TEST_EQUALS( testBox.width, glScissorParams.width, TEST_LOCATION );
577 DALI_TEST_EQUALS( testBox.height, glScissorParams.height, TEST_LOCATION );
581 int UtcDaliLayerBehaviour(void)
583 TestApplication application;
584 Layer layer = Layer::New();
586 DALI_TEST_EQUALS( layer.GetBehavior(), Dali::Layer::LAYER_2D, TEST_LOCATION );
587 layer.SetBehavior( Dali::Layer::LAYER_3D );
588 DALI_TEST_EQUALS( layer.GetBehavior(), Dali::Layer::LAYER_3D, TEST_LOCATION );
592 Actor CreateActor( bool withAlpha )
594 Dali::BufferImage bufferImage;
598 bufferImage = Dali::BufferImage::WHITE();
602 bufferImage = BufferImage::New( 1u, 1u, Pixel::RGB888 );
603 PixelBuffer* pBuffer = bufferImage.GetBuffer();
606 pBuffer[0] = pBuffer[1] = pBuffer[2] = 0xFF;
610 Actor actor = CreateRenderableActor( bufferImage );
611 actor.SetParentOrigin( ParentOrigin::CENTER );
612 actor.SetAnchorPoint( AnchorPoint::CENTER );
617 int UtcDaliLayer3DSort(void)
619 tet_infoline( "Testing LAYER_3D sort coverage test" );
620 TestApplication application;
621 TestGlAbstraction& glAbstraction = application.GetGlAbstraction();
622 TraceCallStack& enabledDisableTrace = glAbstraction.GetEnableDisableTrace();
624 Stage::GetCurrent().GetRootLayer().SetBehavior( Layer::LAYER_3D );
627 Actor actor = CreateActor( false );
628 Stage::GetCurrent().Add( actor );
630 // Create child actors.
631 Actor child1 = CreateActor( true );
633 Actor child2 = CreateActor( false );
634 child1.Add( child2 );
636 enabledDisableTrace.Reset();
637 enabledDisableTrace.Enable( true );
638 application.SendNotification();
639 application.Render();
640 enabledDisableTrace.Enable( false );
642 DALI_TEST_CHECK( enabledDisableTrace.FindMethodAndParams( "Enable", "2929" ) ); // 2929 is GL_DEPTH_TEST