Remove dali-any from Property::Value - reimplement multivalue using more efficient...
[platform/core/uifw/dali-core.git] / automated-tests / src / dali / utc-Dali-ShaderEffect.cpp
index ddbf86d..dd3c774 100644 (file)
@@ -946,7 +946,7 @@ int UtcDaliShaderBinaries(void)
   END_TEST;
 }
 
-int UtcDaliShaderEffectFromProperties01(void)
+int UtcDaliShaderEffectFromPropertiesP(void)
 {
   TestApplication application;
   tet_infoline("UtcDaliShaderEffectFromProperties01()");
@@ -969,21 +969,25 @@ int UtcDaliShaderEffectFromProperties01(void)
   ShaderEffect effect = ShaderEffect::DownCast( typeInfo.CreateInstance() );
   DALI_TEST_CHECK( effect );
 
-  Property::Value programMap = Property::Value(Property::MAP);
+  Property::Value programValue = Property::Value(Property::MAP);
+  Property::Map* programMap = programValue.GetMap();
+  DALI_TEST_CHECK( programMap );
 
-  programMap.SetValue("vertex", vertexShader);
-  programMap.SetValue("fragment", fragmentShader);
+  programMap->Insert("vertex", vertexShader);
+  programMap->Insert("fragment", fragmentShader);
 
-  programMap.SetValue("vertex-prefix", vertexShaderPrefix);
-  programMap.SetValue("fragment-prefix", fragmentShaderPrefix);
+  programMap->Insert("vertex-prefix", vertexShaderPrefix);
+  programMap->Insert("fragment-prefix", fragmentShaderPrefix);
 
-  programMap.SetValue("geometry-type", "GEOMETRY_TYPE_IMAGE");
+  programMap->Insert("geometry-type", "GEOMETRY_TYPE_IMAGE");
 
-  effect.SetProperty(effect.GetPropertyIndex("program"), programMap);
+  effect.SetProperty(effect.GetPropertyIndex("program"), programValue);
 
-  Property::Value imageMap = Property::Value(Property::MAP);
-  imageMap.SetValue("filename", Property::Value(TestImageFilename));
-  effect.SetProperty(effect.GetPropertyIndex("image"), imageMap);
+  Property::Value imageValue = Property::Value(Property::MAP);
+  Property::Map* imageMap = imageValue.GetMap();
+  DALI_TEST_CHECK( imageMap );
+  imageMap->Insert("filename", Property::Value(TestImageFilename));
+  effect.SetProperty(effect.GetPropertyIndex("image"), imageValue);
 
   // do a update & render to get the image request
   application.SendNotification();
@@ -1021,7 +1025,7 @@ int UtcDaliShaderEffectFromProperties01(void)
   END_TEST;
 }
 
-int UtcDaliShaderEffectFromProperties02(void)
+int UtcDaliShaderEffectFromPropertiesN(void)
 {
   try
   {
@@ -1031,8 +1035,6 @@ int UtcDaliShaderEffectFromProperties02(void)
     // Call render to compile default shaders.
     application.SendNotification();
     application.Render();
-    application.Render();
-    application.Render();
 
     // create from type registry (currently only way to get ShaderEffect with no shader setup in constructor
     TypeInfo typeInfo = TypeRegistry::Get().GetTypeInfo( "ShaderEffect" );
@@ -1040,16 +1042,15 @@ int UtcDaliShaderEffectFromProperties02(void)
     ShaderEffect effect = ShaderEffect::DownCast( typeInfo.CreateInstance() );
     DALI_TEST_CHECK( effect );
 
-    Property::Value programMap = Property::Value(Property::MAP);
-
-    programMap.SetValue("vertex",   std::string(VertexSource));
-    programMap.SetValue("fragment", std::string(FragmentSource));
+    Property::Value programValue = Property::Value(Property::MAP);
+    Property::Map* programMap = programValue.GetMap();
+    DALI_TEST_CHECK( programMap );
 
-    // programMap.SetValue("geometry-type", "GEOMETRY_TYPE_IMAGE");
-    // dont set by value
-    programMap.SetValue("geometry-type", GeometryType( GEOMETRY_TYPE_IMAGE ));
+    programMap->Insert("vertex",   std::string(VertexSource));
+    programMap->Insert("fragment", std::string(FragmentSource));
 
-    effect.SetProperty(effect.GetPropertyIndex("program"), programMap);
+    // use wrong index on purpose
+    effect.SetProperty(effect.GetPropertyIndex("program") + 1, programValue );
 
     tet_result( TET_FAIL );
   }
@@ -1060,7 +1061,7 @@ int UtcDaliShaderEffectFromProperties02(void)
   END_TEST;
 }
 
-int UtcDaliShaderEffectFromProperties03(void)
+int UtcDaliShaderEffectFromProperties2N(void)
 {
   try
   {
@@ -1070,8 +1071,6 @@ int UtcDaliShaderEffectFromProperties03(void)
     // Call render to compile default shaders.
     application.SendNotification();
     application.Render();
-    application.Render();
-    application.Render();
 
     // create from type registry (currently only way to get ShaderEffect with no shader setup in constructor
     TypeInfo typeInfo = TypeRegistry::Get().GetTypeInfo( "ShaderEffect" );