[UTC][multi-assistant][ACR-1500][Add APIs for adding/removing wake words] 05/231305/1
authorJi-hoon Lee <dalton.lee@samsung.com>
Tue, 21 Apr 2020 05:25:00 +0000 (14:25 +0900)
committerJi-hoon Lee <dalton.lee@samsung.com>
Tue, 21 Apr 2020 06:18:03 +0000 (15:18 +0900)
Change-Id: I7e2b1a1d6508fcf95495c915c4955f12d0c9c996

src/utc/multi-assistant/public.list
src/utc/multi-assistant/tct-multi-assistant-core_mobile.h
src/utc/multi-assistant/tct-multi-assistant-core_tizeniot.h
src/utc/multi-assistant/tct-multi-assistant-core_wearable.h
src/utc/multi-assistant/utc-multi-assistant.c

index f49168ec84958f176d8bf28e2da950f84d9b8e6a..26856e85c04e6064823441ff5dd4436e8a5e2ca1 100644 (file)
@@ -41,3 +41,5 @@ ma_set_service_state_changed_cb
 ma_unset_service_state_changed_cb
 ma_set_voice_key_status_changed_cb
 ma_unset_voice_key_status_changed_cb
+ma_add_wake_word
+ma_remove_wake_word
index 88cdc9b555660bf6f92f42b8a1bc668abfc4e993..048815066828cba6416cb17f31c90cdd5c0fa3d9 100644 (file)
@@ -119,6 +119,12 @@ extern int utc_ma_set_voice_key_status_changed_cb_p(void);
 extern int utc_ma_set_voice_key_status_changed_cb_n(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_p(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_n(void);
+extern int utc_ma_add_wake_word_p(void);
+extern int utc_ma_add_wake_word_n1(void);
+extern int utc_ma_add_wake_word_n2(void);
+extern int utc_ma_remove_wake_word_p(void);
+extern int utc_ma_remove_wake_word_n1(void);
+extern int utc_ma_remove_wake_word_n2(void);
 
 testcase tc_array[] = {
        {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
@@ -218,6 +224,12 @@ testcase tc_array[] = {
        {"utc_ma_set_voice_key_status_changed_cb_n",utc_ma_set_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_p",utc_ma_unset_voice_key_status_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_n",utc_ma_unset_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_p",utc_ma_add_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n1",utc_ma_add_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n2",utc_ma_add_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_p",utc_ma_remove_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n1",utc_ma_remove_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n2",utc_ma_remove_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {NULL, NULL}
 };
 
index 88cdc9b555660bf6f92f42b8a1bc668abfc4e993..048815066828cba6416cb17f31c90cdd5c0fa3d9 100644 (file)
@@ -119,6 +119,12 @@ extern int utc_ma_set_voice_key_status_changed_cb_p(void);
 extern int utc_ma_set_voice_key_status_changed_cb_n(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_p(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_n(void);
+extern int utc_ma_add_wake_word_p(void);
+extern int utc_ma_add_wake_word_n1(void);
+extern int utc_ma_add_wake_word_n2(void);
+extern int utc_ma_remove_wake_word_p(void);
+extern int utc_ma_remove_wake_word_n1(void);
+extern int utc_ma_remove_wake_word_n2(void);
 
 testcase tc_array[] = {
        {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
@@ -218,6 +224,12 @@ testcase tc_array[] = {
        {"utc_ma_set_voice_key_status_changed_cb_n",utc_ma_set_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_p",utc_ma_unset_voice_key_status_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_n",utc_ma_unset_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_p",utc_ma_add_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n1",utc_ma_add_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n2",utc_ma_add_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_p",utc_ma_remove_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n1",utc_ma_remove_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n2",utc_ma_remove_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {NULL, NULL}
 };
 
index 88cdc9b555660bf6f92f42b8a1bc668abfc4e993..048815066828cba6416cb17f31c90cdd5c0fa3d9 100644 (file)
@@ -119,6 +119,12 @@ extern int utc_ma_set_voice_key_status_changed_cb_p(void);
 extern int utc_ma_set_voice_key_status_changed_cb_n(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_p(void);
 extern int utc_ma_unset_voice_key_status_changed_cb_n(void);
+extern int utc_ma_add_wake_word_p(void);
+extern int utc_ma_add_wake_word_n1(void);
+extern int utc_ma_add_wake_word_n2(void);
+extern int utc_ma_remove_wake_word_p(void);
+extern int utc_ma_remove_wake_word_n1(void);
+extern int utc_ma_remove_wake_word_n2(void);
 
 testcase tc_array[] = {
        {"utc_ma_initialize_p",utc_ma_initialize_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
@@ -218,6 +224,12 @@ testcase tc_array[] = {
        {"utc_ma_set_voice_key_status_changed_cb_n",utc_ma_set_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_p",utc_ma_unset_voice_key_status_changed_cb_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {"utc_ma_unset_voice_key_status_changed_cb_n",utc_ma_unset_voice_key_status_changed_cb_n,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_p",utc_ma_add_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n1",utc_ma_add_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_add_wake_word_n2",utc_ma_add_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_p",utc_ma_remove_wake_word_p,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n1",utc_ma_remove_wake_word_n1,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
+       {"utc_ma_remove_wake_word_n2",utc_ma_remove_wake_word_n2,utc_multi_assistant_startup,utc_multi_assistant_cleanup},
        {NULL, NULL}
 };
 
index 25e76f1167fbf6f445e362296ff3e1641f03209b..914f23197c54ae0d4efccda02e68636b77290c5c 100644 (file)
@@ -2752,3 +2752,181 @@ int utc_ma_unset_voice_key_status_changed_cb_n(void)
 
        return 0;
 }
+
+/**
+ * @testcase           utc_ma_add_wake_word_p
+ * @since_tizen                6.0
+ * @description                Positive UTC for add wake word
+ */
+int utc_ma_add_wake_word_p(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_add_wake_word("Hi Tizen", "en_US");
+               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_add_wake_word("Hi Tizen", "en_US");
+               assert_eq(ret, MA_ERROR_NONE);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ma_add_wake_word_n1
+ * @since_tizen                6.0
+ * @description                Negative UTC for add wake word (Invalid parameter)
+ */
+int utc_ma_add_wake_word_n1(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_add_wake_word("Hi Tizen", "en_US");
+               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_add_wake_word(NULL, NULL);
+               assert_eq(ret, MA_ERROR_INVALID_PARAMETER);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ma_add_wake_word_n2
+ * @since_tizen                6.0
+ * @description                Negative UTC for add wake word (Invalid state)
+ */
+int utc_ma_add_wake_word_n2(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_add_wake_word("Hi Tizen", "en_US");
+               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_add_wake_word("Hi Tizen", "en_US");
+               assert_eq(ret, MA_ERROR_INVALID_STATE);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ma_remove_wake_word_p
+ * @since_tizen                6.0
+ * @description                Positive UTC for add wake word
+ */
+int utc_ma_remove_wake_word_p(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_remove_wake_word("Hi Tizen", "en_US");
+               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_remove_wake_word("Hi Tizen", "en_US");
+               assert_eq(ret, MA_ERROR_NONE);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ma_remove_wake_word_n1
+ * @since_tizen                6.0
+ * @description                Negative UTC for remove wake word (Invalid parameter)
+ */
+int utc_ma_remove_wake_word_n1(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_remove_wake_word("Hi Tizen", "en_US");
+               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_remove_wake_word(NULL, NULL);
+               assert_eq(ret, MA_ERROR_INVALID_PARAMETER);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_ma_remove_wake_word_n2
+ * @since_tizen                6.0
+ * @description                Negative UTC for remove wake word (Invalid state)
+ */
+int utc_ma_remove_wake_word_n2(void)
+{
+       if (false == g_ma_supported) {
+               assert_eq(g_ma_init, false);
+
+               int ret = MA_ERROR_NONE;
+               ret = ma_remove_wake_word("Hi Tizen", "en_US");
+               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_remove_wake_word("Hi Tizen", "en_US");
+               assert_eq(ret, MA_ERROR_INVALID_STATE);
+       }
+
+       return 0;
+}