X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-Visual.cpp;h=4885bc209fb34c8c990f6fd57aa4b62e8e681faa;hp=14e8a1919a0920380876f87fccbf07020315088d;hb=11d6d49bd9837159b95a27199c48dd7a39b8ccee;hpb=a68dbe03813fd3db34c81f4e6960572e8882930b diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp index 14e8a19..4885bc2 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-Visual.cpp @@ -22,8 +22,8 @@ #include #include #include +#include #include -#include #include #include #include @@ -38,6 +38,7 @@ namespace const char* TEST_IMAGE_FILE_NAME = TEST_RESOURCE_DIR "/gallery-small-1.jpg"; const char* TEST_NPATCH_FILE_NAME = "gallery_image_01.9.jpg"; const char* TEST_SVG_FILE_NAME = TEST_RESOURCE_DIR "/svg1.svg"; +const char* TEST_GIF_FILE_NAME = TEST_RESOURCE_DIR "/anim.gif"; const char* TEST_OBJ_FILE_NAME = TEST_RESOURCE_DIR "/Cube.obj"; const char* TEST_MTL_FILE_NAME = TEST_RESOURCE_DIR "/ToyRobot-Metal.mtl"; const char* TEST_RESOURCE_LOCATION = TEST_RESOURCE_DIR "/"; @@ -48,11 +49,11 @@ Property::Map DefaultTransform() { Property::Map transformMap; transformMap - .Add( Toolkit::VisualProperty::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) ) - .Add( Toolkit::VisualProperty::Transform::Property::SIZE, Vector2(1.0f, 1.0f) ) - .Add( Toolkit::VisualProperty::Transform::Property::ORIGIN, Toolkit::Align::CENTER ) - .Add( Toolkit::VisualProperty::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER ) - .Add( Toolkit::VisualProperty::Transform::Property::OFFSET_SIZE_MODE, Vector4::ZERO ); + .Add( Toolkit::DevelVisual::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) ) + .Add( Toolkit::DevelVisual::Transform::Property::SIZE, Vector2(1.0f, 1.0f) ) + .Add( Toolkit::DevelVisual::Transform::Property::ORIGIN, Toolkit::Align::CENTER ) + .Add( Toolkit::DevelVisual::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER ) + .Add( Toolkit::DevelVisual::Transform::Property::OFFSET_SIZE_MODE, Vector4::ZERO ); return transformMap; } @@ -292,6 +293,14 @@ int UtcDaliVisualSize(void) const float height = textVisual.GetHeightForWidth( 40.f ); DALI_TEST_EQUALS( height, 40.f, Math::MACHINE_EPSILON_1000, TEST_LOCATION ); + //AnimatedImageVisual + Visual::Base animatedImageVisual = factory.CreateVisual( TEST_GIF_FILE_NAME, ImageDimensions() ); + animatedImageVisual.SetTransformAndSize(DefaultTransform(), controlSize ); + animatedImageVisual.GetNaturalSize(naturalSize); + // TEST_GIF_FILE: anim.gif + // resolution: 50*50, frame count: 4, frame delay: 0.2 second for each frame + DALI_TEST_EQUALS( naturalSize, Vector2(50.f, 50.f), TEST_LOCATION ); + END_TEST; } @@ -363,10 +372,6 @@ int UtcDaliVisualGetPropertyMap1(void) DALI_TEST_CHECK( colorValue ); DALI_TEST_CHECK( colorValue->Get() == Color::CYAN ); - // Test the properties. TODO: to be completed. - colorVisual.SetProperty( ColorVisual::Property::MIX_COLOR, Color::RED ); - Property::Value value = colorVisual.GetProperty( ColorVisual::Property::MIX_COLOR ); - END_TEST; } @@ -417,9 +422,6 @@ int UtcDaliVisualGetPropertyMap2(void) DALI_TEST_CHECK( colorValue ); DALI_TEST_CHECK( colorValue->Get() == 10.f ); - // Test the properties. TODO: to be completed. - borderVisual.SetProperty( BorderVisual::Property::COLOR, Color::RED ); - Property::Value value = borderVisual.GetProperty( BorderVisual::Property::COLOR ); END_TEST; } @@ -488,10 +490,6 @@ int UtcDaliVisualGetPropertyMap3(void) DALI_TEST_EQUALS( colorArray->GetElementAt(0).Get(), Color::RED , Math::MACHINE_EPSILON_100, TEST_LOCATION ); DALI_TEST_EQUALS( colorArray->GetElementAt(1).Get(), Color::GREEN , Math::MACHINE_EPSILON_100, TEST_LOCATION ); - // Test the properties. TODO: to be completed. - gradientVisual.SetProperty( GradientVisual::Property::STOP_COLOR, Color::RED ); - Property::Value gradientValue = gradientVisual.GetProperty( GradientVisual::Property::STOP_COLOR ); - END_TEST; } @@ -747,10 +745,6 @@ int UtcDaliVisualGetPropertyMap7(void) DALI_TEST_CHECK( value ); DALI_TEST_CHECK( value->Get() == TEST_SVG_FILE_NAME ); - // Test the properties. TODO: to be completed. - svgVisual.SetProperty( ImageVisual::Property::URL, TEST_SVG_FILE_NAME ); - Property::Value svgValue = svgVisual.GetProperty( ImageVisual::Property::URL ); - END_TEST; } @@ -799,11 +793,7 @@ int UtcDaliVisualGetPropertyMap8(void) DALI_TEST_CHECK( value ); DALI_TEST_EQUALS( value->Get(), Vector3( 5.0f, 10.0f, 15.0f), Math::MACHINE_EPSILON_100, TEST_LOCATION ); - // Test the properties. TODO: to be completed. - meshVisual.SetProperty( MeshVisual::Property::OBJECT_URL, TEST_OBJ_FILE_NAME ); - Property::Value meshValue = meshVisual.GetProperty( MeshVisual::Property::OBJECT_URL ); - - END_TEST; + END_TEST; } //Primitive shape visual @@ -890,10 +880,6 @@ int UtcDaliVisualGetPropertyMap9(void) DALI_TEST_CHECK( value ); DALI_TEST_EQUALS( value->Get(), Vector3( 5.0f, 10.0f, 15.0f), Math::MACHINE_EPSILON_100, TEST_LOCATION ); - // Test the properties. TODO: to be completed. - primitiveVisual.SetProperty( PrimitiveVisual::Property::SHAPE, PrimitiveVisual::Shape::CUBE ); - Property::Value primitiveValue = primitiveVisual.GetProperty( PrimitiveVisual::Property::SHAPE ); - END_TEST; } @@ -933,10 +919,6 @@ int UtcDaliVisualGetPropertyMapBatchImageVisual(void) DALI_TEST_CHECK( value ); DALI_TEST_CHECK( value->Get() == 30 ); - // Test the properties. TODO: to be completed. - batchImageVisual.SetProperty( ImageVisual::Property::URL, TEST_IMAGE_FILE_NAME ); - Property::Value primitiveValue = batchImageVisual.GetProperty( ImageVisual::Property::URL ); - END_TEST; } @@ -952,6 +934,7 @@ int UtcDaliVisualGetPropertyMap10(void) Property::Map propertyMap; propertyMap.Insert( Visual::Property::TYPE, DevelVisual::TEXT ); propertyMap.Insert( "renderingBackend", static_cast( Toolkit::Text::DEFAULT_RENDERING_BACKEND ) ); + propertyMap.Insert( "enableMarkup", false ); propertyMap.Insert( "text", "Hello world" ); propertyMap.Insert( "fontFamily", "TizenSans" ); @@ -964,7 +947,6 @@ int UtcDaliVisualGetPropertyMap10(void) propertyMap.Insert( "horizontalAlignment", "CENTER" ); propertyMap.Insert( "verticalAlignment", "CENTER" ); propertyMap.Insert( "textColor", Color::RED ); - propertyMap.Insert( "enableMarkup", false ); Visual::Base textVisual = factory.CreateVisual( propertyMap ); Property::Map resultMap; @@ -1017,6 +999,45 @@ int UtcDaliVisualGetPropertyMap10(void) END_TEST; } +int UtcDaliVisualGetPropertyMap11(void) +{ + ToolkitTestApplication application; + tet_infoline( "UtcDaliVisualGetPropertyMap7: AnimatedImageVisual" ); + + // request SvgVisual with a property map + VisualFactory factory = VisualFactory::Get(); + Property::Map propertyMap; + Visual::Base svgVisual = factory.CreateVisual( Property::Map() + .Add( Visual::Property::TYPE, Visual::IMAGE ) + .Add( ImageVisual::Property::URL, TEST_GIF_FILE_NAME ) ); + + Property::Map resultMap; + svgVisual.CreatePropertyMap( resultMap ); + // check the property values from the returned map from a visual + Property::Value* value = resultMap.Find( Visual::Property::TYPE, Property::INTEGER ); + DALI_TEST_CHECK( value ); + DALI_TEST_CHECK( value->Get() == Visual::IMAGE ); + + value = resultMap.Find( ImageVisual::Property::URL, Property::STRING ); + DALI_TEST_CHECK( value ); + DALI_TEST_CHECK( value->Get() == TEST_GIF_FILE_NAME ); + + // request SvgVisual with an URL + Visual::Base svgVisual2 = factory.CreateVisual( TEST_GIF_FILE_NAME, ImageDimensions() ); + resultMap.Clear(); + svgVisual2.CreatePropertyMap( resultMap ); + // check the property values from the returned map from a visual + value = resultMap.Find( Visual::Property::TYPE, Property::INTEGER ); + DALI_TEST_CHECK( value ); + DALI_TEST_CHECK( value->Get() == Visual::IMAGE ); + + value = resultMap.Find( ImageVisual::Property::URL, Property::STRING ); + DALI_TEST_CHECK( value ); + DALI_TEST_CHECK( value->Get() == TEST_GIF_FILE_NAME ); + + END_TEST; +} + int UtcDaliVisualGetPropertyMapBatchImageVisualNoAtlas(void) { ToolkitTestApplication application; @@ -1069,7 +1090,7 @@ int UtcDaliVisualAnimateBorderVisual01(void) DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION); Renderer renderer = actor.GetRendererAt(0); - Property::Index index = renderer.GetPropertyIndex( BorderVisual::Property::COLOR ); + Property::Index index = DevelHandle::GetPropertyIndex( renderer, BorderVisual::Property::COLOR ); Animation animation = Animation::New(4.0f); animation.AnimateTo( Property(renderer, index), Color::WHITE ); @@ -1116,7 +1137,7 @@ int UtcDaliVisualAnimateBorderVisual02(void) DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION); Renderer renderer = actor.GetRendererAt(0); - Property::Index index = renderer.GetPropertyIndex( BorderVisual::Property::SIZE ); + Property::Index index = DevelHandle::GetPropertyIndex( renderer, BorderVisual::Property::SIZE ); Animation animation = Animation::New(4.0f); animation.AnimateTo( Property(renderer, index), 9.0f ); @@ -1160,7 +1181,7 @@ int UtcDaliVisualAnimateColorVisual(void) DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION); Renderer renderer = actor.GetRendererAt(0); - Property::Index index = renderer.GetPropertyIndex( ColorVisual::Property::MIX_COLOR ); + Property::Index index = DevelHandle::GetPropertyIndex( renderer, ColorVisual::Property::MIX_COLOR ); Animation animation = Animation::New(4.0f); animation.AnimateTo( Property(renderer, index), Color::WHITE ); @@ -1210,7 +1231,7 @@ int UtcDaliVisualAnimatePrimitiveVisual(void) DALI_TEST_EQUALS( actor.GetRendererCount(), 1u, TEST_LOCATION); Renderer renderer = actor.GetRendererAt(0); - Property::Index index = renderer.GetPropertyIndex( PrimitiveVisual::Property::MIX_COLOR ); + Property::Index index = DevelHandle::GetPropertyIndex( renderer, PrimitiveVisual::Property::MIX_COLOR ); // The property isn't registered on the renderer, it's instead registered on the shader. DALI_TEST_EQUALS( index, Property::INVALID_INDEX, TEST_LOCATION ); @@ -1256,9 +1277,6 @@ int UtcDaliVisualWireframeVisual(void) DALI_TEST_CHECK( value ); DALI_TEST_CHECK( value->Get() == Visual::WIREFRAME ); - // Test the properties. TODO: to be completed. - Property::Value primitiveValue = visual.GetProperty( Visual::Property::TYPE ); - END_TEST; } @@ -1273,33 +1291,35 @@ int UtcDaliVisualGetTransform(void) propertyMap.Insert(ColorVisual::Property::MIX_COLOR, Color::BLUE); Visual::Base colorVisual = factory.CreateVisual( propertyMap ); - Dali::Property::Map map; - Dali::Property::Value transformProperty = colorVisual.GetProperty( Dali::Toolkit::Visual::DevelProperty::TRANSFORM ); - transformProperty.Get(map); + Dali::Property::Map visualMap; + colorVisual.CreatePropertyMap( visualMap ); + Property::Value* value = visualMap.Find( Dali::Toolkit::DevelVisual::Property::TRANSFORM ); + Dali::Property::Map* map = value->GetMap(); + DALI_TEST_CHECK( map ); //Test default values { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::OFFSET ); DALI_TEST_CHECK( typeValue ); DALI_TEST_CHECK( typeValue->Get() == Vector2(0.0f,0.0f) ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::SIZE ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::SIZE ); DALI_TEST_CHECK( typeValue ); DALI_TEST_CHECK( typeValue->Get() == Vector2(1.0f,1.0f) ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET_SIZE_MODE ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::OFFSET_SIZE_MODE ); DALI_TEST_CHECK( typeValue ); DALI_TEST_CHECK( typeValue->Get() == Vector4(0.0f,0.0f,0.0f,0.0f) ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::ORIGIN ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::ORIGIN ); DALI_TEST_CHECK( typeValue ); DALI_TEST_CHECK( (Toolkit::Align::Type)typeValue->Get() == Toolkit::Align::CENTER ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::ANCHOR_POINT ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::ANCHOR_POINT ); DALI_TEST_CHECK( typeValue ); DALI_TEST_CHECK( (Toolkit::Align::Type)typeValue->Get() == Toolkit::Align::CENTER ); } @@ -1310,40 +1330,42 @@ int UtcDaliVisualGetTransform(void) static void TestTransform( ToolkitTestApplication& application, Visual::Base visual ) { Property::Map transform; - transform.Insert( Visual::DevelProperty::Transform::Property::OFFSET, Vector2(10.0f, 10.0f) ); - transform.Insert( Visual::DevelProperty::Transform::Property::SIZE, Vector2(0.2f, 0.2f) ); - transform.Insert( Visual::DevelProperty::Transform::Property::OFFSET_SIZE_MODE, Vector4(1.0f, 1.0f, 0.0f,0.0f) ); - transform.Insert( Visual::DevelProperty::Transform::Property::ORIGIN, "TOP_BEGIN" ); - transform.Insert( Visual::DevelProperty::Transform::Property::ANCHOR_POINT, Toolkit::Align::BOTTOM_END ); - - visual.SetProperty( Dali::Toolkit::Visual::DevelProperty::TRANSFORM, transform ); - - Dali::Property::Map map; - Dali::Property::Value transformProperty = visual.GetProperty( Dali::Toolkit::Visual::DevelProperty::TRANSFORM ); - transformProperty.Get(map); + transform.Insert( DevelVisual::Transform::Property::OFFSET, Vector2(10.0f, 10.0f) ); + transform.Insert( DevelVisual::Transform::Property::SIZE, Vector2(0.2f, 0.2f) ); + transform.Insert( DevelVisual::Transform::Property::OFFSET_SIZE_MODE, Vector4(1.0f, 1.0f, 0.0f,0.0f) ); + transform.Insert( DevelVisual::Transform::Property::ORIGIN, "TOP_BEGIN" ); + transform.Insert( DevelVisual::Transform::Property::ANCHOR_POINT, Toolkit::Align::BOTTOM_END ); + + visual.SetTransformAndSize( transform, Vector2(100, 100) ); + + Dali::Property::Map visualMap; + visual.CreatePropertyMap( visualMap ); + Property::Value* value = visualMap.Find( Dali::Toolkit::DevelVisual::Property::TRANSFORM ); + Dali::Property::Map* map = value->GetMap(); + DALI_TEST_CHECK( map ); { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::OFFSET ); DALI_TEST_CHECK( typeValue ); DALI_TEST_EQUALS( typeValue->Get(),Vector2(10.0f,10.0f), TEST_LOCATION ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::SIZE ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::SIZE ); DALI_TEST_CHECK( typeValue ); DALI_TEST_EQUALS( typeValue->Get(), Vector2(0.2f,0.2f), TEST_LOCATION ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET_SIZE_MODE ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::OFFSET_SIZE_MODE ); DALI_TEST_CHECK( typeValue ); DALI_TEST_EQUALS( typeValue->Get(), Vector4(1.0f,1.0f,0.0f,0.0f), TEST_LOCATION ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::ORIGIN ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::ORIGIN ); DALI_TEST_CHECK( typeValue ); DALI_TEST_EQUALS( (Toolkit::Align::Type)typeValue->Get(), Toolkit::Align::TOP_BEGIN, TEST_LOCATION ); } { - Property::Value* typeValue = map.Find( Toolkit::Visual::DevelProperty::Transform::Property::ANCHOR_POINT ); + Property::Value* typeValue = map->Find( Toolkit::DevelVisual::Transform::Property::ANCHOR_POINT ); DALI_TEST_CHECK( typeValue ); DALI_TEST_EQUALS( (Toolkit::Align::Type)typeValue->Get(), Toolkit::Align::BOTTOM_END, TEST_LOCATION ); } @@ -1378,10 +1400,10 @@ static void TestTransform( ToolkitTestApplication& application, Visual::Base vis //Set a new transform transform.Clear(); - transform.Insert( Visual::DevelProperty::Transform::Property::OFFSET, Vector2(20.0f, 20.0f) ); - transform.Insert( Visual::DevelProperty::Transform::Property::SIZE, Vector2(100.0f, 100.0f) ); - transform.Insert( Visual::DevelProperty::Transform::Property::OFFSET_SIZE_MODE, Vector4(0.0f, 0.0f, 1.0f,1.0f) ); - visual.SetProperty( Dali::Toolkit::Visual::DevelProperty::TRANSFORM, transform ); + transform.Insert( DevelVisual::Transform::Property::OFFSET, Vector2(20.0f, 20.0f) ); + transform.Insert( DevelVisual::Transform::Property::SIZE, Vector2(100.0f, 100.0f) ); + transform.Insert( DevelVisual::Transform::Property::OFFSET_SIZE_MODE, Vector4(0.0f, 0.0f, 1.0f,1.0f) ); + visual.SetTransformAndSize( transform, Vector2(100, 100) ); application.SendNotification(); application.Render(0); @@ -1558,6 +1580,15 @@ int UtcDaliNPatchVisualCustomShader(void) Property::Map shader; const std::string fragmentShader = "Foobar"; shader[Dali::Toolkit::Visual::Shader::Property::FRAGMENT_SHADER] = fragmentShader; + + Property::Map transformMap; + transformMap["size"] = Vector2( 0.5f, 0.5f ) ; + transformMap["offset"] = Vector2( 20.0f, 0.0f ) ; + transformMap["offsetSizeMode"] = Vector4( 1.0f, 1.0f, 0.0f, 0.0f ); + transformMap["anchorPoint"] = Align::CENTER; + transformMap["origin"] = Align::CENTER; + properties[DevelVisual::Property::TRANSFORM] = transformMap; + properties[Dali::Toolkit::Visual::Property::TYPE] = Dali::Toolkit::Visual::IMAGE; properties[Dali::Toolkit::Visual::Property::SHADER]=shader; properties[Dali::Toolkit::ImageVisual::Property::URL] = TEST_NPATCH_FILE_NAME; @@ -1571,6 +1602,7 @@ int UtcDaliNPatchVisualCustomShader(void) dummy.SetSize(2000, 2000); dummy.SetParentOrigin(ParentOrigin::CENTER); Stage::GetCurrent().Add(dummy); + application.SendNotification(); Renderer renderer = dummy.GetRendererAt( 0 ); Shader shader2 = renderer.GetShader(); @@ -1578,6 +1610,9 @@ int UtcDaliNPatchVisualCustomShader(void) Property::Map* map = value.GetMap(); DALI_TEST_CHECK( map ); + Property::Index index = renderer.GetPropertyIndex("size"); + 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 @@ -1681,6 +1716,7 @@ int UtcDaliVisualTextVisualRender(void) Property::Map propertyMap; propertyMap.Insert( Visual::Property::TYPE, DevelVisual::TEXT ); propertyMap.Insert( "renderingBackend", static_cast( Toolkit::Text::DEFAULT_RENDERING_BACKEND ) ); + propertyMap.Insert( "enableMarkup", false ); propertyMap.Insert( "text", "Hello world" ); propertyMap.Insert( "fontFamily", "TizenSans" ); @@ -1693,7 +1729,6 @@ int UtcDaliVisualTextVisualRender(void) propertyMap.Insert( "horizontalAlignment", "CENTER" ); propertyMap.Insert( "verticalAlignment", "CENTER" ); propertyMap.Insert( "textColor", Color::RED ); - propertyMap.Insert( "enableMarkup", false ); Visual::Base textVisual = factory.CreateVisual( propertyMap ); textVisual.SetDepthIndex( 1.f ); @@ -1703,10 +1738,98 @@ int UtcDaliVisualTextVisualRender(void) DALI_TEST_EQUALS( dummyControl.GetRendererCount(), 0, TEST_LOCATION ); dummyControl.SetSize(200.f, 200.f); + dummyControl.SetParentOrigin( ParentOrigin::CENTER ); Stage::GetCurrent().Add( dummyControl ); application.SendNotification(); application.Render(); + + // Create a texture bigger than the maximum allowed by the image atlas. Used to increase coverage. + propertyMap.Clear(); + propertyMap.Insert( Visual::Property::TYPE, DevelVisual::TEXT ); + propertyMap.Insert( TextVisual::Property::ENABLE_MARKUP, true ); + propertyMap.Insert( TextVisual::Property::TEXT, "Hello world" ); + propertyMap.Insert( TextVisual::Property::MULTI_LINE, true ); + + Property::Map transformMap; + transformMap.Insert( "size", Vector2( 0.5f, 0.5f ) ); + propertyMap.Insert( DevelVisual::Property::TRANSFORM, transformMap ); + + textVisual = factory.CreateVisual( propertyMap ); + textVisual.SetDepthIndex( 1.f ); + + dummyImpl.RegisterVisual( Control::CONTROL_PROPERTY_END_INDEX + 1, textVisual ); + dummyControl.SetSize( 720.f, 640.f ); + + application.SendNotification(); // force process events to ensure text visual + // adds renderer to the dummy control in OnRelayout + application.Render(); + + Renderer renderer = dummyControl.GetRendererAt(0u); + Property::Index index = renderer.GetPropertyIndex("size"); + + tet_infoline( "Test that the TextVisual overrides anything set by developer" ); + DALI_TEST_EQUALS( renderer.GetProperty(index), Vector2( 1.0, 1.0 ), 0.001f, TEST_LOCATION ); + + END_TEST; +} + +int UtcDaliVisualPremultipliedAlpha(void) +{ + ToolkitTestApplication application; + tet_infoline( "UtcDaliVisualPremultipliedAlpha" ); + + VisualFactory factory = VisualFactory::Get(); + + // image visual, test default value ( false ) + { + Visual::Base imageVisual = factory.CreateVisual( + Property::Map() + .Add( Visual::Property::TYPE, Visual::IMAGE ) + .Add( ImageVisual::Property::URL, TEST_IMAGE_FILE_NAME ) ); + + Dali::Property::Map visualMap; + imageVisual.CreatePropertyMap( visualMap ); + Property::Value* value = visualMap.Find( DevelVisual::Property::PREMULTIPLIED_ALPHA ); + + // test values + DALI_TEST_CHECK( value ); + DALI_TEST_EQUALS( value->Get(), false, TEST_LOCATION ); + } + + // image visual, override premultiplied + { + Visual::Base imageVisual = factory.CreateVisual( + Property::Map() + .Add( Visual::Property::TYPE, Visual::IMAGE ) + .Add( ImageVisual::Property::URL, TEST_IMAGE_FILE_NAME ) + .Add( DevelVisual::Property::PREMULTIPLIED_ALPHA, true ) ); + + Dali::Property::Map visualMap; + imageVisual.CreatePropertyMap( visualMap ); + Property::Value* value = visualMap.Find( DevelVisual::Property::PREMULTIPLIED_ALPHA ); + + // test values + DALI_TEST_CHECK( value ); + DALI_TEST_EQUALS( value->Get(), true, TEST_LOCATION); + } + + // svg visual ( premultiplied alpha by default is true ) + { + Visual::Base imageVisual = factory.CreateVisual( + Property::Map() + .Add( Visual::Property::TYPE, Visual::IMAGE ) + .Add( ImageVisual::Property::URL, TEST_SVG_FILE_NAME ) ); + + Dali::Property::Map visualMap; + imageVisual.CreatePropertyMap( visualMap ); + Property::Value* value = visualMap.Find( DevelVisual::Property::PREMULTIPLIED_ALPHA ); + + // test values + DALI_TEST_CHECK( value ); + DALI_TEST_EQUALS( value->Get(), true, TEST_LOCATION ); + } + END_TEST; }