From: Ji-hoon Lee Date: Tue, 1 Oct 2019 10:29:14 +0000 (+0900) Subject: [UTC][multi-assistant][ACR-1455][Add new APIs for supporting additional features] X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ae606d6ff17118deefcbfde5b7ad32d0363be7d4;p=test%2Ftct%2Fnative%2Fapi.git [UTC][multi-assistant][ACR-1455][Add new APIs for supporting additional features] Change-Id: Id2413e9e7613c12ade07e2e5b18aa9ff87ff668b --- diff --git a/packaging/utc/core-multi-assistant-tests.xml b/packaging/utc/core-multi-assistant-tests.xml index bbdae4054..81d72f7eb 100755 --- a/packaging/utc/core-multi-assistant-tests.xml +++ b/packaging/utc/core-multi-assistant-tests.xml @@ -13,5 +13,6 @@ http://tizen.org/privilege/recorder + http://tizen.org/privilege/volume.set diff --git a/src/utc/multi-assistant/public.list b/src/utc/multi-assistant/public.list index 0672d3170..bc6c627c7 100644 --- a/src/utc/multi-assistant/public.list +++ b/src/utc/multi-assistant/public.list @@ -23,4 +23,13 @@ ma_stop_receiving_audio_streaming_data ma_update_voice_feedback_state ma_send_assistant_specific_command ma_set_wakeup_engine_command_cb -ma_unset_wakeup_engine_command_cb \ No newline at end of file +ma_unset_wakeup_engine_command_cb +ma_assistant_info_foreach_assistants +ma_assistant_info_get_app_id +ma_assistant_info_get_enabled_status +ma_get_recording_audio_source_type +ma_set_background_volume +ma_set_preprocessing_allow_mode +ma_set_preprocessing_information_changed_cb +ma_unset_preprocessing_information_changed_cb +ma_send_preprocessing_result diff --git a/src/utc/multi-assistant/tct-multi-assistant-core.c b/src/utc/multi-assistant/tct-multi-assistant-core.c index e16263795..a937de18d 100644 --- a/src/utc/multi-assistant/tct-multi-assistant-core.c +++ b/src/utc/multi-assistant/tct-multi-assistant-core.c @@ -30,7 +30,7 @@ #include "tct-multi-assistant-core_tv.h" #endif -#ifdef TIZENIOT +#ifdef TIZENIOT #include "tct-multi-assistant-core_tizeniot.h" #endif //TIZENIOT diff --git a/src/utc/multi-assistant/tct-multi-assistant-core_mobile.h b/src/utc/multi-assistant/tct-multi-assistant-core_mobile.h index 418541ff6..0b040bd21 100644 --- a/src/utc/multi-assistant/tct-multi-assistant-core_mobile.h +++ b/src/utc/multi-assistant/tct-multi-assistant-core_mobile.h @@ -82,6 +82,26 @@ extern int utc_ma_set_wakeup_engine_command_cb_n1(void); extern int utc_ma_set_wakeup_engine_command_cb_n2(void); extern int utc_ma_unset_wakeup_engine_command_cb_p(void); extern int utc_ma_unset_wakeup_engine_command_cb_n(void); +extern int utc_ma_assistant_info_foreach_assistants_p(void); +extern int utc_ma_assistant_info_foreach_assistants_n(void); +extern int utc_ma_assistant_info_get_app_id_p(void); +extern int utc_ma_assistant_info_get_app_id_n(void); +extern int utc_ma_assistant_info_get_enabled_status_p(void); +extern int utc_ma_assistant_info_get_enabled_status_n(void); +extern int utc_ma_get_recording_audio_source_type_p(void); +extern int utc_ma_get_recording_audio_source_type_n1(void); +extern int utc_ma_get_recording_audio_source_type_n2(void); +extern int utc_ma_set_background_volume_p(void); +extern int utc_ma_set_background_volume_n(void); +extern int utc_ma_set_preprocessing_allow_mode_p(void); +extern int utc_ma_set_preprocessing_allow_mode_n(void); +extern int utc_ma_set_preprocessing_information_changed_cb_p(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n1(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n2(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_p(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_n(void); +extern int utc_ma_send_preprocessing_result_p(void); +extern int utc_ma_send_preprocessing_result_n(void); testcase tc_array[] = { {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, @@ -144,6 +164,26 @@ testcase tc_array[] = { {"utc_ma_set_wakeup_engine_command_cb_n2",utc_ma_set_wakeup_engine_command_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_p",utc_ma_unset_wakeup_engine_command_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_n",utc_ma_unset_wakeup_engine_command_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_p",utc_ma_assistant_info_foreach_assistants_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_n",utc_ma_assistant_info_foreach_assistants_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_p",utc_ma_assistant_info_get_app_id_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_n",utc_ma_assistant_info_get_app_id_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_p",utc_ma_assistant_info_get_enabled_status_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_n",utc_ma_assistant_info_get_enabled_status_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_p",utc_ma_get_recording_audio_source_type_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n1",utc_ma_get_recording_audio_source_type_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n2",utc_ma_get_recording_audio_source_type_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_p",utc_ma_set_background_volume_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_n",utc_ma_set_background_volume_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_p",utc_ma_set_preprocessing_allow_mode_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_n",utc_ma_set_preprocessing_allow_mode_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_p",utc_ma_set_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_n1",utc_ma_set_preprocessing_information_changed_cb_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_n2",utc_ma_set_preprocessing_information_changed_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_p",utc_ma_unset_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_n",utc_ma_unset_preprocessing_information_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_p",utc_ma_send_preprocessing_result_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_n",utc_ma_send_preprocessing_result_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {NULL, NULL} }; diff --git a/src/utc/multi-assistant/tct-multi-assistant-core_tizeniot.h b/src/utc/multi-assistant/tct-multi-assistant-core_tizeniot.h index 418541ff6..630449771 100644 --- a/src/utc/multi-assistant/tct-multi-assistant-core_tizeniot.h +++ b/src/utc/multi-assistant/tct-multi-assistant-core_tizeniot.h @@ -82,6 +82,26 @@ extern int utc_ma_set_wakeup_engine_command_cb_n1(void); extern int utc_ma_set_wakeup_engine_command_cb_n2(void); extern int utc_ma_unset_wakeup_engine_command_cb_p(void); extern int utc_ma_unset_wakeup_engine_command_cb_n(void); +extern int utc_ma_assistant_info_foreach_assistants_p(void); +extern int utc_ma_assistant_info_foreach_assistants_n(void); +extern int utc_ma_assistant_info_get_app_id_p(void); +extern int utc_ma_assistant_info_get_app_id_n(void); +extern int utc_ma_assistant_info_get_enabled_status_p(void); +extern int utc_ma_assistant_info_get_enabled_status_n(void); +extern int utc_ma_get_recording_audio_source_type_p(void); +extern int utc_ma_get_recording_audio_source_type_n1(void); +extern int utc_ma_get_recording_audio_source_type_n2(void); +extern int utc_ma_set_background_volume_p(void); +extern int utc_ma_set_background_volume_n(void); +extern int utc_ma_set_preprocessing_allow_mode_p(void); +extern int utc_ma_set_preprocessing_allow_mode_n(void); +extern int utc_ma_set_preprocessing_information_changed_cb_p(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n1(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n2(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_p(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_n(void); +extern int utc_ma_send_preprocessing_result_p(void); +extern int utc_ma_send_preprocessing_result_n(void); testcase tc_array[] = { {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, @@ -144,6 +164,26 @@ testcase tc_array[] = { {"utc_ma_set_wakeup_engine_command_cb_n2",utc_ma_set_wakeup_engine_command_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_p",utc_ma_unset_wakeup_engine_command_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_n",utc_ma_unset_wakeup_engine_command_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_p",utc_ma_assistant_info_foreach_assistants_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_n",utc_ma_assistant_info_foreach_assistants_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_p",utc_ma_assistant_info_get_app_id_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_n",utc_ma_assistant_info_get_app_id_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_p",utc_ma_assistant_info_get_enabled_status_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_n",utc_ma_assistant_info_get_enabled_status_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_p",utc_ma_get_recording_audio_source_type_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n1",utc_ma_get_recording_audio_source_type_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n2",utc_ma_get_recording_audio_source_type_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_p",utc_ma_set_background_volume_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_n",utc_ma_set_background_volume_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_p",utc_ma_set_preprocessing_allow_mode_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_n",utc_ma_set_preprocessing_allow_mode_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_p",utc_ma_set_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_n",utc_ma_set_preprocessing_information_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_p",utc_ma_unset_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_n1",utc_ma_unset_preprocessing_information_changed_cb_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_n2",utc_ma_unset_preprocessing_information_changed_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_p",utc_ma_send_preprocessing_result_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_n",utc_ma_send_preprocessing_result_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {NULL, NULL} }; diff --git a/src/utc/multi-assistant/tct-multi-assistant-core_wearable.h b/src/utc/multi-assistant/tct-multi-assistant-core_wearable.h index 418541ff6..0b040bd21 100644 --- a/src/utc/multi-assistant/tct-multi-assistant-core_wearable.h +++ b/src/utc/multi-assistant/tct-multi-assistant-core_wearable.h @@ -82,6 +82,26 @@ extern int utc_ma_set_wakeup_engine_command_cb_n1(void); extern int utc_ma_set_wakeup_engine_command_cb_n2(void); extern int utc_ma_unset_wakeup_engine_command_cb_p(void); extern int utc_ma_unset_wakeup_engine_command_cb_n(void); +extern int utc_ma_assistant_info_foreach_assistants_p(void); +extern int utc_ma_assistant_info_foreach_assistants_n(void); +extern int utc_ma_assistant_info_get_app_id_p(void); +extern int utc_ma_assistant_info_get_app_id_n(void); +extern int utc_ma_assistant_info_get_enabled_status_p(void); +extern int utc_ma_assistant_info_get_enabled_status_n(void); +extern int utc_ma_get_recording_audio_source_type_p(void); +extern int utc_ma_get_recording_audio_source_type_n1(void); +extern int utc_ma_get_recording_audio_source_type_n2(void); +extern int utc_ma_set_background_volume_p(void); +extern int utc_ma_set_background_volume_n(void); +extern int utc_ma_set_preprocessing_allow_mode_p(void); +extern int utc_ma_set_preprocessing_allow_mode_n(void); +extern int utc_ma_set_preprocessing_information_changed_cb_p(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n1(void); +extern int utc_ma_set_preprocessing_information_changed_cb_n2(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_p(void); +extern int utc_ma_unset_preprocessing_information_changed_cb_n(void); +extern int utc_ma_send_preprocessing_result_p(void); +extern int utc_ma_send_preprocessing_result_n(void); testcase tc_array[] = { {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, @@ -144,6 +164,26 @@ testcase tc_array[] = { {"utc_ma_set_wakeup_engine_command_cb_n2",utc_ma_set_wakeup_engine_command_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_p",utc_ma_unset_wakeup_engine_command_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {"utc_ma_unset_wakeup_engine_command_cb_n",utc_ma_unset_wakeup_engine_command_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_p",utc_ma_assistant_info_foreach_assistants_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_foreach_assistants_n",utc_ma_assistant_info_foreach_assistants_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_p",utc_ma_assistant_info_get_app_id_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_app_id_n",utc_ma_assistant_info_get_app_id_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_p",utc_ma_assistant_info_get_enabled_status_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_assistant_info_get_enabled_status_n",utc_ma_assistant_info_get_enabled_status_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_p",utc_ma_get_recording_audio_source_type_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n1",utc_ma_get_recording_audio_source_type_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_get_recording_audio_source_type_n2",utc_ma_get_recording_audio_source_type_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_p",utc_ma_set_background_volume_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_background_volume_n",utc_ma_set_background_volume_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_p",utc_ma_set_preprocessing_allow_mode_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_allow_mode_n",utc_ma_set_preprocessing_allow_mode_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_p",utc_ma_set_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_n1",utc_ma_set_preprocessing_information_changed_cb_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_set_preprocessing_information_changed_cb_n2",utc_ma_set_preprocessing_information_changed_cb_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_p",utc_ma_unset_preprocessing_information_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_unset_preprocessing_information_changed_cb_n",utc_ma_unset_preprocessing_information_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_p",utc_ma_send_preprocessing_result_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, + {"utc_ma_send_preprocessing_result_n",utc_ma_send_preprocessing_result_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup}, {NULL, NULL} }; diff --git a/src/utc/multi-assistant/utc-multi-assistant.c b/src/utc/multi-assistant/utc-multi-assistant.c index fc2b45d2c..d659f9eef 100644 --- a/src/utc/multi-assistant/utc-multi-assistant.c +++ b/src/utc/multi-assistant/utc-multi-assistant.c @@ -24,6 +24,8 @@ static int g_ma_init = false; static ma_state_e g_ma_state = MA_STATE_NONE; static bool g_ma_supported = false; static ma_active_state_e g_ma_active_state = MA_ACTIVE_STATE_INACTIVE; +static ma_assistant_info_h g_ma_assistant_handle = NULL; + static void __ma_state_changed_cb(ma_state_e previous, ma_state_e current, void* user_data) { g_ma_state = current; @@ -50,6 +52,16 @@ static void __ma_active_state_changed_cb(ma_active_state_e previous, ma_active_s static void __ma_set_wakeup_engine_command_changed_cb(const char *command, void* user_data) { } + +static int __ma_assistant_info_list_cb(ma_assistant_info_h handle, void* user_data) +{ + g_ma_assistant_handle = handle; +} + +static void __ma_preprocessing_information_changed_cb(const char* app_id, void* user_data) +{ +} + /** * @function utc_multi_assistant_startup * @description Called before each test @@ -84,6 +96,8 @@ void utc_multi_assistant_startup(void) g_ma_init = false; } } + + g_ma_assistant_handle = NULL; } /** @@ -515,7 +529,7 @@ int utc_ma_get_recording_audio_format_n2(void) int rate; ma_audio_channel_e channel; ma_audio_type_e audio_type; - + ret = ma_get_recording_audio_format(&rate, &channel, &audio_type); assert_eq(ret, MA_ERROR_INVALID_STATE); } @@ -1725,3 +1739,563 @@ int utc_ma_unset_wakeup_engine_command_cb_n(void) return 0; } + +/** + * @testcase utc_ma_assistant_info_foreach_assistants_p + * @since_tizen 5.5 + * @description Positive UTC for assistant info foreach assistants + */ +int utc_ma_assistant_info_foreach_assistants_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(__ma_assistant_info_list_cb, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(__ma_assistant_info_list_cb, NULL); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_assistant_info_foreach_assistants_n + * @since_tizen 5.5 + * @description Negative UTC for ma assistant info foreach assistants (Invalid parameter) + */ +int utc_ma_assistant_info_foreach_assistants_n(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(NULL, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(NULL, NULL); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } + + return 0; +} + +/** + * @testcase ma_assistant_info_get_app_id_p + * @since_tizen 5.5 + * @description Positive UTC for assistant info get app id + */ +int utc_ma_assistant_info_get_app_id_p(void) +{ + char* app_id = NULL; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_app_id(NULL, &app_id); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(__ma_assistant_info_list_cb, NULL); + if (NULL == g_ma_assistant_handle) { + ret = ma_assistant_info_get_app_id(g_ma_assistant_handle, &app_id); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } else { + ret = ma_assistant_info_get_app_id(g_ma_assistant_handle, &app_id); + assert_eq(ret, MA_ERROR_NONE); + } + } + + return 0; +} + +/** + * @testcase utc_ma_assistant_info_get_app_id_n + * @since_tizen 5.5 + * @description Negative UTC for assistant info get app id (Invalid parameter) + */ +int utc_ma_assistant_info_get_app_id_n(void) +{ + char* app_id = NULL; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_app_id(NULL, &app_id); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_app_id(NULL, &app_id); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } + + return 0; +} + +/** + * @testcase utc_ma_assistant_info_get_enabled_status_p + * @since_tizen 5.5 + * @description Positive UTC for assistant info get enabled status + */ +int utc_ma_assistant_info_get_enabled_status_p(void) +{ + bool status = false; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_enabled_status(NULL, &status); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_foreach_assistants(__ma_assistant_info_list_cb, NULL); + if (NULL == g_ma_assistant_handle) { + ret = ma_assistant_info_get_enabled_status(g_ma_assistant_handle, &status); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } else { + ret = ma_assistant_info_get_enabled_status(g_ma_assistant_handle, &status); + assert_eq(ret, MA_ERROR_NONE); + } + } + + return 0; +} + +/** + * @testcase utc_ma_assistant_info_get_enabled_status_n + * @since_tizen 5.5 + * @description Negative UTC for assistant info get enabled status (Invalid parameter) + */ +int utc_ma_assistant_info_get_enabled_status_n(void) +{ + bool status = false; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_enabled_status(NULL, &status); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_assistant_info_get_enabled_status(NULL, &status); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } + return 0; +} + +/** + * @testcase utc_ma_get_recording_audio_source_type_p + * @since_tizen 5.5 + * @description Positive UTC for get recording audio source type + */ +int utc_ma_get_recording_audio_source_type_p(void) +{ + char* type = NULL; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_get_recording_audio_source_type(&type); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_prepare(); + assert_eq(ret, MA_ERROR_NONE); + + while (MA_STATE_READY != g_ma_state) { + ecore_main_loop_iterate(); + } + + ret = ma_get_recording_audio_source_type(&type); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_unprepare(); + assert_eq(ret, MA_ERROR_NONE); + } + if (type) { + free(type); + type = NULL; + } + + return 0; +} + +/** + * @testcase utc_ma_get_recording_audio_source_type_n1 + * @since_tizen 5.5 + * @description Negative UTC for get recording audio source type (Invalid parameter) + */ +int utc_ma_get_recording_audio_source_type_n1(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_get_recording_audio_source_type(NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_prepare(); + assert_eq(ret, MA_ERROR_NONE); + + while (MA_STATE_READY != g_ma_state) { + ecore_main_loop_iterate(); + } + + ret = ma_get_recording_audio_source_type(NULL); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + + ret = ma_unprepare(); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_get_recording_audio_source_type_n2 + * @since_tizen 5.5 + * @description Negative UTC for get recording audio source type (Invalid state) + */ +int utc_ma_get_recording_audio_source_type_n2(void) +{ + char* type = NULL; + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_get_recording_audio_source_type(&type); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_get_recording_audio_source_type(&type); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + if (type) { + free(type); + type = NULL; + } + + return 0; +} + +/** + * @testcase utc_ma_set_background_volume_p + * @since_tizen 5.5 + * @description Positive UTC for set background volume + */ +int utc_ma_set_background_volume_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_background_volume(1.0); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_prepare(); + assert_eq(ret, MA_ERROR_NONE); + + while (MA_STATE_READY != g_ma_state) { + ecore_main_loop_iterate(); + } + + ret = ma_set_background_volume(1.0); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_unprepare(); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_set_background_volume_n + * @since_tizen 5.5 + * @description Negative UTC for set background volume (Invalid state) + */ +int utc_ma_set_background_volume_n(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_background_volume(1.0); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_set_background_volume(1.0); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + + return 0; +} + +/** + * @testcase utc_ma_set_preprocessing_allow_mode_p + * @since_tizen 5.5 + * @description Positive UTC for set preprocessing allow mode + */ +int utc_ma_set_preprocessing_allow_mode_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_allow_mode(MA_PREPROCESSING_ALLOW_NONE, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_prepare(); + assert_eq(ret, MA_ERROR_NONE); + + while (MA_STATE_READY != g_ma_state) { + ecore_main_loop_iterate(); + } + + ret = ma_set_preprocessing_allow_mode(MA_PREPROCESSING_ALLOW_NONE, NULL); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_unprepare(); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_set_preprocessing_allow_mode_n + * @since_tizen 5.5 + * @description Negative UTC for set preprocessing allow mode (Invalid state) + */ +int utc_ma_set_preprocessing_allow_mode_n(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_allow_mode(MA_PREPROCESSING_ALLOW_NONE, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_allow_mode(MA_PREPROCESSING_ALLOW_NONE, NULL); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + + return 0; +} + +/** + * @testcase utc_ma_set_preprocessing_information_changed_cb_p + * @since_tizen 5.5 + * @description Positive UTC for set preprocessing information changed callback + */ +int utc_ma_set_preprocessing_information_changed_cb_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_information_changed_cb(__ma_preprocessing_information_changed_cb, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_information_changed_cb(__ma_preprocessing_information_changed_cb, NULL); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_set_preprocessing_information_changed_cb_n1 + * @since_tizen 5.5 + * @description Negative UTC for set preprocessing information changed callback (Invalid parameter) + */ +int utc_ma_set_preprocessing_information_changed_cb_n1(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_information_changed_cb(NULL, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_information_changed_cb(NULL, NULL); + assert_eq(ret, MA_ERROR_INVALID_PARAMETER); + } + + return 0; +} + +/** + * @testcase utc_ma_set_preprocessing_information_changed_cb_n2 + * @since_tizen 5.5 + * @description Negative UTC for set preprocessing information changed callback (Invalid state) + */ +int utc_ma_set_preprocessing_information_changed_cb_n2(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_set_preprocessing_information_changed_cb(__ma_preprocessing_information_changed_cb, NULL); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_deinitialize(); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_set_preprocessing_information_changed_cb(__ma_preprocessing_information_changed_cb, NULL); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + + return 0; +} + +/** + * @testcase utc_ma_unset_preprocessing_information_changed_cb_p + * @since_tizen 5.5 + * @description Positive UTC for unset preprocessing information changed callback + */ +int utc_ma_unset_preprocessing_information_changed_cb_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_unset_preprocessing_information_changed_cb(); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_unset_preprocessing_information_changed_cb(); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_unset_preprocessing_information_changed_cb_n + * @since_tizen 5.5 + * @description Negative UTC for unset preprocessing information changed callback (Invalid state) + */ +int utc_ma_unset_preprocessing_information_changed_cb_n(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_unset_preprocessing_information_changed_cb(); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_deinitialize(); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_unset_preprocessing_information_changed_cb(); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + + return 0; +} + +/** + * @testcase utc_ma_send_preprocessing_result_p + * @since_tizen 5.5 + * @description Positive UTC for send preprocessing result + */ +int utc_ma_send_preprocessing_result_p(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_send_preprocessing_result(false); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_prepare(); + assert_eq(ret, MA_ERROR_NONE); + + while (MA_STATE_READY != g_ma_state) { + ecore_main_loop_iterate(); + } + + ret = ma_send_preprocessing_result(false); + assert_eq(ret, MA_ERROR_NONE); + + ret = ma_unprepare(); + assert_eq(ret, MA_ERROR_NONE); + } + + return 0; +} + +/** + * @testcase utc_ma_send_preprocessing_result_n + * @since_tizen 5.5 + * @description Negative UTC for send preprocessing result (Invalid state) + */ +int utc_ma_send_preprocessing_result_n(void) +{ + if (false == g_ma_supported) { + assert_eq(g_ma_init, false); + + int ret = MA_ERROR_NONE; + ret = ma_send_preprocessing_result(false); + assert_eq(ret, MA_ERROR_NOT_SUPPORTED); + } else { + assert_eq(g_ma_init, true); + + int ret = MA_ERROR_NONE; + ret = ma_send_preprocessing_result(false); + assert_eq(ret, MA_ERROR_INVALID_STATE); + } + + return 0; +}