[UTC][mmi-framework][ACR-1867] Add new test cases for new apis 93/318293/17
authorJi-hoon Lee <dalton.lee@samsung.com>
Thu, 19 Sep 2024 12:37:18 +0000 (21:37 +0900)
committerJi-hoon Lee <dalton.lee@samsung.com>
Mon, 30 Sep 2024 16:24:12 +0000 (01:24 +0900)
Change-Id: I70855815d3cd61e590d8abbae2348525cb2eb64a

packaging/utc/core-mmi-tests.xml [new file with mode: 0755]
src/CMakeLists.txt
src/utc/mmi/CMakeLists.txt [new file with mode: 0755]
src/utc/mmi/public.list [new file with mode: 0755]
src/utc/mmi/tct-mmi-core.c [new file with mode: 0755]
src/utc/mmi/tct-mmi-core_mobile.h [new file with mode: 0755]
src/utc/mmi/tct-mmi-core_tizeniot.h [new file with mode: 0755]
src/utc/mmi/tct-mmi-core_tv.h [new file with mode: 0755]
src/utc/mmi/tct-mmi-core_wearable.h [new file with mode: 0755]
src/utc/mmi/utc-mmi.c [new file with mode: 0755]

diff --git a/packaging/utc/core-mmi-tests.xml b/packaging/utc/core-mmi-tests.xml
new file mode 100755 (executable)
index 0000000..55232fd
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" package="core-mmi-tests" version="0.1.0" api-version="6.0">
+    <label>CoreMmiTest</label>
+    <author email="test@tizen.org" href="www.tizen.org">test</author>
+    <description>Core API test Application</description>
+    <service-application appid="core.mmi-tests" exec="/usr/apps/core-mmi-tests/bin/tct-mmi-core" nodisplay="false" multiple="false" type="capp" taskmanage="true">
+    <background-category value="background-network"/>
+       <background-category value="download"/>
+       <background-category value="iot-communication"/>
+       <background-category value="location"/>
+       <background-category value="media"/>
+       <background-category value="sensor"/>
+    </service-application>
+</manifest>
index c58ffcc71241ed40927b82b00ad5ceb325c55bad..7cd6500209b91d44e5ba1b6df9913b95be62fd14 100755 (executable)
@@ -193,6 +193,8 @@ ELSE( DEFINED MODULE )
        ADD_SUBDIRECTORY(utc/webrtc)
        MESSAGE(STATUS "Building: ${CMAKE_CURRENT_SOURCE_DIR}/utc/mediaeditor")
        ADD_SUBDIRECTORY(utc/mediaeditor)
+       MESSAGE(STATUS "Building: ${CMAKE_CURRENT_SOURCE_DIR}/utc/mmi")
+       ADD_SUBDIRECTORY(utc/mmi)
        MESSAGE(STATUS "Building: ${CMAKE_CURRENT_SOURCE_DIR}/itc/accounts-svc")
        ADD_SUBDIRECTORY(itc/accounts-svc)
        MESSAGE(STATUS "Building: ${CMAKE_CURRENT_SOURCE_DIR}/itc/appcore-agent")
diff --git a/src/utc/mmi/CMakeLists.txt b/src/utc/mmi/CMakeLists.txt
new file mode 100755 (executable)
index 0000000..802f484
--- /dev/null
@@ -0,0 +1,39 @@
+SET(PKG_NAME "mmi")
+
+SET(EXEC_NAME "tct-${PKG_NAME}-core")
+SET(RPM_NAME "core-${PKG_NAME}-tests")
+
+SET(CAPI_LIB "mmi")
+SET(TC_SOURCES
+       utc-mmi.c
+)
+
+PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
+       ${CAPI_LIB}
+       capi-appfw-service-application
+       capi-system-info
+       ecore
+       glib-2.0
+       dlog
+)
+
+INCLUDE_DIRECTORIES(
+    ${${CAPI_LIB}_INCLUDE_DIRS}
+)
+
+ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.c ${TC_SOURCES} ${COMMON_FILE})
+TARGET_LINK_LIBRARIES(${EXEC_NAME}
+    ${${CAPI_LIB}_LIBRARIES}
+)
+
+INSTALL(PROGRAMS ${EXEC_NAME}
+    DESTINATION ${BIN_DIR}/${RPM_NAME}/bin
+)
+
+IF( DEFINED ASAN )
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -Wall -pie -g -fsanitize=address -fsanitize-recover=address -U_FORTIFY_SOURCE -fno-omit-frame-pointer")
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -Wl,-fsanitize=address")
+ELSE()
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -g -fPIE -Wall")
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -pie")
+ENDIF()
diff --git a/src/utc/mmi/public.list b/src/utc/mmi/public.list
new file mode 100755 (executable)
index 0000000..9e76a6f
--- /dev/null
@@ -0,0 +1,139 @@
+mmi_initialize
+mmi_deinitialize
+mmi_set_state_changed_cb
+mmi_unset_state_changed_cb
+mmi_standard_workflow_instance_create
+mmi_custom_workflow_instance_create
+mmi_workflow_instance_destroy
+mmi_workflow_instance_activate
+mmi_workflow_instance_deactivate
+mmi_workflow_instance_set_attribute
+mmi_workflow_instance_emit_signal
+mmi_workflow_instance_set_output_cb
+mmi_workflow_instance_unset_output_cb
+mmi_attribute_create
+mmi_attribute_set_name
+mmi_attribute_get_name
+mmi_attribute_get_value
+mmi_attribute_clone
+mmi_attribute_destroy
+mmi_attribute_to_bytes
+mmi_attribute_from_bytes
+mmi_attribute_create_string_array
+mmi_data_create_bool
+mmi_data_create_int
+mmi_data_create_float
+mmi_data_create_text
+mmi_data_create_audio
+mmi_data_create_video
+mmi_data_create_user_identification
+mmi_data_create_coordinate
+mmi_data_create_bounding_box
+mmi_data_create_array
+mmi_data_add_array_element
+mmi_data_create_struct
+mmi_data_set_struct_element
+mmi_data_get_type
+mmi_data_get_bool
+mmi_data_get_int
+mmi_data_get_float
+mmi_data_get_text
+mmi_data_get_audio
+mmi_data_get_video
+mmi_data_get_user_identification
+mmi_data_get_coordinate
+mmi_data_get_bounding_box
+mmi_data_get_array_count
+mmi_data_get_array_element
+mmi_data_get_struct_element
+mmi_data_get_struct_count
+mmi_data_get_struct_element_name
+mmi_data_get_struct_element_value
+mmi_data_to_bytes
+mmi_data_from_bytes
+mmi_data_destroy
+mmi_primitive_value_create_int
+mmi_primitive_value_create_float
+mmi_primitive_value_create_string
+mmi_primitive_value_create_bool
+mmi_primitive_value_create_array
+mmi_primitive_value_add_array_element
+mmi_primitive_value_get_type
+mmi_primitive_value_get_int
+mmi_primitive_value_get_float
+mmi_primitive_value_get_string
+mmi_primitive_value_get_bool
+mmi_primitive_value_get_array_count
+mmi_primitive_value_get_array_element
+mmi_primitive_value_clone
+mmi_primitive_value_destroy
+mmi_primitive_value_to_bytes
+mmi_primitive_value_from_bytes
+mmi_signal_parameter_create
+mmi_signal_parameter_get_name
+mmi_signal_parameter_get_value
+mmi_signal_parameter_clone
+mmi_signal_parameter_destroy
+mmi_signal_create
+mmi_signal_add_parameter
+mmi_signal_get_name
+mmi_signal_get_parameter_count
+mmi_signal_get_parameter
+mmi_signal_destroy
+mmi_node_set_initialized_cb
+mmi_node_set_deinitialized_cb
+mmi_node_set_attribute_set_cb
+mmi_node_set_activated_cb
+mmi_node_set_deactivated_cb
+mmi_node_set_signal_received_cb
+mmi_node_add_port
+mmi_node_find_port
+mmi_node_get_type
+mmi_node_get_port_count
+mmi_node_get_port
+mmi_node_register
+mmi_node_clone
+mmi_node_destroy
+mmi_node_instance_set_attribute
+mmi_node_instance_find_port_instance
+mmi_node_instance_find_by_port_instance
+mmi_node_instance_find_sibling_port_instance
+mmi_node_instance_emit_signal
+mmi_node_instance_update_pending_activation_result
+mmi_node_create_source
+mmi_node_get_source_type
+mmi_node_create_processor
+mmi_node_get_processor_type
+mmi_node_create_logic
+mmi_node_get_logic_type
+mmi_node_create_controller
+mmi_node_get_controller_type
+mmi_node_create_action
+mmi_node_get_action_type
+mmi_node_create_custom
+mmi_node_get_custom_type
+mmi_port_create
+mmi_port_get_name
+mmi_port_get_type
+mmi_port_get_data_type
+mmi_port_set_name
+mmi_port_set_type
+mmi_port_set_data_type
+mmi_port_set_input_data_received_cb
+mmi_port_clone
+mmi_port_destroy
+mmi_port_instance_generate_output
+mmi_workflow_create
+mmi_workflow_set_type
+mmi_workflow_get_type
+mmi_workflow_node_add
+mmi_workflow_link_nodes_by_names
+mmi_workflow_attribute_assign
+mmi_workflow_attribute_set_default_value
+mmi_workflow_signal_assign
+mmi_workflow_output_assign
+mmi_workflow_output_assign_by_port
+mmi_standard_workflow_register
+mmi_workflow_clone
+mmi_workflow_create_from_script
+mmi_workflow_destroy
diff --git a/src/utc/mmi/tct-mmi-core.c b/src/utc/mmi/tct-mmi-core.c
new file mode 100755 (executable)
index 0000000..2d49018
--- /dev/null
@@ -0,0 +1,139 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#include <stdio.h>
+#include <string.h>
+#include <malloc.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <glib.h>
+#include <stdbool.h>
+#include "tct_common.h"
+#include <service_app.h>
+#include <dlog.h>
+
+#ifdef MOBILE
+#include "tct-mmi-core_mobile.h"
+#endif
+
+#ifdef WEARABLE
+#include "tct-mmi-core_wearable.h"
+#endif
+
+#ifdef TV
+#include "tct-mmi-core_tv.h"
+#endif
+
+#ifdef TIZENIOT
+#include "tct-mmi-core_tizeniot.h"
+#endif
+
+int g_argc;
+char** g_argv = NULL;
+
+void transfer_arg(int * argc, char ** argv[])
+{
+       *argc = g_argc;
+       *argv = g_argv;
+       dlog_print(DLOG_INFO, "NativeTCT", "[transfer_arg called] argc = %d, argv[0] = %s", *argc, (NULL == *argv) ? "NULL" : *argv[0]);
+}
+
+static bool app_create(void *data)
+{
+       return true; // quit app
+}
+
+static void app_control(app_control_h app_control, void *data)
+{
+       int result = -1;
+       int nRet = 0;
+       int i;
+       char *func_name = NULL;
+
+       nRet = app_control_get_extra_data(app_control, "testcase_name", &func_name);
+       if(nRet != APP_CONTROL_ERROR_NONE)
+       {
+               dlog_print(DLOG_ERROR, "NativeTCT", "[%s:%d] app_control_get_extra_data returns error = %d", __FUNCTION__, __LINE__, nRet);
+               PRINT_UTC_LOG("\\n[%s][Line : %d]Unable to fetch test case name: app_control_get_extra_data API call fails\\n", __FILE__, __LINE__);
+               PRINT_TC_RESULT("%d",1);
+               FREE_MEMORY_TC(func_name);
+               return;
+       }
+
+       dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Executing TC Name = %s", __FUNCTION__, __LINE__, func_name);
+
+       for (i = 0; tc_array[i].name; i++)
+       {
+               if (!strncmp(func_name, tc_array[i].name, strlen(func_name)))
+               {
+                       DUMP_UTC_ERRLOG();
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup begin", func_name);
+                       if (tc_array[i].startup){
+                               tc_array[i].startup();
+                       }
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup end", func_name);
+
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Body begin", func_name);
+                       result = tc_array[i].function();
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Body end", func_name);
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup begin", func_name);
+                       if (tc_array[i].cleanup){
+                               tc_array[i].cleanup();
+                       }
+                       dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup end", func_name);
+
+                       CLOSE_UTC_ERRLOG();
+                       FILE *fres = fopen("/tmp/tcresult","w"); fprintf(fres, "%d", result); fclose(fres);
+
+                       return;
+               }
+       }
+
+       dlog_print(DLOG_ERROR, "NativeTCT", "[%s:%d] Unable to execute %s : Unknown Test Case Name", __FUNCTION__, __LINE__, func_name);
+
+       printf("Unknown testcase name: \"%s\"\n", func_name);
+       return;
+}
+
+static void app_terminate(void *data)
+{
+       dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Application Package is now Terminating", __FUNCTION__, __LINE__);
+}
+
+int main(int argc, char *argv[])
+{
+       int ret = 0;
+
+       g_argc = argc;
+       g_argv = argv;
+
+       service_app_lifecycle_callback_s event_callback = {0,};
+       event_callback.create = app_create;
+       event_callback.terminate = app_terminate;
+       event_callback.app_control = app_control;
+
+       //setting gcda file location for coverage
+       setenv("GCOV_PREFIX","/tmp",1);
+       dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Coverage *.gcda File location set to /tmp/home/abuild/rpmbuild/BUILD/ ", __FUNCTION__, __LINE__);
+
+       ret = service_app_main(argc, argv, &event_callback, NULL);
+       if (ret != APP_ERROR_NONE)
+       {
+               printf("\n[Line No : %d]Unable to execute test cases: service_app_main API call gets failed\n", __LINE__);
+       }
+       return ret;
+}
diff --git a/src/utc/mmi/tct-mmi-core_mobile.h b/src/utc/mmi/tct-mmi-core_mobile.h
new file mode 100755 (executable)
index 0000000..8ea321a
--- /dev/null
@@ -0,0 +1,649 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#ifndef __TCT_MMI-NATIVE_H__
+#define __TCT_MMI-NATIVE_H__
+
+#include "testcase.h"
+#include "tct_common.h"
+
+extern void utc_mmi_startup(void);
+extern void utc_mmi_cleanup(void);
+
+extern int utc_mmi_initialize_p(void);
+extern int utc_mmi_initialize_n(void);
+extern int utc_mmi_deinitialize_p(void);
+extern int utc_mmi_deinitialize_n(void);
+extern int utc_mmi_set_state_changed_cb_p(void);
+extern int utc_mmi_set_state_changed_cb_n(void);
+extern int utc_mmi_unset_state_changed_cb_p(void);
+extern int utc_mmi_unset_state_changed_cb_n(void);
+extern int utc_mmi_standard_workflow_instance_create_p(void);
+extern int utc_mmi_standard_workflow_instance_create_n(void);
+extern int utc_mmi_custom_workflow_instance_create_p(void);
+extern int utc_mmi_custom_workflow_instance_create_n(void);
+extern int utc_mmi_workflow_instance_destroy_p(void);
+extern int utc_mmi_workflow_instance_destroy_n(void);
+extern int utc_mmi_workflow_instance_activate_p(void);
+extern int utc_mmi_workflow_instance_activate_n(void);
+extern int utc_mmi_workflow_instance_deactivate_p(void);
+extern int utc_mmi_workflow_instance_deactivate_n(void);
+extern int utc_mmi_workflow_instance_set_attribute_p(void);
+extern int utc_mmi_workflow_instance_set_attribute_n(void);
+extern int utc_mmi_workflow_instance_emit_signal_p(void);
+extern int utc_mmi_workflow_instance_emit_signal_n(void);
+extern int utc_mmi_workflow_instance_set_output_cb_p(void);
+extern int utc_mmi_workflow_instance_set_output_cb_n(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_p(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_n(void);
+extern int utc_mmi_workflow_create_p(void);
+extern int utc_mmi_workflow_create_n(void);
+extern int utc_mmi_workflow_set_type_p(void);
+extern int utc_mmi_workflow_set_type_n(void);
+extern int utc_mmi_workflow_get_type_p(void);
+extern int utc_mmi_workflow_get_type_n(void);
+extern int utc_mmi_workflow_node_add_p(void);
+extern int utc_mmi_workflow_node_add_n(void);
+extern int utc_mmi_workflow_link_nodes_by_names_p(void);
+extern int utc_mmi_workflow_link_nodes_by_names_n(void);
+extern int utc_mmi_workflow_attribute_assign_p(void);
+extern int utc_mmi_workflow_attribute_assign_n(void);
+extern int utc_mmi_workflow_attribute_set_default_value_p(void);
+extern int utc_mmi_workflow_attribute_set_default_value_n(void);
+extern int utc_mmi_workflow_signal_assign_p(void);
+extern int utc_mmi_workflow_signal_assign_n(void);
+extern int utc_mmi_workflow_output_assign_p(void);
+extern int utc_mmi_workflow_output_assign_n(void);
+extern int utc_mmi_workflow_output_assign_by_port_p(void);
+extern int utc_mmi_workflow_output_assign_by_port_n(void);
+extern int utc_mmi_standard_workflow_register_p(void);
+extern int utc_mmi_standard_workflow_register_n(void);
+extern int utc_mmi_workflow_clone_p(void);
+extern int utc_mmi_workflow_clone_n(void);
+extern int utc_mmi_workflow_create_from_script_p(void);
+extern int utc_mmi_workflow_create_from_script_n(void);
+extern int utc_mmi_workflow_destroy_p(void);
+extern int utc_mmi_workflow_destroy_n(void);
+extern int utc_mmi_node_set_initialized_cb_p(void);
+extern int utc_mmi_node_set_initialized_cb_n(void);
+extern int utc_mmi_node_set_deinitialized_cb_p(void);
+extern int utc_mmi_node_set_deinitialized_cb_n(void);
+extern int utc_mmi_node_set_attribute_set_cb_p(void);
+extern int utc_mmi_node_set_attribute_set_cb_n(void);
+extern int utc_mmi_node_set_activated_cb_p(void);
+extern int utc_mmi_node_set_activated_cb_n(void);
+extern int utc_mmi_node_set_deactivated_cb_p(void);
+extern int utc_mmi_node_set_deactivated_cb_n(void);
+extern int utc_mmi_node_set_signal_received_cb_p(void);
+extern int utc_mmi_node_set_signal_received_cb_n(void);
+extern int utc_mmi_node_add_port_p(void);
+extern int utc_mmi_node_add_port_n(void);
+extern int utc_mmi_node_find_port_p(void);
+extern int utc_mmi_node_find_port_n(void);
+extern int utc_mmi_node_get_type_p(void);
+extern int utc_mmi_node_get_type_n(void);
+extern int utc_mmi_node_get_port_count_p(void);
+extern int utc_mmi_node_get_port_count_n(void);
+extern int utc_mmi_node_get_port_p(void);
+extern int utc_mmi_node_get_port_n(void);
+extern int utc_mmi_node_register_p(void);
+extern int utc_mmi_node_register_n(void);
+extern int utc_mmi_node_clone_p(void);
+extern int utc_mmi_node_clone_n(void);
+extern int utc_mmi_node_destroy_p(void);
+extern int utc_mmi_node_destroy_n(void);
+extern int utc_mmi_node_instance_set_attribute_p(void);
+extern int utc_mmi_node_instance_set_attribute_n(void);
+extern int utc_mmi_node_instance_find_port_instance_p(void);
+extern int utc_mmi_node_instance_find_port_instance_n(void);
+extern int utc_mmi_node_instance_find_by_port_instance_p(void);
+extern int utc_mmi_node_instance_find_by_port_instance_n(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_p(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_n(void);
+extern int utc_mmi_node_instance_emit_signal_p(void);
+extern int utc_mmi_node_instance_emit_signal_n(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_p(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_n(void);
+extern int utc_mmi_data_create_bool_p(void);
+extern int utc_mmi_data_create_bool_n(void);
+extern int utc_mmi_data_create_int_p(void);
+extern int utc_mmi_data_create_int_n(void);
+extern int utc_mmi_data_create_float_p(void);
+extern int utc_mmi_data_create_float_n(void);
+extern int utc_mmi_data_create_text_p(void);
+extern int utc_mmi_data_create_text_n(void);
+extern int utc_mmi_data_create_audio_p(void);
+extern int utc_mmi_data_create_audio_n(void);
+extern int utc_mmi_data_create_video_p(void);
+extern int utc_mmi_data_create_video_n(void);
+extern int utc_mmi_data_create_user_identification_p(void);
+extern int utc_mmi_data_create_user_identification_n(void);
+extern int utc_mmi_data_create_coordinate_p(void);
+extern int utc_mmi_data_create_coordinate_n(void);
+extern int utc_mmi_data_create_bounding_box_p(void);
+extern int utc_mmi_data_create_bounding_box_n(void);
+extern int utc_mmi_data_create_array_p(void);
+extern int utc_mmi_data_create_array_n(void);
+extern int utc_mmi_data_add_array_element_p(void);
+extern int utc_mmi_data_add_array_element_n1(void);
+extern int utc_mmi_data_add_array_element_n2(void);
+extern int utc_mmi_data_create_struct_p(void);
+extern int utc_mmi_data_create_struct_n(void);
+extern int utc_mmi_data_set_struct_element_p(void);
+extern int utc_mmi_data_set_struct_element_n(void);
+extern int utc_mmi_data_get_type_p(void);
+extern int utc_mmi_data_get_type_n(void);
+extern int utc_mmi_data_get_bool_p(void);
+extern int utc_mmi_data_get_bool_n1(void);
+extern int utc_mmi_data_get_bool_n2(void);
+extern int utc_mmi_data_get_int_p(void);
+extern int utc_mmi_data_get_int_n1(void);
+extern int utc_mmi_data_get_int_n2(void);
+extern int utc_mmi_data_get_float_p(void);
+extern int utc_mmi_data_get_float_n1(void);
+extern int utc_mmi_data_get_float_n2(void);
+extern int utc_mmi_data_get_text_p(void);
+extern int utc_mmi_data_get_text_n1(void);
+extern int utc_mmi_data_get_text_n2(void);
+extern int utc_mmi_data_get_audio_p(void);
+extern int utc_mmi_data_get_audio_n1(void);
+extern int utc_mmi_data_get_audio_n2(void);
+extern int utc_mmi_data_get_video_p(void);
+extern int utc_mmi_data_get_video_n1(void);
+extern int utc_mmi_data_get_video_n2(void);
+extern int utc_mmi_data_get_user_identification_p(void);
+extern int utc_mmi_data_get_user_identification_n1(void);
+extern int utc_mmi_data_get_user_identification_n2(void);
+extern int utc_mmi_data_get_coordinate_p(void);
+extern int utc_mmi_data_get_coordinate_n1(void);
+extern int utc_mmi_data_get_coordinate_n2(void);
+extern int utc_mmi_data_get_bounding_box_p(void);
+extern int utc_mmi_data_get_bounding_box_n1(void);
+extern int utc_mmi_data_get_bounding_box_n2(void);
+extern int utc_mmi_data_get_array_count_p(void);
+extern int utc_mmi_data_get_array_count_n1(void);
+extern int utc_mmi_data_get_array_count_n2(void);
+extern int utc_mmi_data_get_array_element_p(void);
+extern int utc_mmi_data_get_array_element_n1(void);
+extern int utc_mmi_data_get_array_element_n2(void);
+extern int utc_mmi_data_get_struct_element_p1(void);
+extern int utc_mmi_data_get_struct_element_p2(void);
+extern int utc_mmi_data_get_struct_element_n1(void);
+extern int utc_mmi_data_get_struct_element_n2(void);
+extern int utc_mmi_data_get_struct_count_p(void);
+extern int utc_mmi_data_get_struct_count_n(void);
+extern int utc_mmi_data_get_struct_element_name_p(void);
+extern int utc_mmi_data_get_struct_element_name_n(void);
+extern int utc_mmi_data_get_struct_element_value_p(void);
+extern int utc_mmi_data_get_struct_element_value_n(void);
+extern int utc_mmi_data_to_bytes_p(void);
+extern int utc_mmi_data_to_bytes_n(void);
+extern int utc_mmi_data_from_bytes_p(void);
+extern int utc_mmi_data_from_bytes_n(void);
+extern int utc_mmi_data_destroy_p1(void);
+extern int utc_mmi_data_destroy_p2(void);
+extern int utc_mmi_data_destroy_p3(void);
+extern int utc_mmi_data_destroy_p4(void);
+extern int utc_mmi_data_destroy_n(void);
+extern int utc_mmi_attribute_create_p(void);
+extern int utc_mmi_attribute_create_n1(void);
+extern int utc_mmi_attribute_create_n2(void);
+extern int utc_mmi_attribute_set_name_p(void);
+extern int utc_mmi_attribute_set_name_n(void);
+extern int utc_mmi_attribute_get_name_p(void);
+extern int utc_mmi_attribute_get_name_n(void);
+extern int utc_mmi_attribute_get_value_p(void);
+extern int utc_mmi_attribute_get_value_n(void);
+extern int utc_mmi_attribute_clone_p(void);
+extern int utc_mmi_attribute_clone_n(void);
+extern int utc_mmi_attribute_destroy_p(void);
+extern int utc_mmi_attribute_destroy_n(void);
+extern int utc_mmi_attribute_to_bytes_p(void);
+extern int utc_mmi_attribute_to_bytes_n(void);
+extern int utc_mmi_attribute_from_bytes_p(void);
+extern int utc_mmi_attribute_from_bytes_n(void);
+extern int utc_mmi_attribute_create_string_array_p(void);
+extern int utc_mmi_attribute_create_string_array_n(void);
+extern int utc_mmi_primitive_value_create_int_p(void);
+extern int utc_mmi_primitive_value_create_int_n(void);
+extern int utc_mmi_primitive_value_create_float_p(void);
+extern int utc_mmi_primitive_value_create_float_n(void);
+extern int utc_mmi_primitive_value_create_string_p(void);
+extern int utc_mmi_primitive_value_create_string_n(void);
+extern int utc_mmi_primitive_value_create_bool_p(void);
+extern int utc_mmi_primitive_value_create_bool_n(void);
+extern int utc_mmi_primitive_value_create_array_p(void);
+extern int utc_mmi_primitive_value_create_array_n(void);
+extern int utc_mmi_primitive_value_add_array_element_p(void);
+extern int utc_mmi_primitive_value_add_array_element_n1(void);
+extern int utc_mmi_primitive_value_add_array_element_n2(void);
+extern int utc_mmi_primitive_value_get_type_p(void);
+extern int utc_mmi_primitive_value_get_type_n(void);
+extern int utc_mmi_primitive_value_get_bool_p(void);
+extern int utc_mmi_primitive_value_get_bool_n1(void);
+extern int utc_mmi_primitive_value_get_bool_n2(void);
+extern int utc_mmi_primitive_value_get_int_p(void);
+extern int utc_mmi_primitive_value_get_int_n1(void);
+extern int utc_mmi_primitive_value_get_int_n2(void);
+extern int utc_mmi_primitive_value_get_float_p(void);
+extern int utc_mmi_primitive_value_get_float_n1(void);
+extern int utc_mmi_primitive_value_get_float_n2(void);
+extern int utc_mmi_primitive_value_get_string_p(void);
+extern int utc_mmi_primitive_value_get_string_n1(void);
+extern int utc_mmi_primitive_value_get_string_n2(void);
+extern int utc_mmi_primitive_value_get_array_count_p(void);
+extern int utc_mmi_primitive_value_get_array_count_n1(void);
+extern int utc_mmi_primitive_value_get_array_count_n2(void);
+extern int utc_mmi_primitive_value_get_array_element_p(void);
+extern int utc_mmi_primitive_value_get_array_element_n1(void);
+extern int utc_mmi_primitive_value_get_array_element_n2(void);
+extern int utc_mmi_primitive_value_clone_p1(void);
+extern int utc_mmi_primitive_value_clone_p2(void);
+extern int utc_mmi_primitive_value_clone_p3(void);
+extern int utc_mmi_primitive_value_clone_n(void);
+extern int utc_mmi_primitive_value_destroy_p1(void);
+extern int utc_mmi_primitive_value_destroy_p2(void);
+extern int utc_mmi_primitive_value_destroy_p3(void);
+extern int utc_mmi_primitive_value_destroy_n(void);
+extern int utc_mmi_primitive_value_to_bytes_p(void);
+extern int utc_mmi_primitive_value_to_bytes_n(void);
+extern int utc_mmi_primitive_value_from_bytes_p1(void);
+extern int utc_mmi_primitive_value_from_bytes_p2(void);
+extern int utc_mmi_primitive_value_from_bytes_p3(void);
+extern int utc_mmi_primitive_value_from_bytes_n(void);
+extern int utc_mmi_signal_parameter_create_p(void);
+extern int utc_mmi_signal_parameter_create_n(void);
+extern int utc_mmi_signal_parameter_get_name_p(void);
+extern int utc_mmi_signal_parameter_get_name_n(void);
+extern int utc_mmi_signal_parameter_get_value_p(void);
+extern int utc_mmi_signal_parameter_get_value_n(void);
+extern int utc_mmi_signal_parameter_clone_p(void);
+extern int utc_mmi_signal_parameter_clone_n(void);
+extern int utc_mmi_signal_parameter_destroy_p(void);
+extern int utc_mmi_signal_parameter_destroy_n(void);
+extern int utc_mmi_signal_create_p(void);
+extern int utc_mmi_signal_create_n(void);
+extern int utc_mmi_signal_add_parameter_p(void);
+extern int utc_mmi_signal_add_parameter_n(void);
+extern int utc_mmi_signal_get_name_p(void);
+extern int utc_mmi_signal_get_name_n(void);
+extern int utc_mmi_signal_get_parameter_count_p(void);
+extern int utc_mmi_signal_get_parameter_count_n(void);
+extern int utc_mmi_signal_get_parameter_p(void);
+extern int utc_mmi_signal_get_parameter_n(void);
+extern int utc_mmi_signal_destroy_p(void);
+extern int utc_mmi_signal_destroy_n(void);
+extern int utc_mmi_node_create_source_p(void);
+extern int utc_mmi_node_create_source_n(void);
+extern int utc_mmi_node_get_source_type_p(void);
+extern int utc_mmi_node_get_source_type_n(void);
+extern int utc_mmi_node_create_processor_p(void);
+extern int utc_mmi_node_create_processor_n(void);
+extern int utc_mmi_node_get_processor_type_p(void);
+extern int utc_mmi_node_get_processor_type_n(void);
+extern int utc_mmi_node_create_logic_p(void);
+extern int utc_mmi_node_create_logic_n(void);
+extern int utc_mmi_node_get_logic_type_p(void);
+extern int utc_mmi_node_get_logic_type_n(void);
+extern int utc_mmi_node_create_controller_p(void);
+extern int utc_mmi_node_create_controller_n(void);
+extern int utc_mmi_node_get_controller_type_p(void);
+extern int utc_mmi_node_get_controller_type_n(void);
+extern int utc_mmi_node_create_action_p(void);
+extern int utc_mmi_node_create_action_n(void);
+extern int utc_mmi_node_get_action_type_p(void);
+extern int utc_mmi_node_get_action_type_n(void);
+extern int utc_mmi_node_create_custom_p(void);
+extern int utc_mmi_node_create_custom_n(void);
+extern int utc_mmi_node_get_custom_type_p(void);
+extern int utc_mmi_node_get_custom_type_n(void);
+extern int utc_mmi_port_create_p(void);
+extern int utc_mmi_port_create_n(void);
+extern int utc_mmi_port_get_name_p(void);
+extern int utc_mmi_port_get_name_n(void);
+extern int utc_mmi_port_get_type_p(void);
+extern int utc_mmi_port_get_type_n(void);
+extern int utc_mmi_port_get_data_type_p(void);
+extern int utc_mmi_port_get_data_type_n(void);
+extern int utc_mmi_port_set_name_p(void);
+extern int utc_mmi_port_set_name_n(void);
+extern int utc_mmi_port_set_type_p(void);
+extern int utc_mmi_port_set_type_n(void);
+extern int utc_mmi_port_set_data_type_p(void);
+extern int utc_mmi_port_set_data_type_n(void);
+extern int utc_mmi_port_set_input_data_received_cb_p(void);
+extern int utc_mmi_port_set_input_data_received_cb_n(void);
+extern int utc_mmi_port_clone_p(void);
+extern int utc_mmi_port_clone_n(void);
+extern int utc_mmi_port_destroy_p(void);
+extern int utc_mmi_port_destroy_n(void);
+extern int utc_mmi_port_instance_generate_output_p(void);
+extern int utc_mmi_port_instance_generate_output_n(void);
+
+testcase tc_array[] = {
+       {"utc_mmi_initialize_p", utc_mmi_initialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_initialize_n", utc_mmi_initialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_p", utc_mmi_deinitialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_n", utc_mmi_deinitialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_p", utc_mmi_set_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_n", utc_mmi_set_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_p", utc_mmi_unset_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_n", utc_mmi_unset_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_p", utc_mmi_standard_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_n", utc_mmi_standard_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_p", utc_mmi_custom_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_n", utc_mmi_custom_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_p", utc_mmi_workflow_instance_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_n", utc_mmi_workflow_instance_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_p", utc_mmi_workflow_instance_activate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_n", utc_mmi_workflow_instance_activate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_p", utc_mmi_workflow_instance_deactivate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_n", utc_mmi_workflow_instance_deactivate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_p", utc_mmi_workflow_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_n", utc_mmi_workflow_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_p", utc_mmi_workflow_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_n", utc_mmi_workflow_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_p", utc_mmi_workflow_instance_set_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_n", utc_mmi_workflow_instance_set_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_p", utc_mmi_workflow_instance_unset_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_n", utc_mmi_workflow_instance_unset_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_p", utc_mmi_workflow_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_n", utc_mmi_workflow_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_p", utc_mmi_workflow_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_n", utc_mmi_workflow_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_p", utc_mmi_workflow_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_n", utc_mmi_workflow_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_p", utc_mmi_workflow_node_add_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_n", utc_mmi_workflow_node_add_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_p", utc_mmi_workflow_link_nodes_by_names_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_n", utc_mmi_workflow_link_nodes_by_names_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_p", utc_mmi_workflow_attribute_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_n", utc_mmi_workflow_attribute_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_p", utc_mmi_workflow_attribute_set_default_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_n", utc_mmi_workflow_attribute_set_default_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_p", utc_mmi_workflow_signal_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_n", utc_mmi_workflow_signal_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_p", utc_mmi_workflow_output_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_n", utc_mmi_workflow_output_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_p", utc_mmi_workflow_output_assign_by_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_n", utc_mmi_workflow_output_assign_by_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_p", utc_mmi_standard_workflow_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_n", utc_mmi_standard_workflow_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_p", utc_mmi_workflow_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_n", utc_mmi_workflow_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_p", utc_mmi_workflow_create_from_script_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_n", utc_mmi_workflow_create_from_script_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_p", utc_mmi_workflow_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_n", utc_mmi_workflow_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_p", utc_mmi_node_set_initialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_n", utc_mmi_node_set_initialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_p", utc_mmi_node_set_deinitialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_n", utc_mmi_node_set_deinitialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_p", utc_mmi_node_set_attribute_set_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_n", utc_mmi_node_set_attribute_set_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_p", utc_mmi_node_set_activated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_n", utc_mmi_node_set_activated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_p", utc_mmi_node_set_deactivated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_n", utc_mmi_node_set_deactivated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_p", utc_mmi_node_set_signal_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_n", utc_mmi_node_set_signal_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_p", utc_mmi_node_add_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_n", utc_mmi_node_add_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_p", utc_mmi_node_find_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_n", utc_mmi_node_find_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_p", utc_mmi_node_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_n", utc_mmi_node_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_p", utc_mmi_node_get_port_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_n", utc_mmi_node_get_port_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_p", utc_mmi_node_get_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_n", utc_mmi_node_get_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_p", utc_mmi_node_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_n", utc_mmi_node_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_p", utc_mmi_node_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_n", utc_mmi_node_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_p", utc_mmi_node_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_n", utc_mmi_node_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_p", utc_mmi_node_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_n", utc_mmi_node_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_p", utc_mmi_node_instance_find_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_n", utc_mmi_node_instance_find_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_p", utc_mmi_node_instance_find_by_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_n", utc_mmi_node_instance_find_by_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_p", utc_mmi_node_instance_find_sibling_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_n", utc_mmi_node_instance_find_sibling_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_p", utc_mmi_node_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_n", utc_mmi_node_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_p", utc_mmi_node_instance_update_pending_activation_result_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_n", utc_mmi_node_instance_update_pending_activation_result_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_p", utc_mmi_data_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_n", utc_mmi_data_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_p", utc_mmi_data_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_n", utc_mmi_data_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_p", utc_mmi_data_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_n", utc_mmi_data_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_p", utc_mmi_data_create_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_n", utc_mmi_data_create_text_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_p", utc_mmi_data_create_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_n", utc_mmi_data_create_audio_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_p", utc_mmi_data_create_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_n", utc_mmi_data_create_video_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_p", utc_mmi_data_create_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_n", utc_mmi_data_create_user_identification_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_p", utc_mmi_data_create_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_n", utc_mmi_data_create_coordinate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_p", utc_mmi_data_create_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_n", utc_mmi_data_create_bounding_box_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_p", utc_mmi_data_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_n", utc_mmi_data_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_p", utc_mmi_data_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n1", utc_mmi_data_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n2", utc_mmi_data_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_p", utc_mmi_data_create_struct_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_n", utc_mmi_data_create_struct_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_p", utc_mmi_data_set_struct_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_n", utc_mmi_data_set_struct_element_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_p", utc_mmi_data_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_n", utc_mmi_data_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_p", utc_mmi_data_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n1", utc_mmi_data_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n2", utc_mmi_data_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_p", utc_mmi_data_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n1", utc_mmi_data_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n2", utc_mmi_data_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_p", utc_mmi_data_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n1", utc_mmi_data_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n2", utc_mmi_data_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_p", utc_mmi_data_get_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n1", utc_mmi_data_get_text_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n2", utc_mmi_data_get_text_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_p", utc_mmi_data_get_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n1", utc_mmi_data_get_audio_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n2", utc_mmi_data_get_audio_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_p", utc_mmi_data_get_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n1", utc_mmi_data_get_video_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n2", utc_mmi_data_get_video_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_p", utc_mmi_data_get_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n1", utc_mmi_data_get_user_identification_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n2", utc_mmi_data_get_user_identification_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_p", utc_mmi_data_get_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n1", utc_mmi_data_get_coordinate_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n2", utc_mmi_data_get_coordinate_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_p", utc_mmi_data_get_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n1", utc_mmi_data_get_bounding_box_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n2", utc_mmi_data_get_bounding_box_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_p", utc_mmi_data_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n1", utc_mmi_data_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n2", utc_mmi_data_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_p", utc_mmi_data_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n1", utc_mmi_data_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n2", utc_mmi_data_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p1", utc_mmi_data_get_struct_element_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p2", utc_mmi_data_get_struct_element_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n1", utc_mmi_data_get_struct_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n2", utc_mmi_data_get_struct_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_p", utc_mmi_data_get_struct_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_n", utc_mmi_data_get_struct_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_p", utc_mmi_data_get_struct_element_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_n", utc_mmi_data_get_struct_element_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_p", utc_mmi_data_get_struct_element_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_n", utc_mmi_data_get_struct_element_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_p", utc_mmi_data_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_n", utc_mmi_data_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_p", utc_mmi_data_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_n", utc_mmi_data_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p1", utc_mmi_data_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p2", utc_mmi_data_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p3", utc_mmi_data_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p4", utc_mmi_data_destroy_p4, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_n", utc_mmi_data_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_p", utc_mmi_attribute_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n1", utc_mmi_attribute_create_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n2", utc_mmi_attribute_create_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_p", utc_mmi_attribute_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_n", utc_mmi_attribute_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_p", utc_mmi_attribute_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_n", utc_mmi_attribute_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_p", utc_mmi_attribute_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_n", utc_mmi_attribute_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_p", utc_mmi_attribute_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_n", utc_mmi_attribute_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_p", utc_mmi_attribute_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_n", utc_mmi_attribute_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_p", utc_mmi_attribute_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_n", utc_mmi_attribute_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_p", utc_mmi_attribute_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_n", utc_mmi_attribute_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_p", utc_mmi_attribute_create_string_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_n", utc_mmi_attribute_create_string_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_p", utc_mmi_primitive_value_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_n", utc_mmi_primitive_value_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_p", utc_mmi_primitive_value_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_n", utc_mmi_primitive_value_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_p", utc_mmi_primitive_value_create_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_n", utc_mmi_primitive_value_create_string_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_p", utc_mmi_primitive_value_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_n", utc_mmi_primitive_value_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_p", utc_mmi_primitive_value_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_n", utc_mmi_primitive_value_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_p", utc_mmi_primitive_value_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n1", utc_mmi_primitive_value_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n2", utc_mmi_primitive_value_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_p", utc_mmi_primitive_value_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_n", utc_mmi_primitive_value_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_p", utc_mmi_primitive_value_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n1", utc_mmi_primitive_value_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n2", utc_mmi_primitive_value_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_p", utc_mmi_primitive_value_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n1", utc_mmi_primitive_value_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n2", utc_mmi_primitive_value_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_p", utc_mmi_primitive_value_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n1", utc_mmi_primitive_value_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n2", utc_mmi_primitive_value_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_p", utc_mmi_primitive_value_get_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n1", utc_mmi_primitive_value_get_string_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n2", utc_mmi_primitive_value_get_string_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_p", utc_mmi_primitive_value_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n1", utc_mmi_primitive_value_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n2", utc_mmi_primitive_value_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_p", utc_mmi_primitive_value_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n1", utc_mmi_primitive_value_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n2", utc_mmi_primitive_value_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p1", utc_mmi_primitive_value_clone_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p2", utc_mmi_primitive_value_clone_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p3", utc_mmi_primitive_value_clone_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_n", utc_mmi_primitive_value_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p1", utc_mmi_primitive_value_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p2", utc_mmi_primitive_value_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p3", utc_mmi_primitive_value_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_n", utc_mmi_primitive_value_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_p", utc_mmi_primitive_value_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_n", utc_mmi_primitive_value_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p1", utc_mmi_primitive_value_from_bytes_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p2", utc_mmi_primitive_value_from_bytes_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p3", utc_mmi_primitive_value_from_bytes_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_n", utc_mmi_primitive_value_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_p", utc_mmi_signal_parameter_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_n", utc_mmi_signal_parameter_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_p", utc_mmi_signal_parameter_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_n", utc_mmi_signal_parameter_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_p", utc_mmi_signal_parameter_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_n", utc_mmi_signal_parameter_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_p", utc_mmi_signal_parameter_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_n", utc_mmi_signal_parameter_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_p", utc_mmi_signal_parameter_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_n", utc_mmi_signal_parameter_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_p", utc_mmi_signal_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_n", utc_mmi_signal_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_p", utc_mmi_signal_add_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_n", utc_mmi_signal_add_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_p", utc_mmi_signal_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_n", utc_mmi_signal_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_p", utc_mmi_signal_get_parameter_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_n", utc_mmi_signal_get_parameter_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_p", utc_mmi_signal_get_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_n", utc_mmi_signal_get_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_p", utc_mmi_signal_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_n", utc_mmi_signal_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_p", utc_mmi_node_create_source_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_n", utc_mmi_node_create_source_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_p", utc_mmi_node_get_source_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_n", utc_mmi_node_get_source_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_p", utc_mmi_node_create_processor_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_n", utc_mmi_node_create_processor_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_p", utc_mmi_node_get_processor_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_n", utc_mmi_node_get_processor_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_p", utc_mmi_node_create_logic_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_n", utc_mmi_node_create_logic_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_p", utc_mmi_node_get_logic_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_n", utc_mmi_node_get_logic_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_p", utc_mmi_node_create_controller_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_n", utc_mmi_node_create_controller_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_p", utc_mmi_node_get_controller_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_n", utc_mmi_node_get_controller_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_p", utc_mmi_node_create_action_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_n", utc_mmi_node_create_action_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_p", utc_mmi_node_get_action_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_n", utc_mmi_node_get_action_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_p", utc_mmi_node_create_custom_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_n", utc_mmi_node_create_custom_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_p", utc_mmi_node_get_custom_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_n", utc_mmi_node_get_custom_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_p", utc_mmi_port_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_n", utc_mmi_port_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_p", utc_mmi_port_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_n", utc_mmi_port_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_p", utc_mmi_port_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_n", utc_mmi_port_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_p", utc_mmi_port_get_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_n", utc_mmi_port_get_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_p", utc_mmi_port_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_n", utc_mmi_port_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_p", utc_mmi_port_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_n", utc_mmi_port_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_p", utc_mmi_port_set_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_n", utc_mmi_port_set_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_p", utc_mmi_port_set_input_data_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_n", utc_mmi_port_set_input_data_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_p", utc_mmi_port_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_n", utc_mmi_port_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_p", utc_mmi_port_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_n", utc_mmi_port_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_p", utc_mmi_port_instance_generate_output_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_n", utc_mmi_port_instance_generate_output_n, utc_mmi_startup, utc_mmi_cleanup},
+       {NULL, NULL}
+};
+
+#endif // __TCT_MMI-NATIVE_H__
+
diff --git a/src/utc/mmi/tct-mmi-core_tizeniot.h b/src/utc/mmi/tct-mmi-core_tizeniot.h
new file mode 100755 (executable)
index 0000000..8ea321a
--- /dev/null
@@ -0,0 +1,649 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#ifndef __TCT_MMI-NATIVE_H__
+#define __TCT_MMI-NATIVE_H__
+
+#include "testcase.h"
+#include "tct_common.h"
+
+extern void utc_mmi_startup(void);
+extern void utc_mmi_cleanup(void);
+
+extern int utc_mmi_initialize_p(void);
+extern int utc_mmi_initialize_n(void);
+extern int utc_mmi_deinitialize_p(void);
+extern int utc_mmi_deinitialize_n(void);
+extern int utc_mmi_set_state_changed_cb_p(void);
+extern int utc_mmi_set_state_changed_cb_n(void);
+extern int utc_mmi_unset_state_changed_cb_p(void);
+extern int utc_mmi_unset_state_changed_cb_n(void);
+extern int utc_mmi_standard_workflow_instance_create_p(void);
+extern int utc_mmi_standard_workflow_instance_create_n(void);
+extern int utc_mmi_custom_workflow_instance_create_p(void);
+extern int utc_mmi_custom_workflow_instance_create_n(void);
+extern int utc_mmi_workflow_instance_destroy_p(void);
+extern int utc_mmi_workflow_instance_destroy_n(void);
+extern int utc_mmi_workflow_instance_activate_p(void);
+extern int utc_mmi_workflow_instance_activate_n(void);
+extern int utc_mmi_workflow_instance_deactivate_p(void);
+extern int utc_mmi_workflow_instance_deactivate_n(void);
+extern int utc_mmi_workflow_instance_set_attribute_p(void);
+extern int utc_mmi_workflow_instance_set_attribute_n(void);
+extern int utc_mmi_workflow_instance_emit_signal_p(void);
+extern int utc_mmi_workflow_instance_emit_signal_n(void);
+extern int utc_mmi_workflow_instance_set_output_cb_p(void);
+extern int utc_mmi_workflow_instance_set_output_cb_n(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_p(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_n(void);
+extern int utc_mmi_workflow_create_p(void);
+extern int utc_mmi_workflow_create_n(void);
+extern int utc_mmi_workflow_set_type_p(void);
+extern int utc_mmi_workflow_set_type_n(void);
+extern int utc_mmi_workflow_get_type_p(void);
+extern int utc_mmi_workflow_get_type_n(void);
+extern int utc_mmi_workflow_node_add_p(void);
+extern int utc_mmi_workflow_node_add_n(void);
+extern int utc_mmi_workflow_link_nodes_by_names_p(void);
+extern int utc_mmi_workflow_link_nodes_by_names_n(void);
+extern int utc_mmi_workflow_attribute_assign_p(void);
+extern int utc_mmi_workflow_attribute_assign_n(void);
+extern int utc_mmi_workflow_attribute_set_default_value_p(void);
+extern int utc_mmi_workflow_attribute_set_default_value_n(void);
+extern int utc_mmi_workflow_signal_assign_p(void);
+extern int utc_mmi_workflow_signal_assign_n(void);
+extern int utc_mmi_workflow_output_assign_p(void);
+extern int utc_mmi_workflow_output_assign_n(void);
+extern int utc_mmi_workflow_output_assign_by_port_p(void);
+extern int utc_mmi_workflow_output_assign_by_port_n(void);
+extern int utc_mmi_standard_workflow_register_p(void);
+extern int utc_mmi_standard_workflow_register_n(void);
+extern int utc_mmi_workflow_clone_p(void);
+extern int utc_mmi_workflow_clone_n(void);
+extern int utc_mmi_workflow_create_from_script_p(void);
+extern int utc_mmi_workflow_create_from_script_n(void);
+extern int utc_mmi_workflow_destroy_p(void);
+extern int utc_mmi_workflow_destroy_n(void);
+extern int utc_mmi_node_set_initialized_cb_p(void);
+extern int utc_mmi_node_set_initialized_cb_n(void);
+extern int utc_mmi_node_set_deinitialized_cb_p(void);
+extern int utc_mmi_node_set_deinitialized_cb_n(void);
+extern int utc_mmi_node_set_attribute_set_cb_p(void);
+extern int utc_mmi_node_set_attribute_set_cb_n(void);
+extern int utc_mmi_node_set_activated_cb_p(void);
+extern int utc_mmi_node_set_activated_cb_n(void);
+extern int utc_mmi_node_set_deactivated_cb_p(void);
+extern int utc_mmi_node_set_deactivated_cb_n(void);
+extern int utc_mmi_node_set_signal_received_cb_p(void);
+extern int utc_mmi_node_set_signal_received_cb_n(void);
+extern int utc_mmi_node_add_port_p(void);
+extern int utc_mmi_node_add_port_n(void);
+extern int utc_mmi_node_find_port_p(void);
+extern int utc_mmi_node_find_port_n(void);
+extern int utc_mmi_node_get_type_p(void);
+extern int utc_mmi_node_get_type_n(void);
+extern int utc_mmi_node_get_port_count_p(void);
+extern int utc_mmi_node_get_port_count_n(void);
+extern int utc_mmi_node_get_port_p(void);
+extern int utc_mmi_node_get_port_n(void);
+extern int utc_mmi_node_register_p(void);
+extern int utc_mmi_node_register_n(void);
+extern int utc_mmi_node_clone_p(void);
+extern int utc_mmi_node_clone_n(void);
+extern int utc_mmi_node_destroy_p(void);
+extern int utc_mmi_node_destroy_n(void);
+extern int utc_mmi_node_instance_set_attribute_p(void);
+extern int utc_mmi_node_instance_set_attribute_n(void);
+extern int utc_mmi_node_instance_find_port_instance_p(void);
+extern int utc_mmi_node_instance_find_port_instance_n(void);
+extern int utc_mmi_node_instance_find_by_port_instance_p(void);
+extern int utc_mmi_node_instance_find_by_port_instance_n(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_p(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_n(void);
+extern int utc_mmi_node_instance_emit_signal_p(void);
+extern int utc_mmi_node_instance_emit_signal_n(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_p(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_n(void);
+extern int utc_mmi_data_create_bool_p(void);
+extern int utc_mmi_data_create_bool_n(void);
+extern int utc_mmi_data_create_int_p(void);
+extern int utc_mmi_data_create_int_n(void);
+extern int utc_mmi_data_create_float_p(void);
+extern int utc_mmi_data_create_float_n(void);
+extern int utc_mmi_data_create_text_p(void);
+extern int utc_mmi_data_create_text_n(void);
+extern int utc_mmi_data_create_audio_p(void);
+extern int utc_mmi_data_create_audio_n(void);
+extern int utc_mmi_data_create_video_p(void);
+extern int utc_mmi_data_create_video_n(void);
+extern int utc_mmi_data_create_user_identification_p(void);
+extern int utc_mmi_data_create_user_identification_n(void);
+extern int utc_mmi_data_create_coordinate_p(void);
+extern int utc_mmi_data_create_coordinate_n(void);
+extern int utc_mmi_data_create_bounding_box_p(void);
+extern int utc_mmi_data_create_bounding_box_n(void);
+extern int utc_mmi_data_create_array_p(void);
+extern int utc_mmi_data_create_array_n(void);
+extern int utc_mmi_data_add_array_element_p(void);
+extern int utc_mmi_data_add_array_element_n1(void);
+extern int utc_mmi_data_add_array_element_n2(void);
+extern int utc_mmi_data_create_struct_p(void);
+extern int utc_mmi_data_create_struct_n(void);
+extern int utc_mmi_data_set_struct_element_p(void);
+extern int utc_mmi_data_set_struct_element_n(void);
+extern int utc_mmi_data_get_type_p(void);
+extern int utc_mmi_data_get_type_n(void);
+extern int utc_mmi_data_get_bool_p(void);
+extern int utc_mmi_data_get_bool_n1(void);
+extern int utc_mmi_data_get_bool_n2(void);
+extern int utc_mmi_data_get_int_p(void);
+extern int utc_mmi_data_get_int_n1(void);
+extern int utc_mmi_data_get_int_n2(void);
+extern int utc_mmi_data_get_float_p(void);
+extern int utc_mmi_data_get_float_n1(void);
+extern int utc_mmi_data_get_float_n2(void);
+extern int utc_mmi_data_get_text_p(void);
+extern int utc_mmi_data_get_text_n1(void);
+extern int utc_mmi_data_get_text_n2(void);
+extern int utc_mmi_data_get_audio_p(void);
+extern int utc_mmi_data_get_audio_n1(void);
+extern int utc_mmi_data_get_audio_n2(void);
+extern int utc_mmi_data_get_video_p(void);
+extern int utc_mmi_data_get_video_n1(void);
+extern int utc_mmi_data_get_video_n2(void);
+extern int utc_mmi_data_get_user_identification_p(void);
+extern int utc_mmi_data_get_user_identification_n1(void);
+extern int utc_mmi_data_get_user_identification_n2(void);
+extern int utc_mmi_data_get_coordinate_p(void);
+extern int utc_mmi_data_get_coordinate_n1(void);
+extern int utc_mmi_data_get_coordinate_n2(void);
+extern int utc_mmi_data_get_bounding_box_p(void);
+extern int utc_mmi_data_get_bounding_box_n1(void);
+extern int utc_mmi_data_get_bounding_box_n2(void);
+extern int utc_mmi_data_get_array_count_p(void);
+extern int utc_mmi_data_get_array_count_n1(void);
+extern int utc_mmi_data_get_array_count_n2(void);
+extern int utc_mmi_data_get_array_element_p(void);
+extern int utc_mmi_data_get_array_element_n1(void);
+extern int utc_mmi_data_get_array_element_n2(void);
+extern int utc_mmi_data_get_struct_element_p1(void);
+extern int utc_mmi_data_get_struct_element_p2(void);
+extern int utc_mmi_data_get_struct_element_n1(void);
+extern int utc_mmi_data_get_struct_element_n2(void);
+extern int utc_mmi_data_get_struct_count_p(void);
+extern int utc_mmi_data_get_struct_count_n(void);
+extern int utc_mmi_data_get_struct_element_name_p(void);
+extern int utc_mmi_data_get_struct_element_name_n(void);
+extern int utc_mmi_data_get_struct_element_value_p(void);
+extern int utc_mmi_data_get_struct_element_value_n(void);
+extern int utc_mmi_data_to_bytes_p(void);
+extern int utc_mmi_data_to_bytes_n(void);
+extern int utc_mmi_data_from_bytes_p(void);
+extern int utc_mmi_data_from_bytes_n(void);
+extern int utc_mmi_data_destroy_p1(void);
+extern int utc_mmi_data_destroy_p2(void);
+extern int utc_mmi_data_destroy_p3(void);
+extern int utc_mmi_data_destroy_p4(void);
+extern int utc_mmi_data_destroy_n(void);
+extern int utc_mmi_attribute_create_p(void);
+extern int utc_mmi_attribute_create_n1(void);
+extern int utc_mmi_attribute_create_n2(void);
+extern int utc_mmi_attribute_set_name_p(void);
+extern int utc_mmi_attribute_set_name_n(void);
+extern int utc_mmi_attribute_get_name_p(void);
+extern int utc_mmi_attribute_get_name_n(void);
+extern int utc_mmi_attribute_get_value_p(void);
+extern int utc_mmi_attribute_get_value_n(void);
+extern int utc_mmi_attribute_clone_p(void);
+extern int utc_mmi_attribute_clone_n(void);
+extern int utc_mmi_attribute_destroy_p(void);
+extern int utc_mmi_attribute_destroy_n(void);
+extern int utc_mmi_attribute_to_bytes_p(void);
+extern int utc_mmi_attribute_to_bytes_n(void);
+extern int utc_mmi_attribute_from_bytes_p(void);
+extern int utc_mmi_attribute_from_bytes_n(void);
+extern int utc_mmi_attribute_create_string_array_p(void);
+extern int utc_mmi_attribute_create_string_array_n(void);
+extern int utc_mmi_primitive_value_create_int_p(void);
+extern int utc_mmi_primitive_value_create_int_n(void);
+extern int utc_mmi_primitive_value_create_float_p(void);
+extern int utc_mmi_primitive_value_create_float_n(void);
+extern int utc_mmi_primitive_value_create_string_p(void);
+extern int utc_mmi_primitive_value_create_string_n(void);
+extern int utc_mmi_primitive_value_create_bool_p(void);
+extern int utc_mmi_primitive_value_create_bool_n(void);
+extern int utc_mmi_primitive_value_create_array_p(void);
+extern int utc_mmi_primitive_value_create_array_n(void);
+extern int utc_mmi_primitive_value_add_array_element_p(void);
+extern int utc_mmi_primitive_value_add_array_element_n1(void);
+extern int utc_mmi_primitive_value_add_array_element_n2(void);
+extern int utc_mmi_primitive_value_get_type_p(void);
+extern int utc_mmi_primitive_value_get_type_n(void);
+extern int utc_mmi_primitive_value_get_bool_p(void);
+extern int utc_mmi_primitive_value_get_bool_n1(void);
+extern int utc_mmi_primitive_value_get_bool_n2(void);
+extern int utc_mmi_primitive_value_get_int_p(void);
+extern int utc_mmi_primitive_value_get_int_n1(void);
+extern int utc_mmi_primitive_value_get_int_n2(void);
+extern int utc_mmi_primitive_value_get_float_p(void);
+extern int utc_mmi_primitive_value_get_float_n1(void);
+extern int utc_mmi_primitive_value_get_float_n2(void);
+extern int utc_mmi_primitive_value_get_string_p(void);
+extern int utc_mmi_primitive_value_get_string_n1(void);
+extern int utc_mmi_primitive_value_get_string_n2(void);
+extern int utc_mmi_primitive_value_get_array_count_p(void);
+extern int utc_mmi_primitive_value_get_array_count_n1(void);
+extern int utc_mmi_primitive_value_get_array_count_n2(void);
+extern int utc_mmi_primitive_value_get_array_element_p(void);
+extern int utc_mmi_primitive_value_get_array_element_n1(void);
+extern int utc_mmi_primitive_value_get_array_element_n2(void);
+extern int utc_mmi_primitive_value_clone_p1(void);
+extern int utc_mmi_primitive_value_clone_p2(void);
+extern int utc_mmi_primitive_value_clone_p3(void);
+extern int utc_mmi_primitive_value_clone_n(void);
+extern int utc_mmi_primitive_value_destroy_p1(void);
+extern int utc_mmi_primitive_value_destroy_p2(void);
+extern int utc_mmi_primitive_value_destroy_p3(void);
+extern int utc_mmi_primitive_value_destroy_n(void);
+extern int utc_mmi_primitive_value_to_bytes_p(void);
+extern int utc_mmi_primitive_value_to_bytes_n(void);
+extern int utc_mmi_primitive_value_from_bytes_p1(void);
+extern int utc_mmi_primitive_value_from_bytes_p2(void);
+extern int utc_mmi_primitive_value_from_bytes_p3(void);
+extern int utc_mmi_primitive_value_from_bytes_n(void);
+extern int utc_mmi_signal_parameter_create_p(void);
+extern int utc_mmi_signal_parameter_create_n(void);
+extern int utc_mmi_signal_parameter_get_name_p(void);
+extern int utc_mmi_signal_parameter_get_name_n(void);
+extern int utc_mmi_signal_parameter_get_value_p(void);
+extern int utc_mmi_signal_parameter_get_value_n(void);
+extern int utc_mmi_signal_parameter_clone_p(void);
+extern int utc_mmi_signal_parameter_clone_n(void);
+extern int utc_mmi_signal_parameter_destroy_p(void);
+extern int utc_mmi_signal_parameter_destroy_n(void);
+extern int utc_mmi_signal_create_p(void);
+extern int utc_mmi_signal_create_n(void);
+extern int utc_mmi_signal_add_parameter_p(void);
+extern int utc_mmi_signal_add_parameter_n(void);
+extern int utc_mmi_signal_get_name_p(void);
+extern int utc_mmi_signal_get_name_n(void);
+extern int utc_mmi_signal_get_parameter_count_p(void);
+extern int utc_mmi_signal_get_parameter_count_n(void);
+extern int utc_mmi_signal_get_parameter_p(void);
+extern int utc_mmi_signal_get_parameter_n(void);
+extern int utc_mmi_signal_destroy_p(void);
+extern int utc_mmi_signal_destroy_n(void);
+extern int utc_mmi_node_create_source_p(void);
+extern int utc_mmi_node_create_source_n(void);
+extern int utc_mmi_node_get_source_type_p(void);
+extern int utc_mmi_node_get_source_type_n(void);
+extern int utc_mmi_node_create_processor_p(void);
+extern int utc_mmi_node_create_processor_n(void);
+extern int utc_mmi_node_get_processor_type_p(void);
+extern int utc_mmi_node_get_processor_type_n(void);
+extern int utc_mmi_node_create_logic_p(void);
+extern int utc_mmi_node_create_logic_n(void);
+extern int utc_mmi_node_get_logic_type_p(void);
+extern int utc_mmi_node_get_logic_type_n(void);
+extern int utc_mmi_node_create_controller_p(void);
+extern int utc_mmi_node_create_controller_n(void);
+extern int utc_mmi_node_get_controller_type_p(void);
+extern int utc_mmi_node_get_controller_type_n(void);
+extern int utc_mmi_node_create_action_p(void);
+extern int utc_mmi_node_create_action_n(void);
+extern int utc_mmi_node_get_action_type_p(void);
+extern int utc_mmi_node_get_action_type_n(void);
+extern int utc_mmi_node_create_custom_p(void);
+extern int utc_mmi_node_create_custom_n(void);
+extern int utc_mmi_node_get_custom_type_p(void);
+extern int utc_mmi_node_get_custom_type_n(void);
+extern int utc_mmi_port_create_p(void);
+extern int utc_mmi_port_create_n(void);
+extern int utc_mmi_port_get_name_p(void);
+extern int utc_mmi_port_get_name_n(void);
+extern int utc_mmi_port_get_type_p(void);
+extern int utc_mmi_port_get_type_n(void);
+extern int utc_mmi_port_get_data_type_p(void);
+extern int utc_mmi_port_get_data_type_n(void);
+extern int utc_mmi_port_set_name_p(void);
+extern int utc_mmi_port_set_name_n(void);
+extern int utc_mmi_port_set_type_p(void);
+extern int utc_mmi_port_set_type_n(void);
+extern int utc_mmi_port_set_data_type_p(void);
+extern int utc_mmi_port_set_data_type_n(void);
+extern int utc_mmi_port_set_input_data_received_cb_p(void);
+extern int utc_mmi_port_set_input_data_received_cb_n(void);
+extern int utc_mmi_port_clone_p(void);
+extern int utc_mmi_port_clone_n(void);
+extern int utc_mmi_port_destroy_p(void);
+extern int utc_mmi_port_destroy_n(void);
+extern int utc_mmi_port_instance_generate_output_p(void);
+extern int utc_mmi_port_instance_generate_output_n(void);
+
+testcase tc_array[] = {
+       {"utc_mmi_initialize_p", utc_mmi_initialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_initialize_n", utc_mmi_initialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_p", utc_mmi_deinitialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_n", utc_mmi_deinitialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_p", utc_mmi_set_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_n", utc_mmi_set_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_p", utc_mmi_unset_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_n", utc_mmi_unset_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_p", utc_mmi_standard_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_n", utc_mmi_standard_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_p", utc_mmi_custom_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_n", utc_mmi_custom_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_p", utc_mmi_workflow_instance_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_n", utc_mmi_workflow_instance_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_p", utc_mmi_workflow_instance_activate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_n", utc_mmi_workflow_instance_activate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_p", utc_mmi_workflow_instance_deactivate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_n", utc_mmi_workflow_instance_deactivate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_p", utc_mmi_workflow_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_n", utc_mmi_workflow_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_p", utc_mmi_workflow_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_n", utc_mmi_workflow_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_p", utc_mmi_workflow_instance_set_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_n", utc_mmi_workflow_instance_set_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_p", utc_mmi_workflow_instance_unset_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_n", utc_mmi_workflow_instance_unset_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_p", utc_mmi_workflow_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_n", utc_mmi_workflow_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_p", utc_mmi_workflow_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_n", utc_mmi_workflow_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_p", utc_mmi_workflow_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_n", utc_mmi_workflow_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_p", utc_mmi_workflow_node_add_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_n", utc_mmi_workflow_node_add_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_p", utc_mmi_workflow_link_nodes_by_names_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_n", utc_mmi_workflow_link_nodes_by_names_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_p", utc_mmi_workflow_attribute_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_n", utc_mmi_workflow_attribute_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_p", utc_mmi_workflow_attribute_set_default_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_n", utc_mmi_workflow_attribute_set_default_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_p", utc_mmi_workflow_signal_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_n", utc_mmi_workflow_signal_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_p", utc_mmi_workflow_output_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_n", utc_mmi_workflow_output_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_p", utc_mmi_workflow_output_assign_by_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_n", utc_mmi_workflow_output_assign_by_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_p", utc_mmi_standard_workflow_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_n", utc_mmi_standard_workflow_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_p", utc_mmi_workflow_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_n", utc_mmi_workflow_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_p", utc_mmi_workflow_create_from_script_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_n", utc_mmi_workflow_create_from_script_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_p", utc_mmi_workflow_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_n", utc_mmi_workflow_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_p", utc_mmi_node_set_initialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_n", utc_mmi_node_set_initialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_p", utc_mmi_node_set_deinitialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_n", utc_mmi_node_set_deinitialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_p", utc_mmi_node_set_attribute_set_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_n", utc_mmi_node_set_attribute_set_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_p", utc_mmi_node_set_activated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_n", utc_mmi_node_set_activated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_p", utc_mmi_node_set_deactivated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_n", utc_mmi_node_set_deactivated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_p", utc_mmi_node_set_signal_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_n", utc_mmi_node_set_signal_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_p", utc_mmi_node_add_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_n", utc_mmi_node_add_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_p", utc_mmi_node_find_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_n", utc_mmi_node_find_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_p", utc_mmi_node_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_n", utc_mmi_node_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_p", utc_mmi_node_get_port_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_n", utc_mmi_node_get_port_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_p", utc_mmi_node_get_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_n", utc_mmi_node_get_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_p", utc_mmi_node_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_n", utc_mmi_node_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_p", utc_mmi_node_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_n", utc_mmi_node_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_p", utc_mmi_node_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_n", utc_mmi_node_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_p", utc_mmi_node_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_n", utc_mmi_node_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_p", utc_mmi_node_instance_find_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_n", utc_mmi_node_instance_find_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_p", utc_mmi_node_instance_find_by_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_n", utc_mmi_node_instance_find_by_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_p", utc_mmi_node_instance_find_sibling_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_n", utc_mmi_node_instance_find_sibling_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_p", utc_mmi_node_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_n", utc_mmi_node_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_p", utc_mmi_node_instance_update_pending_activation_result_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_n", utc_mmi_node_instance_update_pending_activation_result_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_p", utc_mmi_data_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_n", utc_mmi_data_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_p", utc_mmi_data_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_n", utc_mmi_data_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_p", utc_mmi_data_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_n", utc_mmi_data_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_p", utc_mmi_data_create_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_n", utc_mmi_data_create_text_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_p", utc_mmi_data_create_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_n", utc_mmi_data_create_audio_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_p", utc_mmi_data_create_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_n", utc_mmi_data_create_video_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_p", utc_mmi_data_create_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_n", utc_mmi_data_create_user_identification_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_p", utc_mmi_data_create_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_n", utc_mmi_data_create_coordinate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_p", utc_mmi_data_create_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_n", utc_mmi_data_create_bounding_box_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_p", utc_mmi_data_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_n", utc_mmi_data_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_p", utc_mmi_data_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n1", utc_mmi_data_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n2", utc_mmi_data_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_p", utc_mmi_data_create_struct_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_n", utc_mmi_data_create_struct_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_p", utc_mmi_data_set_struct_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_n", utc_mmi_data_set_struct_element_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_p", utc_mmi_data_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_n", utc_mmi_data_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_p", utc_mmi_data_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n1", utc_mmi_data_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n2", utc_mmi_data_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_p", utc_mmi_data_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n1", utc_mmi_data_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n2", utc_mmi_data_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_p", utc_mmi_data_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n1", utc_mmi_data_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n2", utc_mmi_data_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_p", utc_mmi_data_get_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n1", utc_mmi_data_get_text_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n2", utc_mmi_data_get_text_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_p", utc_mmi_data_get_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n1", utc_mmi_data_get_audio_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n2", utc_mmi_data_get_audio_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_p", utc_mmi_data_get_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n1", utc_mmi_data_get_video_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n2", utc_mmi_data_get_video_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_p", utc_mmi_data_get_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n1", utc_mmi_data_get_user_identification_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n2", utc_mmi_data_get_user_identification_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_p", utc_mmi_data_get_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n1", utc_mmi_data_get_coordinate_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n2", utc_mmi_data_get_coordinate_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_p", utc_mmi_data_get_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n1", utc_mmi_data_get_bounding_box_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n2", utc_mmi_data_get_bounding_box_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_p", utc_mmi_data_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n1", utc_mmi_data_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n2", utc_mmi_data_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_p", utc_mmi_data_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n1", utc_mmi_data_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n2", utc_mmi_data_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p1", utc_mmi_data_get_struct_element_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p2", utc_mmi_data_get_struct_element_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n1", utc_mmi_data_get_struct_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n2", utc_mmi_data_get_struct_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_p", utc_mmi_data_get_struct_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_n", utc_mmi_data_get_struct_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_p", utc_mmi_data_get_struct_element_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_n", utc_mmi_data_get_struct_element_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_p", utc_mmi_data_get_struct_element_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_n", utc_mmi_data_get_struct_element_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_p", utc_mmi_data_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_n", utc_mmi_data_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_p", utc_mmi_data_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_n", utc_mmi_data_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p1", utc_mmi_data_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p2", utc_mmi_data_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p3", utc_mmi_data_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p4", utc_mmi_data_destroy_p4, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_n", utc_mmi_data_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_p", utc_mmi_attribute_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n1", utc_mmi_attribute_create_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n2", utc_mmi_attribute_create_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_p", utc_mmi_attribute_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_n", utc_mmi_attribute_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_p", utc_mmi_attribute_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_n", utc_mmi_attribute_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_p", utc_mmi_attribute_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_n", utc_mmi_attribute_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_p", utc_mmi_attribute_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_n", utc_mmi_attribute_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_p", utc_mmi_attribute_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_n", utc_mmi_attribute_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_p", utc_mmi_attribute_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_n", utc_mmi_attribute_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_p", utc_mmi_attribute_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_n", utc_mmi_attribute_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_p", utc_mmi_attribute_create_string_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_n", utc_mmi_attribute_create_string_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_p", utc_mmi_primitive_value_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_n", utc_mmi_primitive_value_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_p", utc_mmi_primitive_value_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_n", utc_mmi_primitive_value_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_p", utc_mmi_primitive_value_create_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_n", utc_mmi_primitive_value_create_string_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_p", utc_mmi_primitive_value_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_n", utc_mmi_primitive_value_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_p", utc_mmi_primitive_value_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_n", utc_mmi_primitive_value_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_p", utc_mmi_primitive_value_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n1", utc_mmi_primitive_value_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n2", utc_mmi_primitive_value_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_p", utc_mmi_primitive_value_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_n", utc_mmi_primitive_value_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_p", utc_mmi_primitive_value_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n1", utc_mmi_primitive_value_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n2", utc_mmi_primitive_value_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_p", utc_mmi_primitive_value_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n1", utc_mmi_primitive_value_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n2", utc_mmi_primitive_value_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_p", utc_mmi_primitive_value_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n1", utc_mmi_primitive_value_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n2", utc_mmi_primitive_value_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_p", utc_mmi_primitive_value_get_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n1", utc_mmi_primitive_value_get_string_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n2", utc_mmi_primitive_value_get_string_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_p", utc_mmi_primitive_value_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n1", utc_mmi_primitive_value_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n2", utc_mmi_primitive_value_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_p", utc_mmi_primitive_value_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n1", utc_mmi_primitive_value_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n2", utc_mmi_primitive_value_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p1", utc_mmi_primitive_value_clone_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p2", utc_mmi_primitive_value_clone_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p3", utc_mmi_primitive_value_clone_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_n", utc_mmi_primitive_value_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p1", utc_mmi_primitive_value_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p2", utc_mmi_primitive_value_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p3", utc_mmi_primitive_value_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_n", utc_mmi_primitive_value_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_p", utc_mmi_primitive_value_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_n", utc_mmi_primitive_value_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p1", utc_mmi_primitive_value_from_bytes_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p2", utc_mmi_primitive_value_from_bytes_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p3", utc_mmi_primitive_value_from_bytes_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_n", utc_mmi_primitive_value_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_p", utc_mmi_signal_parameter_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_n", utc_mmi_signal_parameter_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_p", utc_mmi_signal_parameter_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_n", utc_mmi_signal_parameter_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_p", utc_mmi_signal_parameter_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_n", utc_mmi_signal_parameter_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_p", utc_mmi_signal_parameter_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_n", utc_mmi_signal_parameter_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_p", utc_mmi_signal_parameter_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_n", utc_mmi_signal_parameter_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_p", utc_mmi_signal_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_n", utc_mmi_signal_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_p", utc_mmi_signal_add_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_n", utc_mmi_signal_add_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_p", utc_mmi_signal_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_n", utc_mmi_signal_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_p", utc_mmi_signal_get_parameter_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_n", utc_mmi_signal_get_parameter_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_p", utc_mmi_signal_get_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_n", utc_mmi_signal_get_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_p", utc_mmi_signal_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_n", utc_mmi_signal_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_p", utc_mmi_node_create_source_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_n", utc_mmi_node_create_source_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_p", utc_mmi_node_get_source_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_n", utc_mmi_node_get_source_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_p", utc_mmi_node_create_processor_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_n", utc_mmi_node_create_processor_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_p", utc_mmi_node_get_processor_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_n", utc_mmi_node_get_processor_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_p", utc_mmi_node_create_logic_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_n", utc_mmi_node_create_logic_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_p", utc_mmi_node_get_logic_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_n", utc_mmi_node_get_logic_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_p", utc_mmi_node_create_controller_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_n", utc_mmi_node_create_controller_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_p", utc_mmi_node_get_controller_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_n", utc_mmi_node_get_controller_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_p", utc_mmi_node_create_action_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_n", utc_mmi_node_create_action_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_p", utc_mmi_node_get_action_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_n", utc_mmi_node_get_action_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_p", utc_mmi_node_create_custom_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_n", utc_mmi_node_create_custom_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_p", utc_mmi_node_get_custom_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_n", utc_mmi_node_get_custom_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_p", utc_mmi_port_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_n", utc_mmi_port_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_p", utc_mmi_port_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_n", utc_mmi_port_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_p", utc_mmi_port_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_n", utc_mmi_port_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_p", utc_mmi_port_get_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_n", utc_mmi_port_get_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_p", utc_mmi_port_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_n", utc_mmi_port_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_p", utc_mmi_port_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_n", utc_mmi_port_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_p", utc_mmi_port_set_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_n", utc_mmi_port_set_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_p", utc_mmi_port_set_input_data_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_n", utc_mmi_port_set_input_data_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_p", utc_mmi_port_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_n", utc_mmi_port_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_p", utc_mmi_port_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_n", utc_mmi_port_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_p", utc_mmi_port_instance_generate_output_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_n", utc_mmi_port_instance_generate_output_n, utc_mmi_startup, utc_mmi_cleanup},
+       {NULL, NULL}
+};
+
+#endif // __TCT_MMI-NATIVE_H__
+
diff --git a/src/utc/mmi/tct-mmi-core_tv.h b/src/utc/mmi/tct-mmi-core_tv.h
new file mode 100755 (executable)
index 0000000..8ea321a
--- /dev/null
@@ -0,0 +1,649 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#ifndef __TCT_MMI-NATIVE_H__
+#define __TCT_MMI-NATIVE_H__
+
+#include "testcase.h"
+#include "tct_common.h"
+
+extern void utc_mmi_startup(void);
+extern void utc_mmi_cleanup(void);
+
+extern int utc_mmi_initialize_p(void);
+extern int utc_mmi_initialize_n(void);
+extern int utc_mmi_deinitialize_p(void);
+extern int utc_mmi_deinitialize_n(void);
+extern int utc_mmi_set_state_changed_cb_p(void);
+extern int utc_mmi_set_state_changed_cb_n(void);
+extern int utc_mmi_unset_state_changed_cb_p(void);
+extern int utc_mmi_unset_state_changed_cb_n(void);
+extern int utc_mmi_standard_workflow_instance_create_p(void);
+extern int utc_mmi_standard_workflow_instance_create_n(void);
+extern int utc_mmi_custom_workflow_instance_create_p(void);
+extern int utc_mmi_custom_workflow_instance_create_n(void);
+extern int utc_mmi_workflow_instance_destroy_p(void);
+extern int utc_mmi_workflow_instance_destroy_n(void);
+extern int utc_mmi_workflow_instance_activate_p(void);
+extern int utc_mmi_workflow_instance_activate_n(void);
+extern int utc_mmi_workflow_instance_deactivate_p(void);
+extern int utc_mmi_workflow_instance_deactivate_n(void);
+extern int utc_mmi_workflow_instance_set_attribute_p(void);
+extern int utc_mmi_workflow_instance_set_attribute_n(void);
+extern int utc_mmi_workflow_instance_emit_signal_p(void);
+extern int utc_mmi_workflow_instance_emit_signal_n(void);
+extern int utc_mmi_workflow_instance_set_output_cb_p(void);
+extern int utc_mmi_workflow_instance_set_output_cb_n(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_p(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_n(void);
+extern int utc_mmi_workflow_create_p(void);
+extern int utc_mmi_workflow_create_n(void);
+extern int utc_mmi_workflow_set_type_p(void);
+extern int utc_mmi_workflow_set_type_n(void);
+extern int utc_mmi_workflow_get_type_p(void);
+extern int utc_mmi_workflow_get_type_n(void);
+extern int utc_mmi_workflow_node_add_p(void);
+extern int utc_mmi_workflow_node_add_n(void);
+extern int utc_mmi_workflow_link_nodes_by_names_p(void);
+extern int utc_mmi_workflow_link_nodes_by_names_n(void);
+extern int utc_mmi_workflow_attribute_assign_p(void);
+extern int utc_mmi_workflow_attribute_assign_n(void);
+extern int utc_mmi_workflow_attribute_set_default_value_p(void);
+extern int utc_mmi_workflow_attribute_set_default_value_n(void);
+extern int utc_mmi_workflow_signal_assign_p(void);
+extern int utc_mmi_workflow_signal_assign_n(void);
+extern int utc_mmi_workflow_output_assign_p(void);
+extern int utc_mmi_workflow_output_assign_n(void);
+extern int utc_mmi_workflow_output_assign_by_port_p(void);
+extern int utc_mmi_workflow_output_assign_by_port_n(void);
+extern int utc_mmi_standard_workflow_register_p(void);
+extern int utc_mmi_standard_workflow_register_n(void);
+extern int utc_mmi_workflow_clone_p(void);
+extern int utc_mmi_workflow_clone_n(void);
+extern int utc_mmi_workflow_create_from_script_p(void);
+extern int utc_mmi_workflow_create_from_script_n(void);
+extern int utc_mmi_workflow_destroy_p(void);
+extern int utc_mmi_workflow_destroy_n(void);
+extern int utc_mmi_node_set_initialized_cb_p(void);
+extern int utc_mmi_node_set_initialized_cb_n(void);
+extern int utc_mmi_node_set_deinitialized_cb_p(void);
+extern int utc_mmi_node_set_deinitialized_cb_n(void);
+extern int utc_mmi_node_set_attribute_set_cb_p(void);
+extern int utc_mmi_node_set_attribute_set_cb_n(void);
+extern int utc_mmi_node_set_activated_cb_p(void);
+extern int utc_mmi_node_set_activated_cb_n(void);
+extern int utc_mmi_node_set_deactivated_cb_p(void);
+extern int utc_mmi_node_set_deactivated_cb_n(void);
+extern int utc_mmi_node_set_signal_received_cb_p(void);
+extern int utc_mmi_node_set_signal_received_cb_n(void);
+extern int utc_mmi_node_add_port_p(void);
+extern int utc_mmi_node_add_port_n(void);
+extern int utc_mmi_node_find_port_p(void);
+extern int utc_mmi_node_find_port_n(void);
+extern int utc_mmi_node_get_type_p(void);
+extern int utc_mmi_node_get_type_n(void);
+extern int utc_mmi_node_get_port_count_p(void);
+extern int utc_mmi_node_get_port_count_n(void);
+extern int utc_mmi_node_get_port_p(void);
+extern int utc_mmi_node_get_port_n(void);
+extern int utc_mmi_node_register_p(void);
+extern int utc_mmi_node_register_n(void);
+extern int utc_mmi_node_clone_p(void);
+extern int utc_mmi_node_clone_n(void);
+extern int utc_mmi_node_destroy_p(void);
+extern int utc_mmi_node_destroy_n(void);
+extern int utc_mmi_node_instance_set_attribute_p(void);
+extern int utc_mmi_node_instance_set_attribute_n(void);
+extern int utc_mmi_node_instance_find_port_instance_p(void);
+extern int utc_mmi_node_instance_find_port_instance_n(void);
+extern int utc_mmi_node_instance_find_by_port_instance_p(void);
+extern int utc_mmi_node_instance_find_by_port_instance_n(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_p(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_n(void);
+extern int utc_mmi_node_instance_emit_signal_p(void);
+extern int utc_mmi_node_instance_emit_signal_n(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_p(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_n(void);
+extern int utc_mmi_data_create_bool_p(void);
+extern int utc_mmi_data_create_bool_n(void);
+extern int utc_mmi_data_create_int_p(void);
+extern int utc_mmi_data_create_int_n(void);
+extern int utc_mmi_data_create_float_p(void);
+extern int utc_mmi_data_create_float_n(void);
+extern int utc_mmi_data_create_text_p(void);
+extern int utc_mmi_data_create_text_n(void);
+extern int utc_mmi_data_create_audio_p(void);
+extern int utc_mmi_data_create_audio_n(void);
+extern int utc_mmi_data_create_video_p(void);
+extern int utc_mmi_data_create_video_n(void);
+extern int utc_mmi_data_create_user_identification_p(void);
+extern int utc_mmi_data_create_user_identification_n(void);
+extern int utc_mmi_data_create_coordinate_p(void);
+extern int utc_mmi_data_create_coordinate_n(void);
+extern int utc_mmi_data_create_bounding_box_p(void);
+extern int utc_mmi_data_create_bounding_box_n(void);
+extern int utc_mmi_data_create_array_p(void);
+extern int utc_mmi_data_create_array_n(void);
+extern int utc_mmi_data_add_array_element_p(void);
+extern int utc_mmi_data_add_array_element_n1(void);
+extern int utc_mmi_data_add_array_element_n2(void);
+extern int utc_mmi_data_create_struct_p(void);
+extern int utc_mmi_data_create_struct_n(void);
+extern int utc_mmi_data_set_struct_element_p(void);
+extern int utc_mmi_data_set_struct_element_n(void);
+extern int utc_mmi_data_get_type_p(void);
+extern int utc_mmi_data_get_type_n(void);
+extern int utc_mmi_data_get_bool_p(void);
+extern int utc_mmi_data_get_bool_n1(void);
+extern int utc_mmi_data_get_bool_n2(void);
+extern int utc_mmi_data_get_int_p(void);
+extern int utc_mmi_data_get_int_n1(void);
+extern int utc_mmi_data_get_int_n2(void);
+extern int utc_mmi_data_get_float_p(void);
+extern int utc_mmi_data_get_float_n1(void);
+extern int utc_mmi_data_get_float_n2(void);
+extern int utc_mmi_data_get_text_p(void);
+extern int utc_mmi_data_get_text_n1(void);
+extern int utc_mmi_data_get_text_n2(void);
+extern int utc_mmi_data_get_audio_p(void);
+extern int utc_mmi_data_get_audio_n1(void);
+extern int utc_mmi_data_get_audio_n2(void);
+extern int utc_mmi_data_get_video_p(void);
+extern int utc_mmi_data_get_video_n1(void);
+extern int utc_mmi_data_get_video_n2(void);
+extern int utc_mmi_data_get_user_identification_p(void);
+extern int utc_mmi_data_get_user_identification_n1(void);
+extern int utc_mmi_data_get_user_identification_n2(void);
+extern int utc_mmi_data_get_coordinate_p(void);
+extern int utc_mmi_data_get_coordinate_n1(void);
+extern int utc_mmi_data_get_coordinate_n2(void);
+extern int utc_mmi_data_get_bounding_box_p(void);
+extern int utc_mmi_data_get_bounding_box_n1(void);
+extern int utc_mmi_data_get_bounding_box_n2(void);
+extern int utc_mmi_data_get_array_count_p(void);
+extern int utc_mmi_data_get_array_count_n1(void);
+extern int utc_mmi_data_get_array_count_n2(void);
+extern int utc_mmi_data_get_array_element_p(void);
+extern int utc_mmi_data_get_array_element_n1(void);
+extern int utc_mmi_data_get_array_element_n2(void);
+extern int utc_mmi_data_get_struct_element_p1(void);
+extern int utc_mmi_data_get_struct_element_p2(void);
+extern int utc_mmi_data_get_struct_element_n1(void);
+extern int utc_mmi_data_get_struct_element_n2(void);
+extern int utc_mmi_data_get_struct_count_p(void);
+extern int utc_mmi_data_get_struct_count_n(void);
+extern int utc_mmi_data_get_struct_element_name_p(void);
+extern int utc_mmi_data_get_struct_element_name_n(void);
+extern int utc_mmi_data_get_struct_element_value_p(void);
+extern int utc_mmi_data_get_struct_element_value_n(void);
+extern int utc_mmi_data_to_bytes_p(void);
+extern int utc_mmi_data_to_bytes_n(void);
+extern int utc_mmi_data_from_bytes_p(void);
+extern int utc_mmi_data_from_bytes_n(void);
+extern int utc_mmi_data_destroy_p1(void);
+extern int utc_mmi_data_destroy_p2(void);
+extern int utc_mmi_data_destroy_p3(void);
+extern int utc_mmi_data_destroy_p4(void);
+extern int utc_mmi_data_destroy_n(void);
+extern int utc_mmi_attribute_create_p(void);
+extern int utc_mmi_attribute_create_n1(void);
+extern int utc_mmi_attribute_create_n2(void);
+extern int utc_mmi_attribute_set_name_p(void);
+extern int utc_mmi_attribute_set_name_n(void);
+extern int utc_mmi_attribute_get_name_p(void);
+extern int utc_mmi_attribute_get_name_n(void);
+extern int utc_mmi_attribute_get_value_p(void);
+extern int utc_mmi_attribute_get_value_n(void);
+extern int utc_mmi_attribute_clone_p(void);
+extern int utc_mmi_attribute_clone_n(void);
+extern int utc_mmi_attribute_destroy_p(void);
+extern int utc_mmi_attribute_destroy_n(void);
+extern int utc_mmi_attribute_to_bytes_p(void);
+extern int utc_mmi_attribute_to_bytes_n(void);
+extern int utc_mmi_attribute_from_bytes_p(void);
+extern int utc_mmi_attribute_from_bytes_n(void);
+extern int utc_mmi_attribute_create_string_array_p(void);
+extern int utc_mmi_attribute_create_string_array_n(void);
+extern int utc_mmi_primitive_value_create_int_p(void);
+extern int utc_mmi_primitive_value_create_int_n(void);
+extern int utc_mmi_primitive_value_create_float_p(void);
+extern int utc_mmi_primitive_value_create_float_n(void);
+extern int utc_mmi_primitive_value_create_string_p(void);
+extern int utc_mmi_primitive_value_create_string_n(void);
+extern int utc_mmi_primitive_value_create_bool_p(void);
+extern int utc_mmi_primitive_value_create_bool_n(void);
+extern int utc_mmi_primitive_value_create_array_p(void);
+extern int utc_mmi_primitive_value_create_array_n(void);
+extern int utc_mmi_primitive_value_add_array_element_p(void);
+extern int utc_mmi_primitive_value_add_array_element_n1(void);
+extern int utc_mmi_primitive_value_add_array_element_n2(void);
+extern int utc_mmi_primitive_value_get_type_p(void);
+extern int utc_mmi_primitive_value_get_type_n(void);
+extern int utc_mmi_primitive_value_get_bool_p(void);
+extern int utc_mmi_primitive_value_get_bool_n1(void);
+extern int utc_mmi_primitive_value_get_bool_n2(void);
+extern int utc_mmi_primitive_value_get_int_p(void);
+extern int utc_mmi_primitive_value_get_int_n1(void);
+extern int utc_mmi_primitive_value_get_int_n2(void);
+extern int utc_mmi_primitive_value_get_float_p(void);
+extern int utc_mmi_primitive_value_get_float_n1(void);
+extern int utc_mmi_primitive_value_get_float_n2(void);
+extern int utc_mmi_primitive_value_get_string_p(void);
+extern int utc_mmi_primitive_value_get_string_n1(void);
+extern int utc_mmi_primitive_value_get_string_n2(void);
+extern int utc_mmi_primitive_value_get_array_count_p(void);
+extern int utc_mmi_primitive_value_get_array_count_n1(void);
+extern int utc_mmi_primitive_value_get_array_count_n2(void);
+extern int utc_mmi_primitive_value_get_array_element_p(void);
+extern int utc_mmi_primitive_value_get_array_element_n1(void);
+extern int utc_mmi_primitive_value_get_array_element_n2(void);
+extern int utc_mmi_primitive_value_clone_p1(void);
+extern int utc_mmi_primitive_value_clone_p2(void);
+extern int utc_mmi_primitive_value_clone_p3(void);
+extern int utc_mmi_primitive_value_clone_n(void);
+extern int utc_mmi_primitive_value_destroy_p1(void);
+extern int utc_mmi_primitive_value_destroy_p2(void);
+extern int utc_mmi_primitive_value_destroy_p3(void);
+extern int utc_mmi_primitive_value_destroy_n(void);
+extern int utc_mmi_primitive_value_to_bytes_p(void);
+extern int utc_mmi_primitive_value_to_bytes_n(void);
+extern int utc_mmi_primitive_value_from_bytes_p1(void);
+extern int utc_mmi_primitive_value_from_bytes_p2(void);
+extern int utc_mmi_primitive_value_from_bytes_p3(void);
+extern int utc_mmi_primitive_value_from_bytes_n(void);
+extern int utc_mmi_signal_parameter_create_p(void);
+extern int utc_mmi_signal_parameter_create_n(void);
+extern int utc_mmi_signal_parameter_get_name_p(void);
+extern int utc_mmi_signal_parameter_get_name_n(void);
+extern int utc_mmi_signal_parameter_get_value_p(void);
+extern int utc_mmi_signal_parameter_get_value_n(void);
+extern int utc_mmi_signal_parameter_clone_p(void);
+extern int utc_mmi_signal_parameter_clone_n(void);
+extern int utc_mmi_signal_parameter_destroy_p(void);
+extern int utc_mmi_signal_parameter_destroy_n(void);
+extern int utc_mmi_signal_create_p(void);
+extern int utc_mmi_signal_create_n(void);
+extern int utc_mmi_signal_add_parameter_p(void);
+extern int utc_mmi_signal_add_parameter_n(void);
+extern int utc_mmi_signal_get_name_p(void);
+extern int utc_mmi_signal_get_name_n(void);
+extern int utc_mmi_signal_get_parameter_count_p(void);
+extern int utc_mmi_signal_get_parameter_count_n(void);
+extern int utc_mmi_signal_get_parameter_p(void);
+extern int utc_mmi_signal_get_parameter_n(void);
+extern int utc_mmi_signal_destroy_p(void);
+extern int utc_mmi_signal_destroy_n(void);
+extern int utc_mmi_node_create_source_p(void);
+extern int utc_mmi_node_create_source_n(void);
+extern int utc_mmi_node_get_source_type_p(void);
+extern int utc_mmi_node_get_source_type_n(void);
+extern int utc_mmi_node_create_processor_p(void);
+extern int utc_mmi_node_create_processor_n(void);
+extern int utc_mmi_node_get_processor_type_p(void);
+extern int utc_mmi_node_get_processor_type_n(void);
+extern int utc_mmi_node_create_logic_p(void);
+extern int utc_mmi_node_create_logic_n(void);
+extern int utc_mmi_node_get_logic_type_p(void);
+extern int utc_mmi_node_get_logic_type_n(void);
+extern int utc_mmi_node_create_controller_p(void);
+extern int utc_mmi_node_create_controller_n(void);
+extern int utc_mmi_node_get_controller_type_p(void);
+extern int utc_mmi_node_get_controller_type_n(void);
+extern int utc_mmi_node_create_action_p(void);
+extern int utc_mmi_node_create_action_n(void);
+extern int utc_mmi_node_get_action_type_p(void);
+extern int utc_mmi_node_get_action_type_n(void);
+extern int utc_mmi_node_create_custom_p(void);
+extern int utc_mmi_node_create_custom_n(void);
+extern int utc_mmi_node_get_custom_type_p(void);
+extern int utc_mmi_node_get_custom_type_n(void);
+extern int utc_mmi_port_create_p(void);
+extern int utc_mmi_port_create_n(void);
+extern int utc_mmi_port_get_name_p(void);
+extern int utc_mmi_port_get_name_n(void);
+extern int utc_mmi_port_get_type_p(void);
+extern int utc_mmi_port_get_type_n(void);
+extern int utc_mmi_port_get_data_type_p(void);
+extern int utc_mmi_port_get_data_type_n(void);
+extern int utc_mmi_port_set_name_p(void);
+extern int utc_mmi_port_set_name_n(void);
+extern int utc_mmi_port_set_type_p(void);
+extern int utc_mmi_port_set_type_n(void);
+extern int utc_mmi_port_set_data_type_p(void);
+extern int utc_mmi_port_set_data_type_n(void);
+extern int utc_mmi_port_set_input_data_received_cb_p(void);
+extern int utc_mmi_port_set_input_data_received_cb_n(void);
+extern int utc_mmi_port_clone_p(void);
+extern int utc_mmi_port_clone_n(void);
+extern int utc_mmi_port_destroy_p(void);
+extern int utc_mmi_port_destroy_n(void);
+extern int utc_mmi_port_instance_generate_output_p(void);
+extern int utc_mmi_port_instance_generate_output_n(void);
+
+testcase tc_array[] = {
+       {"utc_mmi_initialize_p", utc_mmi_initialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_initialize_n", utc_mmi_initialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_p", utc_mmi_deinitialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_n", utc_mmi_deinitialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_p", utc_mmi_set_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_n", utc_mmi_set_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_p", utc_mmi_unset_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_n", utc_mmi_unset_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_p", utc_mmi_standard_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_n", utc_mmi_standard_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_p", utc_mmi_custom_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_n", utc_mmi_custom_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_p", utc_mmi_workflow_instance_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_n", utc_mmi_workflow_instance_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_p", utc_mmi_workflow_instance_activate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_n", utc_mmi_workflow_instance_activate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_p", utc_mmi_workflow_instance_deactivate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_n", utc_mmi_workflow_instance_deactivate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_p", utc_mmi_workflow_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_n", utc_mmi_workflow_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_p", utc_mmi_workflow_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_n", utc_mmi_workflow_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_p", utc_mmi_workflow_instance_set_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_n", utc_mmi_workflow_instance_set_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_p", utc_mmi_workflow_instance_unset_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_n", utc_mmi_workflow_instance_unset_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_p", utc_mmi_workflow_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_n", utc_mmi_workflow_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_p", utc_mmi_workflow_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_n", utc_mmi_workflow_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_p", utc_mmi_workflow_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_n", utc_mmi_workflow_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_p", utc_mmi_workflow_node_add_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_n", utc_mmi_workflow_node_add_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_p", utc_mmi_workflow_link_nodes_by_names_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_n", utc_mmi_workflow_link_nodes_by_names_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_p", utc_mmi_workflow_attribute_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_n", utc_mmi_workflow_attribute_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_p", utc_mmi_workflow_attribute_set_default_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_n", utc_mmi_workflow_attribute_set_default_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_p", utc_mmi_workflow_signal_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_n", utc_mmi_workflow_signal_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_p", utc_mmi_workflow_output_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_n", utc_mmi_workflow_output_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_p", utc_mmi_workflow_output_assign_by_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_n", utc_mmi_workflow_output_assign_by_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_p", utc_mmi_standard_workflow_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_n", utc_mmi_standard_workflow_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_p", utc_mmi_workflow_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_n", utc_mmi_workflow_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_p", utc_mmi_workflow_create_from_script_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_n", utc_mmi_workflow_create_from_script_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_p", utc_mmi_workflow_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_n", utc_mmi_workflow_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_p", utc_mmi_node_set_initialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_n", utc_mmi_node_set_initialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_p", utc_mmi_node_set_deinitialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_n", utc_mmi_node_set_deinitialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_p", utc_mmi_node_set_attribute_set_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_n", utc_mmi_node_set_attribute_set_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_p", utc_mmi_node_set_activated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_n", utc_mmi_node_set_activated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_p", utc_mmi_node_set_deactivated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_n", utc_mmi_node_set_deactivated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_p", utc_mmi_node_set_signal_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_n", utc_mmi_node_set_signal_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_p", utc_mmi_node_add_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_n", utc_mmi_node_add_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_p", utc_mmi_node_find_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_n", utc_mmi_node_find_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_p", utc_mmi_node_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_n", utc_mmi_node_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_p", utc_mmi_node_get_port_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_n", utc_mmi_node_get_port_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_p", utc_mmi_node_get_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_n", utc_mmi_node_get_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_p", utc_mmi_node_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_n", utc_mmi_node_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_p", utc_mmi_node_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_n", utc_mmi_node_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_p", utc_mmi_node_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_n", utc_mmi_node_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_p", utc_mmi_node_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_n", utc_mmi_node_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_p", utc_mmi_node_instance_find_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_n", utc_mmi_node_instance_find_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_p", utc_mmi_node_instance_find_by_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_n", utc_mmi_node_instance_find_by_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_p", utc_mmi_node_instance_find_sibling_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_n", utc_mmi_node_instance_find_sibling_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_p", utc_mmi_node_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_n", utc_mmi_node_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_p", utc_mmi_node_instance_update_pending_activation_result_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_n", utc_mmi_node_instance_update_pending_activation_result_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_p", utc_mmi_data_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_n", utc_mmi_data_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_p", utc_mmi_data_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_n", utc_mmi_data_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_p", utc_mmi_data_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_n", utc_mmi_data_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_p", utc_mmi_data_create_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_n", utc_mmi_data_create_text_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_p", utc_mmi_data_create_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_n", utc_mmi_data_create_audio_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_p", utc_mmi_data_create_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_n", utc_mmi_data_create_video_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_p", utc_mmi_data_create_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_n", utc_mmi_data_create_user_identification_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_p", utc_mmi_data_create_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_n", utc_mmi_data_create_coordinate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_p", utc_mmi_data_create_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_n", utc_mmi_data_create_bounding_box_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_p", utc_mmi_data_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_n", utc_mmi_data_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_p", utc_mmi_data_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n1", utc_mmi_data_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n2", utc_mmi_data_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_p", utc_mmi_data_create_struct_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_n", utc_mmi_data_create_struct_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_p", utc_mmi_data_set_struct_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_n", utc_mmi_data_set_struct_element_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_p", utc_mmi_data_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_n", utc_mmi_data_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_p", utc_mmi_data_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n1", utc_mmi_data_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n2", utc_mmi_data_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_p", utc_mmi_data_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n1", utc_mmi_data_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n2", utc_mmi_data_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_p", utc_mmi_data_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n1", utc_mmi_data_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n2", utc_mmi_data_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_p", utc_mmi_data_get_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n1", utc_mmi_data_get_text_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n2", utc_mmi_data_get_text_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_p", utc_mmi_data_get_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n1", utc_mmi_data_get_audio_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n2", utc_mmi_data_get_audio_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_p", utc_mmi_data_get_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n1", utc_mmi_data_get_video_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n2", utc_mmi_data_get_video_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_p", utc_mmi_data_get_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n1", utc_mmi_data_get_user_identification_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n2", utc_mmi_data_get_user_identification_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_p", utc_mmi_data_get_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n1", utc_mmi_data_get_coordinate_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n2", utc_mmi_data_get_coordinate_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_p", utc_mmi_data_get_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n1", utc_mmi_data_get_bounding_box_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n2", utc_mmi_data_get_bounding_box_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_p", utc_mmi_data_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n1", utc_mmi_data_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n2", utc_mmi_data_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_p", utc_mmi_data_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n1", utc_mmi_data_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n2", utc_mmi_data_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p1", utc_mmi_data_get_struct_element_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p2", utc_mmi_data_get_struct_element_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n1", utc_mmi_data_get_struct_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n2", utc_mmi_data_get_struct_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_p", utc_mmi_data_get_struct_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_n", utc_mmi_data_get_struct_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_p", utc_mmi_data_get_struct_element_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_n", utc_mmi_data_get_struct_element_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_p", utc_mmi_data_get_struct_element_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_n", utc_mmi_data_get_struct_element_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_p", utc_mmi_data_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_n", utc_mmi_data_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_p", utc_mmi_data_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_n", utc_mmi_data_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p1", utc_mmi_data_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p2", utc_mmi_data_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p3", utc_mmi_data_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p4", utc_mmi_data_destroy_p4, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_n", utc_mmi_data_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_p", utc_mmi_attribute_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n1", utc_mmi_attribute_create_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n2", utc_mmi_attribute_create_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_p", utc_mmi_attribute_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_n", utc_mmi_attribute_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_p", utc_mmi_attribute_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_n", utc_mmi_attribute_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_p", utc_mmi_attribute_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_n", utc_mmi_attribute_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_p", utc_mmi_attribute_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_n", utc_mmi_attribute_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_p", utc_mmi_attribute_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_n", utc_mmi_attribute_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_p", utc_mmi_attribute_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_n", utc_mmi_attribute_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_p", utc_mmi_attribute_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_n", utc_mmi_attribute_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_p", utc_mmi_attribute_create_string_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_n", utc_mmi_attribute_create_string_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_p", utc_mmi_primitive_value_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_n", utc_mmi_primitive_value_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_p", utc_mmi_primitive_value_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_n", utc_mmi_primitive_value_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_p", utc_mmi_primitive_value_create_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_n", utc_mmi_primitive_value_create_string_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_p", utc_mmi_primitive_value_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_n", utc_mmi_primitive_value_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_p", utc_mmi_primitive_value_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_n", utc_mmi_primitive_value_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_p", utc_mmi_primitive_value_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n1", utc_mmi_primitive_value_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n2", utc_mmi_primitive_value_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_p", utc_mmi_primitive_value_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_n", utc_mmi_primitive_value_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_p", utc_mmi_primitive_value_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n1", utc_mmi_primitive_value_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n2", utc_mmi_primitive_value_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_p", utc_mmi_primitive_value_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n1", utc_mmi_primitive_value_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n2", utc_mmi_primitive_value_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_p", utc_mmi_primitive_value_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n1", utc_mmi_primitive_value_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n2", utc_mmi_primitive_value_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_p", utc_mmi_primitive_value_get_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n1", utc_mmi_primitive_value_get_string_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n2", utc_mmi_primitive_value_get_string_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_p", utc_mmi_primitive_value_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n1", utc_mmi_primitive_value_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n2", utc_mmi_primitive_value_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_p", utc_mmi_primitive_value_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n1", utc_mmi_primitive_value_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n2", utc_mmi_primitive_value_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p1", utc_mmi_primitive_value_clone_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p2", utc_mmi_primitive_value_clone_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p3", utc_mmi_primitive_value_clone_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_n", utc_mmi_primitive_value_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p1", utc_mmi_primitive_value_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p2", utc_mmi_primitive_value_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p3", utc_mmi_primitive_value_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_n", utc_mmi_primitive_value_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_p", utc_mmi_primitive_value_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_n", utc_mmi_primitive_value_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p1", utc_mmi_primitive_value_from_bytes_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p2", utc_mmi_primitive_value_from_bytes_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p3", utc_mmi_primitive_value_from_bytes_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_n", utc_mmi_primitive_value_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_p", utc_mmi_signal_parameter_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_n", utc_mmi_signal_parameter_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_p", utc_mmi_signal_parameter_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_n", utc_mmi_signal_parameter_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_p", utc_mmi_signal_parameter_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_n", utc_mmi_signal_parameter_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_p", utc_mmi_signal_parameter_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_n", utc_mmi_signal_parameter_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_p", utc_mmi_signal_parameter_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_n", utc_mmi_signal_parameter_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_p", utc_mmi_signal_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_n", utc_mmi_signal_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_p", utc_mmi_signal_add_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_n", utc_mmi_signal_add_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_p", utc_mmi_signal_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_n", utc_mmi_signal_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_p", utc_mmi_signal_get_parameter_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_n", utc_mmi_signal_get_parameter_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_p", utc_mmi_signal_get_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_n", utc_mmi_signal_get_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_p", utc_mmi_signal_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_n", utc_mmi_signal_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_p", utc_mmi_node_create_source_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_n", utc_mmi_node_create_source_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_p", utc_mmi_node_get_source_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_n", utc_mmi_node_get_source_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_p", utc_mmi_node_create_processor_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_n", utc_mmi_node_create_processor_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_p", utc_mmi_node_get_processor_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_n", utc_mmi_node_get_processor_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_p", utc_mmi_node_create_logic_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_n", utc_mmi_node_create_logic_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_p", utc_mmi_node_get_logic_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_n", utc_mmi_node_get_logic_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_p", utc_mmi_node_create_controller_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_n", utc_mmi_node_create_controller_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_p", utc_mmi_node_get_controller_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_n", utc_mmi_node_get_controller_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_p", utc_mmi_node_create_action_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_n", utc_mmi_node_create_action_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_p", utc_mmi_node_get_action_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_n", utc_mmi_node_get_action_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_p", utc_mmi_node_create_custom_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_n", utc_mmi_node_create_custom_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_p", utc_mmi_node_get_custom_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_n", utc_mmi_node_get_custom_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_p", utc_mmi_port_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_n", utc_mmi_port_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_p", utc_mmi_port_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_n", utc_mmi_port_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_p", utc_mmi_port_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_n", utc_mmi_port_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_p", utc_mmi_port_get_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_n", utc_mmi_port_get_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_p", utc_mmi_port_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_n", utc_mmi_port_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_p", utc_mmi_port_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_n", utc_mmi_port_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_p", utc_mmi_port_set_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_n", utc_mmi_port_set_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_p", utc_mmi_port_set_input_data_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_n", utc_mmi_port_set_input_data_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_p", utc_mmi_port_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_n", utc_mmi_port_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_p", utc_mmi_port_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_n", utc_mmi_port_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_p", utc_mmi_port_instance_generate_output_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_n", utc_mmi_port_instance_generate_output_n, utc_mmi_startup, utc_mmi_cleanup},
+       {NULL, NULL}
+};
+
+#endif // __TCT_MMI-NATIVE_H__
+
diff --git a/src/utc/mmi/tct-mmi-core_wearable.h b/src/utc/mmi/tct-mmi-core_wearable.h
new file mode 100755 (executable)
index 0000000..8ea321a
--- /dev/null
@@ -0,0 +1,649 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#ifndef __TCT_MMI-NATIVE_H__
+#define __TCT_MMI-NATIVE_H__
+
+#include "testcase.h"
+#include "tct_common.h"
+
+extern void utc_mmi_startup(void);
+extern void utc_mmi_cleanup(void);
+
+extern int utc_mmi_initialize_p(void);
+extern int utc_mmi_initialize_n(void);
+extern int utc_mmi_deinitialize_p(void);
+extern int utc_mmi_deinitialize_n(void);
+extern int utc_mmi_set_state_changed_cb_p(void);
+extern int utc_mmi_set_state_changed_cb_n(void);
+extern int utc_mmi_unset_state_changed_cb_p(void);
+extern int utc_mmi_unset_state_changed_cb_n(void);
+extern int utc_mmi_standard_workflow_instance_create_p(void);
+extern int utc_mmi_standard_workflow_instance_create_n(void);
+extern int utc_mmi_custom_workflow_instance_create_p(void);
+extern int utc_mmi_custom_workflow_instance_create_n(void);
+extern int utc_mmi_workflow_instance_destroy_p(void);
+extern int utc_mmi_workflow_instance_destroy_n(void);
+extern int utc_mmi_workflow_instance_activate_p(void);
+extern int utc_mmi_workflow_instance_activate_n(void);
+extern int utc_mmi_workflow_instance_deactivate_p(void);
+extern int utc_mmi_workflow_instance_deactivate_n(void);
+extern int utc_mmi_workflow_instance_set_attribute_p(void);
+extern int utc_mmi_workflow_instance_set_attribute_n(void);
+extern int utc_mmi_workflow_instance_emit_signal_p(void);
+extern int utc_mmi_workflow_instance_emit_signal_n(void);
+extern int utc_mmi_workflow_instance_set_output_cb_p(void);
+extern int utc_mmi_workflow_instance_set_output_cb_n(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_p(void);
+extern int utc_mmi_workflow_instance_unset_output_cb_n(void);
+extern int utc_mmi_workflow_create_p(void);
+extern int utc_mmi_workflow_create_n(void);
+extern int utc_mmi_workflow_set_type_p(void);
+extern int utc_mmi_workflow_set_type_n(void);
+extern int utc_mmi_workflow_get_type_p(void);
+extern int utc_mmi_workflow_get_type_n(void);
+extern int utc_mmi_workflow_node_add_p(void);
+extern int utc_mmi_workflow_node_add_n(void);
+extern int utc_mmi_workflow_link_nodes_by_names_p(void);
+extern int utc_mmi_workflow_link_nodes_by_names_n(void);
+extern int utc_mmi_workflow_attribute_assign_p(void);
+extern int utc_mmi_workflow_attribute_assign_n(void);
+extern int utc_mmi_workflow_attribute_set_default_value_p(void);
+extern int utc_mmi_workflow_attribute_set_default_value_n(void);
+extern int utc_mmi_workflow_signal_assign_p(void);
+extern int utc_mmi_workflow_signal_assign_n(void);
+extern int utc_mmi_workflow_output_assign_p(void);
+extern int utc_mmi_workflow_output_assign_n(void);
+extern int utc_mmi_workflow_output_assign_by_port_p(void);
+extern int utc_mmi_workflow_output_assign_by_port_n(void);
+extern int utc_mmi_standard_workflow_register_p(void);
+extern int utc_mmi_standard_workflow_register_n(void);
+extern int utc_mmi_workflow_clone_p(void);
+extern int utc_mmi_workflow_clone_n(void);
+extern int utc_mmi_workflow_create_from_script_p(void);
+extern int utc_mmi_workflow_create_from_script_n(void);
+extern int utc_mmi_workflow_destroy_p(void);
+extern int utc_mmi_workflow_destroy_n(void);
+extern int utc_mmi_node_set_initialized_cb_p(void);
+extern int utc_mmi_node_set_initialized_cb_n(void);
+extern int utc_mmi_node_set_deinitialized_cb_p(void);
+extern int utc_mmi_node_set_deinitialized_cb_n(void);
+extern int utc_mmi_node_set_attribute_set_cb_p(void);
+extern int utc_mmi_node_set_attribute_set_cb_n(void);
+extern int utc_mmi_node_set_activated_cb_p(void);
+extern int utc_mmi_node_set_activated_cb_n(void);
+extern int utc_mmi_node_set_deactivated_cb_p(void);
+extern int utc_mmi_node_set_deactivated_cb_n(void);
+extern int utc_mmi_node_set_signal_received_cb_p(void);
+extern int utc_mmi_node_set_signal_received_cb_n(void);
+extern int utc_mmi_node_add_port_p(void);
+extern int utc_mmi_node_add_port_n(void);
+extern int utc_mmi_node_find_port_p(void);
+extern int utc_mmi_node_find_port_n(void);
+extern int utc_mmi_node_get_type_p(void);
+extern int utc_mmi_node_get_type_n(void);
+extern int utc_mmi_node_get_port_count_p(void);
+extern int utc_mmi_node_get_port_count_n(void);
+extern int utc_mmi_node_get_port_p(void);
+extern int utc_mmi_node_get_port_n(void);
+extern int utc_mmi_node_register_p(void);
+extern int utc_mmi_node_register_n(void);
+extern int utc_mmi_node_clone_p(void);
+extern int utc_mmi_node_clone_n(void);
+extern int utc_mmi_node_destroy_p(void);
+extern int utc_mmi_node_destroy_n(void);
+extern int utc_mmi_node_instance_set_attribute_p(void);
+extern int utc_mmi_node_instance_set_attribute_n(void);
+extern int utc_mmi_node_instance_find_port_instance_p(void);
+extern int utc_mmi_node_instance_find_port_instance_n(void);
+extern int utc_mmi_node_instance_find_by_port_instance_p(void);
+extern int utc_mmi_node_instance_find_by_port_instance_n(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_p(void);
+extern int utc_mmi_node_instance_find_sibling_port_instance_n(void);
+extern int utc_mmi_node_instance_emit_signal_p(void);
+extern int utc_mmi_node_instance_emit_signal_n(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_p(void);
+extern int utc_mmi_node_instance_update_pending_activation_result_n(void);
+extern int utc_mmi_data_create_bool_p(void);
+extern int utc_mmi_data_create_bool_n(void);
+extern int utc_mmi_data_create_int_p(void);
+extern int utc_mmi_data_create_int_n(void);
+extern int utc_mmi_data_create_float_p(void);
+extern int utc_mmi_data_create_float_n(void);
+extern int utc_mmi_data_create_text_p(void);
+extern int utc_mmi_data_create_text_n(void);
+extern int utc_mmi_data_create_audio_p(void);
+extern int utc_mmi_data_create_audio_n(void);
+extern int utc_mmi_data_create_video_p(void);
+extern int utc_mmi_data_create_video_n(void);
+extern int utc_mmi_data_create_user_identification_p(void);
+extern int utc_mmi_data_create_user_identification_n(void);
+extern int utc_mmi_data_create_coordinate_p(void);
+extern int utc_mmi_data_create_coordinate_n(void);
+extern int utc_mmi_data_create_bounding_box_p(void);
+extern int utc_mmi_data_create_bounding_box_n(void);
+extern int utc_mmi_data_create_array_p(void);
+extern int utc_mmi_data_create_array_n(void);
+extern int utc_mmi_data_add_array_element_p(void);
+extern int utc_mmi_data_add_array_element_n1(void);
+extern int utc_mmi_data_add_array_element_n2(void);
+extern int utc_mmi_data_create_struct_p(void);
+extern int utc_mmi_data_create_struct_n(void);
+extern int utc_mmi_data_set_struct_element_p(void);
+extern int utc_mmi_data_set_struct_element_n(void);
+extern int utc_mmi_data_get_type_p(void);
+extern int utc_mmi_data_get_type_n(void);
+extern int utc_mmi_data_get_bool_p(void);
+extern int utc_mmi_data_get_bool_n1(void);
+extern int utc_mmi_data_get_bool_n2(void);
+extern int utc_mmi_data_get_int_p(void);
+extern int utc_mmi_data_get_int_n1(void);
+extern int utc_mmi_data_get_int_n2(void);
+extern int utc_mmi_data_get_float_p(void);
+extern int utc_mmi_data_get_float_n1(void);
+extern int utc_mmi_data_get_float_n2(void);
+extern int utc_mmi_data_get_text_p(void);
+extern int utc_mmi_data_get_text_n1(void);
+extern int utc_mmi_data_get_text_n2(void);
+extern int utc_mmi_data_get_audio_p(void);
+extern int utc_mmi_data_get_audio_n1(void);
+extern int utc_mmi_data_get_audio_n2(void);
+extern int utc_mmi_data_get_video_p(void);
+extern int utc_mmi_data_get_video_n1(void);
+extern int utc_mmi_data_get_video_n2(void);
+extern int utc_mmi_data_get_user_identification_p(void);
+extern int utc_mmi_data_get_user_identification_n1(void);
+extern int utc_mmi_data_get_user_identification_n2(void);
+extern int utc_mmi_data_get_coordinate_p(void);
+extern int utc_mmi_data_get_coordinate_n1(void);
+extern int utc_mmi_data_get_coordinate_n2(void);
+extern int utc_mmi_data_get_bounding_box_p(void);
+extern int utc_mmi_data_get_bounding_box_n1(void);
+extern int utc_mmi_data_get_bounding_box_n2(void);
+extern int utc_mmi_data_get_array_count_p(void);
+extern int utc_mmi_data_get_array_count_n1(void);
+extern int utc_mmi_data_get_array_count_n2(void);
+extern int utc_mmi_data_get_array_element_p(void);
+extern int utc_mmi_data_get_array_element_n1(void);
+extern int utc_mmi_data_get_array_element_n2(void);
+extern int utc_mmi_data_get_struct_element_p1(void);
+extern int utc_mmi_data_get_struct_element_p2(void);
+extern int utc_mmi_data_get_struct_element_n1(void);
+extern int utc_mmi_data_get_struct_element_n2(void);
+extern int utc_mmi_data_get_struct_count_p(void);
+extern int utc_mmi_data_get_struct_count_n(void);
+extern int utc_mmi_data_get_struct_element_name_p(void);
+extern int utc_mmi_data_get_struct_element_name_n(void);
+extern int utc_mmi_data_get_struct_element_value_p(void);
+extern int utc_mmi_data_get_struct_element_value_n(void);
+extern int utc_mmi_data_to_bytes_p(void);
+extern int utc_mmi_data_to_bytes_n(void);
+extern int utc_mmi_data_from_bytes_p(void);
+extern int utc_mmi_data_from_bytes_n(void);
+extern int utc_mmi_data_destroy_p1(void);
+extern int utc_mmi_data_destroy_p2(void);
+extern int utc_mmi_data_destroy_p3(void);
+extern int utc_mmi_data_destroy_p4(void);
+extern int utc_mmi_data_destroy_n(void);
+extern int utc_mmi_attribute_create_p(void);
+extern int utc_mmi_attribute_create_n1(void);
+extern int utc_mmi_attribute_create_n2(void);
+extern int utc_mmi_attribute_set_name_p(void);
+extern int utc_mmi_attribute_set_name_n(void);
+extern int utc_mmi_attribute_get_name_p(void);
+extern int utc_mmi_attribute_get_name_n(void);
+extern int utc_mmi_attribute_get_value_p(void);
+extern int utc_mmi_attribute_get_value_n(void);
+extern int utc_mmi_attribute_clone_p(void);
+extern int utc_mmi_attribute_clone_n(void);
+extern int utc_mmi_attribute_destroy_p(void);
+extern int utc_mmi_attribute_destroy_n(void);
+extern int utc_mmi_attribute_to_bytes_p(void);
+extern int utc_mmi_attribute_to_bytes_n(void);
+extern int utc_mmi_attribute_from_bytes_p(void);
+extern int utc_mmi_attribute_from_bytes_n(void);
+extern int utc_mmi_attribute_create_string_array_p(void);
+extern int utc_mmi_attribute_create_string_array_n(void);
+extern int utc_mmi_primitive_value_create_int_p(void);
+extern int utc_mmi_primitive_value_create_int_n(void);
+extern int utc_mmi_primitive_value_create_float_p(void);
+extern int utc_mmi_primitive_value_create_float_n(void);
+extern int utc_mmi_primitive_value_create_string_p(void);
+extern int utc_mmi_primitive_value_create_string_n(void);
+extern int utc_mmi_primitive_value_create_bool_p(void);
+extern int utc_mmi_primitive_value_create_bool_n(void);
+extern int utc_mmi_primitive_value_create_array_p(void);
+extern int utc_mmi_primitive_value_create_array_n(void);
+extern int utc_mmi_primitive_value_add_array_element_p(void);
+extern int utc_mmi_primitive_value_add_array_element_n1(void);
+extern int utc_mmi_primitive_value_add_array_element_n2(void);
+extern int utc_mmi_primitive_value_get_type_p(void);
+extern int utc_mmi_primitive_value_get_type_n(void);
+extern int utc_mmi_primitive_value_get_bool_p(void);
+extern int utc_mmi_primitive_value_get_bool_n1(void);
+extern int utc_mmi_primitive_value_get_bool_n2(void);
+extern int utc_mmi_primitive_value_get_int_p(void);
+extern int utc_mmi_primitive_value_get_int_n1(void);
+extern int utc_mmi_primitive_value_get_int_n2(void);
+extern int utc_mmi_primitive_value_get_float_p(void);
+extern int utc_mmi_primitive_value_get_float_n1(void);
+extern int utc_mmi_primitive_value_get_float_n2(void);
+extern int utc_mmi_primitive_value_get_string_p(void);
+extern int utc_mmi_primitive_value_get_string_n1(void);
+extern int utc_mmi_primitive_value_get_string_n2(void);
+extern int utc_mmi_primitive_value_get_array_count_p(void);
+extern int utc_mmi_primitive_value_get_array_count_n1(void);
+extern int utc_mmi_primitive_value_get_array_count_n2(void);
+extern int utc_mmi_primitive_value_get_array_element_p(void);
+extern int utc_mmi_primitive_value_get_array_element_n1(void);
+extern int utc_mmi_primitive_value_get_array_element_n2(void);
+extern int utc_mmi_primitive_value_clone_p1(void);
+extern int utc_mmi_primitive_value_clone_p2(void);
+extern int utc_mmi_primitive_value_clone_p3(void);
+extern int utc_mmi_primitive_value_clone_n(void);
+extern int utc_mmi_primitive_value_destroy_p1(void);
+extern int utc_mmi_primitive_value_destroy_p2(void);
+extern int utc_mmi_primitive_value_destroy_p3(void);
+extern int utc_mmi_primitive_value_destroy_n(void);
+extern int utc_mmi_primitive_value_to_bytes_p(void);
+extern int utc_mmi_primitive_value_to_bytes_n(void);
+extern int utc_mmi_primitive_value_from_bytes_p1(void);
+extern int utc_mmi_primitive_value_from_bytes_p2(void);
+extern int utc_mmi_primitive_value_from_bytes_p3(void);
+extern int utc_mmi_primitive_value_from_bytes_n(void);
+extern int utc_mmi_signal_parameter_create_p(void);
+extern int utc_mmi_signal_parameter_create_n(void);
+extern int utc_mmi_signal_parameter_get_name_p(void);
+extern int utc_mmi_signal_parameter_get_name_n(void);
+extern int utc_mmi_signal_parameter_get_value_p(void);
+extern int utc_mmi_signal_parameter_get_value_n(void);
+extern int utc_mmi_signal_parameter_clone_p(void);
+extern int utc_mmi_signal_parameter_clone_n(void);
+extern int utc_mmi_signal_parameter_destroy_p(void);
+extern int utc_mmi_signal_parameter_destroy_n(void);
+extern int utc_mmi_signal_create_p(void);
+extern int utc_mmi_signal_create_n(void);
+extern int utc_mmi_signal_add_parameter_p(void);
+extern int utc_mmi_signal_add_parameter_n(void);
+extern int utc_mmi_signal_get_name_p(void);
+extern int utc_mmi_signal_get_name_n(void);
+extern int utc_mmi_signal_get_parameter_count_p(void);
+extern int utc_mmi_signal_get_parameter_count_n(void);
+extern int utc_mmi_signal_get_parameter_p(void);
+extern int utc_mmi_signal_get_parameter_n(void);
+extern int utc_mmi_signal_destroy_p(void);
+extern int utc_mmi_signal_destroy_n(void);
+extern int utc_mmi_node_create_source_p(void);
+extern int utc_mmi_node_create_source_n(void);
+extern int utc_mmi_node_get_source_type_p(void);
+extern int utc_mmi_node_get_source_type_n(void);
+extern int utc_mmi_node_create_processor_p(void);
+extern int utc_mmi_node_create_processor_n(void);
+extern int utc_mmi_node_get_processor_type_p(void);
+extern int utc_mmi_node_get_processor_type_n(void);
+extern int utc_mmi_node_create_logic_p(void);
+extern int utc_mmi_node_create_logic_n(void);
+extern int utc_mmi_node_get_logic_type_p(void);
+extern int utc_mmi_node_get_logic_type_n(void);
+extern int utc_mmi_node_create_controller_p(void);
+extern int utc_mmi_node_create_controller_n(void);
+extern int utc_mmi_node_get_controller_type_p(void);
+extern int utc_mmi_node_get_controller_type_n(void);
+extern int utc_mmi_node_create_action_p(void);
+extern int utc_mmi_node_create_action_n(void);
+extern int utc_mmi_node_get_action_type_p(void);
+extern int utc_mmi_node_get_action_type_n(void);
+extern int utc_mmi_node_create_custom_p(void);
+extern int utc_mmi_node_create_custom_n(void);
+extern int utc_mmi_node_get_custom_type_p(void);
+extern int utc_mmi_node_get_custom_type_n(void);
+extern int utc_mmi_port_create_p(void);
+extern int utc_mmi_port_create_n(void);
+extern int utc_mmi_port_get_name_p(void);
+extern int utc_mmi_port_get_name_n(void);
+extern int utc_mmi_port_get_type_p(void);
+extern int utc_mmi_port_get_type_n(void);
+extern int utc_mmi_port_get_data_type_p(void);
+extern int utc_mmi_port_get_data_type_n(void);
+extern int utc_mmi_port_set_name_p(void);
+extern int utc_mmi_port_set_name_n(void);
+extern int utc_mmi_port_set_type_p(void);
+extern int utc_mmi_port_set_type_n(void);
+extern int utc_mmi_port_set_data_type_p(void);
+extern int utc_mmi_port_set_data_type_n(void);
+extern int utc_mmi_port_set_input_data_received_cb_p(void);
+extern int utc_mmi_port_set_input_data_received_cb_n(void);
+extern int utc_mmi_port_clone_p(void);
+extern int utc_mmi_port_clone_n(void);
+extern int utc_mmi_port_destroy_p(void);
+extern int utc_mmi_port_destroy_n(void);
+extern int utc_mmi_port_instance_generate_output_p(void);
+extern int utc_mmi_port_instance_generate_output_n(void);
+
+testcase tc_array[] = {
+       {"utc_mmi_initialize_p", utc_mmi_initialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_initialize_n", utc_mmi_initialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_p", utc_mmi_deinitialize_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_deinitialize_n", utc_mmi_deinitialize_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_p", utc_mmi_set_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_set_state_changed_cb_n", utc_mmi_set_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_p", utc_mmi_unset_state_changed_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_unset_state_changed_cb_n", utc_mmi_unset_state_changed_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_p", utc_mmi_standard_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_instance_create_n", utc_mmi_standard_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_p", utc_mmi_custom_workflow_instance_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_custom_workflow_instance_create_n", utc_mmi_custom_workflow_instance_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_p", utc_mmi_workflow_instance_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_destroy_n", utc_mmi_workflow_instance_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_p", utc_mmi_workflow_instance_activate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_activate_n", utc_mmi_workflow_instance_activate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_p", utc_mmi_workflow_instance_deactivate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_deactivate_n", utc_mmi_workflow_instance_deactivate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_p", utc_mmi_workflow_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_attribute_n", utc_mmi_workflow_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_p", utc_mmi_workflow_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_emit_signal_n", utc_mmi_workflow_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_p", utc_mmi_workflow_instance_set_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_set_output_cb_n", utc_mmi_workflow_instance_set_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_p", utc_mmi_workflow_instance_unset_output_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_instance_unset_output_cb_n", utc_mmi_workflow_instance_unset_output_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_p", utc_mmi_workflow_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_n", utc_mmi_workflow_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_p", utc_mmi_workflow_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_set_type_n", utc_mmi_workflow_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_p", utc_mmi_workflow_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_get_type_n", utc_mmi_workflow_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_p", utc_mmi_workflow_node_add_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_node_add_n", utc_mmi_workflow_node_add_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_p", utc_mmi_workflow_link_nodes_by_names_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_link_nodes_by_names_n", utc_mmi_workflow_link_nodes_by_names_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_p", utc_mmi_workflow_attribute_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_assign_n", utc_mmi_workflow_attribute_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_p", utc_mmi_workflow_attribute_set_default_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_attribute_set_default_value_n", utc_mmi_workflow_attribute_set_default_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_p", utc_mmi_workflow_signal_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_signal_assign_n", utc_mmi_workflow_signal_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_p", utc_mmi_workflow_output_assign_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_n", utc_mmi_workflow_output_assign_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_p", utc_mmi_workflow_output_assign_by_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_output_assign_by_port_n", utc_mmi_workflow_output_assign_by_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_p", utc_mmi_standard_workflow_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_standard_workflow_register_n", utc_mmi_standard_workflow_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_p", utc_mmi_workflow_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_clone_n", utc_mmi_workflow_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_p", utc_mmi_workflow_create_from_script_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_create_from_script_n", utc_mmi_workflow_create_from_script_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_p", utc_mmi_workflow_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_workflow_destroy_n", utc_mmi_workflow_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_p", utc_mmi_node_set_initialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_initialized_cb_n", utc_mmi_node_set_initialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_p", utc_mmi_node_set_deinitialized_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deinitialized_cb_n", utc_mmi_node_set_deinitialized_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_p", utc_mmi_node_set_attribute_set_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_attribute_set_cb_n", utc_mmi_node_set_attribute_set_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_p", utc_mmi_node_set_activated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_activated_cb_n", utc_mmi_node_set_activated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_p", utc_mmi_node_set_deactivated_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_deactivated_cb_n", utc_mmi_node_set_deactivated_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_p", utc_mmi_node_set_signal_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_set_signal_received_cb_n", utc_mmi_node_set_signal_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_p", utc_mmi_node_add_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_add_port_n", utc_mmi_node_add_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_p", utc_mmi_node_find_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_find_port_n", utc_mmi_node_find_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_p", utc_mmi_node_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_type_n", utc_mmi_node_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_p", utc_mmi_node_get_port_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_count_n", utc_mmi_node_get_port_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_p", utc_mmi_node_get_port_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_port_n", utc_mmi_node_get_port_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_p", utc_mmi_node_register_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_register_n", utc_mmi_node_register_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_p", utc_mmi_node_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_clone_n", utc_mmi_node_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_p", utc_mmi_node_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_destroy_n", utc_mmi_node_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_p", utc_mmi_node_instance_set_attribute_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_set_attribute_n", utc_mmi_node_instance_set_attribute_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_p", utc_mmi_node_instance_find_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_port_instance_n", utc_mmi_node_instance_find_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_p", utc_mmi_node_instance_find_by_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_by_port_instance_n", utc_mmi_node_instance_find_by_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_p", utc_mmi_node_instance_find_sibling_port_instance_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_find_sibling_port_instance_n", utc_mmi_node_instance_find_sibling_port_instance_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_p", utc_mmi_node_instance_emit_signal_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_emit_signal_n", utc_mmi_node_instance_emit_signal_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_p", utc_mmi_node_instance_update_pending_activation_result_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_instance_update_pending_activation_result_n", utc_mmi_node_instance_update_pending_activation_result_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_p", utc_mmi_data_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bool_n", utc_mmi_data_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_p", utc_mmi_data_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_int_n", utc_mmi_data_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_p", utc_mmi_data_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_float_n", utc_mmi_data_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_p", utc_mmi_data_create_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_text_n", utc_mmi_data_create_text_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_p", utc_mmi_data_create_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_audio_n", utc_mmi_data_create_audio_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_p", utc_mmi_data_create_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_video_n", utc_mmi_data_create_video_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_p", utc_mmi_data_create_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_user_identification_n", utc_mmi_data_create_user_identification_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_p", utc_mmi_data_create_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_coordinate_n", utc_mmi_data_create_coordinate_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_p", utc_mmi_data_create_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_bounding_box_n", utc_mmi_data_create_bounding_box_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_p", utc_mmi_data_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_array_n", utc_mmi_data_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_p", utc_mmi_data_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n1", utc_mmi_data_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_add_array_element_n2", utc_mmi_data_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_p", utc_mmi_data_create_struct_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_create_struct_n", utc_mmi_data_create_struct_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_p", utc_mmi_data_set_struct_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_set_struct_element_n", utc_mmi_data_set_struct_element_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_p", utc_mmi_data_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_type_n", utc_mmi_data_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_p", utc_mmi_data_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n1", utc_mmi_data_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bool_n2", utc_mmi_data_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_p", utc_mmi_data_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n1", utc_mmi_data_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_int_n2", utc_mmi_data_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_p", utc_mmi_data_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n1", utc_mmi_data_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_float_n2", utc_mmi_data_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_p", utc_mmi_data_get_text_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n1", utc_mmi_data_get_text_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_text_n2", utc_mmi_data_get_text_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_p", utc_mmi_data_get_audio_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n1", utc_mmi_data_get_audio_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_audio_n2", utc_mmi_data_get_audio_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_p", utc_mmi_data_get_video_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n1", utc_mmi_data_get_video_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_video_n2", utc_mmi_data_get_video_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_p", utc_mmi_data_get_user_identification_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n1", utc_mmi_data_get_user_identification_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_user_identification_n2", utc_mmi_data_get_user_identification_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_p", utc_mmi_data_get_coordinate_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n1", utc_mmi_data_get_coordinate_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_coordinate_n2", utc_mmi_data_get_coordinate_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_p", utc_mmi_data_get_bounding_box_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n1", utc_mmi_data_get_bounding_box_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_bounding_box_n2", utc_mmi_data_get_bounding_box_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_p", utc_mmi_data_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n1", utc_mmi_data_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_count_n2", utc_mmi_data_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_p", utc_mmi_data_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n1", utc_mmi_data_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_array_element_n2", utc_mmi_data_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p1", utc_mmi_data_get_struct_element_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_p2", utc_mmi_data_get_struct_element_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n1", utc_mmi_data_get_struct_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_n2", utc_mmi_data_get_struct_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_p", utc_mmi_data_get_struct_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_count_n", utc_mmi_data_get_struct_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_p", utc_mmi_data_get_struct_element_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_name_n", utc_mmi_data_get_struct_element_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_p", utc_mmi_data_get_struct_element_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_get_struct_element_value_n", utc_mmi_data_get_struct_element_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_p", utc_mmi_data_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_to_bytes_n", utc_mmi_data_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_p", utc_mmi_data_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_from_bytes_n", utc_mmi_data_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p1", utc_mmi_data_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p2", utc_mmi_data_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p3", utc_mmi_data_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_p4", utc_mmi_data_destroy_p4, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_data_destroy_n", utc_mmi_data_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_p", utc_mmi_attribute_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n1", utc_mmi_attribute_create_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_n2", utc_mmi_attribute_create_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_p", utc_mmi_attribute_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_set_name_n", utc_mmi_attribute_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_p", utc_mmi_attribute_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_name_n", utc_mmi_attribute_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_p", utc_mmi_attribute_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_get_value_n", utc_mmi_attribute_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_p", utc_mmi_attribute_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_clone_n", utc_mmi_attribute_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_p", utc_mmi_attribute_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_destroy_n", utc_mmi_attribute_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_p", utc_mmi_attribute_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_to_bytes_n", utc_mmi_attribute_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_p", utc_mmi_attribute_from_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_from_bytes_n", utc_mmi_attribute_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_p", utc_mmi_attribute_create_string_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_attribute_create_string_array_n", utc_mmi_attribute_create_string_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_p", utc_mmi_primitive_value_create_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_int_n", utc_mmi_primitive_value_create_int_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_p", utc_mmi_primitive_value_create_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_float_n", utc_mmi_primitive_value_create_float_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_p", utc_mmi_primitive_value_create_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_string_n", utc_mmi_primitive_value_create_string_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_p", utc_mmi_primitive_value_create_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_bool_n", utc_mmi_primitive_value_create_bool_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_p", utc_mmi_primitive_value_create_array_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_create_array_n", utc_mmi_primitive_value_create_array_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_p", utc_mmi_primitive_value_add_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n1", utc_mmi_primitive_value_add_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_add_array_element_n2", utc_mmi_primitive_value_add_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_p", utc_mmi_primitive_value_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_type_n", utc_mmi_primitive_value_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_p", utc_mmi_primitive_value_get_bool_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n1", utc_mmi_primitive_value_get_bool_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_bool_n2", utc_mmi_primitive_value_get_bool_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_p", utc_mmi_primitive_value_get_int_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n1", utc_mmi_primitive_value_get_int_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_int_n2", utc_mmi_primitive_value_get_int_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_p", utc_mmi_primitive_value_get_float_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n1", utc_mmi_primitive_value_get_float_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_float_n2", utc_mmi_primitive_value_get_float_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_p", utc_mmi_primitive_value_get_string_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n1", utc_mmi_primitive_value_get_string_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_string_n2", utc_mmi_primitive_value_get_string_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_p", utc_mmi_primitive_value_get_array_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n1", utc_mmi_primitive_value_get_array_count_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_count_n2", utc_mmi_primitive_value_get_array_count_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_p", utc_mmi_primitive_value_get_array_element_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n1", utc_mmi_primitive_value_get_array_element_n1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_get_array_element_n2", utc_mmi_primitive_value_get_array_element_n2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p1", utc_mmi_primitive_value_clone_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p2", utc_mmi_primitive_value_clone_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_p3", utc_mmi_primitive_value_clone_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_clone_n", utc_mmi_primitive_value_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p1", utc_mmi_primitive_value_destroy_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p2", utc_mmi_primitive_value_destroy_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_p3", utc_mmi_primitive_value_destroy_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_destroy_n", utc_mmi_primitive_value_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_p", utc_mmi_primitive_value_to_bytes_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_to_bytes_n", utc_mmi_primitive_value_to_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p1", utc_mmi_primitive_value_from_bytes_p1, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p2", utc_mmi_primitive_value_from_bytes_p2, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_p3", utc_mmi_primitive_value_from_bytes_p3, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_primitive_value_from_bytes_n", utc_mmi_primitive_value_from_bytes_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_p", utc_mmi_signal_parameter_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_create_n", utc_mmi_signal_parameter_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_p", utc_mmi_signal_parameter_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_name_n", utc_mmi_signal_parameter_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_p", utc_mmi_signal_parameter_get_value_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_get_value_n", utc_mmi_signal_parameter_get_value_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_p", utc_mmi_signal_parameter_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_clone_n", utc_mmi_signal_parameter_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_p", utc_mmi_signal_parameter_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_parameter_destroy_n", utc_mmi_signal_parameter_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_p", utc_mmi_signal_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_create_n", utc_mmi_signal_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_p", utc_mmi_signal_add_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_add_parameter_n", utc_mmi_signal_add_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_p", utc_mmi_signal_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_name_n", utc_mmi_signal_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_p", utc_mmi_signal_get_parameter_count_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_count_n", utc_mmi_signal_get_parameter_count_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_p", utc_mmi_signal_get_parameter_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_get_parameter_n", utc_mmi_signal_get_parameter_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_p", utc_mmi_signal_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_signal_destroy_n", utc_mmi_signal_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_p", utc_mmi_node_create_source_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_source_n", utc_mmi_node_create_source_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_p", utc_mmi_node_get_source_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_source_type_n", utc_mmi_node_get_source_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_p", utc_mmi_node_create_processor_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_processor_n", utc_mmi_node_create_processor_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_p", utc_mmi_node_get_processor_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_processor_type_n", utc_mmi_node_get_processor_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_p", utc_mmi_node_create_logic_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_logic_n", utc_mmi_node_create_logic_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_p", utc_mmi_node_get_logic_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_logic_type_n", utc_mmi_node_get_logic_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_p", utc_mmi_node_create_controller_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_controller_n", utc_mmi_node_create_controller_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_p", utc_mmi_node_get_controller_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_controller_type_n", utc_mmi_node_get_controller_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_p", utc_mmi_node_create_action_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_action_n", utc_mmi_node_create_action_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_p", utc_mmi_node_get_action_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_action_type_n", utc_mmi_node_get_action_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_p", utc_mmi_node_create_custom_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_create_custom_n", utc_mmi_node_create_custom_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_p", utc_mmi_node_get_custom_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_node_get_custom_type_n", utc_mmi_node_get_custom_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_p", utc_mmi_port_create_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_create_n", utc_mmi_port_create_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_p", utc_mmi_port_get_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_name_n", utc_mmi_port_get_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_p", utc_mmi_port_get_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_type_n", utc_mmi_port_get_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_p", utc_mmi_port_get_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_get_data_type_n", utc_mmi_port_get_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_p", utc_mmi_port_set_name_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_name_n", utc_mmi_port_set_name_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_p", utc_mmi_port_set_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_type_n", utc_mmi_port_set_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_p", utc_mmi_port_set_data_type_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_data_type_n", utc_mmi_port_set_data_type_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_p", utc_mmi_port_set_input_data_received_cb_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_set_input_data_received_cb_n", utc_mmi_port_set_input_data_received_cb_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_p", utc_mmi_port_clone_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_clone_n", utc_mmi_port_clone_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_p", utc_mmi_port_destroy_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_destroy_n", utc_mmi_port_destroy_n, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_p", utc_mmi_port_instance_generate_output_p, utc_mmi_startup, utc_mmi_cleanup},
+       {"utc_mmi_port_instance_generate_output_n", utc_mmi_port_instance_generate_output_n, utc_mmi_startup, utc_mmi_cleanup},
+       {NULL, NULL}
+};
+
+#endif // __TCT_MMI-NATIVE_H__
+
diff --git a/src/utc/mmi/utc-mmi.c b/src/utc/mmi/utc-mmi.c
new file mode 100755 (executable)
index 0000000..0426309
--- /dev/null
@@ -0,0 +1,5184 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#include "assert.h"
+#include <mmi.h>
+#include <mmi-workflow.h>
+#include <mmi-node.h>
+#include <mmi-node-types.h>
+#include <stdlib.h>
+#include <Ecore.h>
+
+//& set: mmi
+
+#define MAX_ARRAY_LENGTH 5
+#define DATA_LENGTH 10
+#define COUNT_ELEMENTS 2
+
+static mmi_data_h mmiData = NULL;
+static mmi_data_h arrayElement[MAX_ARRAY_LENGTH] = {NULL, };
+static mmi_attribute_h mmiAttribute = NULL;
+static mmi_attribute_h cloned_attribute = NULL;
+static mmi_primitive_value_h primitiveValue = NULL;
+static mmi_primitive_value_h arrayElement1 = NULL;
+static mmi_primitive_value_h arrayElement2 = NULL;
+static bool g_supported = false;
+
+void utc_mmi_startup(void)
+{
+       g_supported = false;
+       system_info_get_platform_bool("http://tizen.org/feature/multimodal_interaction",&g_supported);
+
+       mmiData = NULL;
+       for (size_t i = 0; i < MAX_ARRAY_LENGTH; i++) {
+               arrayElement[i] = NULL;
+       }
+
+       mmiAttribute = NULL;
+       cloned_attribute = NULL;
+       primitiveValue = NULL;
+
+       primitiveValue = NULL;
+       arrayElement1 = NULL;
+       arrayElement2 = NULL;
+
+}
+
+void utc_mmi_cleanup(void)
+{
+       if (NULL != mmiData) {
+               mmi_data_destroy(mmiData);
+               mmiData = NULL;
+       }
+
+       for (size_t i = 0; i < MAX_ARRAY_LENGTH; i++) {
+               if (NULL != arrayElement[i]) {
+                       mmi_data_destroy(arrayElement[i]);
+                       arrayElement[i] = NULL;
+               }
+       }
+
+       if (NULL != mmiAttribute) {
+               mmi_attribute_destroy(mmiAttribute);
+               mmiAttribute = NULL;
+       }
+
+       if (NULL != cloned_attribute) {
+               mmi_attribute_destroy(cloned_attribute);
+               cloned_attribute = NULL;
+       }
+
+       if (NULL != primitiveValue) {
+               mmi_primitive_value_destroy(primitiveValue);
+               primitiveValue = NULL;
+       }
+
+       if (NULL != primitiveValue) {
+               mmi_primitive_value_destroy(primitiveValue);
+               primitiveValue = NULL;
+       }
+
+       if (NULL != arrayElement1) {
+               mmi_primitive_value_destroy(arrayElement1);
+               arrayElement1 = NULL;
+       }
+
+       if (NULL != arrayElement2) {
+               mmi_primitive_value_destroy(arrayElement2);
+               arrayElement2 = NULL;
+       }
+}
+
+/**
+ * @testcase           utc_mmi_initialize_p
+ * @since_tizen                9.0
+ * @description                test whether mmi handle is created properly
+ */
+int utc_mmi_initialize_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_initialize(), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int ret = mmi_initialize();
+       assert_eq(ret, MMI_ERROR_NONE);
+       mmi_deinitialize();
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_initialize_n
+ * @since_tizen                9.0
+ * @description                test whether mmi handle creation fails on duplicated request
+ */
+int utc_mmi_initialize_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_initialize(), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int ret = mmi_initialize();
+       assert_eq(ret, MMI_ERROR_NONE);
+       assert_eq(mmi_initialize(), MMI_ERROR_OPERATION_FAILED);
+       mmi_deinitialize();
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_deinitialize_p
+ * @since_tizen                9.0
+ * @description                test whether mmi handle is destroyed properly after initialization
+ */
+int utc_mmi_deinitialize_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_deinitialize(), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_initialize();
+       int ret = mmi_deinitialize();
+       assert_eq(ret, MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_deinitialize_n
+ * @since_tizen                9.0
+ * @description                test whether mmi handle destruction fails on duplicated request
+ */
+int utc_mmi_deinitialize_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_deinitialize(), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_initialize();
+       int ret = mmi_deinitialize();
+       assert_eq(ret, MMI_ERROR_NONE);
+       assert_eq(mmi_deinitialize(), MMI_ERROR_OPERATION_FAILED);
+       return 0;
+}
+
+static int _state_changed_cb(mmi_state_e state, void *user_data) {
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_set_state_changed_cb_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_set_state_changed_cb can be set properly
+ */
+int utc_mmi_set_state_changed_cb_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_set_state_changed_cb(_state_changed_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_set_state_changed_cb(_state_changed_cb, NULL), MMI_ERROR_NONE);
+       mmi_unset_state_changed_cb(_state_changed_cb);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_set_state_changed_cb_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_set_state_changed_cb can not be set with NULL parameter
+ */
+int utc_mmi_set_state_changed_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_set_state_changed_cb(NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_set_state_changed_cb(NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_unset_state_changed_cb_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_set_state_changed_cb can be set properly
+ */
+int utc_mmi_unset_state_changed_cb_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_unset_state_changed_cb(_state_changed_cb), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_set_state_changed_cb(_state_changed_cb, NULL), MMI_ERROR_NONE);
+       assert_eq(mmi_unset_state_changed_cb(_state_changed_cb), MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_unset_state_changed_cb_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_unset_state_changed_cb can not be unset with NULL parameter
+ */
+int utc_mmi_unset_state_changed_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_unset_state_changed_cb(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_unset_state_changed_cb(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_standard_workflow_instance_create_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_standard_workflow_instance_create_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_custom_workflow_instance_create_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_custom_workflow_instance_create(workflow, &instance), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_custom_workflow_instance_create(workflow, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_custom_workflow_instance_create_n(void) {
+       mmi_workflow_h workflow = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_custom_workflow_instance_create(workflow, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_custom_workflow_instance_create(workflow, NULL), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_destroy_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_instance_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_activate_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_activate(instance), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_activate(instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_activate_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_activate(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_instance_activate(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_deactivate_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_deactivate(instance), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_activate(instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_deactivate(instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_deactivate_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_deactivate(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_instance_deactivate(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_set_attribute_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_set_attribute(instance, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_set_attribute(instance, mmiAttribute), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_set_attribute_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_set_attribute(NULL, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_workflow_instance_set_attribute(NULL, mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_emit_signal_p(void) {
+       mmi_signal_h handle = NULL;
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_emit_signal(instance, handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_emit_signal(instance, handle), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_emit_signal_n(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_emit_signal(NULL, handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_instance_emit_signal(NULL, handle), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       return 0;
+}
+
+void _workflow_output_cb(mmi_workflow_instance_h instance, const char *name, mmi_data_h data, void *user_data) {
+}
+
+int utc_mmi_workflow_instance_set_output_cb_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_set_output_cb(instance, "OUTPUT", _workflow_output_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_set_output_cb(instance, "OUTPUT", _workflow_output_cb, NULL), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_unset_output_cb(instance, _workflow_output_cb), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_set_output_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_set_output_cb(NULL, "OUTPUT", _workflow_output_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_instance_set_output_cb(NULL, "OUTPUT", _workflow_output_cb, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_instance_unset_output_cb_p(void) {
+       mmi_workflow_instance_h instance = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_unset_output_cb(instance, _workflow_output_cb), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_instance_create(MMI_STANDARD_WORKFLOW_VOICE_TOUCH, &instance), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_set_output_cb(instance, "OUTPUT", _workflow_output_cb, NULL), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_unset_output_cb(instance, _workflow_output_cb), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_instance_destroy(instance), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_instance_unset_output_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_instance_unset_output_cb(NULL, _workflow_output_cb), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_instance_unset_output_cb(NULL, _workflow_output_cb), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+
+/**
+ * @testcase           utc_mmi_workflow_create_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_create can be created properly
+ */
+int utc_mmi_workflow_create_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_create_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_create(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_set_type_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_set_type(workflow, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_set_type(workflow, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_set_type_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_set_type(NULL, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_set_type(NULL, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_workflow_get_type_p(void) {
+       mmi_workflow_h workflow = NULL;
+       mmi_standard_workflow_type_e type;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_get_type(workflow, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_set_type(workflow, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_get_type(workflow, &type), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_get_type_n(void) {
+       mmi_standard_workflow_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_get_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_get_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_workflow_node_add_p(void) {
+       mmi_workflow_h workflow = NULL;
+       mmi_node_h node_screen_analyzer = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_node_add(workflow, "SCREEN_ANALYZER", node_screen_analyzer), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_SCREEN_ANALYZER, &node_screen_analyzer), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_node_add(workflow, "SCREEN_ANALYZER", node_screen_analyzer), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_destroy(node_screen_analyzer), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_node_add_n(void) {
+       mmi_node_h node_screen_analyzer = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_node_add(NULL, "SCREEN_ANALYZER", node_screen_analyzer), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_SCREEN_ANALYZER, &node_screen_analyzer), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_node_add(NULL, "SCREEN_ANALYZER", node_screen_analyzer), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_node_destroy(node_screen_analyzer), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_link_nodes_by_names_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_link_nodes_by_names(workflow, "SCREEN_ANALYZER", "SCREEN_INFO", "MATCH", "TEXT"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       mmi_node_h node_screen_analyzer = NULL;
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_SCREEN_ANALYZER, &node_screen_analyzer), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_node_add(workflow, "SCREEN_ANALYZER", node_screen_analyzer), MMI_ERROR_NONE);
+
+       mmi_node_h node_match = NULL;
+       assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_FIXED_STRING_MATCH, &node_match), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_node_add(workflow, "MATCH", node_match), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_link_nodes_by_names(workflow, "SCREEN_ANALYZER", "SCREEN_INFO", "MATCH", "TEXT"), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_destroy(node_match), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node_screen_analyzer), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_link_nodes_by_names_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_link_nodes_by_names(NULL, "SCREEN_ANALYZER", "SCREEN_INFO", "MATCH", "TEXT"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_link_nodes_by_names(NULL, "SCREEN_ANALYZER", "SCREEN_INFO", "MATCH", "TEXT"), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_attribute_assign_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_attribute_assign(workflow, "COMMANDS", "MATCH", "CANDIDATES"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_attribute_assign(workflow, "COMMANDS", "MATCH", "CANDIDATES"), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_attribute_assign_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_attribute_assign(NULL, "COMMANDS", "MATCH", "CANDIDATES"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_attribute_assign(NULL, "COMMANDS", "MATCH", "CANDIDATES"), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_attribute_set_default_value_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_attribute_set_default_value can be set properly
+ */
+int utc_mmi_workflow_attribute_set_default_value_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_attribute_set_default_value(workflow, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_workflow_attribute_set_default_value(workflow, mmiAttribute), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_attribute_set_default_value_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_attribute_set_default_value fails if workflow is not valid
+ */
+int utc_mmi_workflow_attribute_set_default_value_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_attribute_set_default_value(NULL, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_workflow_attribute_set_default_value(NULL, mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_signal_assign_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_signal_assign can be set properly
+ */
+int utc_mmi_workflow_signal_assign_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_signal_assign(workflow, "SIGNAL_NAME", "TARGET_NODE", "TARGET_SIGNAL_NAME"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_signal_assign(workflow, "SIGNAL_NAME", "TARGET_NODE", "TARGET_SIGNAL_NAME"), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_signal_assign_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_signal_assign fails if workflow is not valid
+ */
+int utc_mmi_workflow_signal_assign_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_signal_assign(NULL, "SIGNAL_NAME", "TARGET_NODE", "TARGET_SIGNAL_NAME"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_signal_assign(NULL, "SIGNAL_NAME", "TARGET_NODE", "TARGET_SIGNAL_NAME"), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_workflow_output_assign_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_output_assign(workflow, "COMMAND", "MATCH", "MATCHED_CANDIDATE"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_output_assign(workflow, "COMMAND", "MATCH", "MATCHED_CANDIDATE"), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_output_assign_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_output_assign(NULL, "COMMAND", "MATCH", "MATCHED_CANDIDATE"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_output_assign(NULL, "COMMAND", "MATCH", "MATCHED_CANDIDATE"), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_output_assign_by_port_p(void) {
+       mmi_workflow_h workflow = NULL;
+       mmi_port_h port = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_output_assign_by_port(workflow, "COMMAND", port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+
+       mmi_node_h node = NULL;
+       assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_FIXED_STRING_MATCH, &node), MMI_ERROR_NONE);
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_node_add_port(node, port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_node_add(workflow, "MATCH", node), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_output_assign_by_port(workflow, "COMMAND", port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_output_assign_by_port_n(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_output_assign_by_port(NULL, "COMMAND", port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_output_assign_by_port(NULL, "COMMAND", port), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_standard_workflow_register_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_standard_workflow_register can be set properly
+ */
+int utc_mmi_standard_workflow_register_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_standard_workflow_register(workflow), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_set_type(workflow, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NONE);
+
+       assert_eq(mmi_standard_workflow_register(workflow), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_standard_workflow_register_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_standard_workflow_register fails if workflow is not valid
+ */
+int utc_mmi_standard_workflow_register_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_standard_workflow_register(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_standard_workflow_register(NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_clone_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_clone can be made properly
+ */
+int utc_mmi_workflow_clone_p(void) {
+       mmi_workflow_h workflow = NULL;
+       mmi_workflow_h cloned = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_clone(workflow, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_set_type(workflow, MMI_STANDARD_WORKFLOW_VOICE_TOUCH), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_clone(workflow, &cloned), MMI_ERROR_NONE);
+
+       assert_eq(mmi_workflow_destroy(cloned), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_workflow_clone_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_workflow_clone fails if workflow is not valid
+ */
+int utc_mmi_workflow_clone_n(void) {
+       mmi_workflow_h cloned = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_clone(NULL, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_clone(NULL, &cloned), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_workflow_create_from_script_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_create_from_script("@workflow", &workflow), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create_from_script("@workflow", &workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_create_from_script_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_create_from_script("@workflow", NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create_from_script("@workflow", NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_workflow_destroy_p(void) {
+       mmi_workflow_h workflow = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_create(&workflow), MMI_ERROR_NONE);
+       assert_eq(mmi_workflow_destroy(workflow), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_workflow_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_workflow_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_workflow_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+static int _node_initialized_cb(mmi_node_instance_h instance, void *user_data) {
+       return 0;
+}
+static int _node_deinitialized_cb(mmi_node_instance_h instance, void *user_data) {
+       return 0;
+}
+static int _node_attribute_set_cb(mmi_node_instance_h instance, mmi_attribute_h attribute, void *user_data) {
+       return 0;
+}
+static int _node_activated_cb(mmi_node_instance_h instance, void *user_data) {
+       return 0;
+}
+static int _node_deactivated_cb(mmi_node_instance_h instance, void *user_data) {
+       return 0;
+}
+static int _node_signal_received_cb(mmi_node_instance_h instance, mmi_signal_h signal, void *user_data) {
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_node_set_initialized_cb_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_node_set_initialized_cb can be set properly
+ */
+int utc_mmi_node_set_initialized_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_initialized_cb(node, _node_initialized_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_initialized_cb(node, _node_initialized_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_node_set_initialized_cb_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_node_set_initialized_cb can not be set with NULL parameter
+ */
+int utc_mmi_node_set_initialized_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_initialized_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_initialized_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_node_set_deinitialized_cb_p
+ * @since_tizen                9.0
+ * @description                test whether mmi_node_set_deinitialized_cb can be deinitialize properly
+ */
+int utc_mmi_node_set_deinitialized_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_deinitialized_cb(node, _node_deinitialized_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_deinitialized_cb(node, _node_deinitialized_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+/**
+ * @testcase           utc_mmi_node_set_deinitialized_cb_n
+ * @since_tizen                9.0
+ * @description                test whether mmi_node_set_deinitialized_cb can not be deinitialize with NULL parameter
+ */
+int utc_mmi_node_set_deinitialized_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_deinitialized_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_deinitialized_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_set_attribute_set_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_attribute_set_cb(node, _node_attribute_set_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_attribute_set_cb(node, _node_attribute_set_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+int utc_mmi_node_set_attribute_set_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_attribute_set_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_attribute_set_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_set_activated_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_activated_cb(node, _node_activated_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_activated_cb(node, _node_activated_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+int utc_mmi_node_set_activated_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_activated_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_activated_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_set_deactivated_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_deactivated_cb(node, _node_deactivated_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_deactivated_cb(node, _node_deactivated_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+int utc_mmi_node_set_deactivated_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_deactivated_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_deactivated_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_set_signal_received_cb_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_signal_received_cb(node, _node_signal_received_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node);
+       assert_eq(mmi_node_set_signal_received_cb(node, _node_signal_received_cb, NULL), MMI_ERROR_NONE);
+       mmi_node_destroy(node);
+       return 0;
+}
+
+int utc_mmi_node_set_signal_received_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_set_signal_received_cb(NULL, NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_set_signal_received_cb(NULL, NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_add_port_p(void) {
+       mmi_node_h node = NULL;
+       mmi_port_h port = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_add_port(node, port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_add_port(node, port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_add_port_n(void) {
+       mmi_port_h port = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_add_port(NULL, port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_add_port(NULL, port), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_node_find_port_p(void) {
+       mmi_node_h node = NULL;
+       mmi_port_h found = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_find_port(node, MMI_PORT_TYPE_IN, "MyPort", &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+
+       mmi_port_h port = NULL;
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_name(port, "MyPort"), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_type(port, MMI_PORT_TYPE_IN), MMI_ERROR_NONE);
+       assert_eq(mmi_node_add_port(node, port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_find_port(node, MMI_PORT_TYPE_IN, "MyPort", &found), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_find_port_n(void) {
+       mmi_port_h found = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_find_port(NULL, MMI_PORT_TYPE_IN, "MyPort", &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_find_port(NULL, MMI_PORT_TYPE_IN, "MyPort", &found), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_type_p(void) {
+       mmi_node_h node = NULL;
+       mmi_node_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_get_type_n(void) {
+       mmi_node_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_port_count_p(void) {
+       mmi_node_h node = NULL;
+       size_t port_count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_port_count(node, &port_count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_port_count(node, &port_count), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_get_port_count_n(void) {
+       size_t port_count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_port_count(NULL, &port_count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_port_count(NULL, &port_count), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_port_p(void) {
+       mmi_node_h node = NULL;
+       mmi_port_h port = NULL;
+       mmi_port_h found = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_port(node, 0, &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_add_port(node, port), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_get_port(node, 0, &found), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_get_port_n(void) {
+       mmi_port_h found = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_port(NULL, 0, &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_port(NULL, 0, &found), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_register_p(void) {
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_register(node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_register(node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_register_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_register(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_register(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_clone_p(void) {
+       mmi_node_h node = NULL;
+       mmi_node_h cloned = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_clone(node, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+
+       assert_eq(mmi_node_clone(node, &cloned), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_clone_n(void) {
+       mmi_node_h cloned = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_clone(NULL, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_clone(NULL, &cloned), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_destroy_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_destroy(node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_instance_set_attribute_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_set_attribute((mmi_node_instance_h)0x1234, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_node_instance_set_attribute((mmi_node_instance_h)0x1234, mmiAttribute), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_instance_set_attribute_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_set_attribute(NULL, mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_node_instance_set_attribute(NULL, mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_instance_find_port_instance_p(void) {
+       mmi_port_instance_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_port_instance((mmi_node_instance_h)(0x1234), MMI_PORT_TYPE_IN, "InPort", &port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_port_instance((mmi_node_instance_h)(0x1234), MMI_PORT_TYPE_IN, "InPort", &port), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_instance_find_port_instance_n(void) {
+       mmi_port_instance_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_port_instance(NULL, MMI_PORT_TYPE_IN, "InPort", &port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_port_instance(NULL, MMI_PORT_TYPE_IN, "InPort", &port), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_instance_find_by_port_instance_p(void) {
+       mmi_node_instance_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_by_port_instance((mmi_port_instance_h)(0x1234), &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_by_port_instance((mmi_port_instance_h)(0x1234), &node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_instance_find_by_port_instance_n(void) {
+       mmi_node_instance_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_by_port_instance(NULL, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_by_port_instance(NULL, &node), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_instance_find_sibling_port_instance_p(void) {
+       mmi_port_instance_h found = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_sibling_port_instance((mmi_port_instance_h)(0x1234), "InPort", &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_sibling_port_instance((mmi_port_instance_h)(0x1234), "InPort", &found), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_instance_find_sibling_port_instance_n(void) {
+       mmi_port_instance_h found = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_find_sibling_port_instance(NULL, "InPort", &found), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_find_sibling_port_instance(NULL, "InPort", &found), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_instance_emit_signal_p(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_emit_signal((mmi_node_instance_h)(0x1234), handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+       assert_eq(mmi_node_instance_emit_signal((mmi_node_instance_h)(0x1234), handle), MMI_ERROR_NONE);
+       mmi_signal_destroy(handle);
+       return 0;
+}
+
+int utc_mmi_node_instance_emit_signal_n(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_emit_signal(NULL, handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+       assert_eq(mmi_node_instance_emit_signal(NULL, handle), MMI_ERROR_INVALID_PARAMETER);
+       mmi_signal_destroy(handle);
+       return 0;
+}
+
+int utc_mmi_node_instance_update_pending_activation_result_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_update_pending_activation_result((mmi_node_instance_h)0x1234, MMI_ERROR_NONE), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_update_pending_activation_result((mmi_node_instance_h)0x1234, MMI_ERROR_NONE), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_instance_update_pending_activation_result_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_instance_update_pending_activation_result(NULL, MMI_ERROR_NONE), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_instance_update_pending_activation_result(NULL, MMI_ERROR_NONE), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_bool_p(void) {
+       const bool sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_bool(sourceValue, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_bool(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_bool_n(void) {
+       const bool sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_bool(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_bool(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_int_p(void) {
+       const int sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_int_n(void) {
+       const int sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_int(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_int(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_float_p(void) {
+       const float sourceValue = 0.0f;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_float(sourceValue, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_float(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_float_n(void) {
+       const float sourceValue = 0.0f;
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_float(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_float(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_text_p(void) {
+
+       const char *sourceValue = "Hello";
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_text(sourceValue, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_text(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_text_n(void) {
+
+       const char *sourceValue = "Hello";
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_text(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_text(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_text(NULL, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_audio_p(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_audio_n(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_audio(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_audio(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_audio(sourceValue, 0, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_video_p(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_video(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_video(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_video_n(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_video(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_video(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_video(sourceValue, 0, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_video(sourceValue, DATA_LENGTH, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_user_identification_p(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_user_identification(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_user_identification(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_user_identification_n(void) {
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_user_identification(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+       assert_eq(mmi_data_create_user_identification(NULL, DATA_LENGTH, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_user_identification(sourceValue, 0, &mmiData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_create_user_identification(sourceValue, DATA_LENGTH, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_coordinate_p(void) {
+       const int x = 123;
+       const int y = 456;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_coordinate(x, y, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_coordinate(x, y, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_coordinate_n(void) {
+       const int x = 123;
+       const int y = 456;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_coordinate(x, y, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_coordinate(x, y, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_bounding_box_p(void) {
+       const int x = 12;
+       const int y = 34;
+       const int w = 56;
+       const int h = 78;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_bounding_box(x, y, w, h, &mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_bounding_box(x, y, w, h, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_bounding_box_n(void) {
+       const int x = 12;
+       const int y = 34;
+       const int w = 56;
+       const int h = 78;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_bounding_box(x, y, w, h, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_bounding_box(x, y, w, h, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_array_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_array_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_array(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_add_array_element_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[0]), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_create_int(source[i], &arrayElement[i]), MMI_ERROR_NONE);
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+       return 0;
+}
+
+int utc_mmi_data_add_array_element_n1(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_add_array_element(mmiData, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       assert_eq(mmi_data_add_array_element(NULL, arrayElement[0]), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_add_array_element(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_data_add_array_element(mmiData, arrayElement[0]), MMI_ERROR_NONE);
+       arrayElement[0] = NULL;
+       assert_eq(mmi_data_add_array_element(mmiData, arrayElement[1]), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_add_array_element_n2(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[0]), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_neq(arrayElement, NULL);
+
+       assert_eq(mmi_data_add_array_element(mmiData, arrayElement[0]), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_create_struct_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+       return 0;
+}
+
+int utc_mmi_data_create_struct_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_create_struct(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_set_struct_element_p(void) {
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       if(g_supported == false) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[0], arrayElement[0]), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+       return 0;
+}
+
+int utc_mmi_data_set_struct_element_n(void) {
+       const char *name = "Element";
+       if(g_supported == false) {
+               assert_eq(mmi_data_set_struct_element(NULL, name, arrayElement[0]), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+
+       assert_eq(mmi_data_set_struct_element(NULL, name, arrayElement[0]), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_set_struct_element(mmiData, NULL, arrayElement[0]), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_set_struct_element(mmiData, name, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_type_p(void) {
+       mmi_data_h tempValue = NULL;
+       mmi_data_type_e type = MMI_DATA_TYPE_ARRAY;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_int(0, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_INTEGER);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       assert_eq(mmi_data_create_text("Hello", &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_TEXT);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       assert_eq(mmi_data_create_coordinate(123, 456, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_COORDINATE);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       assert_eq(mmi_data_create_bounding_box(12, 34, 56, 78, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_BOUNDING_BOX);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_AUDIO);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       assert_eq(mmi_data_create_array(&tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_ARRAY);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+
+       assert_eq(mmi_data_create_struct(&tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_get_type(tempValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_STRUCT);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       tempValue = NULL;
+       return 0;
+}
+
+int utc_mmi_data_get_type_n(void) {
+       mmi_data_type_e type = MMI_DATA_TYPE_ARRAY;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_type(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_bool_p(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bool(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const bool sourceBool = true;
+       assert_eq(mmi_data_create_bool(sourceBool, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bool(mmiData, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceBool);
+       return 0;
+}
+
+int utc_mmi_data_get_bool_n1(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bool(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const bool sourceBool = true;
+       assert_eq(mmi_data_create_bool(sourceBool, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bool(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_bool(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_bool_n2(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bool(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bool(mmiData, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_int_p(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_int(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_int(mmiData, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceInt);
+       return 0;
+}
+
+int utc_mmi_data_get_int_n1(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_int(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_int(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_int(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_int_n2(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_int(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_int(mmiData, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_float_p(void) {
+       float targetValue = -1.0f;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_float(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const float sourceFloat = 1.0f;
+       assert_eq(mmi_data_create_float(sourceFloat, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_float(mmiData, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceFloat);
+       return 0;
+}
+
+int utc_mmi_data_get_float_n1(void) {
+       float targetValue = -1.0f;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_float(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const float sourceFloat = 1.0f;
+       assert_eq(mmi_data_create_float(sourceFloat, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_float(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_float(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_float_n2(void) {
+       float targetValue = -1.0f;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_float(mmiData, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_float(mmiData, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_text_p(void) {
+       const char *textInData = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_text(mmiData, &textInData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_text(mmiData, &textInData), MMI_ERROR_NONE);
+       assert(strcmp(textInData, sourceText) == 0);
+       return 0;
+}
+
+int utc_mmi_data_get_text_n1(void) {
+       const char *textInData = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_text(NULL, &textInData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_text(NULL, &textInData), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_text(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_text_n2(void) {
+       const char *textInData = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_text(mmiData, &textInData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_text(mmiData, &textInData), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_audio_p(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_audio(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_audio(mmiData, &bytes, &size), MMI_ERROR_NONE);
+       assert_eq(size, DATA_LENGTH);
+       assert_eq(*((unsigned char*)bytes), 1);
+       return 0;
+}
+
+int utc_mmi_data_get_audio_n1(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_audio(NULL, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_audio(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_audio(NULL, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_audio(mmiData, NULL, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_audio(mmiData, &bytes, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_audio_n2(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_audio(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_audio(mmiData, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_video_p(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_video(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_video(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_video(mmiData, &bytes, &size), MMI_ERROR_NONE);
+       assert_eq(size, DATA_LENGTH);
+       assert_eq(*((unsigned char*)bytes), 1);
+       return 0;
+}
+
+int utc_mmi_data_get_video_n1(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_video(NULL, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_video(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_video(NULL, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_video(mmiData, NULL, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_video(mmiData, &bytes, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_video_n2(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_video(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_video(mmiData, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_user_identification_p(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_user_identification(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_user_identification(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_user_identification(mmiData, &bytes, &size), MMI_ERROR_NONE);
+       assert_eq(size, DATA_LENGTH);
+       assert_eq(*((unsigned char*)bytes), 1);
+       return 0;
+}
+
+int utc_mmi_data_get_user_identification_n1(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_user_identification(NULL, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char sourceValue[DATA_LENGTH] = {1, };
+       assert_eq(mmi_data_create_user_identification(sourceValue, DATA_LENGTH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_user_identification(NULL, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_user_identification(mmiData, NULL, &size), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_user_identification(mmiData, &bytes, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_user_identification_n2(void) {
+       size_t size;
+       const void *bytes = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_user_identification(mmiData, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_user_identification(mmiData, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_coordinate_p(void) {
+       int targetX = -1;
+       int targetY = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_coordinate(mmiData, &targetX, &targetY), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceX = 123;
+       const int sourceY = 456;
+       assert_eq(mmi_data_create_coordinate(sourceX, sourceY, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_coordinate(mmiData, &targetX, &targetY), MMI_ERROR_NONE);
+       assert_eq(targetX, sourceX);
+       assert_eq(targetY, sourceY);
+       return 0;
+}
+
+int utc_mmi_data_get_coordinate_n1(void) {
+       int targetX = -1;
+       int targetY = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_coordinate(NULL, &targetX, &targetY), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceX = 123;
+       const int sourceY = 456;
+       assert_eq(mmi_data_create_coordinate(sourceX, sourceY, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_coordinate(NULL, &targetX, &targetY), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_coordinate(mmiData, NULL, &targetY), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_coordinate(mmiData, &targetX, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_coordinate_n2(void) {
+       int targetX = -1;
+       int targetY = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_coordinate(mmiData, &targetX, &targetY), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_coordinate(mmiData, &targetX, &targetY), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_bounding_box_p(void) {
+       int targetX = -1;
+       int targetY = -1;
+       int targetW = -1;
+       int targetH = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceX = 12;
+       const int sourceY = 34;
+       const int sourceW = 56;
+       const int sourceH = 78;
+       assert_eq(mmi_data_create_bounding_box(sourceX, sourceY, sourceW, sourceH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_NONE);
+       assert_eq(targetX, sourceX);
+       assert_eq(targetY, sourceY);
+       assert_eq(targetW, sourceW);
+       assert_eq(targetH, sourceH);
+       return 0;
+}
+
+int utc_mmi_data_get_bounding_box_n1(void) {
+       int targetX = -1;
+       int targetY = -1;
+       int targetW = -1;
+       int targetH = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bounding_box(NULL, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceX = 12;
+       const int sourceY = 34;
+       const int sourceW = 56;
+       const int sourceH = 78;
+       assert_eq(mmi_data_create_bounding_box(sourceX, sourceY, sourceW, sourceH, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bounding_box(NULL, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_bounding_box(mmiData, NULL, &targetY, &targetW, &targetH), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, NULL, &targetW, &targetH), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, NULL, &targetH), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, &targetW, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_bounding_box_n2(void) {
+       int targetX = -1;
+       int targetY = -1;
+       int targetW = -1;
+       int targetH = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_text(sourceText, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_bounding_box(mmiData, &targetX, &targetY, &targetW, &targetH), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_array_count_p(void) {
+       size_t count = 10;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               size_t count = 10;
+               assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NONE);
+               assert_eq(count, i);
+
+               assert_eq(mmi_data_create_int(source[i], &arrayElement[i]), MMI_ERROR_NONE);
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+       return 0;
+}
+
+int utc_mmi_data_get_array_count_n1(void) {
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_count(NULL, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_array_count(NULL, &count), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_array_count(mmiData, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_array_count_n2(void) {
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_array_element_p(void) {
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_element(mmiData, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_create_int(source[i], &arrayElement[i]), MMI_ERROR_NONE);
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       size_t count = 0;
+       assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       for (size_t i = 0; i < count; i++) {
+               assert_eq(mmi_data_get_array_element(mmiData, i, &element), MMI_ERROR_NONE);
+
+               mmi_data_type_e type = MMI_DATA_TYPE_ANY;
+               assert_eq(mmi_data_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_DATA_TYPE_INTEGER);
+
+               int data = 0;
+               assert_eq(mmi_data_get_int(element, &data), MMI_ERROR_NONE);
+               assert_eq(data, source[i]);
+       }
+       return 0;
+}
+
+int utc_mmi_data_get_array_element_n1(void) {
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_element(mmiData, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_array_element(mmiData, 0, &element), MMI_ERROR_INVALID_PARAMETER);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_create_int(source[i], &arrayElement[i]), MMI_ERROR_NONE);
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       size_t count = 0;
+       assert_eq(mmi_data_get_array_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       assert_eq(mmi_data_get_array_element(NULL, 0, &element), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_array_element(mmiData, count, &element), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_array_element(mmiData, 0, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_array_element_n2(void) {
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_array_element(mmiData, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_array_element(mmiData, 0, &element), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_p1(void) {
+       size_t count = 0;
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element(mmiData, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       assert_eq(mmi_data_get_struct_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       const char *element_name = NULL;
+       mmi_data_h element_value = NULL;
+
+       assert_eq(mmi_data_get_struct_element_name(mmiData, 0, &element_name), MMI_ERROR_NONE);
+       assert(strcmp(element_name, "Element1") == 0);
+       assert_eq(mmi_data_get_struct_element_value(mmiData, 0, &element_value), MMI_ERROR_NONE);
+       int intValue = 0;
+       assert_eq(mmi_data_get_int(element_value, &intValue), MMI_ERROR_NONE);
+       assert_eq(intValue, sourceInt);
+
+       assert_eq(mmi_data_get_struct_element_name(mmiData, 1, &element_name), MMI_ERROR_NONE);
+       assert(strcmp(element_name, "Element2") == 0);
+       assert_eq(mmi_data_get_struct_element_value(mmiData, 1, &element_value), MMI_ERROR_NONE);
+       const char *textValue = NULL;
+       assert_eq(mmi_data_get_text(element_value, &textValue), MMI_ERROR_NONE);
+       assert(strcmp(textValue, sourceText) == 0);
+
+       assert_eq(mmi_data_get_struct_element(mmiData, "Element2", &element), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_p2(void) {
+       const char *name = "Element";
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+
+       assert_eq(mmi_data_set_struct_element(mmiData, name, arrayElement[0]), MMI_ERROR_NONE);
+       arrayElement[0] = NULL;
+
+       assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_NONE);
+       assert_neq(element, NULL);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_n1(void) {
+       const char *name = "Element";
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_INVALID_PARAMETER);
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_set_struct_element(mmiData, name, arrayElement[0]), MMI_ERROR_NONE);
+       arrayElement[0] = NULL;
+
+       assert_eq(mmi_data_get_struct_element(NULL, name, &element), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_struct_element(mmiData, NULL, &element), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_get_struct_element(mmiData, name, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_n2(void) {
+       const char *name = "Element";
+       mmi_data_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_get_struct_element(mmiData, name, &element), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_count_p(void) {
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_count(mmiData, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       assert_eq(mmi_data_get_struct_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_count_n(void) {
+       static mmi_data_h temp_mmi_data = NULL;
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_count(temp_mmi_data, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_get_struct_count(temp_mmi_data, &count), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_name_p(void) {
+       const char *element_name = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element_name(mmiData, 0, &element_name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       size_t count = 0;
+       assert_eq(mmi_data_get_struct_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       assert_eq(mmi_data_get_struct_element_name(mmiData, 0, &element_name), MMI_ERROR_NONE);
+       assert(strcmp(element_name, "Element1") == 0);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_name_n(void) {
+       static mmi_data_h temp_mmi_data = NULL;
+       const char *element_name = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element_name(temp_mmi_data, 0, &element_name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_get_struct_element_name(temp_mmi_data, 0, &element_name), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_value_p(void) {
+       mmi_data_h element_value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element_value(mmiData, 0, &element_value), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       size_t count = 0;
+       assert_eq(mmi_data_get_struct_count(mmiData, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       const char *element_name = NULL;
+
+       assert_eq(mmi_data_get_struct_element_name(mmiData, 0, &element_name), MMI_ERROR_NONE);
+       assert(strcmp(element_name, "Element1") == 0);
+       assert_eq(mmi_data_get_struct_element_value(mmiData, 0, &element_value), MMI_ERROR_NONE);
+       int intValue = 0;
+       assert_eq(mmi_data_get_int(element_value, &intValue), MMI_ERROR_NONE);
+       assert_eq(intValue, sourceInt);
+       return 0;
+}
+
+int utc_mmi_data_get_struct_element_value_n(void) {
+       static mmi_data_h temp_mmi_data = NULL;
+       mmi_data_h element_value = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_get_struct_element_value(temp_mmi_data, 0, &element_value), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_get_struct_element_value(temp_mmi_data, 0, &element_value), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_to_bytes_p(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_to_bytes(mmiData, &bytes, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 1;
+       assert_eq(mmi_data_create_int(sourceInt, &mmiData), MMI_ERROR_NONE);
+       assert_eq(mmi_data_to_bytes(mmiData, &bytes, &length), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_data_to_bytes_n(void) {
+       static mmi_data_h temp_mmi_data = NULL;
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_to_bytes(temp_mmi_data, &bytes, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_to_bytes(temp_mmi_data, &bytes, &length), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_from_bytes_p(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+       mmi_data_h restoredValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_data_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       assert_eq(mmi_data_create_int(source[0], &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_int(source[1], &arrayElement[1]), MMI_ERROR_NONE);
+
+       assert_eq(mmi_data_add_array_element(mmiData, arrayElement[0]), MMI_ERROR_NONE);
+       arrayElement[0] = NULL;
+       assert_eq(mmi_data_add_array_element(mmiData, arrayElement[1]), MMI_ERROR_NONE);
+       arrayElement[1] = NULL;
+
+       assert_eq(mmi_data_to_bytes(mmiData, &bytes, &length), MMI_ERROR_NONE);
+
+       mmi_data_destroy(mmiData);
+       mmiData = NULL;
+       mmi_data_destroy(arrayElement[0]);
+       arrayElement[0] = NULL;
+       mmi_data_destroy(arrayElement[1]);
+       arrayElement[1] = NULL;
+
+       assert_eq(mmi_data_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NONE);
+
+       free(bytes);
+
+       mmi_data_type_e type = MMI_DATA_TYPE_BOOLEAN;
+       assert_eq(mmi_data_get_type(restoredValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_DATA_TYPE_ARRAY);
+
+       size_t count = 0;
+       assert_eq(mmi_data_get_array_count(restoredValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       for (size_t i = 0; i < count; ++i) {
+               int data = 0;
+               mmi_data_h element = NULL;
+               assert_eq(mmi_data_get_array_element(restoredValue, i, &element), MMI_ERROR_NONE);
+               assert_eq(mmi_data_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_DATA_TYPE_INTEGER);
+               assert_eq(mmi_data_get_int(element, &data), MMI_ERROR_NONE);
+               assert_eq(data, source[i]);
+       }
+       assert_eq(mmi_data_destroy(restoredValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_data_from_bytes_n(void) {
+       static mmi_data_h temp_mmi_data = NULL;
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+
+       if(g_supported == false) {
+               assert_eq(mmi_data_from_bytes(bytes, length, &temp_mmi_data), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_from_bytes(bytes, length, &temp_mmi_data), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_data_destroy_p1(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_data_create_int(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NONE);
+       mmiData = NULL;
+       return 0;
+}
+
+int utc_mmi_data_destroy_p2(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceValue = "Hello";
+       assert_eq(mmi_data_create_text(sourceValue, &mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NONE);
+       mmiData = NULL;
+       return 0;
+}
+
+int utc_mmi_data_destroy_p3(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_array(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_create_int(source[i], &arrayElement[i]), MMI_ERROR_NONE);
+               assert_eq(mmi_data_add_array_element(mmiData, arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NONE);
+       mmiData = NULL;
+       return 0;
+}
+
+int utc_mmi_data_destroy_p4(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_struct(&mmiData), MMI_ERROR_NONE);
+       assert_neq(mmiData, NULL);
+
+       const int sourceInt = 1;
+       const char *sourceText = "Hello";
+       assert_eq(mmi_data_create_int(sourceInt, &arrayElement[0]), MMI_ERROR_NONE);
+       assert_eq(mmi_data_create_text(sourceText, &arrayElement[1]), MMI_ERROR_NONE);
+
+       const char *name[COUNT_ELEMENTS] = {"Element1", "Element2"};
+       for (size_t i = 0; i < COUNT_ELEMENTS; i++) {
+               assert_eq(mmi_data_set_struct_element(mmiData, name[i], arrayElement[i]), MMI_ERROR_NONE);
+               arrayElement[i] = NULL;
+       }
+
+       assert_eq(mmi_data_destroy(mmiData), MMI_ERROR_NONE);
+       mmiData = NULL;
+       return 0;
+}
+
+int utc_mmi_data_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_data_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_create_p(void) {
+       const char *name = "Attribute";
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+       return 0;
+}
+
+int utc_mmi_attribute_create_n1(void) {
+       const char *name = "Attribute";
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_create(NULL, name, &mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_attribute_create(NULL, name, &mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_attribute_create(primitiveValue, NULL, &mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_attribute_create(primitiveValue, name, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_create_n2(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_create(primitiveValue, "", &mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_attribute_create(primitiveValue, "", &mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+
+       const size_t NAME_LENGTH = 300;
+       char name[NAME_LENGTH];
+       for (int loop = 0;loop < NAME_LENGTH;loop++) {
+               name[loop] = 'a';
+       }
+       name[NAME_LENGTH - 1] = 0;
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_set_name_p(void) {
+       const char *name = "Attribute";
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_set_name(mmiAttribute, name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_eq(mmi_attribute_set_name(mmiAttribute, name), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_attribute_set_name_n(void) {
+       const char *name = "Attribute";
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_set_name(NULL, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_eq(mmi_attribute_set_name(NULL, NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+int utc_mmi_attribute_get_name_p(void) {
+       char *temp_name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_get_name(mmiAttribute, &temp_name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_get_name(mmiAttribute, &temp_name), MMI_ERROR_NONE);
+       assert_neq(temp_name, NULL);
+       assert(strcmp(temp_name, name) == 0);
+       free(temp_name);
+       return 0;
+}
+
+int utc_mmi_attribute_get_name_n(void) {
+       char *temp_name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_get_name(NULL, &temp_name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_get_name(NULL, &temp_name), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_attribute_get_name(mmiAttribute, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_get_value_p(void) {
+       mmi_primitive_value_h temp_value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_get_value(mmiAttribute, &temp_value), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_get_value(mmiAttribute, &temp_value), MMI_ERROR_NONE);
+       assert_neq(temp_value, NULL);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+       assert_eq(mmi_primitive_value_get_type(temp_value, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+       int value = -1;
+       assert_eq(mmi_primitive_value_get_int(temp_value, &value), MMI_ERROR_NONE);
+       assert_eq(value, sourceInt);
+
+       assert_eq(mmi_primitive_value_destroy(temp_value), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_attribute_get_value_n(void) {
+       mmi_primitive_value_h temp_value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_get_value(NULL, &temp_value), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_get_value(NULL, &temp_value), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_attribute_get_value(mmiAttribute, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_clone_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_clone(mmiAttribute, &cloned_attribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_clone(mmiAttribute, &cloned_attribute), MMI_ERROR_NONE);
+       assert_neq(cloned_attribute, NULL);
+
+       char *temp_name = NULL;
+       assert_eq(mmi_attribute_get_name(cloned_attribute, &temp_name), MMI_ERROR_NONE);
+       assert_neq(temp_name, NULL);
+       assert(strcmp(temp_name, name) == 0);
+       free(temp_name);
+
+       mmi_primitive_value_h temp_value = NULL;
+       assert_eq(mmi_attribute_get_value(mmiAttribute, &temp_value), MMI_ERROR_NONE);
+       assert_neq(temp_value, NULL);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+       assert_eq(mmi_primitive_value_get_type(temp_value, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+       int value = -1;
+       assert_eq(mmi_primitive_value_get_int(temp_value, &value), MMI_ERROR_NONE);
+       assert_eq(value, sourceInt);
+
+       assert_eq(mmi_primitive_value_destroy(temp_value), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_attribute_clone_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_clone(NULL, &cloned_attribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_clone(NULL, &cloned_attribute), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_attribute_clone(mmiAttribute, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_destroy_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_destroy(mmiAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_destroy(mmiAttribute), MMI_ERROR_NONE);
+       mmiAttribute = NULL;
+       return 0;
+}
+
+int utc_mmi_attribute_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_attribute_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_to_bytes_p(void) {
+       unsigned char *bytes = NULL;
+       size_t size = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_to_bytes(mmiAttribute, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_to_bytes(mmiAttribute, &bytes, &size), MMI_ERROR_NONE);
+       assert_neq(bytes, NULL);
+
+       assert_eq(mmi_attribute_destroy(mmiAttribute), MMI_ERROR_NONE);
+       mmiAttribute = NULL;
+
+       free(bytes);
+
+       return 0;
+}
+
+int utc_mmi_attribute_to_bytes_n(void) {
+       unsigned char *bytes = NULL;
+       size_t size = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_to_bytes(NULL, &bytes, &size), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_attribute_to_bytes(NULL, &bytes, &size), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_from_bytes_p(void) {
+       mmi_attribute_h restoredAttribute = NULL;
+       unsigned char *bytes = NULL;
+       size_t size = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_from_bytes(bytes, size, &restoredAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const int sourceInt = 5;
+       assert_eq(mmi_primitive_value_create_int(sourceInt, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *name = "Attribute";
+       assert_eq(mmi_attribute_create(primitiveValue, name, &mmiAttribute), MMI_ERROR_NONE);
+       assert_neq(mmiAttribute, NULL);
+
+       assert_eq(mmi_attribute_to_bytes(mmiAttribute, &bytes, &size), MMI_ERROR_NONE);
+       assert_neq(bytes, NULL);
+
+       assert_eq(mmi_attribute_destroy(mmiAttribute), MMI_ERROR_NONE);
+       mmiAttribute = NULL;
+
+       assert_eq(mmi_attribute_from_bytes(bytes, size, &restoredAttribute), MMI_ERROR_NONE);
+       assert_neq(restoredAttribute, NULL);
+
+       free(bytes);
+
+       char *temp_name = NULL;
+       assert_eq(mmi_attribute_get_name(restoredAttribute, &temp_name), MMI_ERROR_NONE);
+       assert_neq(temp_name, NULL);
+       assert(strcmp(temp_name, name) == 0);
+       free(temp_name);
+
+       mmi_primitive_value_h temp_value = NULL;
+       assert_eq(mmi_attribute_get_value(restoredAttribute, &temp_value), MMI_ERROR_NONE);
+       assert_neq(temp_value, NULL);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(temp_value, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+       int value = -1;
+       assert_eq(mmi_primitive_value_get_int(temp_value, &value), MMI_ERROR_NONE);
+       assert_eq(value, sourceInt);
+
+       mmi_primitive_value_destroy(temp_value);
+       temp_value = NULL;
+
+       mmi_attribute_destroy(restoredAttribute);
+       restoredAttribute = NULL;
+       return 0;
+}
+
+int utc_mmi_attribute_from_bytes_n(void) {
+       mmi_attribute_h restoredAttribute = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_from_bytes(NULL, 0, &restoredAttribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_attribute_from_bytes(NULL, 0, &restoredAttribute), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_attribute_create_string_array_p(void) {
+       mmi_attribute_h attribute;
+       const char *strings[2] = {"Hello", "World"};
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_create_string_array("Name", strings, 2, &attribute), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_attribute_create_string_array("Name", strings, 2, &attribute), MMI_ERROR_NONE);
+       assert_eq(mmi_attribute_destroy(attribute), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_attribute_create_string_array_n(void) {
+       const char *strings[2] = {"Hello", "World"};
+       if(g_supported == false) {
+               assert_eq(mmi_attribute_create_string_array("Name", strings, 2, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_attribute_create_string_array("Name", strings, 2, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_int_p(void) {
+       int sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_int_n(void) {
+       int sourceValue = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_int(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_int(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_float_p(void) {
+       float sourceValue = 0.0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_float_n(void) {
+       float sourceValue = 0.0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_float(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_float(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_string_p(void) {
+       const char *sourceValue = "Hello";
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_string_n(void) {
+       const char *sourceValue = "Hello";
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_string(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_string(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_create_string(NULL, &primitiveValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_bool_p(void) {
+       bool sourceValue = true;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_bool(sourceValue, &primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_bool(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_bool_n(void) {
+       bool sourceValue = true;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_bool(sourceValue, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_bool(sourceValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_array_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+       return 0;
+}
+
+int utc_mmi_primitive_value_create_array_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_create_array(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_add_array_element_p(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       int source1 = 1, source2 = 2;
+       assert_eq(mmi_primitive_value_create_int(source1, &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source2, &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+       return 0;
+}
+
+int utc_mmi_primitive_value_add_array_element_n1(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_add_array_element(NULL, arrayElement1), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       int source1 = 1;
+       float source2 = 2.0;
+       assert_eq(mmi_primitive_value_create_int(source1, &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_float(source2, &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(NULL, arrayElement1), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_add_array_element_n2(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       int source1 = 1;
+       assert_eq(mmi_primitive_value_create_int(source1, &arrayElement1), MMI_ERROR_NONE);
+       assert_neq(arrayElement1, NULL);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_type_p(void) {
+       mmi_primitive_value_h tempIntValue = NULL;
+       mmi_primitive_value_type_e tempIntType = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_type(tempIntValue, &tempIntType), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_int(0, &tempIntValue), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_get_type(tempIntValue, &tempIntType), MMI_ERROR_NONE);
+       assert_eq(tempIntType, MMI_PRIMITIVE_VALUE_TYPE_INT);
+       assert_eq(mmi_primitive_value_destroy(tempIntValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_h tempFloatValue = NULL;
+       mmi_primitive_value_type_e tempFloatType = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+
+       assert_eq(mmi_primitive_value_create_float(0.0, &tempFloatValue), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_get_type(tempFloatValue, &tempFloatType), MMI_ERROR_NONE);
+       assert_eq(tempFloatType, MMI_PRIMITIVE_VALUE_TYPE_FLOAT);
+       assert_eq(mmi_primitive_value_destroy(tempFloatValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_h tempStringValue = NULL;
+       mmi_primitive_value_type_e tempStringType = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+
+       assert_eq(mmi_primitive_value_create_string("Hello", &tempStringValue), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_get_type(tempStringValue, &tempStringType), MMI_ERROR_NONE);
+       assert_eq(tempStringType, MMI_PRIMITIVE_VALUE_TYPE_STRING);
+       assert_eq(mmi_primitive_value_destroy(tempStringValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_h tempBoolValue = NULL;
+       mmi_primitive_value_type_e tempBoolType = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+
+       assert_eq(mmi_primitive_value_create_bool(true, &tempBoolValue), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_get_type(tempBoolValue, &tempBoolType), MMI_ERROR_NONE);
+       assert_eq(tempBoolType, MMI_PRIMITIVE_VALUE_TYPE_BOOL);
+       assert_eq(mmi_primitive_value_destroy(tempBoolValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_h tempArrayValue = NULL;
+       mmi_primitive_value_type_e tempArrayType = MMI_PRIMITIVE_VALUE_TYPE_INT;
+
+       assert_eq(mmi_primitive_value_create_array(&tempArrayValue), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_get_type(tempArrayValue, &tempArrayType), MMI_ERROR_NONE);
+       assert_eq(tempArrayType, MMI_PRIMITIVE_VALUE_TYPE_ARRAY);
+       assert_eq(mmi_primitive_value_destroy(tempArrayValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_type_n(void) {
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_ARRAY;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       float sourceValue = 0.0;
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_type(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_bool_p(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_bool(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       bool sourceValue = true;
+       assert_eq(mmi_primitive_value_create_bool(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_bool(primitiveValue, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceValue);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_bool_n1(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_bool(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       bool sourceValue = true;
+       assert_eq(mmi_primitive_value_create_bool(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_bool(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_bool(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_bool_n2(void) {
+       bool targetValue = false;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_bool(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       float sourceValue = 0.0;
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_bool(primitiveValue, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_int_p(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_int(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_int(primitiveValue, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceValue);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_int_n1(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_int(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_int(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_int(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_int_n2(void) {
+       int targetValue = -1;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_int(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       float sourceValue = 0.0;
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_int(primitiveValue, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_float_p(void) {
+       float targetValue = -1.0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_float(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       float sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_float(primitiveValue, &targetValue), MMI_ERROR_NONE);
+       assert_eq(targetValue, sourceValue);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_float_n1(void) {
+       float targetValue = -1.0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_float(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       float sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_float(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_float(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_float(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_float_n2(void) {
+       float targetValue = -1.0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_float(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_float(primitiveValue, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_string_p(void) {
+       const char *targetValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_string(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceValue = "Hello";
+       assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_string(primitiveValue, &targetValue), MMI_ERROR_NONE);
+       assert(strcmp(targetValue, sourceValue) == 0);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_string_n1(void) {
+       const char *targetValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_string(NULL, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceValue = "Hello";
+       assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_string(NULL, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_string(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_string_n2(void) {
+       const char *targetValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_string(primitiveValue, &targetValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_string(primitiveValue, &targetValue), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_count_p(void) {
+       size_t count = 10;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, 0);
+
+       int source1 = 1, source2 = 2;
+       assert_eq(mmi_primitive_value_create_int(source1, &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source2, &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, 2);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_count_n1(void) {
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_count(NULL, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_array_count(NULL, &count), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_get_array_count(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_count_n2(void) {
+       size_t count = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_element_p(void) {
+       mmi_primitive_value_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_element(primitiveValue, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const int source[] = {1, 2};
+       assert_eq(mmi_primitive_value_create_int(source[0], &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source[1], &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       size_t count = 0;
+       assert_eq(mmi_primitive_value_get_array_count(primitiveValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, 2);
+
+       for (size_t i = 0; i < count; i++) {
+               assert_eq(mmi_primitive_value_get_array_element(primitiveValue, i, &element), MMI_ERROR_NONE);
+
+               mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+               assert_eq(mmi_primitive_value_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+               int data = 0;
+               assert_eq(mmi_primitive_value_get_int(element, &data), MMI_ERROR_NONE);
+               assert_eq(data, source[i]);
+       }
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_element_n1(void) {
+       mmi_primitive_value_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_element(primitiveValue, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       size_t count = 0;
+       assert_eq(mmi_primitive_value_get_array_element(primitiveValue, 0, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_get_array_element_n2(void) {
+       mmi_primitive_value_h element = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_get_array_element(primitiveValue, 0, &element), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_get_array_element(NULL, 0, &element), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_clone_p1(void) {
+       mmi_primitive_value_h clonedValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(clonedValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+       int data = 0;
+       assert_eq(mmi_primitive_value_get_int(clonedValue, &data), MMI_ERROR_NONE);
+       assert_eq(data, sourceValue);
+
+       assert_eq(mmi_primitive_value_destroy(clonedValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_clone_p2(void) {
+       mmi_primitive_value_h clonedValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceValue = "Hello";
+       assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NONE);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(clonedValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_STRING);
+
+       const char *data = NULL;
+       assert_eq(mmi_primitive_value_get_string(clonedValue, &data), MMI_ERROR_NONE);
+       assert(strcmp(data, sourceValue) == 0);
+
+       assert_eq(mmi_primitive_value_destroy(clonedValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_clone_p3(void) {
+       mmi_primitive_value_h clonedValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const int source[] = {1, 2};
+       assert_eq(mmi_primitive_value_create_int(source[0], &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source[1], &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_clone(primitiveValue, &clonedValue), MMI_ERROR_NONE);
+
+       size_t count = 0;
+       assert_eq(mmi_primitive_value_get_array_count(clonedValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, 2);
+
+       for (size_t i = 0; i < count; i++) {
+               mmi_primitive_value_h element = NULL;
+               assert_eq(mmi_primitive_value_get_array_element(clonedValue, i, &element), MMI_ERROR_NONE);
+
+               mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+               assert_eq(mmi_primitive_value_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+               int data = 0;
+               assert_eq(mmi_primitive_value_get_int(element, &data), MMI_ERROR_NONE);
+               assert_eq(data, source[i]);
+       }
+
+       assert_eq(mmi_primitive_value_destroy(clonedValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_clone_n(void) {
+       mmi_primitive_value_h clonedValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_clone(NULL, &clonedValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_clone(NULL, &clonedValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_primitive_value_clone(primitiveValue, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_destroy_p1(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 0;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NONE);
+       primitiveValue = NULL;
+       return 0;
+}
+
+int utc_mmi_primitive_value_destroy_p2(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       const char *sourceValue = "Hello";
+       assert_eq(mmi_primitive_value_create_string(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NONE);
+       primitiveValue = NULL;
+       return 0;
+}
+
+int utc_mmi_primitive_value_destroy_p3(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const int source[] = {1, 2};
+       assert_eq(mmi_primitive_value_create_int(source[0], &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source[1], &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_destroy(primitiveValue), MMI_ERROR_NONE);
+       primitiveValue = NULL;
+       return 0;
+}
+
+int utc_mmi_primitive_value_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_to_bytes_p(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_to_bytes(primitiveValue, &bytes, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 3;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_to_bytes(primitiveValue, &bytes, &length), MMI_ERROR_NONE);
+
+       mmi_primitive_value_destroy(primitiveValue);
+       primitiveValue = NULL;
+       return 0;
+}
+
+int utc_mmi_primitive_value_to_bytes_n(void) {
+       mmi_primitive_value_h temp_primitive_value = NULL;
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_to_bytes(temp_primitive_value, &bytes, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_to_bytes(temp_primitive_value, &bytes, &length), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_primitive_value_from_bytes_p1(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+       mmi_primitive_value_h restoredValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       int sourceValue = 3;
+       assert_eq(mmi_primitive_value_create_int(sourceValue, &primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       assert_eq(mmi_primitive_value_to_bytes(primitiveValue, &bytes, &length), MMI_ERROR_NONE);
+
+       mmi_primitive_value_destroy(primitiveValue);
+       primitiveValue = NULL;
+
+       assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NONE);
+
+       free(bytes);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(restoredValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+
+       int data = 0;
+       assert_eq(mmi_primitive_value_get_int(restoredValue, &data), MMI_ERROR_NONE);
+       assert_eq(data, sourceValue);
+
+       assert_eq(mmi_primitive_value_destroy(restoredValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_from_bytes_p2(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+       mmi_primitive_value_h restoredValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const int source[COUNT_ELEMENTS] = {1, 2};
+       assert_eq(mmi_primitive_value_create_int(source[0], &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_int(source[1], &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_to_bytes(primitiveValue, &bytes, &length), MMI_ERROR_NONE);
+
+       mmi_primitive_value_destroy(primitiveValue);
+       primitiveValue = NULL;
+       mmi_primitive_value_destroy(arrayElement1);
+       arrayElement1 = NULL;
+       mmi_primitive_value_destroy(arrayElement2);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NONE);
+
+       free(bytes);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(restoredValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_ARRAY);
+
+       size_t count = 0;
+       assert_eq(mmi_primitive_value_get_array_count(restoredValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       for (size_t i = 0; i < count; ++i) {
+               int data = 0;
+               mmi_primitive_value_h element = NULL;
+               assert_eq(mmi_primitive_value_get_array_element(restoredValue, i, &element), MMI_ERROR_NONE);
+               assert_eq(mmi_primitive_value_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_INT);
+               assert_eq(mmi_primitive_value_get_int(element, &data), MMI_ERROR_NONE);
+               assert_eq(data, source[i]);
+       }
+       assert_eq(mmi_primitive_value_destroy(restoredValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_from_bytes_p3(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+       mmi_primitive_value_h restoredValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_array(&primitiveValue), MMI_ERROR_NONE);
+       assert_neq(primitiveValue, NULL);
+
+       const char *source[COUNT_ELEMENTS] = {"1", "Number 2"};
+       assert_eq(mmi_primitive_value_create_string(source[0], &arrayElement1), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_create_string(source[1], &arrayElement2), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement1), MMI_ERROR_NONE);
+       arrayElement1 = NULL;
+       assert_eq(mmi_primitive_value_add_array_element(primitiveValue, arrayElement2), MMI_ERROR_NONE);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_to_bytes(primitiveValue, &bytes, &length), MMI_ERROR_NONE);
+
+       mmi_primitive_value_destroy(primitiveValue);
+       primitiveValue = NULL;
+       mmi_primitive_value_destroy(arrayElement1);
+       arrayElement1 = NULL;
+       mmi_primitive_value_destroy(arrayElement2);
+       arrayElement2 = NULL;
+
+       assert_eq(mmi_primitive_value_from_bytes(bytes, length, &restoredValue), MMI_ERROR_NONE);
+
+       free(bytes);
+
+       mmi_primitive_value_type_e type = MMI_PRIMITIVE_VALUE_TYPE_BOOL;
+       assert_eq(mmi_primitive_value_get_type(restoredValue, &type), MMI_ERROR_NONE);
+       assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_ARRAY);
+
+       size_t count = 0;
+       assert_eq(mmi_primitive_value_get_array_count(restoredValue, &count), MMI_ERROR_NONE);
+       assert_eq(count, COUNT_ELEMENTS);
+
+       for (size_t i = 0; i < count; ++i) {
+               mmi_primitive_value_h element = NULL;
+               assert_eq(mmi_primitive_value_get_array_element(restoredValue, i, &element), MMI_ERROR_NONE);
+               assert_eq(mmi_primitive_value_get_type(element, &type), MMI_ERROR_NONE);
+               assert_eq(type, MMI_PRIMITIVE_VALUE_TYPE_STRING);
+               const char *data = NULL;
+               assert_eq(mmi_primitive_value_get_string(element, &data), MMI_ERROR_NONE);
+               assert(strcmp(data, source[i]) == 0);
+       }
+       assert_eq(mmi_primitive_value_destroy(restoredValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_primitive_value_from_bytes_n(void) {
+       unsigned char *bytes = NULL;
+       size_t length = 0;
+
+       if(g_supported == false) {
+               assert_eq(mmi_primitive_value_from_bytes(bytes, length, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_from_bytes(bytes, length, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_create_p(void) {
+       mmi_signal_parameter_h parameter = NULL;
+       mmi_primitive_value_h value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_create_n(void) {
+       mmi_primitive_value_h value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_create(value, "signal", NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_get_name_p(void) {
+       mmi_signal_parameter_h parameter = NULL;
+       char *name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_get_name(parameter, &name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_get_name(parameter, &name), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_get_name_n(void) {
+       char *name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_get_name(NULL, &name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_parameter_get_name(NULL, &name), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_get_value_p(void) {
+       mmi_signal_parameter_h parameter = NULL;
+       mmi_primitive_value_h retrieved = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_get_value(parameter, &retrieved), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_get_value(parameter, &retrieved), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_get_value_n(void) {
+       mmi_primitive_value_h value = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_get_value(NULL, &value), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_parameter_get_value(NULL, &value), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_clone_p(void) {
+       mmi_signal_parameter_h cloned = NULL;
+       mmi_signal_parameter_h parameter = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_clone(parameter, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_clone(parameter, &cloned), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+int utc_mmi_signal_parameter_clone_n(void) {
+       mmi_signal_parameter_h cloned = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_clone(NULL, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_parameter_clone(NULL, &cloned), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_parameter_destroy_p(void) {
+       mmi_signal_parameter_h parameter = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+int utc_mmi_signal_parameter_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_signal_parameter_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_parameter_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_create_p(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+       mmi_signal_destroy(handle);
+       return 0;
+}
+
+int utc_mmi_signal_create_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_signal_create("signal", NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_add_parameter_p(void) {
+       mmi_signal_h handle = NULL;
+       mmi_signal_parameter_h parameter = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_add_parameter(handle, parameter), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_add_parameter(handle, parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_add_parameter_n(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_add_parameter(handle, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_add_parameter(handle, NULL), MMI_ERROR_INVALID_PARAMETER);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_get_name_p(void) {
+       mmi_signal_h handle = NULL;
+       char *name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_name(handle, &name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_get_name(handle, &name), MMI_ERROR_NONE);
+
+       mmi_signal_destroy(handle);
+       return 0;
+}
+
+int utc_mmi_signal_get_name_n(void) {
+       char *name = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_name(NULL, &name), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_get_name(NULL, &name), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_get_parameter_count_p(void) {
+       mmi_signal_h handle = NULL;
+       int count;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_parameter_count(handle, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_signal_parameter_h parameter = NULL;
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_add_parameter(handle, parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_get_parameter_count(handle, &count), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_get_parameter_count_n(void) {
+       int count;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_parameter_count(NULL, &count), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_get_parameter_count(NULL, &count), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_get_parameter_p(void) {
+       mmi_signal_h handle = NULL;
+       mmi_signal_parameter_h retrieved = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_parameter(handle, 0, &retrieved), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       mmi_signal_parameter_h parameter = NULL;
+       mmi_primitive_value_h value = NULL;
+       assert_eq(mmi_primitive_value_create_int(0, &value), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_parameter_create(value, "signal", &parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_add_parameter(handle, parameter), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_get_parameter(handle, 0, &retrieved), MMI_ERROR_NONE);
+
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       assert_eq(mmi_primitive_value_destroy(value), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_parameter_destroy(parameter), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_get_parameter_n(void) {
+       mmi_signal_parameter_h retrieved = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_get_parameter(NULL, 0, &retrieved), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_get_parameter(NULL, 0, &retrieved), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_signal_destroy_p(void) {
+       mmi_signal_h handle = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_create("signal", &handle), MMI_ERROR_NONE);
+       assert_eq(mmi_signal_destroy(handle), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_signal_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_signal_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_signal_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_source_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_source_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_source_type_p(void) {
+       mmi_node_source_type_e type;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_source_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_source(MMI_NODE_SOURCE_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_source_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_source_type_n(void) {
+       mmi_node_source_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_source_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_source_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_processor_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_processor(MMI_NODE_PROCESSOR_TYPE_NONE, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_processor(MMI_NODE_PROCESSOR_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_processor_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_processor(MMI_NODE_PROCESSOR_TYPE_NONE, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_processor(MMI_NODE_PROCESSOR_TYPE_NONE, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_processor_type_p(void) {
+       mmi_node_processor_type_e type;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_processor_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_processor(MMI_NODE_PROCESSOR_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_processor_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_processor_type_n(void) {
+       mmi_node_processor_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_processor_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_processor_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_logic_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_NONE, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_logic_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_NONE, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_NONE, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_logic_type_p(void) {
+       mmi_node_logic_type_e type;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_logic_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_logic(MMI_NODE_LOGIC_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_logic_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_logic_type_n(void) {
+       mmi_node_logic_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_logic_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_logic_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_controller_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_controller(MMI_NODE_CONTROLLER_TYPE_NONE, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_controller(MMI_NODE_CONTROLLER_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_controller_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_controller(MMI_NODE_CONTROLLER_TYPE_NONE, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_controller(MMI_NODE_CONTROLLER_TYPE_NONE, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_controller_type_p(void) {
+       mmi_node_controller_type_e type;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_controller_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_controller(MMI_NODE_CONTROLLER_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_controller_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_controller_type_n(void) {
+       mmi_node_controller_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_controller_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_controller_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_action_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_action(MMI_NODE_ACTION_TYPE_NONE, &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_action(MMI_NODE_ACTION_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_action_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_action(MMI_NODE_ACTION_TYPE_NONE, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_action(MMI_NODE_ACTION_TYPE_NONE, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_action_type_p(void) {
+       mmi_node_action_type_e type;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_action_type(node, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_action(MMI_NODE_ACTION_TYPE_NONE, &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_action_type(node, &type), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_action_type_n(void) {
+       mmi_node_action_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_action_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_action_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_create_custom_p(void) {
+       mmi_node_h node = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_custom("custom", &node), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_custom("custom", &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_node_create_custom_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_node_create_custom("custom", NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_custom("custom", NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_node_get_custom_type_p(void) {
+       const char *custom_type_id = NULL;
+       mmi_node_h node = NULL;
+
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_custom_type(node, &custom_type_id), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_create_custom("custom", &node), MMI_ERROR_NONE);
+       assert_eq(mmi_node_get_custom_type(node, &custom_type_id), MMI_ERROR_NONE);
+       assert_eq(mmi_node_destroy(node), MMI_ERROR_NONE);
+
+       return 0;
+}
+
+int utc_mmi_node_get_custom_type_n(void) {
+       const char *custom_type_id = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_node_get_custom_type(NULL, &custom_type_id), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_node_get_custom_type(NULL, &custom_type_id), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_create_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_create(&port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_port_create_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_create(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_get_name_p(void) {
+       mmi_port_h port = NULL;
+       char *name = NULL;
+       size_t length;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_name(port, &name, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_get_name(port, &name, &length), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_port_get_name_n(void) {
+       char *name = NULL;
+       size_t length;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_name(NULL, &name, &length), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_get_name(NULL, &name, &length), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_get_type_p(void) {
+       mmi_port_h port = NULL;
+       mmi_port_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_type(port, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_get_type(port, &type), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_get_type_n(void) {
+       mmi_port_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_get_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_get_data_type_p(void) {
+       mmi_port_h port = NULL;
+       mmi_data_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_data_type(port, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_get_data_type(port, &type), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_get_data_type_n(void) {
+       mmi_data_type_e type;
+       if(g_supported == false) {
+               assert_eq(mmi_port_get_data_type(NULL, &type), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_get_data_type(NULL, &type), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_set_name_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_name(port, "MyPort"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_name(port, "MyPort"), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_set_name_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_name(NULL, "MyPort"), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_set_name(NULL, "MyPort"), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_set_type_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_type(port, MMI_PORT_TYPE_IN), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_type(port, MMI_PORT_TYPE_IN), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_set_type_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_type(NULL, MMI_PORT_TYPE_IN), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_set_type(NULL, MMI_PORT_TYPE_IN), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_set_data_type_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_data_type(port, MMI_DATA_TYPE_INTEGER), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_data_type(port, MMI_DATA_TYPE_INTEGER), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_set_data_type_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_data_type(NULL, MMI_DATA_TYPE_INTEGER), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_set_data_type(NULL, MMI_DATA_TYPE_INTEGER), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int _port_input_data_received_cb(mmi_port_instance_h instance, mmi_data_h data, void *user_data) {
+       return 0;
+}
+
+int utc_mmi_port_set_input_data_received_cb_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_input_data_received_cb(port, _port_input_data_received_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_set_input_data_received_cb(port, _port_input_data_received_cb, NULL), MMI_ERROR_NONE);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_set_input_data_received_cb_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_set_input_data_received_cb(NULL, _port_input_data_received_cb, NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_set_input_data_received_cb(NULL, _port_input_data_received_cb, NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_clone_p(void) {
+       mmi_port_h port = NULL;
+       mmi_port_h cloned;
+
+       if(g_supported == false) {
+               assert_eq(mmi_port_clone(port, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_clone(port, &cloned), MMI_ERROR_NONE);
+       mmi_port_destroy(cloned);
+       mmi_port_destroy(port);
+       return 0;
+}
+
+int utc_mmi_port_clone_n(void) {
+       mmi_port_h cloned;
+       if(g_supported == false) {
+               assert_eq(mmi_port_clone(NULL, &cloned), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_clone(NULL, &cloned), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_destroy_p(void) {
+       mmi_port_h port = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_destroy(port), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_create(&port), MMI_ERROR_NONE);
+       assert_eq(mmi_port_destroy(port), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_port_destroy_n(void) {
+       if(g_supported == false) {
+               assert_eq(mmi_port_destroy(NULL), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_port_destroy(NULL), MMI_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+int utc_mmi_port_instance_generate_output_p(void) {
+       mmi_data_h tempValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_instance_generate_output((mmi_port_instance_h)0x1234, tempValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_int(0, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_port_instance_generate_output((mmi_port_instance_h)0x1234, tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       return 0;
+}
+
+int utc_mmi_port_instance_generate_output_n(void) {
+       mmi_data_h tempValue = NULL;
+       if(g_supported == false) {
+               assert_eq(mmi_port_instance_generate_output(NULL, tempValue), MMI_ERROR_NOT_SUPPORTED);
+               return 0;
+       }
+
+       assert_eq(mmi_data_create_int(0, &tempValue), MMI_ERROR_NONE);
+       assert_eq(mmi_port_instance_generate_output(NULL, tempValue), MMI_ERROR_INVALID_PARAMETER);
+       assert_eq(mmi_data_destroy(tempValue), MMI_ERROR_NONE);
+       return 0;
+}