X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-Visual.cpp;h=f441dd855d5cd1f7183eecbbd619f56612f2e07f;hb=refs%2Fchanges%2F61%2F134961%2F5;hp=1222bd5b8e37b798d7a5e7629bf92feb7cbb6179;hpb=003fe1b0cb2900bd60063649e46fbbbb6e7d997d;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp index 1222bd5..f441dd8 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include @@ -202,7 +203,7 @@ int UtcDaliVisualSetGetDepthIndex(void) propertyMap.Insert(ColorVisual::Property::MIX_COLOR, Color::BLUE); Visual::Base visual = factory.CreateVisual( propertyMap ); - visual.SetDepthIndex( 1.f ); + visual.SetDepthIndex( 1 ); DummyControl dummyControl = DummyControl::New(true); Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); @@ -214,12 +215,12 @@ int UtcDaliVisualSetGetDepthIndex(void) int depthIndex = dummyControl.GetRendererAt(0u).GetProperty( Renderer::Property::DEPTH_INDEX ); DALI_TEST_EQUALS( depthIndex, 1, TEST_LOCATION ); - DALI_TEST_EQUALS( visual.GetDepthIndex(), 1.f, TEST_LOCATION ); + DALI_TEST_EQUALS( visual.GetDepthIndex(), 1, TEST_LOCATION ); - visual.SetDepthIndex( -1.f ); + visual.SetDepthIndex( -1 ); depthIndex = dummyControl.GetRendererAt(0u).GetProperty( Renderer::Property::DEPTH_INDEX ); DALI_TEST_EQUALS( depthIndex, -1, TEST_LOCATION ); - DALI_TEST_EQUALS( visual.GetDepthIndex(), -1.f, TEST_LOCATION ); + DALI_TEST_EQUALS( visual.GetDepthIndex(), -1, TEST_LOCATION ); END_TEST; } @@ -1769,8 +1770,10 @@ int UtcDaliNPatchVisualCustomShader(void) VisualFactory factory = VisualFactory::Get(); Property::Map properties; Property::Map shader; + const std::string vertexShader = "Foobar"; const std::string fragmentShader = "Foobar"; shader[Dali::Toolkit::Visual::Shader::Property::FRAGMENT_SHADER] = fragmentShader; + shader[Dali::Toolkit::Visual::Shader::Property::VERTEX_SHADER] = vertexShader; Property::Map transformMap; transformMap["size"] = Vector2( 0.5f, 0.5f ) ; @@ -1808,10 +1811,11 @@ int UtcDaliNPatchVisualCustomShader(void) DALI_TEST_EQUALS( renderer.GetProperty( index ), Property::Value(Vector2(0.5, 0.5)), 0.001, TEST_LOCATION ); Property::Value* fragment = map->Find( "fragment" ); // fragment key name from shader-impl.cpp - // *map["vertex"]; is default here so not verifying it - DALI_TEST_EQUALS( fragmentShader, fragment->Get(), TEST_LOCATION ); + Property::Value* vertex = map->Find( "vertex" ); // vertex key name from shader-impl.cpp + DALI_TEST_EQUALS( vertexShader, vertex->Get(), TEST_LOCATION ); + END_TEST; } @@ -1864,7 +1868,7 @@ int UtcDaliVisualRendererRemovalAndReAddition(void) propertyMap.Insert(ColorVisual::Property::MIX_COLOR, Color::BLUE); Visual::Base visual = factory.CreateVisual( propertyMap ); - visual.SetDepthIndex( 1.f ); + visual.SetDepthIndex( 1 ); DummyControl dummyControl = DummyControl::New(true); Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); @@ -1926,7 +1930,7 @@ int UtcDaliVisualTextVisualRender(void) propertyMap.Insert( "verticalAlignment", "CENTER" ); propertyMap.Insert( "textColor", Color::RED ); Visual::Base textVisual = factory.CreateVisual( propertyMap ); - textVisual.SetDepthIndex( 1.f ); + textVisual.SetDepthIndex( 1 ); DummyControl dummyControl = DummyControl::New(true); Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); @@ -1953,7 +1957,7 @@ int UtcDaliVisualTextVisualRender(void) propertyMap.Insert( DevelVisual::Property::TRANSFORM, transformMap ); textVisual = factory.CreateVisual( propertyMap ); - textVisual.SetDepthIndex( 1.f ); + textVisual.SetDepthIndex( 1 ); dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL, textVisual ); dummyControl.SetSize( 720.f, 640.f ); @@ -1995,7 +1999,7 @@ int UtcDaliVisualTextVisualDisableEnable(void) propertyMap.Insert( "verticalAlignment", "CENTER" ); propertyMap.Insert( "textColor", Color::RED ); Visual::Base textVisual = factory.CreateVisual( propertyMap ); - textVisual.SetDepthIndex( 1.f ); + textVisual.SetDepthIndex( 1 ); DummyControl dummyControl = DummyControl::New(true); Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); @@ -2080,3 +2084,97 @@ int UtcDaliVisualPremultipliedAlpha(void) END_TEST; } + +int UtcDaliRegisterVisualOrder(void) +{ + ToolkitTestApplication application; + tet_infoline( "Register Visual Order" ); + + DummyControl dummyControl = DummyControl::New(true); + Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); + + VisualFactory factory = VisualFactory::Get(); + Property::Map propertyMap; + propertyMap.Insert(Visual::Property::TYPE, Visual::COLOR); + propertyMap.Insert(ColorVisual::Property::MIX_COLOR, Color::BLUE); + + tet_infoline( "Register visual, should have depth index of 0.0f" ); + Visual::Base testVisual = factory.CreateVisual( propertyMap ); + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL, testVisual ); + DALI_TEST_EQUALS( testVisual.GetDepthIndex(), 0, TEST_LOCATION ); + + tet_infoline( "Register more visuals, each added one should have a depth index greater than previous" ); + + Visual::Base testVisual2 = factory.CreateVisual( propertyMap ); + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL2, testVisual2 ); + DALI_TEST_CHECK( testVisual2.GetDepthIndex() > testVisual.GetDepthIndex() ); + + Visual::Base foregroundVisual = factory.CreateVisual( propertyMap ); + dummyImpl.RegisterVisual( DummyControl::Property::FOREGROUND_VISUAL, foregroundVisual ); + DALI_TEST_CHECK( foregroundVisual.GetDepthIndex() > testVisual2.GetDepthIndex() ); + + Visual::Base focusVisual = factory.CreateVisual( propertyMap ); + dummyImpl.RegisterVisual( DummyControl::Property::FOCUS_VISUAL, focusVisual ); + DALI_TEST_CHECK( focusVisual.GetDepthIndex() > foregroundVisual.GetDepthIndex() ); + + tet_infoline( "Set depth index on a new visual before registering, the depth index should not have been changed" ); + Visual::Base labelVisual = factory.CreateVisual( propertyMap ); + labelVisual.SetDepthIndex( -2000 ); + dummyImpl.RegisterVisual( DummyControl::Property::LABEL_VISUAL, labelVisual ); + DALI_TEST_EQUALS( labelVisual.GetDepthIndex(), -2000, TEST_LOCATION ); + + tet_infoline( "Replace visual, the depth index should be the same as what was previously set" ); + const int testVisual2DepthIndex = testVisual2.GetDepthIndex(); + Visual::Base testVisual2Replacement = factory.CreateVisual( propertyMap ); + DALI_TEST_CHECK( testVisual2Replacement.GetDepthIndex() != testVisual2DepthIndex ); + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL2, testVisual2Replacement ); + DALI_TEST_EQUALS( testVisual2Replacement.GetDepthIndex(), testVisual2DepthIndex, TEST_LOCATION ); + + tet_infoline( "Replace visual and set a depth index on the replacement, the depth index of the replacement should be honoured" ); + Visual::Base anotherTestVisual2Replacement = factory.CreateVisual( propertyMap ); + anotherTestVisual2Replacement.SetDepthIndex( 2000 ); + dummyImpl.RegisterVisual( DummyControl::Property::TEST_VISUAL2, anotherTestVisual2Replacement ); + DALI_TEST_EQUALS( anotherTestVisual2Replacement.GetDepthIndex(), 2000, TEST_LOCATION ); + + dummyControl.SetSize(200.f, 200.f); + Stage::GetCurrent().Add( dummyControl ); + + END_TEST; +} + +int UtcDaliRegisterVisualWithDepthIndex(void) +{ + ToolkitTestApplication application; + tet_infoline( "Register a Visual With Depth Index" ); + + DummyControl dummyControl = DummyControl::New(true); + Impl::DummyControl& dummyImpl = static_cast(dummyControl.GetImplementation()); + + VisualFactory factory = VisualFactory::Get(); + Property::Map propertyMap; + propertyMap.Insert(Visual::Property::TYPE, Visual::COLOR); + propertyMap.Insert(ColorVisual::Property::MIX_COLOR, Color::BLUE); + + tet_infoline( "Register a visual with a depth index, it should be enabled by default too" ); + Visual::Base testVisual = factory.CreateVisual( propertyMap ); + DevelControl::RegisterVisual( dummyImpl, DummyControl::Property::TEST_VISUAL, testVisual, 203 ); + DALI_TEST_EQUALS( testVisual.GetDepthIndex(), 203, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsVisualEnabled( dummyImpl, DummyControl::Property::TEST_VISUAL ), true, TEST_LOCATION ); + + tet_infoline( "Register another visual with a depth index and it disabled" ); + Visual::Base testVisual2 = factory.CreateVisual( propertyMap ); + DevelControl::RegisterVisual( dummyImpl, DummyControl::Property::TEST_VISUAL2, testVisual2, false, 450 ); + DALI_TEST_EQUALS( testVisual2.GetDepthIndex(), 450, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsVisualEnabled( dummyImpl, DummyControl::Property::TEST_VISUAL2 ), false, TEST_LOCATION ); + + tet_infoline( "Register another visual with a depth index and it enabled using the enabled API" ); + Visual::Base testVisual3 = factory.CreateVisual( propertyMap ); + DevelControl::RegisterVisual( dummyImpl, DummyControl::Property::TEST_VISUAL2, testVisual3, true, 300 ); + DALI_TEST_EQUALS( testVisual3.GetDepthIndex(), 300, TEST_LOCATION ); + DALI_TEST_EQUALS( DevelControl::IsVisualEnabled( dummyImpl, DummyControl::Property::TEST_VISUAL2 ), true, TEST_LOCATION ); + + dummyControl.SetSize(200.f, 200.f); + Stage::GetCurrent().Add( dummyControl ); + + END_TEST; +}