[UTC][dali-core][NON-ACR] Adding missing dali-core testcases
authorpuru <puru.dharma@samsung.com>
Sat, 18 Jun 2016 12:00:53 +0000 (17:30 +0530)
committerpuru <puru.dharma@samsung.com>
Mon, 20 Jun 2016 06:12:25 +0000 (11:42 +0530)
This patch includes missing APIs.

Change-Id: I3af7e967bc66b1d3953fbe056424f939d03cb532
Signed-off-by: puru <puru.dharma@samsung.com>
18 files changed:
src/utc/dali-core/CMakeLists.txt
src/utc/dali-core/actor/utc-dali-actor-impl.h
src/utc/dali-core/actor/utc-dali-actor.cpp
src/utc/dali-core/angle-axis/utc-dali-angle-axis.cpp
src/utc/dali-core/exception/utc-dali-exception-common.cpp [new file with mode: 0644]
src/utc/dali-core/exception/utc-dali-exception-common.h [new file with mode: 0644]
src/utc/dali-core/exception/utc-dali-exception.cpp [new file with mode: 0644]
src/utc/dali-core/math-utils/utc-dali-math-utils-impl.h
src/utc/dali-core/math-utils/utc-dali-math-utils.cpp
src/utc/dali-core/radian/utc-dali-radian.cpp
src/utc/dali-core/tct-dali-core-core_common_iot.h
src/utc/dali-core/tct-dali-core-core_mobile.h
src/utc/dali-core/tct-dali-core-core_tv.h
src/utc/dali-core/tct-dali-core-core_wearable.h
src/utc/dali-core/type-registry/utc-dali-type-registry.cpp
src/utc/dali-core/vector2/utc-dali-vector2.cpp
src/utc/dali-core/vector3/utc-dali-vector3.cpp
src/utc/dali-core/vector4/utc-dali-vector4.cpp

index dadda9f..985ab85 100755 (executable)
@@ -122,6 +122,8 @@ vector/utc-dali-vector-common.cpp
 constraint-function/utc-dali-constraint-function.cpp
 vector-base/utc-dali-vector-base.cpp
 vector-base/utc-dali-vector-base-common.cpp
+exception/utc-dali-exception.cpp
+exception/utc-dali-exception-common.cpp
 )
 
 LIST(APPEND TC_SOURCES
index 25531db..e91eeac 100755 (executable)
@@ -334,6 +334,28 @@ void ActorUnparentP()
   DaliLog::PrintPass();
 }
 
+void ActorUnparentAndResetP()
+{
+  Actor parentActor = Actor::New();
+  DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed ");
+
+  Stage::GetCurrent().Add(parentActor);
+
+  Actor childActor = Actor::New();
+  DALI_CHECK_FAIL(!childActor, "Actor::New() is failed ");
+
+  parentActor.Add(childActor);
+
+  DALI_CHECK_FAIL(parentActor.GetChildCount() != 1, "ChildCount  Mismatched. ");
+
+  UnparentAndReset(childActor);
+  DALI_CHECK_FAIL(parentActor.GetChildCount() != 0, "ChildCount should be 0. ");
+
+  Stage::GetCurrent().Remove(parentActor);
+
+  DaliLog::PrintPass();
+}
+
 void ActorAddP()
 {
   Actor parentActor = Actor::New();
index f03ab09..4edfc82 100755 (executable)
@@ -43,6 +43,7 @@ namespace
     ACTOR_FIND_CHILD_BY_NAME_P,
     ACTOR_FIND_CHILD_BY_ID_P,
     ACTOR_UNPARENT_P,
+    ACTOR_UNPARENT_RESET_P,
     ACTOR_ADD_P,
     ACTOR_SET_KEYBOARD_FOCUSABLE_P,
     ACTOR_IS_KEYBOARD_FOCUSABLE_P,
@@ -145,7 +146,7 @@ namespace
     ACTOR_TOUCHED_SIGNAL_P,
     ACTOR_WHEEL_EVENT_SIGNAL_P,
     ACTOR_SCREEN_TO_LOCAL_P,
-    ACTOR_REMOVE_P
+    ACTOR_REMOVE_P,
   };
 
   struct Actor_TestApp : public ConnectionTracker
@@ -234,6 +235,10 @@ namespace
           ActorUnparentP();
           break;
 
+        case ACTOR_UNPARENT_RESET_P:
+          ActorUnparentAndResetP();
+          break;
+
         case ACTOR_ADD_P:
           ActorAddP();
           break;
@@ -1363,6 +1368,24 @@ int UtcDaliActorUnparentP(void)
 }
 
 /**
+ * @testcase           UtcDaliActorUnparentAndResetP
+ * @since_tizen         2.4
+ * @description        check if UnparentAndReset api works or not.
+ */
+
+int UtcDaliActorUnparentAndResetP(void)
+{
+  DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ );
+
+  Application application = Application::New( &gArgc, &gArgv);
+  CHECK_GL;
+  Actor_TestApp testApp(application, ACTOR_UNPARENT_RESET_P );
+  application.MainLoop();
+
+  return test_return_value;
+}
+
+/**
  * @testcase           UtcDaliActorAddP
  * @since_tizen         2.4
  * @description        check if Add api works or not.
@@ -3018,7 +3041,6 @@ int UtcDaliActorGetHierarchyDepthP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorSetLeaveRequiredP
  * @since_tizen         2.4
@@ -3037,7 +3059,6 @@ int UtcDaliActorSetLeaveRequiredP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorSetLeaveRequiredP2
  * @since_tizen         2.4
@@ -3074,7 +3095,6 @@ int UtcDaliActorGetLeaveRequiredP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorGetLeaveRequiredP2
  * @since_tizen         2.4
@@ -3093,7 +3113,6 @@ int UtcDaliActorGetLeaveRequiredP2(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorGetTargetSizeP
  * @since_tizen         2.4
@@ -3112,7 +3131,6 @@ int UtcDaliActorGetTargetSizeP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorHoveredSignalP
  * @since_tizen         2.4
@@ -3131,7 +3149,6 @@ int UtcDaliActorHoveredSignalP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorTouchedSignalP
  * @since_tizen         2.4
@@ -3150,7 +3167,6 @@ int UtcDaliActorTouchedSignalP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorWheelEventSignalP
  * @since_tizen         2.4
@@ -3169,7 +3185,6 @@ int UtcDaliActorWheelEventSignalP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorScreenToLocalP
  * @since_tizen         2.4
@@ -3188,7 +3203,6 @@ int UtcDaliActorScreenToLocalP(void)
   return test_return_value;
 }
 
-
 /**
  * @testcase           UtcDaliActorRemoveP
  * @since_tizen         2.4
@@ -3206,3 +3220,4 @@ int UtcDaliActorRemoveP(void)
 
   return test_return_value;
 }
+
index 6bb4706..3fcad0e 100755 (executable)
@@ -33,6 +33,7 @@ void utc_Dali_AngleAxis_cleanup(void)
 void AngleAxisConstructorP();
 void AngleAxisConsDegreeP();
 void AngleAxisConsRadianP();
+void AngleAxisEqualP();
 
 namespace
 {
@@ -40,7 +41,8 @@ namespace
   {
     ANGLE_AXIS_CONSTRUCTOR_P,
     ANGLE_AXIS_CONSTRUCTOR_DEGREE_P,
-    ANGLE_AXIS_CONSTRUCTOR_RADIAN_P
+    ANGLE_AXIS_CONSTRUCTOR_RADIAN_P,
+    ANGLE_AXIS_EQUAL_P
   };
 
   struct Actor_TestApp : public ConnectionTracker
@@ -82,6 +84,9 @@ namespace
         case ANGLE_AXIS_CONSTRUCTOR_RADIAN_P:
           AngleAxisConsRadianP();
           break;
+        case ANGLE_AXIS_EQUAL_P:
+          AngleAxisEqualP();
+          break;
       }
     }
 
@@ -129,6 +134,19 @@ void AngleAxisConsDegreeP()
   DaliLog::PrintPass();
 }
 
+void AngleAxisEqualP()
+{
+  Radian r(Math::PI_2);
+  AngleAxis a(r, Vector3::ZAXIS);
+  AngleAxis b(a);
+
+  DALI_CHECK_FAIL((!(a == b)), " Dali::AngleAxisEqualP(axis, axis) is Failed: axis position mismatches.");
+  b.axis = Vector3::YAXIS;
+  DALI_CHECK_FAIL((a == b), " Dali::AngleAxisEqualP(axis, axis) is Failed: axis position mismatches.");
+
+  DaliLog::PrintPass();
+}
+
 /**
  * @testcase      UtcDaliAngleAxisConstructorP
  * @since_tizen   2.4
@@ -176,3 +194,19 @@ int UtcDaliAngleAxisConstructorP3(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase      UtcDaliAngleAxisEqualP
+ * @since_tizen   2.4
+ * @description   Compare two angle axis for equality.
+ */
+
+int UtcDaliAngleAxisEqualP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Actor_TestApp testApp(application, ANGLE_AXIS_EQUAL_P);
+  application.MainLoop();
+  return test_return_value;
+}
diff --git a/src/utc/dali-core/exception/utc-dali-exception-common.cpp b/src/utc/dali-core/exception/utc-dali-exception-common.cpp
new file mode 100644 (file)
index 0000000..d59b508
--- /dev/null
@@ -0,0 +1 @@
+#include "utc-dali-exception-common.h"
diff --git a/src/utc/dali-core/exception/utc-dali-exception-common.h b/src/utc/dali-core/exception/utc-dali-exception-common.h
new file mode 100644 (file)
index 0000000..b8eba29
--- /dev/null
@@ -0,0 +1,17 @@
+#ifndef _UTC_DALI_EXCEPTION_COMMON_H_
+#define _UTC_DALI_EXCEPTION_COMMON_H_
+
+#include "dali-common.h"
+#include <dali.h>
+#include <exception>
+#include <dali-toolkit/public-api/controls/control.h>
+#include <dali/dali.h>
+#include <dali-toolkit/dali-toolkit.h>
+
+using namespace std;
+using namespace Dali;
+using namespace Toolkit;
+
+#define SUITE_NAME  "EXCEPTION_UTC"
+
+#endif  //_UTC_DALI_EXCEPTION_COMMON_H_
diff --git a/src/utc/dali-core/exception/utc-dali-exception.cpp b/src/utc/dali-core/exception/utc-dali-exception.cpp
new file mode 100644 (file)
index 0000000..731fb41
--- /dev/null
@@ -0,0 +1,165 @@
+#include "utc-dali-exception-common.h"
+
+//& set: dali-exception
+
+extern int gArgc;
+extern char ** gArgv;
+extern int test_return_value;
+
+/**
+ * @function            utc_Dali_Exception_startup
+ * @description         Called before each test
+ * @parameter           NA
+ * @return              NA
+ */
+void utc_Dali_Exception_startup(void)
+{
+    test_return_value=0;
+}
+
+/**
+ * @function            utc_Dali_Exception_cleanup
+ * @description         Called after each test
+ * @parameter           NA
+ * @return              NA
+ */
+void utc_Dali_Exception_cleanup(void)
+{
+
+}
+
+void DaliExceptionDaliAssertMessage();
+
+namespace
+{
+  enum TEST_CASES_LIST_DALI_EXCEPTION
+  {
+    DALI_EXCEPTION_DALI_ASSERT_MESSAGE,
+  };
+
+  struct Dali_Exception_TestApp : public ConnectionTracker
+  {
+    Dali_Exception_TestApp( Application& app, int test_case )
+      : mApplication( app ),
+      mTestCase( test_case )
+    {
+      mApplication.InitSignal().Connect( this, &Dali_Exception_TestApp::OnInit );
+    }
+
+    void OnInit(Application& app)
+    {
+      ExcuteTest();
+      mTimer = Timer::New( INTERVAL );
+      mTimer.TickSignal().Connect( this, &Dali_Exception_TestApp::Tick );
+      mTimer.Start();
+    }
+
+    bool Tick()
+    {
+      mTimer.Stop();
+      mApplication.Quit();
+      return true;
+    }
+
+    void ExcuteTest()
+    {
+      switch (mTestCase)
+      {
+        case DALI_EXCEPTION_DALI_ASSERT_MESSAGE:
+          DaliExceptionDaliAssertMessage();
+          break;
+      }
+    }
+    // Data
+    Application& mApplication;
+    int mTestCase;
+    Timer mTimer;
+  };
+
+} // unnamed namespace
+
+
+/**
+ * ##############################
+ * TC Logic Implementation Area.
+ * ##############################
+ **/
+void DaliExceptionDaliAssertMessage()
+{
+  std::string strLocation, strCondition;
+  try
+  {
+    Dali::Actor actor;
+    if( !actor )
+    {
+      strLocation.append("[TC: " + std::string(__FUNCTION__) + "]");
+      strCondition.append("Invalid handle object of an actor." );
+      Dali::DaliAssertMessage(strLocation.c_str(), strCondition.c_str());
+      throw Dali::DaliException( strLocation.c_str(), strCondition.c_str() );
+    }
+
+    //@NOTE: Must not reach at this line if assert message is thrown properly
+    LOG_E("Dali::DaliAssertMessage() is failed. Did not throw to dali exception reference.");
+    test_return_value = TC_FAIL;
+    return;
+  }
+  catch(DaliException& de)
+  {
+    if( std::string(de.location).empty() || std::string(de.location).compare(strLocation) != 0 )
+    {
+      LOG_E("Dali::DaliException() is failed. The Dali::DaliException::location property mismatches with what it was thrown.");
+      strLocation.clear();
+      strCondition.clear();
+      test_return_value = TC_FAIL;
+      return;
+    }
+
+    if( std::string(de.condition).empty() || std::string(de.condition).compare(strCondition) != 0 )
+    {
+      LOG_E("Dali::DaliException() is failed. The Dali::DaliException::condition property mismatches with what it was thrown.");
+      strLocation.clear();
+      strCondition.clear();
+      test_return_value = TC_FAIL;
+      return;
+    }
+  }
+  catch(exception& e)
+  {
+    DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali::DaliException() is failed. Did not catch by DaliException reference. Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__);
+    strLocation.clear();
+    strCondition.clear();
+    test_return_value = TC_FAIL;
+    return;
+  }
+  catch(...)
+  {
+    LOG_E("Dali::DaliException() is failed. Did not catch by DaliException reference. Unknown error.");
+    strLocation.clear();
+    strCondition.clear();
+    test_return_value = TC_FAIL;
+    return;
+  }
+  strLocation.clear();
+  strCondition.clear();
+  DaliLog::PrintPass();
+}
+
+/**
+ * End of TC Logic Implementation Area.
+ **/
+
+/**
+ * @testcase         UtcDaliExceptionDaliAssertMessage
+ * @since_tizen      2.4
+ * @description      Checks dali exception when it logs an assertion message.
+ */
+int UtcDaliExceptionDaliAssertMessage(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Dali_Exception_TestApp testApp( application, DALI_EXCEPTION_DALI_ASSERT_MESSAGE);
+  application.MainLoop();
+  return test_return_value;
+}
+
index 6aad6b6..6d70a7d 100755 (executable)
@@ -206,3 +206,29 @@ void MathUtilsSignP()
 
   DaliLog::PrintPass();
 }
+void MathUtilsWarpInDomainP()
+{
+  float fWrapX = 0.0f, fStart = 0.0f, fEnd = 0.0f;
+  float fDistance = 0.0f, fExpected = 0.0f;
+
+  fDistance = WrapInDomain( fWrapX, fStart, fEnd );
+  DALI_CHECK_FAIL( fDistance != fExpected ,  "WrapInDomain api is failed to return wrap distance." );
+
+  fWrapX = -1.1f;
+  fStart = -2.0f;
+  fEnd = -1.0f;
+  fExpected = -1.1f;
+
+  fDistance = WrapInDomain( fWrapX, fStart, fEnd );
+  DALI_CHECK_FAIL( fDistance != fExpected ,  "WrapInDomain api is failed to return wrap distance." );
+
+  fWrapX = 5.0f;
+  fStart = 0.0f;
+  fEnd = 10.0f;
+  fExpected = 5.0f;
+
+  fDistance = WrapInDomain( fWrapX, fStart, fEnd );
+  DALI_CHECK_FAIL( fDistance != fExpected ,  "WrapInDomain api is failed to return wrap distance." );
+
+  DaliLog::PrintPass();
+}
index b2ed49b..c7026e0 100755 (executable)
@@ -44,7 +44,8 @@ namespace
     MATH_UTILS_LERP_FOR_FLOAT_P,
     MATH_UTILS_LERP_FOR_INT_P,
     MATH_UTILS_EQUALS_WITH_AND_WITH_OUT_EPSILON_P,
-    MATH_UTILS_SIGN_P
+    MATH_UTILS_SIGN_P,
+    MATH_UTILS_WRAP_IN_DOMAIN_P
   };
 
   struct Math_Utils_TestApp : public ConnectionTracker
@@ -139,6 +140,10 @@ namespace
           MathUtilsSignP();
           break;
 
+        case MATH_UTILS_WRAP_IN_DOMAIN_P:
+          MathUtilsWarpInDomainP();
+          break;
+
       }
     }
     void VerdictTest()
@@ -368,3 +373,18 @@ int UtcDaliMathUtilsSignP(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase      UtcDaliMathUtilsWarpInDomainP
+ * @since_tizen   2.4
+ * @description   return the wrapped value over the domain (start) (end).
+ */
+int UtcDaliMathUtilsWarpInDomainP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Math_Utils_TestApp testApp( application, MATH_UTILS_WRAP_IN_DOMAIN_P);
+  application.MainLoop();
+  return test_return_value;
+}
index bf99726..cb2c7e1 100644 (file)
@@ -34,6 +34,7 @@ void RadianCastOperator2();
 void RadianOperatorCompareLess();
 void RadianClamp();
 void RadianAnglesCheck();
+void RadianComparisonOperator();
 
 namespace
 {
@@ -46,7 +47,8 @@ namespace
     RADIAN_CASTOPERATOR2,
     RADIAN_OPERATOR_COMPARELESS,
     RADIAN_CLAMP,
-    RADIAN_ANGLES
+    RADIAN_ANGLES,
+    RADIAN_COMPARISON_OPERATORS,
   };
 
   struct Radian_TestApp : public ConnectionTracker
@@ -108,6 +110,10 @@ namespace
         case RADIAN_ANGLES:
           RadianAnglesCheck();
           break;
+
+        case RADIAN_COMPARISON_OPERATORS:
+          RadianComparisonOperator();
+          break;
       }
     }
     // Data
@@ -200,7 +206,6 @@ void RadianClamp()
   DALI_CHECK_FAIL(clampedRad != Radian(fMax), "Dali::Clamp() is Failed: Clamped angle did not match for radian.");
 
   DaliLog::PrintPass();
-
 }
 
 void RadianAnglesCheck()
@@ -234,6 +239,28 @@ void RadianAnglesCheck()
   DaliLog::PrintPass();
 }
 
+void RadianComparisonOperator()
+{
+  Radian a(Math::PI_4);
+  Radian b(Math::PI_2);
+  Radian c(Math::PI);
+  Radian d(2.0f*Math::PI);
+  Radian e(-Math::PI);
+
+  DALI_CHECK_FAIL( Radian(Math::PI_2) > Degree(180.0f), "Dali::Radian comparison operator is Failed");
+  DALI_CHECK_FAIL( Radian(Math::PI_2) > Degree(90.0f),  "Dali::Radian comparison operator is Failed");
+  DALI_CHECK_FAIL( Radian(Math::PI_2) < Degree(45.0f),  "Dali::Radian comparison operator is Failed");
+
+  DALI_CHECK_FAIL( Degree(180.0f) < Radian(Math::PI_2), "Dali::Radian comparison operator is Failed");
+  DALI_CHECK_FAIL( Degree(90.0f) < Radian(Math::PI_2), "Dali::Radian comparison operator is Failed");
+  DALI_CHECK_FAIL( Degree(45.0f) > Radian(Math::PI_2), "Dali::Radian comparison operator is Failed");
+
+  DALI_CHECK_FAIL( Degree(b) == c, "Dali::Radian comparison operator is Failed" );
+  DALI_CHECK_FAIL( Degree(c) != c, "Dali::Radian comparison operator is Failed" );
+
+  DaliLog::PrintPass();
+}
+
 /**
  * End of TC Logic Implementation Area.
  **/
@@ -357,3 +384,19 @@ int UtcDaliRadianAnglesCheckP(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase         UtcDaliRadianComparisonOperator
+ * @since_tizen      2.4
+ * @description      checks for Radian comparison operators.
+ */
+int UtcDaliRadianComparisonOperatorP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Radian_TestApp testApp( application, RADIAN_COMPARISON_OPERATORS);
+  application.MainLoop();
+  return test_return_value;
+}
+
index 1f4a337..c4546c5 100755 (executable)
@@ -138,6 +138,8 @@ extern void utc_Dali_ConstraintFunction_startup(void);
 extern void utc_Dali_ConstraintFunction_cleanup(void);
 extern void utc_Dali_Sampling_startup(void);
 extern void utc_Dali_Sampling_cleanup(void);
+extern void utc_Dali_Exception_startup(void);
+extern void utc_Dali_Exception_cleanup(void);
 
 //property-condition
 extern int UtcDaliPropertyConditionConstructorP(void);
@@ -217,14 +219,27 @@ extern int UtcDaliRefObjRefObjectCopyConstructorP(void);
 extern int UtcDaliRefObjReferenceOperatorAssignmentP(void);
 
 //type-registry
-extern int UtcdDaliTypeRegistryGetTypeP(void);
-extern int UtcdDaliTypeRegistryConstructorP(void);
-extern int UtcdDaliTypeRegistryCopyConstructorP(void);
-extern int UtcdDaliTypeRegistryOperatorAssignmentP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP2(void);
-extern int UtcdDaliTypeRegistryGetTypeNameCountP(void);
-extern int UtcdDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryGetTypeP(void);
+extern int UtcDaliTypeRegistryConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP2(void);
+extern int UtcDaliTypeRegistryOperatorAssignmentP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP2(void);
+extern int UtcDaliTypeRegistryGetTypeNameCountP(void);
+extern int UtcDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP(void);
+extern int UtcDaliTypeRegistryPropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryRegisteredNameP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeP(void);
+extern int UtcDaliTypeRegistryTypeActionN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationForNamedTypeP(void);
+extern int UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistryTypeActionP(void);
+
 
 //property
 extern int UtcDaliPropertyWithPropertyIndexP(void);
@@ -947,6 +962,7 @@ extern int UtcDaliActorTouchedSignalP(void);
 extern int UtcDaliActorWheelEventSignalP(void);
 extern int UtcDaliActorScreenToLocalP(void);
 extern int UtcDaliActorRemoveP(void);
+extern int UtcDaliActorUnparentAndResetP(void);
 
 //base-object
 extern int UtcDaliBaseObjectGetTypeNameInfoForActorP(void);
@@ -972,6 +988,8 @@ extern int UtcDaliVector2OperatorFloatAssignmentP(void);
 extern int UtcDaliVector2OperatorEqualityP(void);
 extern int UtcDaliVector2OperatorSubscriptP(void);
 extern int UtcDaliVector2NormalizeWithLengthAndLengthSquaredP(void);
+extern int UtcDaliVector2MinP(void);
+extern int UtcDaliVector2MaxP(void);
 
 //vector3
 extern int UtcDaliVector3ConstrucAndGetAsFloatP(void);
@@ -1000,6 +1018,8 @@ extern int UtcDaliVector3GetVectorYZConstP(void);
 extern int UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP(void);
 extern int UtcDaliVector3OperatorArraySubscriptP(void);
 extern int UtcDaliVector3ClampWithMinMaxP(void);
+extern int UtcDaliVector3MinP(void);
+extern int UtcDaliVector3MaxP(void);
 
 //vector4
 extern int UtcDaliVector4ConstructorP(void);
@@ -1027,11 +1047,14 @@ extern int UtcDaliVector4OperatorVector3AssignmentP(void);
 extern int UtcDaliVector4OperatorEqualityP(void);
 extern int UtcDaliVector4OperatorSubscriptP(void);
 extern int UtcDaliVector4ClampWithMinMaxP(void);
+extern int UtcDaliVector4MinP(void);
+extern int UtcDaliVector4MaxP(void);
 
 //angle-axis
 extern int UtcDaliAngleAxisConstructorP(void);
 extern int UtcDaliAngleAxisConstructorP2(void);
 extern int UtcDaliAngleAxisConstructorP3(void);
+extern int UtcDaliAngleAxisEqualP(void);
 
 //degree
 extern int UtcDaliDegreeConstructorFloatP(void);
@@ -1057,6 +1080,7 @@ extern int UtcDaliMathUtilsLerpForFloatP(void);
 extern int UtcDaliMathUtilsLerpForIntP(void);
 extern int UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP(void);
 extern int UtcDaliMathUtilsSignP(void);
+extern int UtcDaliMathUtilsWarpInDomainP(void);
 
 //random
 extern int UtcDaliRandomRangeP(void);
@@ -1187,6 +1211,7 @@ extern int UtcDaliRadianCastOperator2P(void);
 extern int UtcDaliRadianOperatorCompareLessP(void);
 extern int UtcDaliRadianClampP(void);
 extern int UtcDaliRadianAnglesCheckP(void);
+extern int UtcDaliRadianComparisonOperatorP(void);
 
 //Layer
 extern int UtcDaliLayerConstructorP(void);
@@ -1215,6 +1240,9 @@ extern int UtcDaliLayerSetSortFunctionP(void);
 extern void utc_Dali_Vector_startup(void);
 extern void utc_Dali_Vector_cleanup(void);
 
+//Exception
+extern int UtcDaliExceptionDaliAssertMessage(void);
+
 extern void utc_Dali_VectorBase_startup(void);
 extern void utc_Dali_VectorBase_cleanup(void);
 
@@ -1694,14 +1722,26 @@ testcase tc_array[] = {
   {"UtcDaliRefObjRefObjectConstructorP", UtcDaliRefObjRefObjectConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjRefObjectCopyConstructorP", UtcDaliRefObjRefObjectCopyConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjReferenceOperatorAssignmentP", UtcDaliRefObjReferenceOperatorAssignmentP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeP", UtcdDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryConstructorP", UtcdDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryCopyConstructorP", UtcdDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryOperatorAssignmentP", UtcdDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP", UtcdDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP2", UtcdDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNameCountP", UtcdDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNamesP", UtcdDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeP", UtcDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryConstructorP", UtcDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP", UtcDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP2", UtcDaliTypeRegistryCopyConstructorP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryOperatorAssignmentP", UtcDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP", UtcDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP2", UtcDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNameCountP", UtcDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNamesP", UtcDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyRegistrationP", UtcDaliTypeRegistryAnimatablePropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP", UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryPropertyRegistrationP", UtcDaliTypeRegistryPropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryRegisteredNameP", UtcDaliTypeRegistryRegisteredNameP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeP", UtcDaliTypeRegistrySignalConnectorTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionN", UtcDaliTypeRegistryTypeActionN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeN", UtcDaliTypeRegistrySignalConnectorTypeN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationForNamedTypeP", UtcDaliTypeRegistryTypeRegistrationForNamedTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionP", UtcDaliTypeRegistryTypeActionP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
   {"UtcDaliPropertyWithPropertyIndexP", UtcDaliPropertyWithPropertyIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyAndComponentIndexP", UtcDaliPropertyWithPropertyAndComponentIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyNameP", UtcDaliPropertyWithPropertyNameP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
@@ -2016,6 +2056,7 @@ testcase tc_array[] = {
   {"UtcDaliActorWheelEventSignalP", UtcDaliActorWheelEventSignalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorScreenToLocalP", UtcDaliActorScreenToLocalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorRemoveP", UtcDaliActorRemoveP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
+  {"UtcDaliActorUnparentAndResetP", UtcDaliActorUnparentAndResetP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliBaseObjectGetTypeNameInfoForActorP", UtcDaliBaseObjectGetTypeNameInfoForActorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForAnimationP", UtcDaliBaseObjectGetTypeNameInfoForAnimationP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP", UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
@@ -2036,6 +2077,8 @@ testcase tc_array[] = {
   {"UtcDaliVector2OperatorEqualityP", UtcDaliVector2OperatorEqualityP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2OperatorSubscriptP", UtcDaliVector2OperatorSubscriptP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2NormalizeWithLengthAndLengthSquaredP", UtcDaliVector2NormalizeWithLengthAndLengthSquaredP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MinP", UtcDaliVector2MinP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MaxP", UtcDaliVector2MaxP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2ConstructorP", UtcDaliVector2ConstructorP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector3ConstrucAndGetAsFloatP", UtcDaliVector3ConstrucAndGetAsFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ConstructArrayAndGetAsConstFloatP", UtcDaliVector3ConstructArrayAndGetAsConstFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
@@ -2063,6 +2106,8 @@ testcase tc_array[] = {
   {"UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP", UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3OperatorArraySubscriptP", UtcDaliVector3OperatorArraySubscriptP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ClampWithMinMaxP", UtcDaliVector3ClampWithMinMaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MinP", UtcDaliVector3MinP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MaxP", UtcDaliVector3MaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector4ConstructorP", UtcDaliVector4ConstructorP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ConstructAndGetAsFloatP", UtcDaliVector4ConstructAndGetAsFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ArrayAndGetAsConstFloatP", UtcDaliVector4ArrayAndGetAsConstFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
@@ -2088,9 +2133,12 @@ testcase tc_array[] = {
   {"UtcDaliVector4OperatorEqualityP", UtcDaliVector4OperatorEqualityP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4OperatorSubscriptP", UtcDaliVector4OperatorSubscriptP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ClampWithMinMaxP", UtcDaliVector4ClampWithMinMaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MinP", UtcDaliVector4MinP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MaxP", UtcDaliVector4MaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliAngleAxisConstructorP", UtcDaliAngleAxisConstructorP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP2", UtcDaliAngleAxisConstructorP2, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP3", UtcDaliAngleAxisConstructorP3, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
+  {"UtcDaliAngleAxisEqualP", UtcDaliAngleAxisEqualP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliDegreeConstructorFloatP", UtcDaliDegreeConstructorFloatP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeConstructorRadianP", UtcDaliDegreeConstructorRadianP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeOperatorEqualP", UtcDaliDegreeOperatorEqualP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
@@ -2111,6 +2159,7 @@ testcase tc_array[] = {
   {"UtcDaliMathUtilsLerpForFloatP", UtcDaliMathUtilsLerpForFloatP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsLerpForIntP", UtcDaliMathUtilsLerpForIntP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP", UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
+  {"UtcDaliMathUtilsWarpInDomainP", UtcDaliMathUtilsWarpInDomainP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliRandomRangeP", UtcDaliRandomRangeP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliRandomAxisP", UtcDaliRandomAxisP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliUint16PairFromFloatVec2P", UtcDaliUint16PairFromFloatVec2P, utc_Dali_Uint16Pair_startup, utc_Dali_Uint16Pair_cleanup},
@@ -2227,6 +2276,7 @@ testcase tc_array[] = {
   {"UtcDaliRadianOperatorCompareLessP", UtcDaliRadianOperatorCompareLessP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianClampP", UtcDaliRadianClampP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianAnglesCheckP", UtcDaliRadianAnglesCheckP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
+  {"UtcDaliRadianComparisonOperatorP", UtcDaliRadianComparisonOperatorP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliLayerConstructorP", UtcDaliLayerConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerCopyConstructorP", UtcDaliLayerCopyConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerOperatorAssignmentP", UtcDaliLayerOperatorAssignmentP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
@@ -2284,6 +2334,7 @@ testcase tc_array[] = {
   {"UtcDaliConstraintMethodFunctionCloneP", UtcDaliConstraintMethodFunctionCloneP, utc_Dali_ConstraintFunction_startup, utc_Dali_ConstraintFunction_cleanup},
   {"UtcDaliSamplingFilterModeP", UtcDaliSamplingFilterModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
   {"UtcDaliSamplingWrapModeP", UtcDaliSamplingWrapModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
+  {"UtcDaliExceptionDaliAssertMessage", UtcDaliExceptionDaliAssertMessage, utc_Dali_Exception_startup, utc_Dali_Exception_cleanup },
   {NULL, NULL}
 };
 
index ab2925a..49aa1a1 100755 (executable)
@@ -138,6 +138,8 @@ extern void utc_Dali_ConstraintFunction_startup(void);
 extern void utc_Dali_ConstraintFunction_cleanup(void);
 extern void utc_Dali_Sampling_startup(void);
 extern void utc_Dali_Sampling_cleanup(void);
+extern void utc_Dali_Exception_startup(void);
+extern void utc_Dali_Exception_cleanup(void);
 
 //property-condition
 extern int UtcDaliPropertyConditionConstructorP(void);
@@ -217,14 +219,27 @@ extern int UtcDaliRefObjRefObjectCopyConstructorP(void);
 extern int UtcDaliRefObjReferenceOperatorAssignmentP(void);
 
 //type-registry
-extern int UtcdDaliTypeRegistryGetTypeP(void);
-extern int UtcdDaliTypeRegistryConstructorP(void);
-extern int UtcdDaliTypeRegistryCopyConstructorP(void);
-extern int UtcdDaliTypeRegistryOperatorAssignmentP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP2(void);
-extern int UtcdDaliTypeRegistryGetTypeNameCountP(void);
-extern int UtcdDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryGetTypeP(void);
+extern int UtcDaliTypeRegistryConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP2(void);
+extern int UtcDaliTypeRegistryOperatorAssignmentP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP2(void);
+extern int UtcDaliTypeRegistryGetTypeNameCountP(void);
+extern int UtcDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP(void);
+extern int UtcDaliTypeRegistryPropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryRegisteredNameP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeP(void);
+extern int UtcDaliTypeRegistryTypeActionN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationForNamedTypeP(void);
+extern int UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistryTypeActionP(void);
+
 
 //property
 extern int UtcDaliPropertyWithPropertyIndexP(void);
@@ -947,6 +962,7 @@ extern int UtcDaliActorTouchedSignalP(void);
 extern int UtcDaliActorWheelEventSignalP(void);
 extern int UtcDaliActorScreenToLocalP(void);
 extern int UtcDaliActorRemoveP(void);
+extern int UtcDaliActorUnparentAndResetP(void);
 
 //base-object
 extern int UtcDaliBaseObjectGetTypeNameInfoForActorP(void);
@@ -972,6 +988,8 @@ extern int UtcDaliVector2OperatorFloatAssignmentP(void);
 extern int UtcDaliVector2OperatorEqualityP(void);
 extern int UtcDaliVector2OperatorSubscriptP(void);
 extern int UtcDaliVector2NormalizeWithLengthAndLengthSquaredP(void);
+extern int UtcDaliVector2MinP(void);
+extern int UtcDaliVector2MaxP(void);
 
 //vector3
 extern int UtcDaliVector3ConstrucAndGetAsFloatP(void);
@@ -1000,6 +1018,8 @@ extern int UtcDaliVector3GetVectorYZConstP(void);
 extern int UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP(void);
 extern int UtcDaliVector3OperatorArraySubscriptP(void);
 extern int UtcDaliVector3ClampWithMinMaxP(void);
+extern int UtcDaliVector3MinP(void);
+extern int UtcDaliVector3MaxP(void);
 
 //vector4
 extern int UtcDaliVector4ConstructorP(void);
@@ -1027,11 +1047,14 @@ extern int UtcDaliVector4OperatorVector3AssignmentP(void);
 extern int UtcDaliVector4OperatorEqualityP(void);
 extern int UtcDaliVector4OperatorSubscriptP(void);
 extern int UtcDaliVector4ClampWithMinMaxP(void);
+extern int UtcDaliVector4MinP(void);
+extern int UtcDaliVector4MaxP(void);
 
 //angle-axis
 extern int UtcDaliAngleAxisConstructorP(void);
 extern int UtcDaliAngleAxisConstructorP2(void);
 extern int UtcDaliAngleAxisConstructorP3(void);
+extern int UtcDaliAngleAxisEqualP(void);
 
 //degree
 extern int UtcDaliDegreeConstructorFloatP(void);
@@ -1057,6 +1080,7 @@ extern int UtcDaliMathUtilsLerpForFloatP(void);
 extern int UtcDaliMathUtilsLerpForIntP(void);
 extern int UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP(void);
 extern int UtcDaliMathUtilsSignP(void);
+extern int UtcDaliMathUtilsWarpInDomainP(void);
 
 //random
 extern int UtcDaliRandomRangeP(void);
@@ -1187,6 +1211,7 @@ extern int UtcDaliRadianCastOperator2P(void);
 extern int UtcDaliRadianOperatorCompareLessP(void);
 extern int UtcDaliRadianClampP(void);
 extern int UtcDaliRadianAnglesCheckP(void);
+extern int UtcDaliRadianComparisonOperatorP(void);
 
 //Layer
 extern int UtcDaliLayerConstructorP(void);
@@ -1215,6 +1240,9 @@ extern int UtcDaliLayerSetSortFunctionP(void);
 extern void utc_Dali_Vector_startup(void);
 extern void utc_Dali_Vector_cleanup(void);
 
+//Exception
+extern int UtcDaliExceptionDaliAssertMessage(void);
+
 extern void utc_Dali_VectorBase_startup(void);
 extern void utc_Dali_VectorBase_cleanup(void);
 
@@ -1694,14 +1722,26 @@ testcase tc_array[] = {
   {"UtcDaliRefObjRefObjectConstructorP", UtcDaliRefObjRefObjectConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjRefObjectCopyConstructorP", UtcDaliRefObjRefObjectCopyConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjReferenceOperatorAssignmentP", UtcDaliRefObjReferenceOperatorAssignmentP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeP", UtcdDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryConstructorP", UtcdDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryCopyConstructorP", UtcdDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryOperatorAssignmentP", UtcdDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP", UtcdDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP2", UtcdDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNameCountP", UtcdDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNamesP", UtcdDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeP", UtcDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryConstructorP", UtcDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP", UtcDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP2", UtcDaliTypeRegistryCopyConstructorP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryOperatorAssignmentP", UtcDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP", UtcDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP2", UtcDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNameCountP", UtcDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNamesP", UtcDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyRegistrationP", UtcDaliTypeRegistryAnimatablePropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP", UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryPropertyRegistrationP", UtcDaliTypeRegistryPropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryRegisteredNameP", UtcDaliTypeRegistryRegisteredNameP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeP", UtcDaliTypeRegistrySignalConnectorTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionN", UtcDaliTypeRegistryTypeActionN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeN", UtcDaliTypeRegistrySignalConnectorTypeN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationForNamedTypeP", UtcDaliTypeRegistryTypeRegistrationForNamedTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionP", UtcDaliTypeRegistryTypeActionP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
   {"UtcDaliPropertyWithPropertyIndexP", UtcDaliPropertyWithPropertyIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyAndComponentIndexP", UtcDaliPropertyWithPropertyAndComponentIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyNameP", UtcDaliPropertyWithPropertyNameP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
@@ -2016,6 +2056,7 @@ testcase tc_array[] = {
   {"UtcDaliActorWheelEventSignalP", UtcDaliActorWheelEventSignalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorScreenToLocalP", UtcDaliActorScreenToLocalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorRemoveP", UtcDaliActorRemoveP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
+  {"UtcDaliActorUnparentAndResetP", UtcDaliActorUnparentAndResetP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliBaseObjectGetTypeNameInfoForActorP", UtcDaliBaseObjectGetTypeNameInfoForActorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForAnimationP", UtcDaliBaseObjectGetTypeNameInfoForAnimationP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP", UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
@@ -2036,6 +2077,8 @@ testcase tc_array[] = {
   {"UtcDaliVector2OperatorEqualityP", UtcDaliVector2OperatorEqualityP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2OperatorSubscriptP", UtcDaliVector2OperatorSubscriptP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2NormalizeWithLengthAndLengthSquaredP", UtcDaliVector2NormalizeWithLengthAndLengthSquaredP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MinP", UtcDaliVector2MinP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MaxP", UtcDaliVector2MaxP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2ConstructorP", UtcDaliVector2ConstructorP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector3ConstrucAndGetAsFloatP", UtcDaliVector3ConstrucAndGetAsFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ConstructArrayAndGetAsConstFloatP", UtcDaliVector3ConstructArrayAndGetAsConstFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
@@ -2063,6 +2106,8 @@ testcase tc_array[] = {
   {"UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP", UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3OperatorArraySubscriptP", UtcDaliVector3OperatorArraySubscriptP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ClampWithMinMaxP", UtcDaliVector3ClampWithMinMaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MinP", UtcDaliVector3MinP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MaxP", UtcDaliVector3MaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector4ConstructorP", UtcDaliVector4ConstructorP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ConstructAndGetAsFloatP", UtcDaliVector4ConstructAndGetAsFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ArrayAndGetAsConstFloatP", UtcDaliVector4ArrayAndGetAsConstFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
@@ -2088,9 +2133,12 @@ testcase tc_array[] = {
   {"UtcDaliVector4OperatorEqualityP", UtcDaliVector4OperatorEqualityP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4OperatorSubscriptP", UtcDaliVector4OperatorSubscriptP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ClampWithMinMaxP", UtcDaliVector4ClampWithMinMaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MinP", UtcDaliVector4MinP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MaxP", UtcDaliVector4MaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliAngleAxisConstructorP", UtcDaliAngleAxisConstructorP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP2", UtcDaliAngleAxisConstructorP2, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP3", UtcDaliAngleAxisConstructorP3, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
+  {"UtcDaliAngleAxisEqualP", UtcDaliAngleAxisEqualP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliDegreeConstructorFloatP", UtcDaliDegreeConstructorFloatP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeConstructorRadianP", UtcDaliDegreeConstructorRadianP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeOperatorEqualP", UtcDaliDegreeOperatorEqualP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
@@ -2111,6 +2159,7 @@ testcase tc_array[] = {
   {"UtcDaliMathUtilsLerpForFloatP", UtcDaliMathUtilsLerpForFloatP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsLerpForIntP", UtcDaliMathUtilsLerpForIntP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP", UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
+  {"UtcDaliMathUtilsWarpInDomainP", UtcDaliMathUtilsWarpInDomainP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliRandomRangeP", UtcDaliRandomRangeP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliRandomAxisP", UtcDaliRandomAxisP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliUint16PairFromFloatVec2P", UtcDaliUint16PairFromFloatVec2P, utc_Dali_Uint16Pair_startup, utc_Dali_Uint16Pair_cleanup},
@@ -2227,6 +2276,7 @@ testcase tc_array[] = {
   {"UtcDaliRadianOperatorCompareLessP", UtcDaliRadianOperatorCompareLessP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianClampP", UtcDaliRadianClampP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianAnglesCheckP", UtcDaliRadianAnglesCheckP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
+  {"UtcDaliRadianComparisonOperatorP", UtcDaliRadianComparisonOperatorP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliLayerConstructorP", UtcDaliLayerConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerCopyConstructorP", UtcDaliLayerCopyConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerOperatorAssignmentP", UtcDaliLayerOperatorAssignmentP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
@@ -2284,6 +2334,7 @@ testcase tc_array[] = {
   {"UtcDaliConstraintMethodFunctionCloneP", UtcDaliConstraintMethodFunctionCloneP, utc_Dali_ConstraintFunction_startup, utc_Dali_ConstraintFunction_cleanup},
   {"UtcDaliSamplingFilterModeP", UtcDaliSamplingFilterModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
   {"UtcDaliSamplingWrapModeP", UtcDaliSamplingWrapModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
+  {"UtcDaliExceptionDaliAssertMessage", UtcDaliExceptionDaliAssertMessage, utc_Dali_Exception_startup, utc_Dali_Exception_cleanup },
   {NULL, NULL}
 };
 
index ab2925a..49aa1a1 100755 (executable)
@@ -138,6 +138,8 @@ extern void utc_Dali_ConstraintFunction_startup(void);
 extern void utc_Dali_ConstraintFunction_cleanup(void);
 extern void utc_Dali_Sampling_startup(void);
 extern void utc_Dali_Sampling_cleanup(void);
+extern void utc_Dali_Exception_startup(void);
+extern void utc_Dali_Exception_cleanup(void);
 
 //property-condition
 extern int UtcDaliPropertyConditionConstructorP(void);
@@ -217,14 +219,27 @@ extern int UtcDaliRefObjRefObjectCopyConstructorP(void);
 extern int UtcDaliRefObjReferenceOperatorAssignmentP(void);
 
 //type-registry
-extern int UtcdDaliTypeRegistryGetTypeP(void);
-extern int UtcdDaliTypeRegistryConstructorP(void);
-extern int UtcdDaliTypeRegistryCopyConstructorP(void);
-extern int UtcdDaliTypeRegistryOperatorAssignmentP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP2(void);
-extern int UtcdDaliTypeRegistryGetTypeNameCountP(void);
-extern int UtcdDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryGetTypeP(void);
+extern int UtcDaliTypeRegistryConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP2(void);
+extern int UtcDaliTypeRegistryOperatorAssignmentP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP2(void);
+extern int UtcDaliTypeRegistryGetTypeNameCountP(void);
+extern int UtcDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP(void);
+extern int UtcDaliTypeRegistryPropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryRegisteredNameP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeP(void);
+extern int UtcDaliTypeRegistryTypeActionN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationForNamedTypeP(void);
+extern int UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistryTypeActionP(void);
+
 
 //property
 extern int UtcDaliPropertyWithPropertyIndexP(void);
@@ -947,6 +962,7 @@ extern int UtcDaliActorTouchedSignalP(void);
 extern int UtcDaliActorWheelEventSignalP(void);
 extern int UtcDaliActorScreenToLocalP(void);
 extern int UtcDaliActorRemoveP(void);
+extern int UtcDaliActorUnparentAndResetP(void);
 
 //base-object
 extern int UtcDaliBaseObjectGetTypeNameInfoForActorP(void);
@@ -972,6 +988,8 @@ extern int UtcDaliVector2OperatorFloatAssignmentP(void);
 extern int UtcDaliVector2OperatorEqualityP(void);
 extern int UtcDaliVector2OperatorSubscriptP(void);
 extern int UtcDaliVector2NormalizeWithLengthAndLengthSquaredP(void);
+extern int UtcDaliVector2MinP(void);
+extern int UtcDaliVector2MaxP(void);
 
 //vector3
 extern int UtcDaliVector3ConstrucAndGetAsFloatP(void);
@@ -1000,6 +1018,8 @@ extern int UtcDaliVector3GetVectorYZConstP(void);
 extern int UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP(void);
 extern int UtcDaliVector3OperatorArraySubscriptP(void);
 extern int UtcDaliVector3ClampWithMinMaxP(void);
+extern int UtcDaliVector3MinP(void);
+extern int UtcDaliVector3MaxP(void);
 
 //vector4
 extern int UtcDaliVector4ConstructorP(void);
@@ -1027,11 +1047,14 @@ extern int UtcDaliVector4OperatorVector3AssignmentP(void);
 extern int UtcDaliVector4OperatorEqualityP(void);
 extern int UtcDaliVector4OperatorSubscriptP(void);
 extern int UtcDaliVector4ClampWithMinMaxP(void);
+extern int UtcDaliVector4MinP(void);
+extern int UtcDaliVector4MaxP(void);
 
 //angle-axis
 extern int UtcDaliAngleAxisConstructorP(void);
 extern int UtcDaliAngleAxisConstructorP2(void);
 extern int UtcDaliAngleAxisConstructorP3(void);
+extern int UtcDaliAngleAxisEqualP(void);
 
 //degree
 extern int UtcDaliDegreeConstructorFloatP(void);
@@ -1057,6 +1080,7 @@ extern int UtcDaliMathUtilsLerpForFloatP(void);
 extern int UtcDaliMathUtilsLerpForIntP(void);
 extern int UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP(void);
 extern int UtcDaliMathUtilsSignP(void);
+extern int UtcDaliMathUtilsWarpInDomainP(void);
 
 //random
 extern int UtcDaliRandomRangeP(void);
@@ -1187,6 +1211,7 @@ extern int UtcDaliRadianCastOperator2P(void);
 extern int UtcDaliRadianOperatorCompareLessP(void);
 extern int UtcDaliRadianClampP(void);
 extern int UtcDaliRadianAnglesCheckP(void);
+extern int UtcDaliRadianComparisonOperatorP(void);
 
 //Layer
 extern int UtcDaliLayerConstructorP(void);
@@ -1215,6 +1240,9 @@ extern int UtcDaliLayerSetSortFunctionP(void);
 extern void utc_Dali_Vector_startup(void);
 extern void utc_Dali_Vector_cleanup(void);
 
+//Exception
+extern int UtcDaliExceptionDaliAssertMessage(void);
+
 extern void utc_Dali_VectorBase_startup(void);
 extern void utc_Dali_VectorBase_cleanup(void);
 
@@ -1694,14 +1722,26 @@ testcase tc_array[] = {
   {"UtcDaliRefObjRefObjectConstructorP", UtcDaliRefObjRefObjectConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjRefObjectCopyConstructorP", UtcDaliRefObjRefObjectCopyConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjReferenceOperatorAssignmentP", UtcDaliRefObjReferenceOperatorAssignmentP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeP", UtcdDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryConstructorP", UtcdDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryCopyConstructorP", UtcdDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryOperatorAssignmentP", UtcdDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP", UtcdDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP2", UtcdDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNameCountP", UtcdDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNamesP", UtcdDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeP", UtcDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryConstructorP", UtcDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP", UtcDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP2", UtcDaliTypeRegistryCopyConstructorP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryOperatorAssignmentP", UtcDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP", UtcDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP2", UtcDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNameCountP", UtcDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNamesP", UtcDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyRegistrationP", UtcDaliTypeRegistryAnimatablePropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP", UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryPropertyRegistrationP", UtcDaliTypeRegistryPropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryRegisteredNameP", UtcDaliTypeRegistryRegisteredNameP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeP", UtcDaliTypeRegistrySignalConnectorTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionN", UtcDaliTypeRegistryTypeActionN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeN", UtcDaliTypeRegistrySignalConnectorTypeN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationForNamedTypeP", UtcDaliTypeRegistryTypeRegistrationForNamedTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionP", UtcDaliTypeRegistryTypeActionP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
   {"UtcDaliPropertyWithPropertyIndexP", UtcDaliPropertyWithPropertyIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyAndComponentIndexP", UtcDaliPropertyWithPropertyAndComponentIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyNameP", UtcDaliPropertyWithPropertyNameP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
@@ -2016,6 +2056,7 @@ testcase tc_array[] = {
   {"UtcDaliActorWheelEventSignalP", UtcDaliActorWheelEventSignalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorScreenToLocalP", UtcDaliActorScreenToLocalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorRemoveP", UtcDaliActorRemoveP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
+  {"UtcDaliActorUnparentAndResetP", UtcDaliActorUnparentAndResetP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliBaseObjectGetTypeNameInfoForActorP", UtcDaliBaseObjectGetTypeNameInfoForActorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForAnimationP", UtcDaliBaseObjectGetTypeNameInfoForAnimationP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP", UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
@@ -2036,6 +2077,8 @@ testcase tc_array[] = {
   {"UtcDaliVector2OperatorEqualityP", UtcDaliVector2OperatorEqualityP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2OperatorSubscriptP", UtcDaliVector2OperatorSubscriptP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2NormalizeWithLengthAndLengthSquaredP", UtcDaliVector2NormalizeWithLengthAndLengthSquaredP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MinP", UtcDaliVector2MinP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MaxP", UtcDaliVector2MaxP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2ConstructorP", UtcDaliVector2ConstructorP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector3ConstrucAndGetAsFloatP", UtcDaliVector3ConstrucAndGetAsFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ConstructArrayAndGetAsConstFloatP", UtcDaliVector3ConstructArrayAndGetAsConstFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
@@ -2063,6 +2106,8 @@ testcase tc_array[] = {
   {"UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP", UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3OperatorArraySubscriptP", UtcDaliVector3OperatorArraySubscriptP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ClampWithMinMaxP", UtcDaliVector3ClampWithMinMaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MinP", UtcDaliVector3MinP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MaxP", UtcDaliVector3MaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector4ConstructorP", UtcDaliVector4ConstructorP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ConstructAndGetAsFloatP", UtcDaliVector4ConstructAndGetAsFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ArrayAndGetAsConstFloatP", UtcDaliVector4ArrayAndGetAsConstFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
@@ -2088,9 +2133,12 @@ testcase tc_array[] = {
   {"UtcDaliVector4OperatorEqualityP", UtcDaliVector4OperatorEqualityP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4OperatorSubscriptP", UtcDaliVector4OperatorSubscriptP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ClampWithMinMaxP", UtcDaliVector4ClampWithMinMaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MinP", UtcDaliVector4MinP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MaxP", UtcDaliVector4MaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliAngleAxisConstructorP", UtcDaliAngleAxisConstructorP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP2", UtcDaliAngleAxisConstructorP2, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP3", UtcDaliAngleAxisConstructorP3, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
+  {"UtcDaliAngleAxisEqualP", UtcDaliAngleAxisEqualP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliDegreeConstructorFloatP", UtcDaliDegreeConstructorFloatP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeConstructorRadianP", UtcDaliDegreeConstructorRadianP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeOperatorEqualP", UtcDaliDegreeOperatorEqualP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
@@ -2111,6 +2159,7 @@ testcase tc_array[] = {
   {"UtcDaliMathUtilsLerpForFloatP", UtcDaliMathUtilsLerpForFloatP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsLerpForIntP", UtcDaliMathUtilsLerpForIntP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP", UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
+  {"UtcDaliMathUtilsWarpInDomainP", UtcDaliMathUtilsWarpInDomainP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliRandomRangeP", UtcDaliRandomRangeP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliRandomAxisP", UtcDaliRandomAxisP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliUint16PairFromFloatVec2P", UtcDaliUint16PairFromFloatVec2P, utc_Dali_Uint16Pair_startup, utc_Dali_Uint16Pair_cleanup},
@@ -2227,6 +2276,7 @@ testcase tc_array[] = {
   {"UtcDaliRadianOperatorCompareLessP", UtcDaliRadianOperatorCompareLessP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianClampP", UtcDaliRadianClampP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianAnglesCheckP", UtcDaliRadianAnglesCheckP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
+  {"UtcDaliRadianComparisonOperatorP", UtcDaliRadianComparisonOperatorP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliLayerConstructorP", UtcDaliLayerConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerCopyConstructorP", UtcDaliLayerCopyConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerOperatorAssignmentP", UtcDaliLayerOperatorAssignmentP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
@@ -2284,6 +2334,7 @@ testcase tc_array[] = {
   {"UtcDaliConstraintMethodFunctionCloneP", UtcDaliConstraintMethodFunctionCloneP, utc_Dali_ConstraintFunction_startup, utc_Dali_ConstraintFunction_cleanup},
   {"UtcDaliSamplingFilterModeP", UtcDaliSamplingFilterModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
   {"UtcDaliSamplingWrapModeP", UtcDaliSamplingWrapModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
+  {"UtcDaliExceptionDaliAssertMessage", UtcDaliExceptionDaliAssertMessage, utc_Dali_Exception_startup, utc_Dali_Exception_cleanup },
   {NULL, NULL}
 };
 
index ab2925a..49aa1a1 100755 (executable)
@@ -138,6 +138,8 @@ extern void utc_Dali_ConstraintFunction_startup(void);
 extern void utc_Dali_ConstraintFunction_cleanup(void);
 extern void utc_Dali_Sampling_startup(void);
 extern void utc_Dali_Sampling_cleanup(void);
+extern void utc_Dali_Exception_startup(void);
+extern void utc_Dali_Exception_cleanup(void);
 
 //property-condition
 extern int UtcDaliPropertyConditionConstructorP(void);
@@ -217,14 +219,27 @@ extern int UtcDaliRefObjRefObjectCopyConstructorP(void);
 extern int UtcDaliRefObjReferenceOperatorAssignmentP(void);
 
 //type-registry
-extern int UtcdDaliTypeRegistryGetTypeP(void);
-extern int UtcdDaliTypeRegistryConstructorP(void);
-extern int UtcdDaliTypeRegistryCopyConstructorP(void);
-extern int UtcdDaliTypeRegistryOperatorAssignmentP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP(void);
-extern int UtcdDaliTypeRegistryGetTypeInfoP2(void);
-extern int UtcdDaliTypeRegistryGetTypeNameCountP(void);
-extern int UtcdDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryGetTypeP(void);
+extern int UtcDaliTypeRegistryConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP(void);
+extern int UtcDaliTypeRegistryCopyConstructorP2(void);
+extern int UtcDaliTypeRegistryOperatorAssignmentP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP(void);
+extern int UtcDaliTypeRegistryGetTypeInfoP2(void);
+extern int UtcDaliTypeRegistryGetTypeNameCountP(void);
+extern int UtcDaliTypeRegistryGetTypeNamesP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP(void);
+extern int UtcDaliTypeRegistryPropertyRegistrationP(void);
+extern int UtcDaliTypeRegistryRegisteredNameP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeP(void);
+extern int UtcDaliTypeRegistryTypeActionN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistrySignalConnectorTypeN(void);
+extern int UtcDaliTypeRegistryTypeRegistrationForNamedTypeP(void);
+extern int UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP(void);
+extern int UtcDaliTypeRegistryTypeActionP(void);
+
 
 //property
 extern int UtcDaliPropertyWithPropertyIndexP(void);
@@ -947,6 +962,7 @@ extern int UtcDaliActorTouchedSignalP(void);
 extern int UtcDaliActorWheelEventSignalP(void);
 extern int UtcDaliActorScreenToLocalP(void);
 extern int UtcDaliActorRemoveP(void);
+extern int UtcDaliActorUnparentAndResetP(void);
 
 //base-object
 extern int UtcDaliBaseObjectGetTypeNameInfoForActorP(void);
@@ -972,6 +988,8 @@ extern int UtcDaliVector2OperatorFloatAssignmentP(void);
 extern int UtcDaliVector2OperatorEqualityP(void);
 extern int UtcDaliVector2OperatorSubscriptP(void);
 extern int UtcDaliVector2NormalizeWithLengthAndLengthSquaredP(void);
+extern int UtcDaliVector2MinP(void);
+extern int UtcDaliVector2MaxP(void);
 
 //vector3
 extern int UtcDaliVector3ConstrucAndGetAsFloatP(void);
@@ -1000,6 +1018,8 @@ extern int UtcDaliVector3GetVectorYZConstP(void);
 extern int UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP(void);
 extern int UtcDaliVector3OperatorArraySubscriptP(void);
 extern int UtcDaliVector3ClampWithMinMaxP(void);
+extern int UtcDaliVector3MinP(void);
+extern int UtcDaliVector3MaxP(void);
 
 //vector4
 extern int UtcDaliVector4ConstructorP(void);
@@ -1027,11 +1047,14 @@ extern int UtcDaliVector4OperatorVector3AssignmentP(void);
 extern int UtcDaliVector4OperatorEqualityP(void);
 extern int UtcDaliVector4OperatorSubscriptP(void);
 extern int UtcDaliVector4ClampWithMinMaxP(void);
+extern int UtcDaliVector4MinP(void);
+extern int UtcDaliVector4MaxP(void);
 
 //angle-axis
 extern int UtcDaliAngleAxisConstructorP(void);
 extern int UtcDaliAngleAxisConstructorP2(void);
 extern int UtcDaliAngleAxisConstructorP3(void);
+extern int UtcDaliAngleAxisEqualP(void);
 
 //degree
 extern int UtcDaliDegreeConstructorFloatP(void);
@@ -1057,6 +1080,7 @@ extern int UtcDaliMathUtilsLerpForFloatP(void);
 extern int UtcDaliMathUtilsLerpForIntP(void);
 extern int UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP(void);
 extern int UtcDaliMathUtilsSignP(void);
+extern int UtcDaliMathUtilsWarpInDomainP(void);
 
 //random
 extern int UtcDaliRandomRangeP(void);
@@ -1187,6 +1211,7 @@ extern int UtcDaliRadianCastOperator2P(void);
 extern int UtcDaliRadianOperatorCompareLessP(void);
 extern int UtcDaliRadianClampP(void);
 extern int UtcDaliRadianAnglesCheckP(void);
+extern int UtcDaliRadianComparisonOperatorP(void);
 
 //Layer
 extern int UtcDaliLayerConstructorP(void);
@@ -1215,6 +1240,9 @@ extern int UtcDaliLayerSetSortFunctionP(void);
 extern void utc_Dali_Vector_startup(void);
 extern void utc_Dali_Vector_cleanup(void);
 
+//Exception
+extern int UtcDaliExceptionDaliAssertMessage(void);
+
 extern void utc_Dali_VectorBase_startup(void);
 extern void utc_Dali_VectorBase_cleanup(void);
 
@@ -1694,14 +1722,26 @@ testcase tc_array[] = {
   {"UtcDaliRefObjRefObjectConstructorP", UtcDaliRefObjRefObjectConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjRefObjectCopyConstructorP", UtcDaliRefObjRefObjectCopyConstructorP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
   {"UtcDaliRefObjReferenceOperatorAssignmentP", UtcDaliRefObjReferenceOperatorAssignmentP, utc_Dali_RefObject_startup, utc_Dali_RefObject_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeP", UtcdDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryConstructorP", UtcdDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryCopyConstructorP", UtcdDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryOperatorAssignmentP", UtcdDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP", UtcdDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeInfoP2", UtcdDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNameCountP", UtcdDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
-  {"UtcdDaliTypeRegistryGetTypeNamesP", UtcdDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeP", UtcDaliTypeRegistryGetTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryConstructorP", UtcDaliTypeRegistryConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP", UtcDaliTypeRegistryCopyConstructorP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryCopyConstructorP2", UtcDaliTypeRegistryCopyConstructorP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryOperatorAssignmentP", UtcDaliTypeRegistryOperatorAssignmentP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP", UtcDaliTypeRegistryGetTypeInfoP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeInfoP2", UtcDaliTypeRegistryGetTypeInfoP2, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNameCountP", UtcDaliTypeRegistryGetTypeNameCountP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryGetTypeNamesP", UtcDaliTypeRegistryGetTypeNamesP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyRegistrationP", UtcDaliTypeRegistryAnimatablePropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP", UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryPropertyRegistrationP", UtcDaliTypeRegistryPropertyRegistrationP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryRegisteredNameP", UtcDaliTypeRegistryRegisteredNameP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeP", UtcDaliTypeRegistrySignalConnectorTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionN", UtcDaliTypeRegistryTypeActionN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistrySignalConnectorTypeN", UtcDaliTypeRegistrySignalConnectorTypeN, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationForNamedTypeP", UtcDaliTypeRegistryTypeRegistrationForNamedTypeP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP", UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
+  {"UtcDaliTypeRegistryTypeActionP", UtcDaliTypeRegistryTypeActionP, utc_Dali_TypeRegistry_startup, utc_Dali_TypeRegistry_cleanup},
   {"UtcDaliPropertyWithPropertyIndexP", UtcDaliPropertyWithPropertyIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyAndComponentIndexP", UtcDaliPropertyWithPropertyAndComponentIndexP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
   {"UtcDaliPropertyWithPropertyNameP", UtcDaliPropertyWithPropertyNameP, utc_Dali_Property_startup, utc_Dali_Property_cleanup},
@@ -2016,6 +2056,7 @@ testcase tc_array[] = {
   {"UtcDaliActorWheelEventSignalP", UtcDaliActorWheelEventSignalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorScreenToLocalP", UtcDaliActorScreenToLocalP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliActorRemoveP", UtcDaliActorRemoveP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
+  {"UtcDaliActorUnparentAndResetP", UtcDaliActorUnparentAndResetP, utc_Dali_Actor_startup, utc_Dali_Actor_cleanup },
   {"UtcDaliBaseObjectGetTypeNameInfoForActorP", UtcDaliBaseObjectGetTypeNameInfoForActorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForAnimationP", UtcDaliBaseObjectGetTypeNameInfoForAnimationP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
   {"UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP", UtcDaliBaseObjectGetTypeNameInfoForLongPressGestureDetectorP, utc_Dali_BaseObject_startup, utc_Dali_BaseObject_cleanup},
@@ -2036,6 +2077,8 @@ testcase tc_array[] = {
   {"UtcDaliVector2OperatorEqualityP", UtcDaliVector2OperatorEqualityP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2OperatorSubscriptP", UtcDaliVector2OperatorSubscriptP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2NormalizeWithLengthAndLengthSquaredP", UtcDaliVector2NormalizeWithLengthAndLengthSquaredP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MinP", UtcDaliVector2MinP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
+  {"UtcDaliVector2MaxP", UtcDaliVector2MaxP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector2ConstructorP", UtcDaliVector2ConstructorP, utc_Dali_Vector2_startup, utc_Dali_Vector2_cleanup},
   {"UtcDaliVector3ConstrucAndGetAsFloatP", UtcDaliVector3ConstrucAndGetAsFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ConstructArrayAndGetAsConstFloatP", UtcDaliVector3ConstructArrayAndGetAsConstFloatP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
@@ -2063,6 +2106,8 @@ testcase tc_array[] = {
   {"UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP", UtcDaliVector3OperatorMultiplicationAssignmentQuaternionP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3OperatorArraySubscriptP", UtcDaliVector3OperatorArraySubscriptP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector3ClampWithMinMaxP", UtcDaliVector3ClampWithMinMaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MinP", UtcDaliVector3MinP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
+  {"UtcDaliVector3MaxP", UtcDaliVector3MaxP, utc_Dali_Vector3_startup, utc_Dali_Vector3_cleanup},
   {"UtcDaliVector4ConstructorP", UtcDaliVector4ConstructorP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ConstructAndGetAsFloatP", UtcDaliVector4ConstructAndGetAsFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ArrayAndGetAsConstFloatP", UtcDaliVector4ArrayAndGetAsConstFloatP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
@@ -2088,9 +2133,12 @@ testcase tc_array[] = {
   {"UtcDaliVector4OperatorEqualityP", UtcDaliVector4OperatorEqualityP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4OperatorSubscriptP", UtcDaliVector4OperatorSubscriptP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliVector4ClampWithMinMaxP", UtcDaliVector4ClampWithMinMaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MinP", UtcDaliVector4MinP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
+  {"UtcDaliVector4MaxP", UtcDaliVector4MaxP, utc_Dali_Vector4_startup, utc_Dali_Vector4_cleanup},
   {"UtcDaliAngleAxisConstructorP", UtcDaliAngleAxisConstructorP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP2", UtcDaliAngleAxisConstructorP2, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliAngleAxisConstructorP3", UtcDaliAngleAxisConstructorP3, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
+  {"UtcDaliAngleAxisEqualP", UtcDaliAngleAxisEqualP, utc_Dali_AngleAxis_startup, utc_Dali_AngleAxis_cleanup},
   {"UtcDaliDegreeConstructorFloatP", UtcDaliDegreeConstructorFloatP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeConstructorRadianP", UtcDaliDegreeConstructorRadianP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
   {"UtcDaliDegreeOperatorEqualP", UtcDaliDegreeOperatorEqualP, utc_Dali_Degree_startup, utc_Dali_Degree_cleanup},
@@ -2111,6 +2159,7 @@ testcase tc_array[] = {
   {"UtcDaliMathUtilsLerpForFloatP", UtcDaliMathUtilsLerpForFloatP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsLerpForIntP", UtcDaliMathUtilsLerpForIntP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP", UtcDaliMathUtilsEqualsWithAndWithoutEpsilonP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
+  {"UtcDaliMathUtilsWarpInDomainP", UtcDaliMathUtilsWarpInDomainP, utc_Dali_MathUtils_startup, utc_Dali_MathUtils_cleanup},
   {"UtcDaliRandomRangeP", UtcDaliRandomRangeP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliRandomAxisP", UtcDaliRandomAxisP, utc_Dali_Random_startup, utc_Dali_Random_cleanup},
   {"UtcDaliUint16PairFromFloatVec2P", UtcDaliUint16PairFromFloatVec2P, utc_Dali_Uint16Pair_startup, utc_Dali_Uint16Pair_cleanup},
@@ -2227,6 +2276,7 @@ testcase tc_array[] = {
   {"UtcDaliRadianOperatorCompareLessP", UtcDaliRadianOperatorCompareLessP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianClampP", UtcDaliRadianClampP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliRadianAnglesCheckP", UtcDaliRadianAnglesCheckP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
+  {"UtcDaliRadianComparisonOperatorP", UtcDaliRadianComparisonOperatorP, utc_Dali_Radian_startup, utc_Dali_Radian_cleanup},
   {"UtcDaliLayerConstructorP", UtcDaliLayerConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerCopyConstructorP", UtcDaliLayerCopyConstructorP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
   {"UtcDaliLayerOperatorAssignmentP", UtcDaliLayerOperatorAssignmentP, utc_Dali_Layer_startup, utc_Dali_Layer_cleanup },
@@ -2284,6 +2334,7 @@ testcase tc_array[] = {
   {"UtcDaliConstraintMethodFunctionCloneP", UtcDaliConstraintMethodFunctionCloneP, utc_Dali_ConstraintFunction_startup, utc_Dali_ConstraintFunction_cleanup},
   {"UtcDaliSamplingFilterModeP", UtcDaliSamplingFilterModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
   {"UtcDaliSamplingWrapModeP", UtcDaliSamplingWrapModeP, utc_Dali_Sampling_startup, utc_Dali_Sampling_cleanup},
+  {"UtcDaliExceptionDaliAssertMessage", UtcDaliExceptionDaliAssertMessage, utc_Dali_Exception_startup, utc_Dali_Exception_cleanup },
   {NULL, NULL}
 };
 
index 7e13527..0495e63 100755 (executable)
@@ -4,6 +4,374 @@ extern int gArgc;
 extern char ** gArgv;
 extern int test_return_value;
 
+namespace
+{
+  //
+  // Create function as Init function called
+  //
+  static bool CreateCustomInitCalled = false;
+  BaseHandle CreateCustomInit(void)
+  {
+    CreateCustomInitCalled = true;
+    return BaseHandle();
+  }
+
+  static bool CreateCustomNamedInitCalled = false;
+  BaseHandle CreateCustomNamedInit(void)
+  {
+    CreateCustomNamedInitCalled = true;
+    return BaseHandle();
+  }
+
+  const std::string scriptedName("PopupStyle");
+  static TypeRegistration scriptedType( scriptedName, typeid(Dali::CustomActor), CreateCustomNamedInit );
+
+  // Property Registration
+  bool setPropertyCalled = false;
+  bool getPropertyCalled = false;
+  void SetProperty( BaseObject* object, Property::Index propertyIndex, const Property::Value& value )
+  {
+    setPropertyCalled = true;
+  }
+  Property::Value GetProperty( BaseObject* object, Property::Index propertyIndex )
+  {
+    getPropertyCalled = true;
+    return Property::Value( true );
+  }
+
+  /*******************************************************************************
+   *
+   * Custom Actor
+   *
+   ******************************************************************************/
+  namespace Impl
+  {
+    struct MyTestCustomActor : public CustomActorImpl
+    {
+      typedef Signal< void ()> SignalType;
+      typedef Signal< void (float)> SignalTypeFloat;
+
+      MyTestCustomActor() : CustomActorImpl( ActorFlags( REQUIRES_TOUCH_EVENTS ) )
+      { }
+
+      virtual ~MyTestCustomActor()
+      { }
+
+      void ResetCallStack()
+      {
+      }
+
+      // From CustomActorImpl
+      virtual void OnStageConnection( int depth )
+      {
+      }
+      virtual void OnStageDisconnection()
+      {
+      }
+      virtual void OnChildAdd(Actor& child)
+      {
+      }
+      virtual void OnChildRemove(Actor& child)
+      {
+      }
+      virtual void OnSizeSet(const Vector3& targetSize)
+      {
+      }
+      virtual void OnSizeAnimation(Animation& animation, const Vector3& targetSize)
+      {
+      }
+      virtual bool OnTouchEvent(const TouchEvent& event)
+      {
+        return true;
+      }
+      virtual bool OnHoverEvent(const HoverEvent& event)
+      {
+        return true;
+      }
+      virtual bool OnWheelEvent(const WheelEvent& event)
+      {
+        return true;
+      }
+      virtual bool OnKeyEvent(const KeyEvent& event)
+      {
+        return true;
+      }
+      virtual void OnKeyInputFocusGained()
+      {
+      }
+      virtual void OnKeyInputFocusLost()
+      {
+      }
+      virtual Vector3 GetNaturalSize()
+      {
+        return Vector3( 0.0f, 0.0f, 0.0f );
+      }
+      virtual float GetHeightForWidth( float width )
+      {
+        return 0.0f;
+      }
+      virtual float GetWidthForHeight( float height )
+      {
+        return 0.0f;
+      }
+      virtual void OnRelayout( const Vector2& size, RelayoutContainer& container )
+      {
+      }
+      virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension )
+      {
+      }
+      virtual void OnCalculateRelayoutSize( Dimension::Type dimension )
+      {
+      }
+      virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension )
+      {
+        return 0.0f;
+      }
+      virtual void OnLayoutNegotiated( float size, Dimension::Type dimension )
+      {
+      }
+      virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS )
+      {
+        return false;
+      }
+
+      public:
+
+      SignalType mSignal;
+    };
+
+  }; // namespace Impl
+
+  class MyTestCustomActor : public CustomActor
+  {
+    public:
+
+      typedef Signal< void ()> SignalType;
+      typedef Signal< void (float)> SignalTypeFloat;
+
+      MyTestCustomActor()
+      {
+      }
+
+      static MyTestCustomActor New()
+      {
+        Impl::MyTestCustomActor* p = new Impl::MyTestCustomActor;
+        return MyTestCustomActor( *p ); // takes ownership
+      }
+
+      virtual ~MyTestCustomActor()
+      {
+      }
+
+      static MyTestCustomActor DownCast( BaseHandle handle )
+      {
+        MyTestCustomActor result;
+
+        CustomActor custom = Dali::CustomActor::DownCast( handle );
+        if ( custom )
+        {
+          CustomActorImpl& customImpl = custom.GetImplementation();
+
+          Impl::MyTestCustomActor* impl = dynamic_cast<Impl::MyTestCustomActor*>(&customImpl);
+
+          if (impl)
+          {
+            result = MyTestCustomActor(customImpl.GetOwner());
+          }
+        }
+
+        return result;
+      }
+
+      SignalType& GetCustomSignal()
+      {
+        Dali::RefObject& obj = GetImplementation();
+        return static_cast<Impl::MyTestCustomActor&>( obj ).mSignal;
+      }
+
+    private:
+
+      MyTestCustomActor(Internal::CustomActor* internal)
+        : CustomActor(internal)
+      {
+      }
+
+      MyTestCustomActor( Impl::MyTestCustomActor& impl )
+        : CustomActor( impl )
+      {
+      }
+  };
+
+
+  class MyTestCustomActor2 : public CustomActor
+  {
+    public:
+
+      MyTestCustomActor2()
+      {
+      }
+
+      static MyTestCustomActor2 New()
+      {
+        return MyTestCustomActor2(); // takes ownership
+      }
+
+      virtual ~MyTestCustomActor2()
+      {
+      }
+
+      static MyTestCustomActor2 DownCast( BaseHandle handle )
+      {
+        MyTestCustomActor2 result;
+
+        CustomActor custom = Dali::CustomActor::DownCast( handle );
+        if ( custom )
+        {
+          CustomActorImpl& customImpl = custom.GetImplementation();
+
+          Impl::MyTestCustomActor* impl = dynamic_cast<Impl::MyTestCustomActor*>(&customImpl);
+
+          if (impl)
+          {
+            result = MyTestCustomActor2(customImpl.GetOwner());
+          }
+        }
+
+        return result;
+      }
+
+    private:
+
+      MyTestCustomActor2(Internal::CustomActor* internal)
+        : CustomActor(internal)
+      {
+      }
+
+      MyTestCustomActor2( Impl::MyTestCustomActor& impl )
+        : CustomActor( impl )
+      {
+      }
+  };
+
+  static TypeRegistration customTypeInit( typeid(MyTestCustomActor2), typeid(Dali::CustomActor), CreateCustomInit, true );
+
+
+  BaseHandle CreateCustom1(void)
+  {
+    return MyTestCustomActor::New();
+  }
+
+  static std::string lastSignalConnectionCustom;
+
+  bool DoConnectSignalCustom1( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor )
+  {
+    lastSignalConnectionCustom = signalName;
+
+    bool connected( true );
+
+    Dali::BaseHandle handle(object);
+    MyTestCustomActor customActor = MyTestCustomActor::DownCast(handle);
+
+    if( "sig1" == signalName )
+    {
+      customActor.GetCustomSignal().Connect( tracker, functor );
+    }
+    else
+    {
+      // signalName does not match any signal
+      connected = false;
+    }
+
+    return connected;
+  }
+
+  bool DoConnectSignalCustomFailure1( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor )
+  {
+    lastSignalConnectionCustom = "failed";
+
+    return false; // This is supposed to fail
+  }
+
+  struct CustomTestFunctor
+  {
+    CustomTestFunctor()
+    {
+      ++mTotalInstanceCount;
+      ++mCurrentInstanceCount;
+    }
+
+    CustomTestFunctor( const CustomTestFunctor& copyMe )
+    {
+      ++mTotalInstanceCount;
+      ++mCurrentInstanceCount;
+    }
+
+    ~CustomTestFunctor()
+    {
+      --mCurrentInstanceCount;
+    }
+
+    void operator()()
+    {
+      ++mCallbackCount;
+    }
+
+    static int mTotalInstanceCount;
+    static int mCurrentInstanceCount;
+    static int mCallbackCount;
+  };
+
+  int CustomTestFunctor::mTotalInstanceCount = 0;
+  int CustomTestFunctor::mCurrentInstanceCount = 0;
+  int CustomTestFunctor::mCallbackCount = 0;
+
+  static void ResetFunctorCounts()
+  {
+    CustomTestFunctor::mTotalInstanceCount   = 0;
+    CustomTestFunctor::mCurrentInstanceCount = 0;
+    CustomTestFunctor::mCallbackCount        = 0;
+  }
+
+  static std::string lastActionCustom;
+  bool DoActionCustom(BaseObject* object, const std::string& actionName, const Property::Map& /*attributes*/)
+  {
+    lastActionCustom = actionName;
+    return true;
+  }
+
+  // Custom type registration
+  static TypeRegistration customType1( typeid(MyTestCustomActor), typeid(Dali::CustomActor), CreateCustom1 );
+
+  // Custom signals
+  static SignalConnectorType customSignalConnector1( customType1, "sig1", DoConnectSignalCustom1 );
+  static SignalConnectorType customSignalConnector2( customType1, "sig2", DoConnectSignalCustomFailure1 );
+  static const int TEST_SIGNAL_COUNT = 2;
+
+  // Custom actions
+  static TypeAction customAction1( customType1, "act1", DoActionCustom);
+  static const int TEST_ACTION_COUNT = 1;
+
+  class TestConnectionTracker : public ConnectionTracker
+  {
+    public:
+
+      TestConnectionTracker()
+      {
+      }
+  };
+
+  BaseHandle CreateNamedActorType()
+  {
+    Actor actor = Actor::New();
+    actor.SetName( "NamedActor" );
+    return actor;
+  }
+
+  TypeRegistration namedActorType( "MyNamedActor", typeid(Dali::Actor), CreateNamedActorType );
+  PropertyRegistration namedActorPropertyOne( namedActorType, "propName",  PROPERTY_REGISTRATION_START_INDEX, Property::BOOLEAN, &SetProperty, &GetProperty );
+
+} // Anonymous namespace
+
 /**
  * @function            utc_Dali_TypeRegistry_startup
  * @description         Called before each test
@@ -26,32 +394,51 @@ void utc_Dali_TypeRegistry_cleanup(void)
 
 }
 
-
-void TypeRegistryGet();
-void TypeRegistryConstructor();
-void TypeRegistryCopyConstructor();
+void TypeRegistryGetTypeP();
+void TypeRegistryConstructorP();
+void TypeRegistryCopyConstructorP();
 void TypeRegistryCopyConstructorP2();
-void TypeRegistryOperatorAssignment();
-void TypeRegistryGetTypeInfo();
+void TypeRegistryOperatorAssignmentP();
+void TypeRegistryGetTypeInfoP();
 void TypeRegistryGetTypeInfoP2();
-void TypeRegistryGetTypeNameCount();
-void TypeRegistryGetTypeNames();
-
+void TypeRegistryGetTypeNameCountP();
+void TypeRegistryGetTypeNamesP();
+void TypeRegistryAnimatablePropertyRegistrationP();
+void TypeRegistryAnimatablePropertyComponentRegistrationP();
+void TypeRegistryPropertyRegistrationP();
+void TypeRegistryRegisteredNameP();
+void TypeRegistrySignalConnectorTypeP();
+void TypeRegistrySignalConnectorTypeN();
+void TypeRegistryTypeActionP();
+void TypeRegistryTypeActionN();
+void TypeRegistryTypeRegistrationNotCallingCreateOnInitP();
+void TypeRegistryTypeRegistrationCallingCreateOnInitP();
+void TypeRegistryTypeRegistrationForNamedTypeP();
 
 namespace
 {
   enum TEST_CASES_LIST_TYPE_REGISTRY
   {
-    TYPE_REGISTRY_GET_TYPE,
-    TYPE_REGISTRY_CONSTRUCTOR,
-    TYPE_REGISTRY_COPYCONSTRUCTOR,
+    TYPE_REGISTRY_GET_TYPE_P,
+    TYPE_REGISTRY_CONSTRUCTOR_P,
+    TYPE_REGISTRY_COPY_CONSTRUCTOR_P,
     TYPE_REGISTRY_COPY_CONSTRUCTOR_P2,
-    TYPE_REGISTRY_ASSIGNMENT_OPERATOR,
-    TYPE_REGISTRY_GET_TYPE_INFO,
+    TYPE_REGISTRY_ASSIGNMENT_OPERATOR_P,
+    TYPE_REGISTRY_GET_TYPE_INFO_P,
     TYPE_REGISTRY_GET_TYPE_INFO_P2,
-    TYPE_REGISTRY_GET_TYPE_NAME_COUNT,
-    TYPE_REGISTRY_GET_TYPE_NAMES
-
+    TYPE_REGISTRY_GET_TYPE_P_NAME_COUNT_P,
+    TYPE_REGISTRY_GET_TYPE_P_NAMES_P,
+    TYPE_REGISTRY_ANIMATABLE_PROPERTY_REGISTRATION_P,
+    TYPE_REGISTRY_ANIMATABLE_PROPERTY_COMPONENT_REGISTRATION_P,
+    TYPE_REGISTRY_PROPERTY_REGISTRATION_P,
+    TYPE_REGISTRY_REGISTERED_NAME_P,
+    TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_P,
+    TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_N,
+    TYPE_REGISTRY_TYPE_ACTION_P,
+    TYPE_REGISTRY_TYPE_ACTION_N,
+    TYPE_REGISTRY_TYPE_REGISTRATION_NOT_CALLING_CREATE_ON_INIT_P,
+    TYPE_REGISTRY_TYPE_REGISTRATION_CALLING_CREATE_ON_INIT_P,
+    TYPE_REGISTRY_TYPE_REGISTRATION_FOR_NAMED_TYPE_P,
   };
 
   struct Type_Registry_TestApp : public ConnectionTracker
@@ -80,41 +467,84 @@ namespace
     {
       switch (mTestCase)
       {
-        case TYPE_REGISTRY_GET_TYPE:
-          TypeRegistryGet();
+        case TYPE_REGISTRY_GET_TYPE_P:
+          TypeRegistryGetTypeP();
           break;
 
-        case TYPE_REGISTRY_CONSTRUCTOR:
-          TypeRegistryConstructor();
+        case TYPE_REGISTRY_CONSTRUCTOR_P:
+          TypeRegistryConstructorP();
           break;
 
-        case TYPE_REGISTRY_COPYCONSTRUCTOR:
-          TypeRegistryCopyConstructor();
+        case TYPE_REGISTRY_COPY_CONSTRUCTOR_P:
+          TypeRegistryCopyConstructorP();
           break;
 
         case TYPE_REGISTRY_COPY_CONSTRUCTOR_P2:
           TypeRegistryCopyConstructorP2();
           break;
-        case TYPE_REGISTRY_ASSIGNMENT_OPERATOR:
-          TypeRegistryOperatorAssignment();
+        case TYPE_REGISTRY_ASSIGNMENT_OPERATOR_P:
+          TypeRegistryOperatorAssignmentP();
           break;
 
-        case TYPE_REGISTRY_GET_TYPE_INFO:
-          TypeRegistryGetTypeInfo();
+        case TYPE_REGISTRY_GET_TYPE_INFO_P:
+          TypeRegistryGetTypeInfoP();
           break;
 
         case TYPE_REGISTRY_GET_TYPE_INFO_P2:
           TypeRegistryGetTypeInfoP2();
           break;
 
-        case TYPE_REGISTRY_GET_TYPE_NAME_COUNT:
-          TypeRegistryGetTypeNameCount();
+        case TYPE_REGISTRY_GET_TYPE_P_NAME_COUNT_P:
+          TypeRegistryGetTypeNameCountP();
+          break;
+
+        case TYPE_REGISTRY_GET_TYPE_P_NAMES_P:
+          TypeRegistryGetTypeNamesP();
+          break;
+
+        case TYPE_REGISTRY_ANIMATABLE_PROPERTY_REGISTRATION_P:
+          TypeRegistryAnimatablePropertyRegistrationP();
+          break;
+
+        case TYPE_REGISTRY_ANIMATABLE_PROPERTY_COMPONENT_REGISTRATION_P:
+          TypeRegistryAnimatablePropertyComponentRegistrationP();
+          break;
+
+        case TYPE_REGISTRY_PROPERTY_REGISTRATION_P:
+          TypeRegistryPropertyRegistrationP();
+          break;
+
+        case TYPE_REGISTRY_REGISTERED_NAME_P:
+          TypeRegistryRegisteredNameP();
+          break;
+
+        case TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_P:
+          TypeRegistrySignalConnectorTypeP();
           break;
 
-        case TYPE_REGISTRY_GET_TYPE_NAMES:
-          TypeRegistryGetTypeNames();
+        case TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_N:
+          TypeRegistrySignalConnectorTypeN();
           break;
 
+        case TYPE_REGISTRY_TYPE_ACTION_P:
+          TypeRegistryTypeActionP();
+          break;
+
+        case TYPE_REGISTRY_TYPE_ACTION_N:
+          TypeRegistryTypeActionN();
+          break;
+
+        case TYPE_REGISTRY_TYPE_REGISTRATION_NOT_CALLING_CREATE_ON_INIT_P:
+          TypeRegistryTypeRegistrationNotCallingCreateOnInitP();
+          break;
+
+        case TYPE_REGISTRY_TYPE_REGISTRATION_CALLING_CREATE_ON_INIT_P:
+          TypeRegistryTypeRegistrationCallingCreateOnInitP();
+          break;
+
+        case TYPE_REGISTRY_TYPE_REGISTRATION_FOR_NAMED_TYPE_P:
+          TypeRegistryTypeRegistrationForNamedTypeP();
+          break;
       }
     }
 
@@ -132,23 +562,24 @@ namespace
  * ##############################
  **/
 
-void TypeRegistryGet()
+void TypeRegistryGetTypeP()
 {
   TypeRegistry typeRegistry = TypeRegistry::Get();
   DALI_CHECK_FAIL(!typeRegistry,  "TypeRegistry::Get() is failed.");
 
   DaliLog::PrintPass();
 }
-void TypeRegistryConstructor()
+
+void TypeRegistryConstructorP()
 {
   TypeRegistry typeRegistry;
   DALI_CHECK_FAIL(typeRegistry,  "TypeRegistry::Constructor() is failed.");
 
   DaliLog::PrintPass();
 }
-void TypeRegistryCopyConstructor()
-{
 
+void TypeRegistryCopyConstructorP()
+{
   TypeRegistry typeRegistry;
   const string STR_TYPE_NAME = "Actor";
 
@@ -162,6 +593,7 @@ void TypeRegistryCopyConstructor()
 
   DaliLog::PrintPass();
 }
+
 void TypeRegistryCopyConstructorP2()
 {
   TypeRegistry typeRegistry;
@@ -178,9 +610,9 @@ void TypeRegistryCopyConstructorP2()
 
   DaliLog::PrintPass();
 }
-void TypeRegistryOperatorAssignment()
-{
 
+void TypeRegistryOperatorAssignmentP()
+{
   TypeRegistry typeRegistry;
   const string STR_TYPE_NAME = "Actor";
 
@@ -200,7 +632,8 @@ void TypeRegistryOperatorAssignment()
 
   DaliLog::PrintPass();
 }
-void TypeRegistryGetTypeInfo()
+
+void TypeRegistryGetTypeInfoP()
 {
   TypeInfo typeInfo;
 
@@ -221,6 +654,7 @@ void TypeRegistryGetTypeInfo()
 
   DaliLog::PrintPass();
 }
+
 void TypeRegistryGetTypeInfoP2()
 {
   TypeInfo typeInfoFromName;
@@ -239,7 +673,8 @@ void TypeRegistryGetTypeInfoP2()
 
   DaliLog::PrintPass();
 }
-void TypeRegistryGetTypeNameCount()
+
+void TypeRegistryGetTypeNameCountP()
 {
 
   TypeInfo typeInfo;
@@ -255,7 +690,8 @@ void TypeRegistryGetTypeNameCount()
   }
   DaliLog::PrintPass();
 }
-void TypeRegistryGetTypeNames()
+
+void TypeRegistryGetTypeNamesP()
 {
   TypeInfo typeInfo;
 
@@ -270,62 +706,353 @@ void TypeRegistryGetTypeNames()
   }
   DaliLog::PrintPass();
 }
+
+void TypeRegistryAnimatablePropertyRegistrationP()
+{
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryAnimatablePropertyComponentRegistrationP()
+{
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryPropertyRegistrationP()
+{
+  TypeRegistry typeRegistry = TypeRegistry::Get();
+
+  // Check property count before property registration
+  TypeInfo typeInfo = typeRegistry.GetTypeInfo( typeid(MyTestCustomActor) );
+  DALI_CHECK_FAIL( !typeInfo, "TypeInfo is failed" );
+  BaseHandle handle = typeInfo.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+  Actor customActor = Actor::DownCast( handle );
+  DALI_CHECK_FAIL( !customActor, "Actor downcast is failed" );
+  unsigned int initialPropertyCount( customActor.GetPropertyCount() );
+
+  std::string propertyName( "prop1" );
+  int propertyIndex( PROPERTY_REGISTRATION_START_INDEX );
+  Property::Type propertyType( Property::BOOLEAN );
+  PropertyRegistration property1( customType1, propertyName, propertyIndex, propertyType, &SetProperty, &GetProperty );
+
+  // Check property count after registration
+  unsigned int postRegistrationPropertyCount( customActor.GetPropertyCount() );
+  DALI_CHECK_FAIL( initialPropertyCount + 1u != postRegistrationPropertyCount, "postRegistrationPropertyCount is failed" );
+
+  // Add custom property and check property count
+  customActor.RegisterProperty( "customProp1",   true );
+  unsigned int customPropertyCount( customActor.GetPropertyCount() );
+  DALI_CHECK_FAIL( postRegistrationPropertyCount + 1u != customPropertyCount, "customPropertyCount is failed" );
+
+  // Set the property, ensure SetProperty called
+  DALI_CHECK_FAIL( setPropertyCalled, "SetProperty exists" );
+  customActor.SetProperty( propertyIndex, false );
+  DALI_CHECK_FAIL( !setPropertyCalled, "SetProperty is failed" );
+
+  // Get the property, ensure GetProperty called
+  DALI_CHECK_FAIL( getPropertyCalled, "GetProperty exists" );
+  (void)customActor.GetProperty< bool >( propertyIndex );
+  DALI_CHECK_FAIL( !getPropertyCalled, "GetProperty is failed");
+
+  // Check the property name
+  DALI_CHECK_FAIL( customActor.GetPropertyName( propertyIndex ) != propertyName, "GetPropertyName is failed" );
+  DALI_CHECK_FAIL( typeInfo.GetPropertyName( propertyIndex ) != propertyName, "GetPropertyName is failed" );
+
+  // Check the property index
+  DALI_CHECK_FAIL( customActor.GetPropertyIndex( propertyName ) != propertyIndex, "GetPropertyIndex is failed" );
+
+  // Check the property type
+  DALI_CHECK_FAIL( customActor.GetPropertyType( propertyIndex ) != propertyType, "GetPropertyType is failed" );
+
+  // Check property count of type-info is 1
+  Property::IndexContainer indices;
+  typeInfo.GetPropertyIndices( indices );
+  DALI_CHECK_FAIL( indices.Size() != 1u, "GetPropertyIndices is failed" );
+
+  // Ensure indices returned from actor and customActor differ by two
+  Actor actor = Actor::New();
+  actor.GetPropertyIndices( indices );
+  unsigned int actorIndices = indices.Size();
+  customActor.GetPropertyIndices( indices );
+  unsigned int customActorIndices = indices.Size();
+  DALI_CHECK_FAIL( actorIndices + 2u != customActorIndices, "customActorIndices is failed" ); // Custom property + registered property
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryRegisteredNameP()
+{
+  DALI_CHECK_FAIL( scriptedName != scriptedType.RegisteredName(), "Script name is different" );
+
+  TypeInfo baseType = TypeRegistry::Get().GetTypeInfo( scriptedName );
+  DALI_CHECK_FAIL( !baseType, "GetTypeInfo is failed" );
+
+  BaseHandle handle = baseType.CreateInstance();
+  DALI_CHECK_FAIL( !CreateCustomNamedInitCalled, "CreateInstance is failed" );
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( scriptedName );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistrySignalConnectorTypeP()
+{
+  ResetFunctorCounts();
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  BaseHandle handle = type.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+
+  MyTestCustomActor customHandle = MyTestCustomActor::DownCast( handle );
+  DALI_CHECK_FAIL( !customHandle, "DownCast is failed" );
+
+  {
+    TestConnectionTracker tracker;
+
+    bool connected = handle.ConnectSignal( &tracker, "sig1", CustomTestFunctor() );
+    DALI_CHECK_FAIL( connected != true, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( lastSignalConnectionCustom != "sig1", "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 1, "ConnectSignal is failed" );
+
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0, "ConnectSignal is failed" );
+    customHandle.GetCustomSignal().Emit();
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1, "GetCustomSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "GetCustomSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 1, "GetCustomSignal is failed" );
+  }
+  //tracker should automatically disconnect here
+  DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 0, "ConnectSignal is failed" );
+
+  //Test that functor is disconnected
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1, "ConnectSignal is failed" );
+  customHandle.GetCustomSignal().Emit();
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1/*not incremented*/, "GetCustomSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "GetCustomSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 0, "GetCustomSignal is failed" );
+
+  DaliLog::PrintPass();
+}
+void TypeRegistrySignalConnectorTypeN()
+{
+  // Test what happens when signal connnector (DoConnectSignalFailure method) returns false
+
+  ResetFunctorCounts();
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  TypeInfo baseType = TypeRegistry::Get().GetTypeInfo( "CustomActor" );
+  DALI_CHECK_FAIL( !baseType, "GetTypeInfo is failed" );
+
+  BaseHandle handle = type.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+
+  MyTestCustomActor customHandle = MyTestCustomActor::DownCast( handle );
+  DALI_CHECK_FAIL( !customHandle, "DownCast is failed" );
+
+  DALI_CHECK_FAIL( type.GetActionCount() != TEST_ACTION_COUNT + baseType.GetActionCount(), "GetActionCount is failed" );
+
+  DALI_CHECK_FAIL( type.GetSignalCount() != TEST_SIGNAL_COUNT + baseType.GetSignalCount(), "GetSignalCount is failed" );
+
+  {
+    TestConnectionTracker tracker;
+
+    bool connected = handle.ConnectSignal( &tracker, "sig2", CustomTestFunctor() );
+    DALI_CHECK_FAIL( connected != false/*This is supposed to fail*/, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( lastSignalConnectionCustom != "failed", "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 0/*deleted along with FunctorDelegate*/, "ConnectSignal is failed" );
+
+    // Should be a NOOP
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0, "ConnectSignal is failed" );
+    customHandle.GetCustomSignal().Emit();
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0/*never called*/, "GetCustomSignal is failed" );
+  }
+  //tracker should have nothing to disconnect here
+
+  // Should be a NOOP
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0, "ConnectSignal is failed" );
+  customHandle.GetCustomSignal().Emit();
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0/*never called*/, "GetCustomSignal is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryTypeActionP()
+{
+  ResetFunctorCounts();
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  BaseHandle handle = type.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+
+  Property::Map attributes;
+  DALI_CHECK_FAIL( !handle.DoAction("act1", attributes), "DoAction is failed" );
+  DALI_CHECK_FAIL( lastActionCustom != "act1", "DoAction is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryTypeActionN()
+{
+  ResetFunctorCounts();
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  BaseHandle handle = type.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+
+  Property::Map attributes;
+  DALI_CHECK_FAIL( handle.DoAction( "unknownAction",  attributes ), "DoAction is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryTypeRegistrationNotCallingCreateOnInitP()
+{
+  ResetFunctorCounts();
+
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  TypeInfo baseType = TypeRegistry::Get().GetTypeInfo( "CustomActor" );
+  DALI_CHECK_FAIL( !baseType, "GetTypeInfo is failed" );
+
+  BaseHandle handle = type.CreateInstance();
+  DALI_CHECK_FAIL( !handle, "CreateInstance is failed" );
+
+  MyTestCustomActor customHandle = MyTestCustomActor::DownCast( handle );
+  DALI_CHECK_FAIL( !customHandle, "DownCast is failed" );
+
+  DALI_CHECK_FAIL( type.GetActionCount() != TEST_ACTION_COUNT + baseType.GetActionCount(), "GetActionCount is failed" );
+
+  DALI_CHECK_FAIL( type.GetSignalCount() != TEST_SIGNAL_COUNT + baseType.GetSignalCount(), "GetSignalCount is failed" );
+
+  {
+    TestConnectionTracker tracker;
+
+    bool connected = handle.ConnectSignal( &tracker, "sig1", CustomTestFunctor() );
+    DALI_CHECK_FAIL( connected != true, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( lastSignalConnectionCustom != "sig1", "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 1, "ConnectSignal is failed" );
+
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 0, "ConnectSignal is failed" );
+    customHandle.GetCustomSignal().Emit();
+    DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1, "ConnectSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "GetCustomSignal is failed" );
+    DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 1, "ConnectSignal is failed" );
+  }
+  // tracker should automatically disconnect here
+  DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 0, "ConnectSignal is failed" );
+
+  // Test that functor is disconnected
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1, "ConnectSignal is failed" );
+  customHandle.GetCustomSignal().Emit();
+  DALI_CHECK_FAIL( CustomTestFunctor::mCallbackCount != 1/*not incremented*/, "GetCustomSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mTotalInstanceCount != 2/*temporary copy + FunctorDelegate copy*/, "ConnectSignal is failed" );
+  DALI_CHECK_FAIL( CustomTestFunctor::mCurrentInstanceCount != 0, "ConnectSignal is failed" );
+
+  Property::Map attributes;
+  handle.DoAction("act1", attributes);
+  DALI_CHECK_FAIL( lastActionCustom != "act1", "DoAction is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryTypeRegistrationCallingCreateOnInitP()
+{
+  DALI_CHECK_FAIL( "MyTestCustomActor2" != customTypeInit.RegisteredName(), "RegisteredName is failed" );
+
+  DALI_CHECK_FAIL( true != CreateCustomInitCalled, "RegisteredName is failed" );
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyTestCustomActor2" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  DaliLog::PrintPass();
+}
+
+void TypeRegistryTypeRegistrationForNamedTypeP()
+{
+  // Create Named Actor Type
+  TypeInfo type = TypeRegistry::Get().GetTypeInfo( "MyNamedActor" );
+  DALI_CHECK_FAIL( !type, "GetTypeInfo is failed" );
+
+  BaseHandle namedHandle = type.CreateInstance();
+  DALI_CHECK_FAIL( !namedHandle, "CreateInstance is failed" );
+  Actor namedActor( Actor::DownCast( namedHandle ) );
+  DALI_CHECK_FAIL( !namedActor, "DownCast is failed" );
+
+  DALI_CHECK_FAIL( namedActor.GetName() != "NamedActor", "GetName is failed" );
+  DALI_CHECK_FAIL( type.GetName() != "MyNamedActor", "GetName is failed" );
+  DALI_CHECK_FAIL( type.GetBaseName() != "Actor", "GetBaseName is failed" );
+
+  DaliLog::PrintPass();
+}
+
 /**
  * End of TC Logic Implementation Area.
  **/
 
-
 /**
- * @testcase                UtcdDaliTypeRegistryGetTypeP
+ * @testcase                UtcDaliTypeRegistryGetTypeP
  * @since_Tizen             2.4
  * @description             To check the typeregistry retrieve the getType Properly
  */
-int UtcdDaliTypeRegistryGetTypeP(void)
+int UtcDaliTypeRegistryGetTypeP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryConstructorP
+ * @testcase                UtcDaliTypeRegistryConstructorP
  * @since_Tizen             2.4
  * @description             To check the typeregistry constructor Properly
  */
-int UtcdDaliTypeRegistryConstructorP(void)
+int UtcDaliTypeRegistryConstructorP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_CONSTRUCTOR);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_CONSTRUCTOR_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryCopyConstructorP
+ * @testcase                UtcDaliTypeRegistryCopyConstructorP
  * @since_Tizen             2.4
  * @description             To check the typeregistry copy constructor Properly
  */
-int UtcdDaliTypeRegistryCopyConstructorP(void)
+int UtcDaliTypeRegistryCopyConstructorP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_COPYCONSTRUCTOR);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_COPY_CONSTRUCTOR_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryCopyConstructorP2
+ * @testcase                UtcDaliTypeRegistryCopyConstructorP2
  * @since_Tizen             2.4
  * @description             Copy and assign a typeregistry
  */
-int UtcdDaliTypeRegistryCopyConstructorP2(void)
+int UtcDaliTypeRegistryCopyConstructorP2(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
@@ -336,41 +1063,41 @@ int UtcdDaliTypeRegistryCopyConstructorP2(void)
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryOperatorAssignmentP
+ * @testcase                UtcDaliTypeRegistryOperatorAssignmentP
  * @since_Tizen             2.4
  * @description             To check the typeregistry assignment operator Properly
  */
-int UtcdDaliTypeRegistryOperatorAssignmentP(void)
+int UtcDaliTypeRegistryOperatorAssignmentP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_ASSIGNMENT_OPERATOR);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_ASSIGNMENT_OPERATOR_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryGetTypeInfoP
+ * @testcase                UtcDaliTypeRegistryGetTypeInfoP
  * @since_Tizen             2.4
  * @description             To check the typeregistry retrieve the getTypeInfo Properly
  */
-int UtcdDaliTypeRegistryGetTypeInfoP(void)
+int UtcDaliTypeRegistryGetTypeInfoP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_INFO);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_INFO_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryGetTypeInfoP2
+ * @testcase                UtcDaliTypeRegistryGetTypeInfoP2
  * @since_Tizen             2.4
  * @description             To check the typeregistry retrieve the getTypeInfo Properly
  */
-int UtcdDaliTypeRegistryGetTypeInfoP2(void)
+int UtcDaliTypeRegistryGetTypeInfoP2(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
@@ -382,31 +1109,196 @@ int UtcdDaliTypeRegistryGetTypeInfoP2(void)
 
 
 /**
- * @testcase                UtcdDaliTypeRegistryGetTypeNameCountP
+ * @testcase                UtcDaliTypeRegistryGetTypeNameCountP
  * @since_Tizen             2.4
  * @description             To check the typeregistry retrieve the getTypeNameCount Properly
  */
-int UtcdDaliTypeRegistryGetTypeNameCountP(void)
+int UtcDaliTypeRegistryGetTypeNameCountP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_NAME_COUNT);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_P_NAME_COUNT_P);
   application.MainLoop();
   return test_return_value;
 }
 
 /**
- * @testcase                UtcdDaliTypeRegistryGetTypeNamesP
+ * @testcase                UtcDaliTypeRegistryGetTypeNamesP
  * @since_Tizen             2.4
  * @description             To check the typeregistry retrieve the getTypeNames Properly
  */
-int UtcdDaliTypeRegistryGetTypeNamesP(void)
+int UtcDaliTypeRegistryGetTypeNamesP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_P_NAMES_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryAnimatablePropertyRegistrationP
+ * @since_Tizen             2.4
+ * @description             checks the registeration of an animatable property
+ */
+int UtcDaliTypeRegistryAnimatablePropertyRegistrationP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_ANIMATABLE_PROPERTY_REGISTRATION_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP
+ * @since_Tizen             2.4
+ * @description             checks the registeration a component of an animatable property
+ */
+int UtcDaliTypeRegistryAnimatablePropertyComponentRegistrationP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_ANIMATABLE_PROPERTY_COMPONENT_REGISTRATION_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryPropertyRegistrationP
+ * @since_Tizen             2.4
+ * @description             constructor registers the property with the registered type.
+ */
+int UtcDaliTypeRegistryPropertyRegistrationP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_PROPERTY_REGISTRATION_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryRegisteredNameP
+ * @since_Tizen             2.4
+ * @description             Constructor registers the type creation function For registered NamedType.
+ */
+int UtcDaliTypeRegistryRegisteredNameP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_REGISTERED_NAME_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistrySignalConnectorTypeP
+ * @since_Tizen             2.4
+ * @description             Register a signal connector function to a registered type.
+ */
+int UtcDaliTypeRegistrySignalConnectorTypeP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistrySignalConnectorTypeN
+ * @since_Tizen             2.4
+ * @description             Negative test for signal connector function.
+ */
+int UtcDaliTypeRegistrySignalConnectorTypeN(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_SIGNAL_CONNECTOR_TYPE_N);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryTypeActionP
+ * @since_Tizen             2.4
+ * @description             checks the registeration an action function.
+ */
+int UtcDaliTypeRegistryTypeActionP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_TYPE_ACTION_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryTypeActionN
+ * @since_Tizen             2.4
+ * @description             Negative check for registeration of an action function.
+ */
+int UtcDaliTypeRegistryTypeActionN(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_TYPE_ACTION_N);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP
+ * @since_Tizen             2.4
+ * @description             Constructor registers the type creation function without CallingCreateOnInit
+ */
+int UtcDaliTypeRegistryTypeRegistrationNotCallingCreateOnInitP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_TYPE_REGISTRATION_NOT_CALLING_CREATE_ON_INIT_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP
+ * @since_Tizen             2.4
+ * @description             Constructor registers the type creation function wiht CallingCreateOnInit
+ */
+int UtcDaliTypeRegistryTypeRegistrationCallingCreateOnInitP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_TYPE_REGISTRATION_CALLING_CREATE_ON_INIT_P );
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase                UtcDaliTypeRegistryTypeRegistrationForNamedTypeP
+ * @since_Tizen             2.4
+ * @description             Constructor registers the type creation function ForNamedType.
+ */
+int UtcDaliTypeRegistryTypeRegistrationForNamedTypeP(void)
 {
   DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
   Application application = Application::New( &gArgc, &gArgv );
   CHECK_GL;
-  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_NAMES);
+  Type_Registry_TestApp testApp( application, TYPE_REGISTRY_TYPE_REGISTRATION_FOR_NAMED_TYPE_P );
   application.MainLoop();
   return test_return_value;
 }
index a447251..2f61fb7 100755 (executable)
@@ -43,6 +43,8 @@ void Vector2OperatorFloatAssignmentP();
 void Vector2OperatorEqualityP();
 void Vector2OperatorSubscriptP();
 void Vector2NormalizeWithLengthAndLengthSquaredP();
+void Vector2MinP();
+void Vector2MaxP();
 
 namespace
 {
@@ -63,7 +65,9 @@ namespace
     VECTOR2_OPERATOR_FLOAT_ASSIGNMENT_P,
     VECTOR2_OPERATOR_EQUALITY_P,
     VECTOR2_OPERATOR_SUBSCRIPT_P,
-    VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED_P
+    VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED_P,
+    VECTOR2_MIN_P,
+    VECTOR2_MAX_P
   };
 
   struct Vector2_TestApp : public ConnectionTracker
@@ -140,6 +144,12 @@ namespace
         case VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED_P:
           Vector2NormalizeWithLengthAndLengthSquaredP();
           break;
+        case VECTOR2_MIN_P:
+          Vector2MinP();
+          break;
+        case VECTOR2_MAX_P:
+          Vector2MaxP();
+          break;
       }
     }
 
@@ -440,6 +450,36 @@ void Vector2NormalizeWithLengthAndLengthSquaredP()
   DaliLog::PrintPass();
 }
 
+void Vector2MinP()
+{
+  Vector2 vec2Values1( 11.0f, 2.0f );
+  Vector2 vec2Values2( 10.0f, 1.0f );
+
+  Vector2 vec2CalResult( min( vec2Values1.x, vec2Values2.x ), min( vec2Values1.y, vec2Values2.y ) );
+
+  Vector2 vec2GetResult = Min( vec2Values1, vec2Values2 );
+
+  DALI_CHECK_FAIL( vec2GetResult != vec2CalResult , "Min Api failed to return correct value");
+  DALI_CHECK_FAIL( vec2GetResult.x > vec2Values1.x || vec2GetResult.x > vec2Values2.x || vec2GetResult.y > vec2Values1.y || vec2GetResult.y > vec2Values2.y  , "Returning Vector2 is not minimum for all components.");
+
+  DaliLog::PrintPass();
+}
+
+void Vector2MaxP()
+{
+  Vector2 vec2Values1( 11.0f, 2.0f );
+  Vector2 vec2Values2( 10.0f, 1.0f );
+
+  Vector2 vec2CalResult( max( vec2Values1.x, vec2Values2.x ), max( vec2Values1.y, vec2Values2.y ) );
+
+  Vector2 vec2GetResult = Max( vec2Values1, vec2Values2 );
+
+  DALI_CHECK_FAIL( vec2GetResult != vec2CalResult , "Max Api failed to return correct value.");
+  DALI_CHECK_FAIL( vec2GetResult.x < vec2Values1.x || vec2GetResult.x < vec2Values2.x || vec2GetResult.y < vec2Values1.y || vec2GetResult.y < vec2Values2.y  , "Returning Vector2 is not maximum for all components.");
+
+  DaliLog::PrintPass();
+}
+
 /**
  * End of TC Logic Implementation Area.
  **/
@@ -689,3 +729,33 @@ int UtcDaliVector2NormalizeWithLengthAndLengthSquaredP(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase        UtcDaliVector2MinP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the minimum of the corresponding component in a and b.
+ */
+int UtcDaliVector2MinP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector2_TestApp testApp( application, VECTOR2_MIN_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase        UtcDaliVector2MaxP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the maximum of the corresponding component in a and b.
+ */
+int UtcDaliVector2MaxP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector2_TestApp testApp( application, VECTOR2_MAX_P);
+  application.MainLoop();
+  return test_return_value;
+}
index 2fc2464..9723069 100755 (executable)
@@ -54,6 +54,8 @@ void Vector3GetVectorYZConstP();
 void Vector3OperatorMultiplicationAssignmentQuaternionP();
 void Vector3OperatorArraySubscriptP();
 void Vector3ClampWithMinMaxP();
+void Vector3MinP();
+void Vector3MaxP();
 
 
 namespace
@@ -86,7 +88,9 @@ namespace
     VECTOR3_GET_VECTOR_YZ_CONST_P,
     VECTOR3_OPERATOR_MULTIPLICATION_ASSIGNMENT_QUATERNION_P,
     VECTOR3_OPERATOR_ARRAY_SUBSCRIPT_P,
-    VECTOR3_CLAM_WITH_MIN_MAX_P
+    VECTOR3_CLAM_WITH_MIN_MAX_P,
+    VECTOR3_MIN_P,
+    VECTOR3_MAX_P
   };
 
   struct Vector3_TestApp : public ConnectionTracker
@@ -196,6 +200,12 @@ namespace
         case VECTOR3_CLAM_WITH_MIN_MAX_P:
           Vector3ClampWithMinMaxP();
           break;
+        case VECTOR3_MIN_P:
+          Vector3MinP();
+          break;
+        case VECTOR3_MAX_P:
+          Vector3MaxP();
+          break;
       }
     }
 
@@ -1036,6 +1046,36 @@ void Vector3ClampWithMinMaxP()
   DaliLog::PrintPass();
 }
 
+void Vector3MinP()
+{
+  Vector3 vec3Values1( 10.0f, 11.0f, 2.0f );
+  Vector3 vec3Values2( 5.0f, 10.0f, 1.0f );
+
+  // Calculation of minimum value
+  Vector3 vec3CalResult( min( vec3Values1.x, vec3Values2.x ), min( vec3Values1.y, vec3Values2.y ), min( vec3Values1.z, vec3Values2.z ) );
+
+  Vector3 vec3GetResult = Min( vec3Values1, vec3Values2 );
+
+  DALI_CHECK_FAIL( vec3GetResult != vec3CalResult , "Min Api failed to return correct value.");
+  DALI_CHECK_FAIL( vec3GetResult.x > vec3Values1.x || vec3GetResult.x > vec3Values2.x || vec3GetResult.y > vec3Values1.y || vec3GetResult.y > vec3Values2.y || vec3GetResult.z > vec3Values1.z || vec3GetResult.z > vec3Values2.z , "Returning Vector3 is not minimum for all components.");
+
+  DaliLog::PrintPass();
+}
+
+void Vector3MaxP()
+{
+  Vector3 vec3Values1( 10.0f, 11.0f, 2.0f );
+  Vector3 vec3Values2( 5.0f, 10.0f, 1.0f );
+  Vector3 vec3CalResult( max( vec3Values1.x, vec3Values2.x ), max( vec3Values1.y, vec3Values2.y ), max( vec3Values1.z, vec3Values2.z ) );
+
+  Vector3 vec3GetResult = Max( vec3Values1, vec3Values2 );
+
+  DALI_CHECK_FAIL( vec3GetResult != vec3CalResult , "Max Api failed to return correct value.");
+  DALI_CHECK_FAIL( vec3GetResult.x < vec3Values1.x || vec3GetResult.x < vec3Values2.x || vec3GetResult.y < vec3Values1.y || vec3GetResult.y < vec3Values2.y || vec3GetResult.z < vec3Values1.z || vec3GetResult.z < vec3Values2.z , "Returning Vector3 id not maximum for all components.");
+
+  DaliLog::PrintPass();
+}
+
 /**
  * End of TC Logic Implementation Area.
  **/
@@ -1449,3 +1489,33 @@ int UtcDaliVector3ClampWithMinMaxP(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase        UtcDaliVector3MinP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the minimum of the corresponding component in a and b.
+ */
+int UtcDaliVector3MinP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector3_TestApp testApp( application, VECTOR3_MIN_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase        UtcDaliVector3MaxP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the maximum of the corresponding component in a and b.
+ */
+int UtcDaliVector3MaxP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector3_TestApp testApp( application, VECTOR3_MAX_P);
+  application.MainLoop();
+  return test_return_value;
+}
index dee4b78..169fe89 100755 (executable)
@@ -52,6 +52,8 @@ void Vector4OperatorVector3AssignmentP();
 void Vector4OperatorEqualityP();
 void Vector4OperatorSubscriptP();
 void Vector4ClampWithMinMaxP();
+void Vector4MinP();
+void Vector4MaxP();
 
 namespace
 {
@@ -81,7 +83,9 @@ namespace
     VECTOR4_OPERATOR_VECTOR3_ASSIGNMENT_P,
     VECTOR4_OPERATOR_EQUALITY_P,
     VECTOR4_OPERATOR_SUBSCRIPT_P,
-    VECTOR4_CLAM_WITH_MIN_MAX_P
+    VECTOR4_CLAM_WITH_MIN_MAX_P,
+    VECTOR4_MIN_P,
+    VECTOR4_MAX_P
   };
 
   struct Vector4_TestApp : public ConnectionTracker
@@ -185,6 +189,12 @@ namespace
         case VECTOR4_CLAM_WITH_MIN_MAX_P:
           Vector4ClampWithMinMaxP();
           break;
+        case VECTOR4_MIN_P:
+          Vector4MinP();
+          break;
+        case VECTOR4_MAX_P:
+          Vector4MaxP();
+          break;
       }
     }
 
@@ -642,6 +652,34 @@ void Vector4ClampWithMinMaxP()
   DaliLog::PrintPass();
 }
 
+void Vector4MinP()
+{
+  Vector4 vec4Values1(3.0f, 10.0f, 11.0f, 2.0f);
+  Vector4 vec4Values2(2.0f, 5.0f, 10.0f, 1.0f);
+  Vector4 vec4CalResult(min( vec4Values1.x, vec4Values2.x ), min( vec4Values1.y, vec4Values2.y ), min( vec4Values1.z, vec4Values2.z ), min( vec4Values1.w, vec4Values2.w ) );
+
+  Vector4 vec4GetResult = Min( vec4Values1, vec4Values2 );
+
+  DALI_CHECK_FAIL( vec4GetResult != vec4CalResult , "Min Api failed to return correct value.");
+  DALI_CHECK_FAIL( vec4GetResult.x > vec4Values1.x || vec4GetResult.x > vec4Values2.x ||       vec4GetResult.y > vec4Values1.y || vec4GetResult.y > vec4Values2.y || vec4GetResult.z > vec4Values1.z || vec4GetResult.z > vec4Values2.z || vec4GetResult.w > vec4Values1.w || vec4GetResult.w > vec4Values2.w , "Returning Vector4 is not minimum for all components.");
+
+  DaliLog::PrintPass();
+}
+
+void Vector4MaxP()
+{
+  Vector4 vec4Values1( 2.0f, 10.0f, 11.0f, 2.0f );
+  Vector4 vec4Values2( 4.0f, 5.0f, 10.0f, 1.0f );
+  Vector4 vec4CalResult( max( vec4Values1.x, vec4Values2.x ), max( vec4Values1.y, vec4Values2.y ), max( vec4Values1.z, vec4Values2.z ), max( vec4Values1.w, vec4Values2.w ) );
+
+  Vector4 vec4GetResult = Max( vec4Values1, vec4Values2 );
+
+  DALI_CHECK_FAIL( vec4GetResult != vec4CalResult , "Max Api failed to return correct value.");
+  DALI_CHECK_FAIL( vec4GetResult.x < vec4Values1.x || vec4GetResult.x < vec4Values2.x || vec4GetResult.y < vec4Values1.y || vec4GetResult.y < vec4Values2.y || vec4GetResult.z < vec4Values1.z || vec4GetResult.z < vec4Values2.z || vec4GetResult.w < vec4Values1.w || vec4GetResult.w < vec4Values2.w , "Returning Vector4 is not maximum for all components.");
+
+  DaliLog::PrintPass();
+}
+
 /**
  * End of TC Logic Implementation Area.
  **/
@@ -1020,3 +1058,33 @@ int UtcDaliVector4ClampWithMinMaxP(void)
   application.MainLoop();
   return test_return_value;
 }
+
+/**
+ * @testcase        UtcDaliVector4MinP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the minimum of the corresponding component in a and b.
+ */
+int UtcDaliVector4MinP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector4_TestApp testApp( application, VECTOR4_MIN_P);
+  application.MainLoop();
+  return test_return_value;
+}
+
+/**
+ * @testcase        UtcDaliVector4MaxP
+ * @since_tizen     2.4
+ * @description     Returns a vector with components set to the maximum of the corresponding component in a and b.
+ */
+int UtcDaliVector4MaxP(void)
+{
+  DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__);
+  Application application = Application::New( &gArgc, &gArgv );
+  CHECK_GL;
+  Vector4_TestApp testApp( application, VECTOR4_MAX_P);
+  application.MainLoop();
+  return test_return_value;
+}