[UTC][tts-engine][ACR-569][Add UTCs for new APIs]
authorsooyeon.kim <sooyeon.kim@samsung.com>
Tue, 23 Aug 2016 11:00:27 +0000 (20:00 +0900)
committersooyeon.kim <sooyeon.kim@samsung.com>
Fri, 23 Sep 2016 06:36:21 +0000 (15:36 +0900)
Change-Id: I4aad0d62acd2a2ff9e2c23d059a9668096fe43e6
Signed-off-by: sooyeon.kim <sooyeon.kim@samsung.com>
packaging/TCT.spec
packaging/utc/core-tts-tests.spec
src/utc/tts/CMakeLists.txt
src/utc/tts/public.list
src/utc/tts/tct-tts-core.c
src/utc/tts/tct-tts-core_mobile.h
src/utc/tts/tct-tts-core_tv.h
src/utc/tts/tct-tts-core_wearable.h
src/utc/tts/utc-tts.c
src/utc/tts/utc-ttse.c [new file with mode: 0644]

index d14b337..9dbc3d5 100755 (executable)
@@ -104,6 +104,7 @@ BuildRequires:  pkgconfig(capi-system-system-settings)
 BuildRequires:  pkgconfig(capi-telephony)
 BuildRequires:  pkgconfig(capi-media-tone-player)
 BuildRequires:  pkgconfig(tts)
+BuildRequires: pkgconfig(tts-engine)
 BuildRequires:  pkgconfig(capi-web-url-download)
 BuildRequires:  pkgconfig(capi-media-video-util)
 BuildRequires:  pkgconfig(capi-media-wav-player)
index 8338434..9e9d220 100755 (executable)
@@ -8,6 +8,7 @@ Group:      Development/Tools
 License:    Apache License, Version 2.0
 Source0:    %{name}-%{version}.tar.gz
 BuildRequires: pkgconfig(%{MODULE_LIBNAME})
+BuildRequires: pkgconfig(tts-engine)
 BuildRequires: pkgconfig(ecore)
 BuildRequires: pkgconfig(elementary)
 BuildRequires: cmake
index cc12ebc..a222bcd 100755 (executable)
@@ -5,16 +5,18 @@ SET(RPM_NAME "core-${PKG_NAME}-tests")
 
 SET(CAPI_LIB "tts")
 SET(TC_SOURCES
-    utc-tts.c
+       utc-tts.c
+       utc-ttse.c
 )
 
 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
-    ${CAPI_LIB}
+       ${CAPI_LIB}
+       tts-engine
        capi-appfw-application
        capi-system-info
-    ecore
-    elementary
-        glib-2.0
+       ecore
+       elementary
+       glib-2.0
        dlog elementary
 )
 
index 7d0fc23..ac42f19 100755 (executable)
@@ -29,3 +29,10 @@ tts_set_private_data
 tts_set_credential
 tts_set_engine_changed_cb
 tts_unset_engine_changed_cb
+ttse_main
+ttse_get_speed_range
+ttse_get_pitch_range
+ttse_send_result
+ttse_send_error
+ttse_set_private_data_set_cb
+ttse_set_private_data_requested_cb
index cce2caa..2e38bde 100755 (executable)
 static char* key;
 static char* fname;
 static int nNum;
+
+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]);
+}
+
 int run_testcases()
 {
     int result = -1;
@@ -114,6 +125,10 @@ int main(int argc, char *argv[])
        fname = argv[1];
        key = argv[3];
        nNum = argc;
+
+       g_argc = argc;
+       g_argv = argv;
+
        ui_app_lifecycle_callback_s event_callback = {0,};
        event_callback.create = app_create;
 
index dca0fe9..67837d0 100755 (executable)
 #include "testcase.h"
 #include "tct_common.h"
 
-extern void startup(void);
-extern void cleanup(void);
+extern void utc_tts_startup(void);
+extern void utc_tts_cleanup(void);
+extern void utc_ttse_startup(void);
+extern void utc_ttse_cleanup(void);
 
 extern int utc_tts_create_p(void);
 extern int utc_tts_create_n(void);
@@ -149,134 +151,163 @@ extern int utc_tts_unset_engine_changed_cb_p(void);
 extern int utc_tts_unset_engine_changed_cb_n(void);
 extern int utc_tts_unset_engine_changed_cb_n1(void);
 
+/* ttse utc */
+extern int utc_ttse_main_p(void);
+extern int utc_ttse_main_n(void);
+extern int utc_ttse_main_n1(void);
+extern int utc_ttse_get_speed_range_p(void);
+extern int utc_ttse_get_speed_range_n(void);
+extern int utc_ttse_get_pitch_range_p(void);
+extern int utc_ttse_get_pitch_range_n(void);
+extern int utc_ttse_send_result_n(void);
+extern int utc_ttse_send_error_n(void);
+extern int utc_ttse_set_private_data_set_cb_p(void);
+extern int utc_ttse_set_private_data_set_cb_n(void);
+extern int utc_ttse_set_private_data_requested_cb_p(void);
+extern int utc_ttse_set_private_data_requested_cb_n(void);
+
+
 
 testcase tc_array[] = {
-    {"utc_tts_create_p", utc_tts_create_p, startup, cleanup},
-    {"utc_tts_create_n", utc_tts_create_n, startup, cleanup},
-    {"utc_tts_destroy_p", utc_tts_destroy_p, startup, cleanup},
-    {"utc_tts_destroy_p2", utc_tts_destroy_p2, startup, cleanup},
-    {"utc_tts_destroy_p3", utc_tts_destroy_p3, startup, cleanup},
-    {"utc_tts_destroy_p4", utc_tts_destroy_p4, startup, cleanup},
-    {"utc_tts_destroy_n", utc_tts_destroy_n, startup, cleanup},
-    {"utc_tts_destroy_n2", utc_tts_destroy_n2, startup, cleanup},
-    {"utc_tts_set_mode_p", utc_tts_set_mode_p, startup, cleanup},
-    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, startup, cleanup},
-    {"utc_tts_set_mode_n", utc_tts_set_mode_n, startup, cleanup},
-    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, startup, cleanup},
-    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, startup, cleanup},
-    {"utc_tts_get_mode_p", utc_tts_get_mode_p, startup, cleanup},
-    {"utc_tts_get_mode_n", utc_tts_get_mode_n, startup, cleanup},
-    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, startup, cleanup},
-    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, startup, cleanup},
-    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, startup, cleanup},
-    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, startup, cleanup},
-    {"utc_tts_prepare_p", utc_tts_prepare_p, startup, cleanup},
-    {"utc_tts_prepare_n", utc_tts_prepare_n, startup, cleanup},
-    {"utc_tts_prepare_n2", utc_tts_prepare_n2, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, startup, cleanup},
-    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, startup, cleanup},
-    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, startup, cleanup},
-    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, startup, cleanup},
-    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, startup, cleanup},
-    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, startup, cleanup},
-    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, startup, cleanup},
-    {"utc_tts_get_state_p", utc_tts_get_state_p, startup, cleanup},
-    {"utc_tts_get_state_p2", utc_tts_get_state_p2, startup, cleanup},
-    {"utc_tts_get_state_p3", utc_tts_get_state_p3, startup, cleanup},
-    {"utc_tts_get_state_p4", utc_tts_get_state_p4, startup, cleanup},
-    {"utc_tts_get_state_n", utc_tts_get_state_n, startup, cleanup},
-    {"utc_tts_get_state_n2", utc_tts_get_state_n2, startup, cleanup},
-    {"utc_tts_add_text_p", utc_tts_add_text_p, startup, cleanup},
-    {"utc_tts_add_text_n", utc_tts_add_text_n, startup, cleanup},
-    {"utc_tts_add_text_n2", utc_tts_add_text_n2, startup, cleanup},
-    {"utc_tts_add_text_n3", utc_tts_add_text_n3, startup, cleanup},
-    {"utc_tts_add_text_n4", utc_tts_add_text_n4, startup, cleanup},
-    {"utc_tts_add_text_n5", utc_tts_add_text_n5, startup, cleanup},
-    {"utc_tts_play_p", utc_tts_play_p, startup, cleanup},
-    {"utc_tts_play_p2", utc_tts_play_p2, startup, cleanup},
-    {"utc_tts_play_n", utc_tts_play_n, startup, cleanup},
-    {"utc_tts_play_n2", utc_tts_play_n2, startup, cleanup},
-    {"utc_tts_play_n3", utc_tts_play_n3, startup, cleanup},
-    {"utc_tts_pause_p", utc_tts_pause_p, startup, cleanup},
-    {"utc_tts_pause_n", utc_tts_pause_n, startup, cleanup},
-    {"utc_tts_pause_n2", utc_tts_pause_n2, startup, cleanup},
-    {"utc_tts_pause_n3", utc_tts_pause_n3, startup, cleanup},
-    {"utc_tts_stop_p", utc_tts_stop_p, startup, cleanup},
-    {"utc_tts_stop_n", utc_tts_stop_n, startup, cleanup},
-    {"utc_tts_stop_n2", utc_tts_stop_n2, startup, cleanup},
-    {"utc_tts_stop_n3", utc_tts_stop_n3, startup, cleanup},
-    {"utc_tts_unprepare_p", utc_tts_unprepare_p, startup, cleanup},
-    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, startup, cleanup},
-    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, startup, cleanup},
-    {"utc_tts_unprepare_n", utc_tts_unprepare_n, startup, cleanup},
-    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, startup, cleanup},
-    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, startup, cleanup},
-    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, startup, cleanup},
-    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, startup, cleanup},
-    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, startup, cleanup},
-    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, startup, cleanup},
-    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, startup, cleanup},
-    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, startup, cleanup},
-    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, startup, cleanup},
-    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, startup, cleanup},
-    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, startup, cleanup},
-    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, startup, cleanup},
-    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, startup, cleanup},
-    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, startup, cleanup},
-    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, startup, cleanup},
-    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, startup, cleanup},
-    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, startup, cleanup},
-    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, startup, cleanup},
-    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, startup, cleanup},
-    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, startup, cleanup},
-    {"utc_tts_set_credential_p", utc_tts_set_credential_p, startup, cleanup},
-    {"utc_tts_set_credential_n", utc_tts_set_credential_n, startup, cleanup},
-    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, startup, cleanup},
-    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, startup, cleanup},
+    {"utc_tts_create_p", utc_tts_create_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_create_n", utc_tts_create_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p", utc_tts_destroy_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p2", utc_tts_destroy_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p3", utc_tts_destroy_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p4", utc_tts_destroy_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n", utc_tts_destroy_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n2", utc_tts_destroy_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p", utc_tts_set_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n", utc_tts_set_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_p", utc_tts_get_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n", utc_tts_get_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_p", utc_tts_prepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n", utc_tts_prepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n2", utc_tts_prepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p", utc_tts_get_state_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p2", utc_tts_get_state_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p3", utc_tts_get_state_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p4", utc_tts_get_state_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n", utc_tts_get_state_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n2", utc_tts_get_state_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_p", utc_tts_add_text_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n", utc_tts_add_text_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n2", utc_tts_add_text_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n3", utc_tts_add_text_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n4", utc_tts_add_text_n4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n5", utc_tts_add_text_n5, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p", utc_tts_play_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p2", utc_tts_play_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n", utc_tts_play_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n2", utc_tts_play_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n3", utc_tts_play_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_p", utc_tts_pause_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n", utc_tts_pause_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n2", utc_tts_pause_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n3", utc_tts_pause_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_p", utc_tts_stop_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n", utc_tts_stop_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n2", utc_tts_stop_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n3", utc_tts_stop_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p", utc_tts_unprepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n", utc_tts_unprepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_p", utc_tts_set_credential_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n", utc_tts_set_credential_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_ttse_main_p", utc_ttse_main_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n", utc_ttse_main_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n1", utc_ttse_main_n1, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_p", utc_ttse_get_speed_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_n", utc_ttse_get_speed_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_p", utc_ttse_get_pitch_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_n", utc_ttse_get_pitch_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_result_n", utc_ttse_send_result_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_error_n", utc_ttse_send_error_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_p", utc_ttse_set_private_data_set_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_n", utc_ttse_set_private_data_set_cb_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_p", utc_ttse_set_private_data_requested_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_n", utc_ttse_set_private_data_requested_cb_n, utc_ttse_startup, utc_ttse_cleanup},
     {NULL, NULL}
 };
 
index dca0fe9..67837d0 100755 (executable)
 #include "testcase.h"
 #include "tct_common.h"
 
-extern void startup(void);
-extern void cleanup(void);
+extern void utc_tts_startup(void);
+extern void utc_tts_cleanup(void);
+extern void utc_ttse_startup(void);
+extern void utc_ttse_cleanup(void);
 
 extern int utc_tts_create_p(void);
 extern int utc_tts_create_n(void);
@@ -149,134 +151,163 @@ extern int utc_tts_unset_engine_changed_cb_p(void);
 extern int utc_tts_unset_engine_changed_cb_n(void);
 extern int utc_tts_unset_engine_changed_cb_n1(void);
 
+/* ttse utc */
+extern int utc_ttse_main_p(void);
+extern int utc_ttse_main_n(void);
+extern int utc_ttse_main_n1(void);
+extern int utc_ttse_get_speed_range_p(void);
+extern int utc_ttse_get_speed_range_n(void);
+extern int utc_ttse_get_pitch_range_p(void);
+extern int utc_ttse_get_pitch_range_n(void);
+extern int utc_ttse_send_result_n(void);
+extern int utc_ttse_send_error_n(void);
+extern int utc_ttse_set_private_data_set_cb_p(void);
+extern int utc_ttse_set_private_data_set_cb_n(void);
+extern int utc_ttse_set_private_data_requested_cb_p(void);
+extern int utc_ttse_set_private_data_requested_cb_n(void);
+
+
 
 testcase tc_array[] = {
-    {"utc_tts_create_p", utc_tts_create_p, startup, cleanup},
-    {"utc_tts_create_n", utc_tts_create_n, startup, cleanup},
-    {"utc_tts_destroy_p", utc_tts_destroy_p, startup, cleanup},
-    {"utc_tts_destroy_p2", utc_tts_destroy_p2, startup, cleanup},
-    {"utc_tts_destroy_p3", utc_tts_destroy_p3, startup, cleanup},
-    {"utc_tts_destroy_p4", utc_tts_destroy_p4, startup, cleanup},
-    {"utc_tts_destroy_n", utc_tts_destroy_n, startup, cleanup},
-    {"utc_tts_destroy_n2", utc_tts_destroy_n2, startup, cleanup},
-    {"utc_tts_set_mode_p", utc_tts_set_mode_p, startup, cleanup},
-    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, startup, cleanup},
-    {"utc_tts_set_mode_n", utc_tts_set_mode_n, startup, cleanup},
-    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, startup, cleanup},
-    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, startup, cleanup},
-    {"utc_tts_get_mode_p", utc_tts_get_mode_p, startup, cleanup},
-    {"utc_tts_get_mode_n", utc_tts_get_mode_n, startup, cleanup},
-    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, startup, cleanup},
-    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, startup, cleanup},
-    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, startup, cleanup},
-    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, startup, cleanup},
-    {"utc_tts_prepare_p", utc_tts_prepare_p, startup, cleanup},
-    {"utc_tts_prepare_n", utc_tts_prepare_n, startup, cleanup},
-    {"utc_tts_prepare_n2", utc_tts_prepare_n2, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, startup, cleanup},
-    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, startup, cleanup},
-    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, startup, cleanup},
-    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, startup, cleanup},
-    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, startup, cleanup},
-    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, startup, cleanup},
-    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, startup, cleanup},
-    {"utc_tts_get_state_p", utc_tts_get_state_p, startup, cleanup},
-    {"utc_tts_get_state_p2", utc_tts_get_state_p2, startup, cleanup},
-    {"utc_tts_get_state_p3", utc_tts_get_state_p3, startup, cleanup},
-    {"utc_tts_get_state_p4", utc_tts_get_state_p4, startup, cleanup},
-    {"utc_tts_get_state_n", utc_tts_get_state_n, startup, cleanup},
-    {"utc_tts_get_state_n2", utc_tts_get_state_n2, startup, cleanup},
-    {"utc_tts_add_text_p", utc_tts_add_text_p, startup, cleanup},
-    {"utc_tts_add_text_n", utc_tts_add_text_n, startup, cleanup},
-    {"utc_tts_add_text_n2", utc_tts_add_text_n2, startup, cleanup},
-    {"utc_tts_add_text_n3", utc_tts_add_text_n3, startup, cleanup},
-    {"utc_tts_add_text_n4", utc_tts_add_text_n4, startup, cleanup},
-    {"utc_tts_add_text_n5", utc_tts_add_text_n5, startup, cleanup},
-    {"utc_tts_play_p", utc_tts_play_p, startup, cleanup},
-    {"utc_tts_play_p2", utc_tts_play_p2, startup, cleanup},
-    {"utc_tts_play_n", utc_tts_play_n, startup, cleanup},
-    {"utc_tts_play_n2", utc_tts_play_n2, startup, cleanup},
-    {"utc_tts_play_n3", utc_tts_play_n3, startup, cleanup},
-    {"utc_tts_pause_p", utc_tts_pause_p, startup, cleanup},
-    {"utc_tts_pause_n", utc_tts_pause_n, startup, cleanup},
-    {"utc_tts_pause_n2", utc_tts_pause_n2, startup, cleanup},
-    {"utc_tts_pause_n3", utc_tts_pause_n3, startup, cleanup},
-    {"utc_tts_stop_p", utc_tts_stop_p, startup, cleanup},
-    {"utc_tts_stop_n", utc_tts_stop_n, startup, cleanup},
-    {"utc_tts_stop_n2", utc_tts_stop_n2, startup, cleanup},
-    {"utc_tts_stop_n3", utc_tts_stop_n3, startup, cleanup},
-    {"utc_tts_unprepare_p", utc_tts_unprepare_p, startup, cleanup},
-    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, startup, cleanup},
-    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, startup, cleanup},
-    {"utc_tts_unprepare_n", utc_tts_unprepare_n, startup, cleanup},
-    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, startup, cleanup},
-    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, startup, cleanup},
-    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, startup, cleanup},
-    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, startup, cleanup},
-    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, startup, cleanup},
-    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, startup, cleanup},
-    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, startup, cleanup},
-    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, startup, cleanup},
-    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, startup, cleanup},
-    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, startup, cleanup},
-    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, startup, cleanup},
-    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, startup, cleanup},
-    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, startup, cleanup},
-    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, startup, cleanup},
-    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, startup, cleanup},
-    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, startup, cleanup},
-    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, startup, cleanup},
-    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, startup, cleanup},
-    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, startup, cleanup},
-    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, startup, cleanup},
-    {"utc_tts_set_credential_p", utc_tts_set_credential_p, startup, cleanup},
-    {"utc_tts_set_credential_n", utc_tts_set_credential_n, startup, cleanup},
-    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, startup, cleanup},
-    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, startup, cleanup},
+    {"utc_tts_create_p", utc_tts_create_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_create_n", utc_tts_create_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p", utc_tts_destroy_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p2", utc_tts_destroy_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p3", utc_tts_destroy_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p4", utc_tts_destroy_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n", utc_tts_destroy_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n2", utc_tts_destroy_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p", utc_tts_set_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n", utc_tts_set_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_p", utc_tts_get_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n", utc_tts_get_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_p", utc_tts_prepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n", utc_tts_prepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n2", utc_tts_prepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p", utc_tts_get_state_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p2", utc_tts_get_state_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p3", utc_tts_get_state_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p4", utc_tts_get_state_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n", utc_tts_get_state_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n2", utc_tts_get_state_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_p", utc_tts_add_text_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n", utc_tts_add_text_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n2", utc_tts_add_text_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n3", utc_tts_add_text_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n4", utc_tts_add_text_n4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n5", utc_tts_add_text_n5, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p", utc_tts_play_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p2", utc_tts_play_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n", utc_tts_play_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n2", utc_tts_play_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n3", utc_tts_play_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_p", utc_tts_pause_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n", utc_tts_pause_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n2", utc_tts_pause_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n3", utc_tts_pause_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_p", utc_tts_stop_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n", utc_tts_stop_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n2", utc_tts_stop_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n3", utc_tts_stop_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p", utc_tts_unprepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n", utc_tts_unprepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_p", utc_tts_set_credential_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n", utc_tts_set_credential_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_ttse_main_p", utc_ttse_main_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n", utc_ttse_main_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n1", utc_ttse_main_n1, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_p", utc_ttse_get_speed_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_n", utc_ttse_get_speed_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_p", utc_ttse_get_pitch_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_n", utc_ttse_get_pitch_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_result_n", utc_ttse_send_result_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_error_n", utc_ttse_send_error_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_p", utc_ttse_set_private_data_set_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_n", utc_ttse_set_private_data_set_cb_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_p", utc_ttse_set_private_data_requested_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_n", utc_ttse_set_private_data_requested_cb_n, utc_ttse_startup, utc_ttse_cleanup},
     {NULL, NULL}
 };
 
index dca0fe9..67837d0 100755 (executable)
 #include "testcase.h"
 #include "tct_common.h"
 
-extern void startup(void);
-extern void cleanup(void);
+extern void utc_tts_startup(void);
+extern void utc_tts_cleanup(void);
+extern void utc_ttse_startup(void);
+extern void utc_ttse_cleanup(void);
 
 extern int utc_tts_create_p(void);
 extern int utc_tts_create_n(void);
@@ -149,134 +151,163 @@ extern int utc_tts_unset_engine_changed_cb_p(void);
 extern int utc_tts_unset_engine_changed_cb_n(void);
 extern int utc_tts_unset_engine_changed_cb_n1(void);
 
+/* ttse utc */
+extern int utc_ttse_main_p(void);
+extern int utc_ttse_main_n(void);
+extern int utc_ttse_main_n1(void);
+extern int utc_ttse_get_speed_range_p(void);
+extern int utc_ttse_get_speed_range_n(void);
+extern int utc_ttse_get_pitch_range_p(void);
+extern int utc_ttse_get_pitch_range_n(void);
+extern int utc_ttse_send_result_n(void);
+extern int utc_ttse_send_error_n(void);
+extern int utc_ttse_set_private_data_set_cb_p(void);
+extern int utc_ttse_set_private_data_set_cb_n(void);
+extern int utc_ttse_set_private_data_requested_cb_p(void);
+extern int utc_ttse_set_private_data_requested_cb_n(void);
+
+
 
 testcase tc_array[] = {
-    {"utc_tts_create_p", utc_tts_create_p, startup, cleanup},
-    {"utc_tts_create_n", utc_tts_create_n, startup, cleanup},
-    {"utc_tts_destroy_p", utc_tts_destroy_p, startup, cleanup},
-    {"utc_tts_destroy_p2", utc_tts_destroy_p2, startup, cleanup},
-    {"utc_tts_destroy_p3", utc_tts_destroy_p3, startup, cleanup},
-    {"utc_tts_destroy_p4", utc_tts_destroy_p4, startup, cleanup},
-    {"utc_tts_destroy_n", utc_tts_destroy_n, startup, cleanup},
-    {"utc_tts_destroy_n2", utc_tts_destroy_n2, startup, cleanup},
-    {"utc_tts_set_mode_p", utc_tts_set_mode_p, startup, cleanup},
-    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, startup, cleanup},
-    {"utc_tts_set_mode_n", utc_tts_set_mode_n, startup, cleanup},
-    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, startup, cleanup},
-    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, startup, cleanup},
-    {"utc_tts_get_mode_p", utc_tts_get_mode_p, startup, cleanup},
-    {"utc_tts_get_mode_n", utc_tts_get_mode_n, startup, cleanup},
-    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, startup, cleanup},
-    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, startup, cleanup},
-    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, startup, cleanup},
-    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, startup, cleanup},
-    {"utc_tts_prepare_p", utc_tts_prepare_p, startup, cleanup},
-    {"utc_tts_prepare_n", utc_tts_prepare_n, startup, cleanup},
-    {"utc_tts_prepare_n2", utc_tts_prepare_n2, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, startup, cleanup},
-    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, startup, cleanup},
-    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, startup, cleanup},
-    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, startup, cleanup},
-    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, startup, cleanup},
-    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, startup, cleanup},
-    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, startup, cleanup},
-    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, startup, cleanup},
-    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, startup, cleanup},
-    {"utc_tts_get_state_p", utc_tts_get_state_p, startup, cleanup},
-    {"utc_tts_get_state_p2", utc_tts_get_state_p2, startup, cleanup},
-    {"utc_tts_get_state_p3", utc_tts_get_state_p3, startup, cleanup},
-    {"utc_tts_get_state_p4", utc_tts_get_state_p4, startup, cleanup},
-    {"utc_tts_get_state_n", utc_tts_get_state_n, startup, cleanup},
-    {"utc_tts_get_state_n2", utc_tts_get_state_n2, startup, cleanup},
-    {"utc_tts_add_text_p", utc_tts_add_text_p, startup, cleanup},
-    {"utc_tts_add_text_n", utc_tts_add_text_n, startup, cleanup},
-    {"utc_tts_add_text_n2", utc_tts_add_text_n2, startup, cleanup},
-    {"utc_tts_add_text_n3", utc_tts_add_text_n3, startup, cleanup},
-    {"utc_tts_add_text_n4", utc_tts_add_text_n4, startup, cleanup},
-    {"utc_tts_add_text_n5", utc_tts_add_text_n5, startup, cleanup},
-    {"utc_tts_play_p", utc_tts_play_p, startup, cleanup},
-    {"utc_tts_play_p2", utc_tts_play_p2, startup, cleanup},
-    {"utc_tts_play_n", utc_tts_play_n, startup, cleanup},
-    {"utc_tts_play_n2", utc_tts_play_n2, startup, cleanup},
-    {"utc_tts_play_n3", utc_tts_play_n3, startup, cleanup},
-    {"utc_tts_pause_p", utc_tts_pause_p, startup, cleanup},
-    {"utc_tts_pause_n", utc_tts_pause_n, startup, cleanup},
-    {"utc_tts_pause_n2", utc_tts_pause_n2, startup, cleanup},
-    {"utc_tts_pause_n3", utc_tts_pause_n3, startup, cleanup},
-    {"utc_tts_stop_p", utc_tts_stop_p, startup, cleanup},
-    {"utc_tts_stop_n", utc_tts_stop_n, startup, cleanup},
-    {"utc_tts_stop_n2", utc_tts_stop_n2, startup, cleanup},
-    {"utc_tts_stop_n3", utc_tts_stop_n3, startup, cleanup},
-    {"utc_tts_unprepare_p", utc_tts_unprepare_p, startup, cleanup},
-    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, startup, cleanup},
-    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, startup, cleanup},
-    {"utc_tts_unprepare_n", utc_tts_unprepare_n, startup, cleanup},
-    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, startup, cleanup},
-    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, startup, cleanup},
-    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, startup, cleanup},
-    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, startup, cleanup},
-    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, startup, cleanup},
-    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, startup, cleanup},
-    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, startup, cleanup},
-    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, startup, cleanup},
-    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, startup, cleanup},
-    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, startup, cleanup},
-    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, startup, cleanup},
-    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, startup, cleanup},
-    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, startup, cleanup},
-    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, startup, cleanup},
-    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, startup, cleanup},
-    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, startup, cleanup},
-    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, startup, cleanup},
-    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, startup, cleanup},
-    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, startup, cleanup},
-    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, startup, cleanup},
-    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, startup, cleanup},
-    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, startup, cleanup},
-    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, startup, cleanup},
-    {"utc_tts_set_credential_p", utc_tts_set_credential_p, startup, cleanup},
-    {"utc_tts_set_credential_n", utc_tts_set_credential_n, startup, cleanup},
-    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, startup, cleanup},
-    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, startup, cleanup},
-    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, startup, cleanup},
+    {"utc_tts_create_p", utc_tts_create_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_create_n", utc_tts_create_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p", utc_tts_destroy_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p2", utc_tts_destroy_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p3", utc_tts_destroy_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_p4", utc_tts_destroy_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n", utc_tts_destroy_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_destroy_n2", utc_tts_destroy_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p", utc_tts_set_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_p2", utc_tts_set_mode_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n", utc_tts_set_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n2", utc_tts_set_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_mode_n3", utc_tts_set_mode_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_p", utc_tts_get_mode_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n", utc_tts_get_mode_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_mode_n2", utc_tts_get_mode_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_p", utc_tts_get_speed_range_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n", utc_tts_get_speed_range_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_speed_range_n2", utc_tts_get_speed_range_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_p", utc_tts_prepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n", utc_tts_prepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_prepare_n2", utc_tts_prepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_p", utc_tts_foreach_supported_voices_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n", utc_tts_foreach_supported_voices_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_foreach_supported_voices_n2", utc_tts_foreach_supported_voices_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_p", utc_tts_get_default_voice_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n", utc_tts_get_default_voice_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n2", utc_tts_get_default_voice_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_default_voice_n3", utc_tts_get_default_voice_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_p", utc_tts_get_max_text_size_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n", utc_tts_get_max_text_size_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n2", utc_tts_get_max_text_size_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_max_text_size_n3", utc_tts_get_max_text_size_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p", utc_tts_get_state_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p2", utc_tts_get_state_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p3", utc_tts_get_state_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_p4", utc_tts_get_state_p4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n", utc_tts_get_state_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_state_n2", utc_tts_get_state_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_p", utc_tts_add_text_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n", utc_tts_add_text_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n2", utc_tts_add_text_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n3", utc_tts_add_text_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n4", utc_tts_add_text_n4, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_add_text_n5", utc_tts_add_text_n5, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p", utc_tts_play_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_p2", utc_tts_play_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n", utc_tts_play_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n2", utc_tts_play_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_play_n3", utc_tts_play_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_p", utc_tts_pause_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n", utc_tts_pause_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n2", utc_tts_pause_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_pause_n3", utc_tts_pause_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_p", utc_tts_stop_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n", utc_tts_stop_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n2", utc_tts_stop_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_stop_n3", utc_tts_stop_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p", utc_tts_unprepare_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p2", utc_tts_unprepare_p2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_p3", utc_tts_unprepare_p3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n", utc_tts_unprepare_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n2", utc_tts_unprepare_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unprepare_n3", utc_tts_unprepare_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_p", utc_tts_set_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n", utc_tts_set_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n2", utc_tts_set_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_state_changed_cb_n3", utc_tts_set_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_p", utc_tts_unset_state_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n", utc_tts_unset_state_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n2", utc_tts_unset_state_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_state_changed_cb_n3", utc_tts_unset_state_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_p", utc_tts_set_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n", utc_tts_set_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n2", utc_tts_set_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_started_cb_n3", utc_tts_set_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_p", utc_tts_unset_utterance_started_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n", utc_tts_unset_utterance_started_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n2", utc_tts_unset_utterance_started_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_started_cb_n3", utc_tts_unset_utterance_started_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_p", utc_tts_set_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n", utc_tts_set_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n2", utc_tts_set_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_utterance_completed_cb_n3", utc_tts_set_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_p", utc_tts_unset_utterance_completed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n", utc_tts_unset_utterance_completed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n2", utc_tts_unset_utterance_completed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_utterance_completed_cb_n3", utc_tts_unset_utterance_completed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_p", utc_tts_set_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n", utc_tts_set_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n2", utc_tts_set_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_error_cb_n3", utc_tts_set_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_p", utc_tts_unset_error_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n", utc_tts_unset_error_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n2", utc_tts_unset_error_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_error_cb_n3", utc_tts_unset_error_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_p", utc_tts_set_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n", utc_tts_set_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n2", utc_tts_set_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_default_voice_changed_cb_n3", utc_tts_set_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_p", utc_tts_unset_default_voice_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n", utc_tts_unset_default_voice_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n2", utc_tts_unset_default_voice_changed_cb_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_default_voice_changed_cb_n3", utc_tts_unset_default_voice_changed_cb_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n", utc_tts_get_error_message_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_error_message_n1", utc_tts_get_error_message_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_p", utc_tts_set_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n", utc_tts_set_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n1", utc_tts_set_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n2", utc_tts_set_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_private_data_n3", utc_tts_set_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_p", utc_tts_get_private_data_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n", utc_tts_get_private_data_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n1", utc_tts_get_private_data_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n2", utc_tts_get_private_data_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_get_private_data_n3", utc_tts_get_private_data_n3, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_p", utc_tts_set_credential_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n", utc_tts_set_credential_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n1", utc_tts_set_credential_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_credential_n2", utc_tts_set_credential_n2, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_p", utc_tts_set_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n", utc_tts_set_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_set_engine_changed_cb_n1", utc_tts_set_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_p", utc_tts_unset_engine_changed_cb_p, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n", utc_tts_unset_engine_changed_cb_n, utc_tts_startup, utc_tts_cleanup},
+    {"utc_tts_unset_engine_changed_cb_n1", utc_tts_unset_engine_changed_cb_n1, utc_tts_startup, utc_tts_cleanup},
+    {"utc_ttse_main_p", utc_ttse_main_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n", utc_ttse_main_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_main_n1", utc_ttse_main_n1, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_p", utc_ttse_get_speed_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_speed_range_n", utc_ttse_get_speed_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_p", utc_ttse_get_pitch_range_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_get_pitch_range_n", utc_ttse_get_pitch_range_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_result_n", utc_ttse_send_result_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_send_error_n", utc_ttse_send_error_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_p", utc_ttse_set_private_data_set_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_set_cb_n", utc_ttse_set_private_data_set_cb_n, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_p", utc_ttse_set_private_data_requested_cb_p, utc_ttse_startup, utc_ttse_cleanup},
+    {"utc_ttse_set_private_data_requested_cb_n", utc_ttse_set_private_data_requested_cb_n, utc_ttse_startup, utc_ttse_cleanup},
     {NULL, NULL}
 };
 
index a760f7f..acf5a44 100755 (executable)
@@ -46,10 +46,11 @@ static char *g_text = "Speech Synthesis is the artificial production of human sp
        the front-end. The back-end?often referred to as the synthesizer?then converts the symbolic linguistic representation into sound. In certain systems, this part includes the computation \
        of the target prosody (pitch contour, phoneme durations),[4] which is then imposed on the output speech. From Wikipedia";
 
-void startup(void)
+void utc_tts_startup(void)
 {
     system_info_get_platform_bool("http://tizen.org/feature/speech.synthesis",&g_supported);
     elm_init(0,NULL);
+    g_current_state = 0;
     /* start of TC */
     int ret = tts_create(&g_tts);
     is_created_hndl = ret;
@@ -63,7 +64,7 @@ void startup(void)
     tts_get_default_voice(g_tts, &g_language, &g_voice_type);
 }
 
-void cleanup(void)
+void utc_tts_cleanup(void)
 {
     /* end of TC */
     elm_shutdown();
diff --git a/src/utc/tts/utc-ttse.c b/src/utc/tts/utc-ttse.c
new file mode 100644 (file)
index 0000000..884f21b
--- /dev/null
@@ -0,0 +1,397 @@
+//
+// Copyright (c) 2016 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 <ttse.h>
+#include <stdlib.h>
+#include <Ecore.h>
+#include <Elementary.h>
+#include <dlog.h>
+
+
+extern void transfer_arg(int * argc, char ** argv[]);
+
+static ttse_request_callback_s g_engine_callback = {0, };
+static short g_data[640000] = {0, };
+static unsigned int g_data_size = 640000;
+static int g_rate = 16000;
+
+static int g_argc = 1;
+static char **g_argv = NULL;
+
+bool g_is_supported = false;
+
+static int engine_get_info(char** engine_uuid, char** engine_name, char** setting_ug_name, bool* use_network)
+{
+       *engine_uuid = strdup("23E456F7-ABC8-9DCA-XYZ1-D9876A5BCDE4");
+       *engine_name = strdup("TTS engine sample");
+       *setting_ug_name = strdup("libttsenginesample.so");
+       *use_network = false;
+
+       return 0;
+}
+
+static int engine_initialize(void)
+{
+       return 0;
+}
+
+static int engine_deinitialize(void)
+{
+       return 0;
+}
+
+static int engine_foreach_voices(ttse_supported_voice_cb callback, void* user_data)
+{
+       char * lang = "en_US";
+       int vctype = TTSE_VOICE_TYPE_FEMALE;
+
+       dlog_print(DLOG_INFO, "NativeTCT", "[engine_foreach_voices] lang = %s, vctype = %d", (NULL == lang) ? "NULL" : lang, vctype);
+
+       bool ret = callback(lang, vctype, user_data);
+
+       return 0;
+}
+
+static int engine_is_valid_voice(const char* language, int type, bool* is_valid)
+{
+       *is_valid = true;
+
+       return 0;
+}
+
+static int engine_set_pitch(int pitch)
+{
+       return 0;
+}
+
+static int engine_load_voice(const char* language, int type)
+{
+       return 0;
+}
+
+static int engine_unload_voice(const char* language, int type)
+{
+       return 0;
+}
+
+static int engine_start_synth(const char* language, int type, const char* text, int speed, const char* appid, const char* credential, void* user_data)
+{
+       return 0;
+}
+
+static int engine_cancel_synth(void)
+{
+       return 0;
+}
+
+static int engine_check_app_agreed(const char* appid, bool* is_agreed)
+{
+       return 0;
+}
+
+static bool engine_need_app_credential(void)
+{
+       return false;
+}
+
+static int engine_set_private_data(const char* key, const char* data)
+{
+       return 0;
+}
+
+static int engine_get_private_data(const char* key, char** data)
+{
+       return 0;
+}
+
+/* ================================ */
+
+void utc_ttse_startup(void)
+{
+       system_info_get_platform_bool("http://tizen.org/feature/speech.synthesis", &g_is_supported);
+       elm_init(0,NULL);
+       /* start of TC */
+
+       if (g_is_supported == false)
+               return;
+
+       transfer_arg(&g_argc, &g_argv);
+
+       dlog_print(DLOG_INFO, "NativeTCT", "[startup2] argc = %d, argv[0] = %s", g_argc, (NULL == g_argv) ? "NULL" : g_argv[0]);
+
+       g_engine_callback.version = 1;
+       g_engine_callback.get_info = engine_get_info;
+
+       g_engine_callback.initialize = engine_initialize;
+       g_engine_callback.deinitialize = engine_deinitialize;
+
+       g_engine_callback.start_synth = engine_start_synth;
+       g_engine_callback.cancel_synth = engine_cancel_synth;
+
+       g_engine_callback.foreach_voices = engine_foreach_voices;
+       g_engine_callback.is_valid_voice = engine_is_valid_voice;
+
+       g_engine_callback.set_pitch = engine_set_pitch;
+
+       g_engine_callback.load_voice = engine_load_voice;
+       g_engine_callback.unload_voice = engine_unload_voice;
+
+       g_engine_callback.check_app_agreed = engine_check_app_agreed;
+       g_engine_callback.need_app_credential = engine_need_app_credential;
+
+}
+
+void utc_ttse_cleanup(void)
+{
+    /* end of TC */
+    elm_shutdown();
+}
+
+/**
+ * @testcase           utc_ttse_main_p
+ * @since_tizen                3.0
+ * @description                Positive UTC for tts handle create
+ */
+int utc_ttse_main_p(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       return 0;
+
+}
+
+/**
+ * @testcase           utc_ttse_main_n
+ * @since_tizen                3.0
+ * @description                Positive UTC for tts handle create
+ */
+int utc_ttse_main_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       g_engine_callback.start_synth = NULL;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+//     assert_neq(ret, TTSE_ERROR_NONE);
+       assert_eq(ret, TTSE_ERROR_OPERATION_FAILED);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_main_n1
+ * @since_tizen                3.0
+ * @description                Positive UTC for tts handle create
+ */
+int utc_ttse_main_n1(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, NULL);
+//     assert_neq(ret, TTSE_ERROR_NONE);
+       assert_eq(ret, TTSE_ERROR_OPERATION_FAILED);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_get_speed_range_p
+ * @since_tizen                3.0
+ * @description                Positive UTC for getting speed range
+ */
+int utc_ttse_get_speed_range_p(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       int min = 0;
+       int normal = 0;
+       int max = 0;
+
+       ret = ttse_get_speed_range(&min, &normal, &max);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_get_speed_range_n
+ * @since_tizen                3.0
+ * @description                Negative UTC for getting speed range
+ */
+int utc_ttse_get_speed_range_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       int min = 0;
+       int normal = 0;
+
+       ret = ttse_get_speed_range(&min, &normal, NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_get_pitch_range_p
+ * @since_tizen                3.0
+ * @description                Positive UTC for getting pitch range
+ */
+int utc_ttse_get_pitch_range_p(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       int min = 0;
+       int normal = 0;
+       int max = 0;
+
+       ret = ttse_get_pitch_range(&min, &normal, &max);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_get_pitch_range_n
+ * @since_tizen                3.0
+ * @description                Negative UTC for getting pitch range
+ */
+int utc_ttse_get_pitch_range_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       int min = 0;
+       int normal = 0;
+
+       ret = ttse_get_pitch_range(&min, &normal, NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase           utc_ttse_send_result_n
+ * @since_tizen                3.0
+ * @description                Negative UTC for sending result
+ */
+int utc_ttse_send_result_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       dlog_print(DLOG_INFO, "NativeTCT", "[utc_ttse_send_result_p] ttse_main SUCCESS");
+       ret = ttse_send_result(TTSE_RESULT_EVENT_START, NULL, g_data_size, TTSE_AUDIO_TYPE_RAW_S16, g_rate, NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase            utc_ttse_send_error_n
+ * @since_tizen         3.0
+ * @description         Negative UTC for sending error
+ */
+int utc_ttse_send_error_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       ret = ttse_send_error(TTSE_ERROR_INVALID_STATE, NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_set_private_data_set_cb_p
+ * @since_tizen                3.0
+ * @description                Positive UTC for setting a callback of setting private data
+ */
+int utc_ttse_set_private_data_set_cb_p(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       ret = ttse_set_private_data_set_cb(engine_set_private_data);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ttse_set_private_data_set_cb_n
+ * @since_tizen                3.0
+ * @description                Negative UTC for setting a callback of setting private data (invalid parameter)
+ */
+int utc_ttse_set_private_data_set_cb_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       ret = ttse_set_private_data_set_cb(NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase            utc_ttse_set_private_data_requested_cb_p
+ * @since_tizen         3.0
+ * @description         Positive UTC for setting a callback of requesting private data
+ */
+int utc_ttse_set_private_data_requested_cb_p(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       ret = ttse_set_private_data_requested_cb(engine_get_private_data);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase            utc_ttse_set_private_data_requested_cb_n
+ * @since_tizen         3.0
+ * @description         Negative UTC for setting a callback of requesting private data (invalid parameter)
+ */
+int utc_ttse_set_private_data_requested_cb_n(void)
+{
+       int ret = TTSE_ERROR_NONE;
+
+       ret = ttse_main(g_argc, g_argv, &g_engine_callback);
+       assert_eq(ret, TTSE_ERROR_NONE);
+
+       ret = ttse_set_private_data_requested_cb(NULL);
+       assert_eq(ret, TTSE_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+