Add post processor
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / utc-Dali-Visual.cpp
index fbf3438..127a611 100644 (file)
@@ -516,9 +516,9 @@ int UtcDaliVisualGetPropertyMap1(void)
   DALI_TEST_CHECK( colorValue );
   DALI_TEST_CHECK( colorValue->Get<Vector4>() == Color::BLUE );
 
-  Property::Value* cornerRadiusValue = resultMap.Find( DevelVisual::Property::CORNER_RADIUS, Property::FLOAT );
+  Property::Value* cornerRadiusValue = resultMap.Find( DevelVisual::Property::CORNER_RADIUS, Property::VECTOR4 );
   DALI_TEST_CHECK( cornerRadiusValue );
-  DALI_TEST_CHECK( cornerRadiusValue->Get< float >() == 10.0f );
+  DALI_TEST_CHECK( cornerRadiusValue->Get< Vector4 >() == Vector4(10.0f, 10.0f, 10.0f, 10.0f) );
 
   Property::Value* cornerRadiusPolicyValue = resultMap.Find( DevelVisual::Property::CORNER_RADIUS_POLICY, Property::INTEGER );
   DALI_TEST_CHECK( cornerRadiusPolicyValue );
@@ -1745,6 +1745,15 @@ int UtcDaliVisualAnimateBorderVisual01(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimateBorderVisual Color" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("borderColor", Property::Type::VECTOR4),
+    UniformData("mixColor", Property::Type::VECTOR3),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE,  Visual::BORDER);
@@ -1826,6 +1835,14 @@ int UtcDaliVisualAnimateBorderVisual02(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimateBorderVisual Size" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("borderSize", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE,  Visual::BORDER);
@@ -1871,6 +1888,14 @@ int UtcDaliVisualAnimateColorVisual(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimateColorVisual mixColor" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("mixColor", Property::Type::VECTOR3),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE,  Visual::COLOR);
@@ -1924,6 +1949,14 @@ int UtcDaliVisualAnimatePrimitiveVisual(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimatePrimitiveVisual color" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("mixColor", Property::Type::VECTOR3),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map propertyMap;
@@ -1972,7 +2005,7 @@ int UtcDaliVisualAnimatePrimitiveVisual(void)
     glAbstraction.EnableEnableDisableCallTrace( true );
     TraceCallStack& glEnableStack = glAbstraction.GetEnableDisableTrace();
     std::ostringstream blendStr;
-    blendStr << GL_BLEND;
+    blendStr << std::hex << GL_BLEND;
 
     application.SendNotification();
     application.Render(0);
@@ -1983,7 +2016,7 @@ int UtcDaliVisualAnimatePrimitiveVisual(void)
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue<Vector4>("uColor", Vector4(0.5f, 0.5f, 0.5f, halfwayColor.a )), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue<Vector3>("mixColor", Vector3(halfwayColor) ), true, TEST_LOCATION );
 
-    DALI_TEST_CHECK( glEnableStack.FindMethodAndParams( "Enable", blendStr.str().c_str() ) );
+    DALI_TEST_CHECK( glEnableStack.FindMethodAndParams( "Enable", blendStr.str() ) );
 
     glEnableStack.Reset();
 
@@ -1994,7 +2027,7 @@ int UtcDaliVisualAnimatePrimitiveVisual(void)
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue<Vector4>("uColor", Vector4( 1.0f, 1.0f, 1.0f, TARGET_MIX_COLOR.a ) ), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue<Vector3>("mixColor", Vector3(TARGET_MIX_COLOR) ), true, TEST_LOCATION );
 
-    DALI_TEST_CHECK( glEnableStack.FindMethodAndParams( "Disable", blendStr.str().c_str() ) );
+    DALI_TEST_CHECK( glEnableStack.FindMethodAndParams( "Disable", blendStr.str() ) );
 
     actor.Unparent();
   }
@@ -2007,6 +2040,20 @@ int UtcDaliVisualAnimatedGradientVisual01(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimatedGradientVisual with default" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("start_point", Property::Type::VECTOR2),
+    UniformData("end_point", Property::Type::VECTOR2),
+    UniformData("start_color", Property::Type::VECTOR4),
+    UniformData("end_color", Property::Type::VECTOR4),
+    UniformData("rotate_center", Property::Type::VECTOR2),
+    UniformData("rotate_angle", Property::Type::FLOAT),
+    UniformData("gradient_offset", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map propertyMap;
@@ -2064,6 +2111,20 @@ int UtcDaliVisualAnimatedGradientVisual02(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimatedGradientVisual with full-option" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("start_point", Property::Type::VECTOR2),
+    UniformData("end_point", Property::Type::VECTOR2),
+    UniformData("start_color", Property::Type::VECTOR4),
+    UniformData("end_color", Property::Type::VECTOR4),
+    UniformData("rotate_center", Property::Type::VECTOR2),
+    UniformData("rotate_angle", Property::Type::FLOAT),
+    UniformData("gradient_offset", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   {
     float _delay[4] = {0.0f, -1.35f, 0.15f, -0.4f}; // fract(_delay) must NOT be 1/4, 2/4, 3/4. cause we don't know progress is 1.0f or 0.0f
     int _direction[2] = {0, 1};
@@ -2342,6 +2403,20 @@ int UtcDaliVisualAnimatedGradientVisual03(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliAnimatedGradientVisual with full-option use string key" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("start_point", Property::Type::VECTOR2),
+    UniformData("end_point", Property::Type::VECTOR2),
+    UniformData("start_color", Property::Type::VECTOR4),
+    UniformData("end_color", Property::Type::VECTOR4),
+    UniformData("rotate_center", Property::Type::VECTOR2),
+    UniformData("rotate_angle", Property::Type::FLOAT),
+    UniformData("gradient_offset", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   {
     float _delay[4] = {0.0f, -1.35f, 0.15f, -0.4f}; // fract(_delay) must NOT be 1/4, 2/4, 3/4. cause we don't know progress is 1.0f or 0.0f
     int _direction[2] = {0, 1};
@@ -3584,9 +3659,19 @@ int UtcDaliSvgVisualCustomShader(void)
 
 int UtcDaliVisualRoundedCorner(void)
 {
+#ifdef OLD_GRAPHICS_TEST
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliVisualRoundedCorner" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("cornerRadius", Property::Type::VECTOR4),
+    UniformData("cornerRadiusPolicy", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   // image visual
   {
     VisualFactory factory = VisualFactory::Get();
@@ -3616,7 +3701,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", Vector4(cornerRadius, cornerRadius, cornerRadius, cornerRadius) ), true, TEST_LOCATION );
     // Default corner radius policy is absolute.
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
@@ -3649,7 +3734,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", Vector4(cornerRadius, cornerRadius, cornerRadius, cornerRadius) ), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
 
@@ -3657,7 +3742,7 @@ int UtcDaliVisualRoundedCorner(void)
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map properties;
-    float cornerRadius = 0.5f;
+    Vector4 cornerRadius(0.5f, 0.5f, 0.5f, 0.3f);
 
     properties[Visual::Property::TYPE] = Visual::COLOR;
     properties[ColorVisual::Property::MIX_COLOR] = Color::BLUE;
@@ -3681,7 +3766,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::RELATIVE ), true, TEST_LOCATION );
   }
 
@@ -3689,7 +3774,7 @@ int UtcDaliVisualRoundedCorner(void)
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map properties;
-    float cornerRadius = 30.0f;
+    Vector4 cornerRadius(30.0f, 30.0f, 30.0f, 20.0f);
 
     properties[Visual::Property::TYPE] = Visual::COLOR;
     properties[ColorVisual::Property::MIX_COLOR] = Color::BLUE;
@@ -3713,7 +3798,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
     // Default corner radius policy is absolute.
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
@@ -3760,7 +3845,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", Vector4(cornerRadius, cornerRadius, cornerRadius, cornerRadius) ), true, TEST_LOCATION );
     // Default corner radius policy is absolute.
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
@@ -3769,11 +3854,11 @@ int UtcDaliVisualRoundedCorner(void)
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map properties;
-    float cornerRadius = 24.0f;
+    Vector4 cornerRadius(24.0f, 23.0f, 22.0f, 21.0f);
 
     properties[Visual::Property::TYPE] = Visual::ANIMATED_IMAGE;
     properties[ImageVisual::Property::URL] = TEST_GIF_FILE_NAME;
-    properties[DevelVisual::Property::CORNER_RADIUS] = cornerRadius + 10.0f; // Dummy Input
+    properties[DevelVisual::Property::CORNER_RADIUS] = cornerRadius.x + 10.0f; // Dummy Input
     properties[DevelVisual::Property::CORNER_RADIUS] = cornerRadius;
     properties["cornerRadiusPolicy"] = Toolkit::Visual::Transform::Policy::ABSOLUTE;
 
@@ -3796,7 +3881,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
 
@@ -3804,7 +3889,7 @@ int UtcDaliVisualRoundedCorner(void)
   {
     VisualFactory factory = VisualFactory::Get();
     Property::Map properties;
-    float cornerRadius = 27.0f;
+    Vector4 cornerRadius(27.0f, 72.0f, 11.0f, 500.5f);
 
     properties[Visual::Property::TYPE] = Visual::SVG;
     properties[ImageVisual::Property::URL] = TEST_SVG_FILE_NAME;
@@ -3829,7 +3914,7 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
     // Default corner radius policy is absolute.
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::ABSOLUTE ), true, TEST_LOCATION );
   }
@@ -3842,6 +3927,7 @@ int UtcDaliVisualRoundedCorner(void)
 
     properties[Visual::Property::TYPE] = DevelVisual::ANIMATED_VECTOR_IMAGE;
     properties[ImageVisual::Property::URL] = TEST_VECTOR_IMAGE_FILE_NAME;
+    properties["cornerRadius"] = Vector4(1.0f, 100.0f, 10.0f, 0.1f); // Dummy Input
     properties["cornerRadius"] = cornerRadius;
     properties[DevelVisual::Property::CORNER_RADIUS_POLICY] = Toolkit::Visual::Transform::Policy::RELATIVE;
 
@@ -3864,10 +3950,12 @@ int UtcDaliVisualRoundedCorner(void)
     application.SendNotification();
     application.Render();
 
-    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadius", cornerRadius ), true, TEST_LOCATION );
+    DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< Vector4 >( "cornerRadius", Vector4(cornerRadius, cornerRadius, cornerRadius, cornerRadius) ), true, TEST_LOCATION );
     DALI_TEST_EQUALS( application.GetGlAbstraction().CheckUniformValue< float >( "cornerRadiusPolicy", Toolkit::Visual::Transform::Policy::RELATIVE ), true, TEST_LOCATION );
   }
-
+#else
+  tet_result(TET_PASS);
+#endif
 
   END_TEST;
 }
@@ -3877,6 +3965,14 @@ int UtcDaliColorVisualBlurRadius(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliColorVisualBlurRadius" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("blurRadius", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map properties;
   float blurRadius = 20.0f;
@@ -4048,11 +4144,23 @@ int UtcDaliVisualGetVisualProperty01(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliVisualGetVisualProperty01: Test animatable property, Visual::Base, ColorVisual" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("mixColor", Property::Type::VECTOR3),
+    UniformData("offset", Property::Type::VECTOR2),
+    UniformData("size", Property::Type::VECTOR2),
+    UniformData("cornerRadius", Property::Type::VECTOR4),
+    UniformData("blurRadius", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE, Visual::COLOR);
   propertyMap.Insert(Visual::Property::MIX_COLOR, Color::BLUE);
-  propertyMap.Insert(DevelVisual::Property::CORNER_RADIUS, 10.0f);
+  propertyMap.Insert(DevelVisual::Property::CORNER_RADIUS, Vector4(10.0f, 0.0f, 2.0f, 4.0f));
   propertyMap.Insert(DevelVisual::Property::CORNER_RADIUS_POLICY, Toolkit::Visual::Transform::Policy::RELATIVE);
   propertyMap.Insert(DevelColorVisual::Property::BLUR_RADIUS, 20.0f);
   Visual::Base colorVisual = factory.CreateVisual(propertyMap);
@@ -4070,7 +4178,7 @@ int UtcDaliVisualGetVisualProperty01(void)
   Vector2 targetOffset(0.05f, 0.05f);
   Vector2 targetSize(1.1f, 1.1f);
   float targetOpacity = 0.5f;
-  float targetCornerRadius = 20.0f;
+  Vector4 targetCornerRadius(0.0f, 0.0f, 0.0f, 0.0f);
   float targetBlurRadius = 10.0f;
 
   Animation animation = Animation::New(1.0f);
@@ -4106,9 +4214,9 @@ int UtcDaliVisualGetVisualProperty01(void)
   DALI_TEST_CHECK(sizeValue);
   DALI_TEST_EQUALS(sizeValue->Get<Vector2>(), targetSize, TEST_LOCATION);
 
-  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::FLOAT);
+  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::VECTOR4);
   DALI_TEST_CHECK(cornerRadiusValue);
-  DALI_TEST_EQUALS(cornerRadiusValue->Get< float >(), targetCornerRadius, TEST_LOCATION);
+  DALI_TEST_EQUALS(cornerRadiusValue->Get< Vector4 >(), targetCornerRadius, TEST_LOCATION);
 
   Property::Value* blurRadiusValue = resultMap.Find(DevelColorVisual::Property::BLUR_RADIUS, Property::FLOAT);
   DALI_TEST_CHECK(blurRadiusValue);
@@ -4118,7 +4226,7 @@ int UtcDaliVisualGetVisualProperty01(void)
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector3>("mixColor", targetColor), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector2>("offset", targetOffset), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector2>("size", targetSize), true, TEST_LOCATION);
-  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector4>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("blurRadius", targetBlurRadius), true, TEST_LOCATION);
 
   // Test not-supported property
@@ -4144,6 +4252,18 @@ int UtcDaliVisualGetVisualProperty02(void)
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliVisualGetVisualProperty02: Test animatable property" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("mixColor", Property::Type::VECTOR3),
+    UniformData("offset", Property::Type::VECTOR2),
+    UniformData("size", Property::Type::VECTOR2),
+    UniformData("cornerRadius", Property::Type::VECTOR4),
+    UniformData("blurRadius", Property::Type::FLOAT),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE, Visual::COLOR);
@@ -4162,7 +4282,7 @@ int UtcDaliVisualGetVisualProperty02(void)
   Vector2 targetOffset(0.05f, 0.05f);
   Vector2 targetSize(1.1f, 1.1f);
   float targetOpacity = 0.5f;
-  float targetCornerRadius = 20.0f;
+  Vector4 targetCornerRadius(20.0f, 0.0f, 20.0f, 0.0f);
   float targetBlurRadius = 10.0f;
 
   // Should work when the properties are not set before
@@ -4199,29 +4319,40 @@ int UtcDaliVisualGetVisualProperty02(void)
   DALI_TEST_CHECK(sizeValue);
   DALI_TEST_EQUALS(sizeValue->Get<Vector2>(), targetSize, TEST_LOCATION);
 
-  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::FLOAT);
+  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::VECTOR4);
   DALI_TEST_CHECK(cornerRadiusValue);
-  DALI_TEST_EQUALS(cornerRadiusValue->Get< float >(), targetCornerRadius, TEST_LOCATION);
+  DALI_TEST_EQUALS(cornerRadiusValue->Get< Vector4 >(), targetCornerRadius, TEST_LOCATION);
 
   Property::Value* blurRadiusValue = resultMap.Find(DevelColorVisual::Property::BLUR_RADIUS, Property::FLOAT);
   DALI_TEST_CHECK(blurRadiusValue);
   DALI_TEST_EQUALS(blurRadiusValue->Get< float >(), targetBlurRadius, TEST_LOCATION);
 
+#ifdef OLD_GRAPHICS_TEST
   // Test uniform values
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector3>("mixColor", targetColor), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector2>("offset", targetOffset), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector2>("size", targetSize), true, TEST_LOCATION);
-  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector4>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
   DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("blurRadius", targetBlurRadius), true, TEST_LOCATION);
+#endif
 
   END_TEST;
 }
 
 int UtcDaliVisualGetVisualProperty03(void)
 {
+#ifdef OLD_GRAPHICS_TEST
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliVisualGetVisualProperty01: Test animatable property, ImageVisual" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("cornerRadius", Property::Type::VECTOR4),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   VisualFactory factory = VisualFactory::Get();
   Property::Map propertyMap;
   propertyMap.Insert(Visual::Property::TYPE, Visual::IMAGE);
@@ -4241,7 +4372,7 @@ int UtcDaliVisualGetVisualProperty03(void)
   application.Render();
 
   float targetOpacity = 0.5f;
-  float targetCornerRadius = 20.0f;
+  Vector4 targetCornerRadius(20.0f, 20.0f, 0.0f, 0.0f);
 
   Animation animation = Animation::New(1.0f);
   animation.AnimateTo(DevelControl::GetVisualProperty(dummyControl, DummyControl::Property::TEST_VISUAL, Visual::Property::OPACITY), targetOpacity);
@@ -4260,21 +4391,33 @@ int UtcDaliVisualGetVisualProperty03(void)
   DALI_TEST_CHECK(colorValue);
   DALI_TEST_EQUALS(colorValue->Get<Vector4>(), Vector4(1.0f, 1.0f, 1.0f, targetOpacity), TEST_LOCATION);
 
-  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::FLOAT);
+  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::VECTOR4);
   DALI_TEST_CHECK(cornerRadiusValue);
-  DALI_TEST_EQUALS(cornerRadiusValue->Get< float >(), targetCornerRadius, TEST_LOCATION);
+  DALI_TEST_EQUALS(cornerRadiusValue->Get< Vector4 >(), targetCornerRadius, TEST_LOCATION);
 
   // Test uniform value
-  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector4>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+#else
+  tet_result(TET_PASS);
+#endif
 
   END_TEST;
 }
 
 int UtcDaliVisualGetVisualProperty04(void)
 {
+#ifdef OLD_GRAPHICS_TEST
   ToolkitTestApplication application;
   tet_infoline( "UtcDaliVisualGetVisualProperty01: Test animatable property, GradientVisual" );
 
+  static std::vector<UniformData> customUniforms =
+  {
+    UniformData("cornerRadius", Property::Type::VECTOR4),
+  };
+
+  TestGraphicsController& graphics = application.GetGraphicsController();
+  graphics.AddCustomUniforms(customUniforms);
+
   Vector2 start(-1.f, -1.f);
   Vector2 end(1.f, 1.f);
   Property::Array stopColors;
@@ -4301,7 +4444,7 @@ int UtcDaliVisualGetVisualProperty04(void)
   application.Render();
 
   float targetOpacity = 0.5f;
-  float targetCornerRadius = 20.0f;
+  Vector4 targetCornerRadius(20.0f, 30.0f, 10.0f, 20.0f);
 
   Animation animation = Animation::New(1.0f);
   animation.AnimateTo(DevelControl::GetVisualProperty(dummyControl, DummyControl::Property::TEST_VISUAL, Visual::Property::OPACITY), targetOpacity);
@@ -4320,12 +4463,15 @@ int UtcDaliVisualGetVisualProperty04(void)
   DALI_TEST_CHECK(colorValue);
   DALI_TEST_EQUALS(colorValue->Get<Vector4>(), Vector4(1.0f, 1.0f, 1.0f, targetOpacity), TEST_LOCATION);
 
-  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::FLOAT);
+  Property::Value* cornerRadiusValue = resultMap.Find(DevelVisual::Property::CORNER_RADIUS, Property::VECTOR4);
   DALI_TEST_CHECK(cornerRadiusValue);
-  DALI_TEST_EQUALS(cornerRadiusValue->Get< float >(), targetCornerRadius, TEST_LOCATION);
+  DALI_TEST_EQUALS(cornerRadiusValue->Get< Vector4 >(), targetCornerRadius, TEST_LOCATION);
 
   // Test uniform value
-  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<float>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+  DALI_TEST_EQUALS(application.GetGlAbstraction().CheckUniformValue<Vector4>("cornerRadius", targetCornerRadius), true, TEST_LOCATION);
+#else
+  tet_result(TET_PASS);
+#endif
 
   END_TEST;
 }