#include <tzplatform_config.h>
#include <voice_control_manager.h>
+#include <voice_control_manager_internal.h>
#include "system_info_mock.h"
#include "cynara_mock.h"
static const char *TEST_COMMAND_JSON_PATH = tzplatform_mkpath(tzplatform_getid("TZ_SYS_RO_APP"), "/org.tizen.vc-unittests/res/test_command.json");
+static const char *TEST_DEMANDABLE_LIST_XML_PATH = tzplatform_mkpath(tzplatform_getid("TZ_SYS_RO_APP"), "/org.tizen.vc-unittests/res/test_demandable_list.xml");
+static const char *TEST_EMPTY_FILE_PATH = tzplatform_mkpath(tzplatform_getid("TZ_SYS_RO_APP"), "/org.tizen.vc-unittests/res/empty_file");
+static const char *TEST_DOMAIN = "domain";
static const char *DEFAULT_ENGINE_APP_ID = "org.tizen.vc-engine-default";
static vc_state_e g_vc_mgr_state = VC_STATE_NONE;
static bool __vc_mgr_all_result_cb(vc_result_event_e event, vc_cmd_list_h vc_cmd_list, const char *result, const char *msg, void *user_data)
{
- return true;
+ return true;
}
static void __vc_mgr_pre_result_cb(vc_pre_result_event_e event, const char *result, void *user_data)
static int __vc_mgr_private_data_set_cb(const char *key, const char *data, void *user_data)
{
- return 0;
+ return 0;
}
static int __vc_mgr_private_data_requested_cb(const char *key, char **data, void *user_data)
{
- return 0;
+ return 0;
}
static void __vc_mgr_feedback_audio_format_cb(int rate, vc_audio_channel_e channel, vc_audio_type_e audio_type, void *user_data)
{
}
+static void __vc_mgr_vc_tts_streaming_cb(int pid, int utt_id, vc_feedback_event_e event, char* buffer, int len, void *user_data)
+{
+}
+
+
static vc_cmd_list_h __create_test_command_list()
{
vc_cmd_h system_command = nullptr;
bool __is_feature_supported = false;
};
+class VcMgrTestInInitializedState : public testing::Test {
+ public:
+ virtual void SetUp()
+ {
+ __initialize_ecore();
+ g_vc_mgr_state = VC_STATE_NONE;
+ g_vc_mgr_service_state = VC_SERVICE_STATE_NONE;
+ __is_feature_supported = __is_vc_mgr_supported();
+
+ EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_set_state_changed_cb(__vc_mgr_state_changed_cb, nullptr), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_set_service_state_changed_cb(__vc_mgr_service_state_changed_cb, nullptr), VC_ERROR_NONE);
+ }
+
+ virtual void TearDown()
+ {
+ vc_mgr_unprepare();
+ EXPECT_EQ(vc_mgr_unset_state_changed_cb(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_unset_service_state_changed_cb(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
+
+ __shutdown_ecore();
+ }
+
+ public:
+ bool __is_feature_supported = false;
+};
+
+class VcMgrTestInReadyState : public testing::Test {
+ public:
+ virtual void SetUp()
+ {
+ __initialize_ecore();
+ g_vc_mgr_state = VC_STATE_NONE;
+ g_vc_mgr_service_state = VC_SERVICE_STATE_NONE;
+ __is_feature_supported = __is_vc_mgr_supported();
+
+ EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_set_state_changed_cb(__vc_mgr_state_changed_cb, nullptr), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_set_service_state_changed_cb(__vc_mgr_service_state_changed_cb, nullptr), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_prepare(), VC_ERROR_NONE);
+ ASSERT_EQ(true, __is_mgr_state_changed(VC_STATE_READY, 5));
+ ASSERT_EQ(true, __is_mgr_service_state_changed(VC_SERVICE_STATE_READY, 5));
+ }
+
+ virtual void TearDown()
+ {
+ EXPECT_EQ(vc_mgr_unprepare(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_unset_state_changed_cb(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_unset_service_state_changed_cb(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
+
+ __shutdown_ecore();
+ }
+
+ public:
+ bool __is_feature_supported = false;
+};
+
/**
* @testcase utc_vc_mgr_initialize_p1
* @since_tizen 5.0
}
}
-
-class VcMgrTestInInitializedState : public testing::Test {
- public:
- virtual void SetUp()
- {
- __initialize_ecore();
- g_vc_mgr_state = VC_STATE_NONE;
- g_vc_mgr_service_state = VC_SERVICE_STATE_NONE;
- __is_feature_supported = __is_vc_mgr_supported();
-
- EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_set_state_changed_cb(__vc_mgr_state_changed_cb, nullptr), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_set_service_state_changed_cb(__vc_mgr_service_state_changed_cb, nullptr), VC_ERROR_NONE);
- }
-
- virtual void TearDown()
- {
- vc_mgr_unprepare();
- EXPECT_EQ(vc_mgr_unset_state_changed_cb(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_unset_service_state_changed_cb(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
-
- __shutdown_ecore();
- }
-
- public:
- bool __is_feature_supported = false;
-};
-
/**
* @testcase utc_vc_mgr_prepare_p
* @since_tizen 5.0
EXPECT_EQ(vc_mgr_get_current_language(&language), VC_ERROR_INVALID_STATE);
}
-
-class VcMgrTestInReadyState : public testing::Test {
- public:
- virtual void SetUp()
- {
- __initialize_ecore();
- g_vc_mgr_state = VC_STATE_NONE;
- g_vc_mgr_service_state = VC_SERVICE_STATE_NONE;
- __is_feature_supported = __is_vc_mgr_supported();
-
- EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_set_state_changed_cb(__vc_mgr_state_changed_cb, nullptr), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_set_service_state_changed_cb(__vc_mgr_service_state_changed_cb, nullptr), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_prepare(), VC_ERROR_NONE);
- ASSERT_EQ(true, __is_mgr_state_changed(VC_STATE_READY, 5));
- ASSERT_EQ(true, __is_mgr_service_state_changed(VC_SERVICE_STATE_READY, 5));
- }
-
- virtual void TearDown()
- {
- EXPECT_EQ(vc_mgr_unprepare(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_unset_state_changed_cb(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_unset_service_state_changed_cb(), VC_ERROR_NONE);
- EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
-
- __shutdown_ecore();
- }
-
- public:
- bool __is_feature_supported = false;
-};
-
/**
* @testcase utc_vc_mgr_get_state_p1
* @since_tizen 5.0
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_get_state_p1)
{
- vc_state_e state;
+ vc_state_e state;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_state(&state), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_state_p2)
{
- vc_state_e state;
+ vc_state_e state;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_state(&state), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInNoneState, utc_vc_mgr_get_state_n2)
{
- vc_state_e state;
+ vc_state_e state;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_state(&state), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_service_state_p)
{
- vc_service_state_e state;
+ vc_service_state_e state;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_service_state(&state), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_get_service_state_n2)
{
- vc_service_state_e state;
+ vc_service_state_e state;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_service_state(&state), VC_ERROR_NOT_SUPPORTED);
return;
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_is_command_format_supported_p)
{
int format = VC_COMMAND_FORMAT_FIXED;
- bool support = false;
+ bool support = false;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_is_command_format_supported(format, &support), VC_ERROR_NOT_SUPPORTED);
return;
TEST_F(VcMgrTestInNoneState, utc_vc_mgr_is_command_format_supported_n2)
{
int format = VC_COMMAND_FORMAT_FIXED;
- bool support = false;
+ bool support = false;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_is_command_format_supported(format, &support), VC_ERROR_NOT_SUPPORTED);
return;
{
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_set_command_list_from_file(nullptr, VC_COMMAND_TYPE_FOREGROUND), VC_ERROR_NOT_SUPPORTED);
+ EXPECT_EQ(vc_mgr_set_command_list_from_file(TEST_EMPTY_FILE_PATH, VC_COMMAND_TYPE_FOREGROUND), VC_ERROR_NOT_SUPPORTED);
return;
}
EXPECT_EQ(vc_mgr_set_command_list_from_file(nullptr, VC_COMMAND_TYPE_FOREGROUND), VC_ERROR_INVALID_PARAMETER);
+ EXPECT_EQ(vc_mgr_set_command_list_from_file(TEST_EMPTY_FILE_PATH, VC_COMMAND_TYPE_FOREGROUND), VC_ERROR_INVALID_PARAMETER);
}
/**
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_current_commands_p)
{
- vc_cmd_list_h commands = nullptr;
+ vc_cmd_list_h commands = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_current_commands(&commands), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_get_current_commands_n2)
{
- vc_cmd_list_h commands = nullptr;
+ vc_cmd_list_h commands = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_current_commands(&commands), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_recognition_mode_p)
{
- vc_recognition_mode_e mode = VC_RECOGNITION_MODE_MANUAL;
+ vc_recognition_mode_e mode = VC_RECOGNITION_MODE_MANUAL;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_recognition_mode(&mode), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInNoneState, utc_vc_mgr_get_recognition_mode_n2)
{
- vc_recognition_mode_e mode = VC_RECOGNITION_MODE_MANUAL;
+ vc_recognition_mode_e mode = VC_RECOGNITION_MODE_MANUAL;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_recognition_mode(&mode), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_private_data_p)
{
- const char *key = "key";
+ const char *key = "key";
const char *data = "data";
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_set_private_data(key, data), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_private_data_n2)
{
- const char *key = "key";
+ const char *key = "key";
const char *data = "data";
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_set_private_data(key, data), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_private_data_p)
{
- const char *key = "key";
+ const char *key = "key";
char *data = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_private_data(key, &data), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_private_data_n1)
{
- const char *key = "key";
+ const char *key = "key";
char *data = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_private_data(nullptr, &data), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_get_private_data_n2)
{
- const char *key = "key";
+ const char *key = "key";
char *data = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_private_data(key, &data), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_do_action_p)
{
- char *event = strdup("send_event");
+ char *event = strdup("send_event");
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_do_action(VC_SEND_EVENT_TYPE_TEXT, event), VC_ERROR_NOT_SUPPORTED);
free(event);
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_do_action_n1)
{
- char *event = strdup("send_event");
+ char *event = strdup("send_event");
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_do_action(static_cast<vc_send_event_type_e>(-1), event), VC_ERROR_NOT_SUPPORTED);
EXPECT_EQ(vc_mgr_do_action(VC_SEND_EVENT_TYPE_TEXT, nullptr), VC_ERROR_NOT_SUPPORTED);
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_do_action_n2)
{
- char *event = strdup("send_event");
+ char *event = strdup("send_event");
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_do_action(VC_SEND_EVENT_TYPE_TEXT, event), VC_ERROR_NOT_SUPPORTED);
free(event);
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_recording_volume_p)
{
- float volume = 0.0;
+ float volume = 0.0;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_recording_volume(&volume), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInReadyState, utc_vc_mgr_get_recording_volume_n2)
{
- float volume = 0;
+ float volume = 0;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_recording_volume(&volume), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInNoneState, utc_vc_mgr_get_error_message_n2)
{
- char *err_msg = nullptr;
+ char *err_msg = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_error_message(&err_msg), VC_ERROR_NOT_SUPPORTED);
return;
*/
TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_get_error_message_n3)
{
- char *err_msg = nullptr;
+ char *err_msg = nullptr;
if (false == __is_feature_supported) {
EXPECT_EQ(vc_mgr_get_error_message(&err_msg), VC_ERROR_NOT_SUPPORTED);
return;
EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
}
+/**
+ * @testcase utc_vc_mgr_set_vc_tts_streaming_cb_p
+ * @since_tizen 5.0
+ * @description Positive UTC for set tts streaming callback
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_vc_tts_streaming_cb_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(__vc_mgr_vc_tts_streaming_cb, nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(__vc_mgr_vc_tts_streaming_cb, nullptr), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_vc_tts_streaming_cb_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for set tts streaming callback
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_vc_tts_streaming_cb_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(nullptr, nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(nullptr, nullptr), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_vc_tts_streaming_cb_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for set tts streaming callback
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_set_vc_tts_streaming_cb_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(__vc_mgr_vc_tts_streaming_cb, nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_vc_tts_streaming_cb(__vc_mgr_vc_tts_streaming_cb, nullptr), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_unset_vc_tts_streaming_cb_p
+ * @since_tizen 5.0
+ * @description Positive UTC for unset tts streaming callback
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_unset_vc_tts_streaming_cb_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_unset_vc_tts_streaming_cb(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_unset_vc_tts_streaming_cb(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_unset_vc_tts_streaming_cb_n
+ * @since_tizen 5.0
+ * @description Negative UTC for unset tts streaming callback
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_unset_vc_tts_streaming_cb_n)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_unset_vc_tts_streaming_cb(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_unset_vc_tts_streaming_cb(), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_utterance_status_p
+ * @since_tizen 5.0
+ * @description Positive UTC for send utterance status
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_send_utterance_status_p)
+{
+ int pid = static_cast<int>(getpid());
+ int utt_id = 1;
+ vc_tts_utterance_status_e status = VC_TTS_UTTERANCE_NONE;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_utterance_status_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for send utterance status
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_send_utterance_status_n1)
+{
+ int pid = static_cast<int>(getpid());
+ int utt_id = 1;
+ vc_tts_utterance_status_e status = VC_TTS_UTTERANCE_NONE;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, static_cast<vc_tts_utterance_status_e>(0)), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_utterance_status_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for send utterance status
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_send_utterance_status_n2)
+{
+ int pid = static_cast<int>(getpid());
+ int utt_id = 1;
+ vc_tts_utterance_status_e status = VC_TTS_UTTERANCE_NONE;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_INVALID_STATE);
+ EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_send_utterance_status(pid, utt_id, status), VC_ERROR_INVALID_STATE);
+ EXPECT_EQ(vc_mgr_deinitialize(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_audio_streaming_p
+ * @since_tizen 5.0
+ * @description Positive UTC for send audio streaming
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_send_audio_streaming_p)
+{
+ unsigned char data[10] = {0, };
+ vc_audio_streaming_event_e event = VC_AUDIO_STREAMING_EVENT_START;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ vc_cmd_list_h commands = __create_test_command_list();
+ ASSERT_EQ(vc_mgr_set_command_list(commands), VC_ERROR_NONE);
+ vc_cmd_list_destroy(commands, true);
+
+ ASSERT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_OUTSIDE), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_start(false), VC_ERROR_NONE);
+ ASSERT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_RECORDING, 5), true);
+
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_cancel(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_audio_streaming_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for send audio streaming
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_send_audio_streaming_n1)
+{
+ unsigned char data[10] = {0, };
+ vc_audio_streaming_event_e event = VC_AUDIO_STREAMING_EVENT_START;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_audio_streaming(static_cast<vc_audio_streaming_event_e>(0), data, 10), VC_ERROR_NOT_SUPPORTED);
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, nullptr, 10), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ vc_cmd_list_h commands = __create_test_command_list();
+ ASSERT_EQ(vc_mgr_set_command_list(commands), VC_ERROR_NONE);
+ vc_cmd_list_destroy(commands, true);
+
+ ASSERT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_OUTSIDE), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_start(false), VC_ERROR_NONE);
+ ASSERT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_RECORDING, 5), true);
+
+ EXPECT_EQ(vc_mgr_send_audio_streaming(static_cast<vc_audio_streaming_event_e>(0), data, 10), VC_ERROR_INVALID_PARAMETER);
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, nullptr, 10), VC_ERROR_INVALID_PARAMETER);
+ EXPECT_EQ(vc_mgr_cancel(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_audio_streaming_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for send audio streaming
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_send_audio_streaming_n2)
+{
+ unsigned char data[10] = {0, };
+ vc_audio_streaming_event_e event = VC_AUDIO_STREAMING_EVENT_START;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ vc_cmd_list_h commands = __create_test_command_list();
+ ASSERT_EQ(vc_mgr_set_command_list(commands), VC_ERROR_NONE);
+ vc_cmd_list_destroy(commands, true);
+
+ ASSERT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_OUTSIDE), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_start(false), VC_ERROR_NONE);
+ ASSERT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_RECORDING, 5), true);
+ EXPECT_EQ(vc_mgr_stop(), VC_ERROR_NONE);
+ ASSERT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_PROCESSING, 5), true);
+
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_INVALID_STATE);
+ EXPECT_EQ(vc_mgr_cancel(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_send_audio_streaming_n3
+ * @since_tizen 5.0
+ * @description Negative UTC for send audio streaming
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_send_audio_streaming_n3)
+{
+ unsigned char data[10] = {0, };
+ vc_audio_streaming_event_e event = VC_AUDIO_STREAMING_EVENT_START;
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_INVALID_STATE);
+ EXPECT_EQ(vc_mgr_initialize(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_send_audio_streaming(event, data, 10), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_audio_streaming_mode_p
+ * @since_tizen 5.0
+ * @description Positive UTC for set audio streaming mode
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_audio_streaming_mode_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_VC_SERVICE), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_VC_SERVICE), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_prepare(), VC_ERROR_NONE);
+ EXPECT_EQ(__is_mgr_state_changed(VC_STATE_READY, 5), true);
+ EXPECT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_READY, 5), true);
+
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_VC_SERVICE), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_unprepare(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_audio_streaming_mode_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for set audio streaming mode
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_audio_streaming_mode_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(static_cast<vc_audio_streaming_mode_e>(-1)), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(static_cast<vc_audio_streaming_mode_e>(-1)), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_audio_streaming_mode_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for set audio streaming mode
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_set_audio_streaming_mode_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_VC_SERVICE), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_audio_streaming_mode(VC_AUDIO_STREAMING_MODE_VC_SERVICE), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_change_background_volume_p
+ * @since_tizen 5.0
+ * @description Positive UTC for change background volume
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_change_background_volume_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_change_background_volume(VC_BACKGROUND_VOLUME_EVENT_CHANGE_FOR_NEARFIELD), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_change_background_volume(VC_BACKGROUND_VOLUME_EVENT_CHANGE_FOR_NEARFIELD), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_change_background_volume_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for change background volume
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_change_background_volume_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_change_background_volume(static_cast<vc_background_volume_event_e>(-1)), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_change_background_volume(static_cast<vc_background_volume_event_e>(-1)), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_change_background_volume_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for change background volume
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_change_background_volume_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_change_background_volume(VC_BACKGROUND_VOLUME_EVENT_CHANGE_FOR_NEARFIELD), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_change_background_volume(VC_BACKGROUND_VOLUME_EVENT_CHANGE_FOR_NEARFIELD), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_reset_background_volume_p
+ * @since_tizen 5.0
+ * @description Positive UTC for change background volume
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_reset_background_volume_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_change_background_volume(VC_BACKGROUND_VOLUME_EVENT_CHANGE_FOR_NEARFIELD), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_reset_background_volume_n
+ * @since_tizen 5.0
+ * @description Negative UTC for change background volume
+ */
+TEST_F(VcMgrTestInNoneState, utc_vc_mgr_reset_background_volume_n)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_reset_background_volume(), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_selected_results_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for set selected results
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_selected_results_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_selected_results(nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_recognition_mode(VC_RECOGNITION_MODE_MANUAL), VC_ERROR_NONE);
+ EXPECT_EQ(vc_mgr_set_selected_results(nullptr), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_selected_results_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for set selected results
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_selected_results_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_selected_results(nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ vc_cmd_list_h commands = __create_test_command_list();
+ ASSERT_EQ(vc_mgr_set_command_list(commands), VC_ERROR_NONE);
+
+ EXPECT_EQ(vc_mgr_start(false), VC_ERROR_NONE);
+ EXPECT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_RECORDING, 5), true);
+
+ EXPECT_EQ(vc_mgr_stop(), VC_ERROR_NONE);
+ EXPECT_EQ(__is_mgr_service_state_changed(VC_SERVICE_STATE_PROCESSING, 5), true);
+ EXPECT_EQ(vc_mgr_set_selected_results(commands), VC_ERROR_OPERATION_FAILED);
+
+ EXPECT_EQ(vc_mgr_cancel(), VC_ERROR_NONE);
+ vc_cmd_list_destroy(commands, true);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_demandable_client_rule_p
+ * @since_tizen 5.0
+ * @description Positive UTC for set demandable client rule
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_demandable_client_rule_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_DEMANDABLE_LIST_XML_PATH), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_DEMANDABLE_LIST_XML_PATH), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_demandable_client_rule_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for set demandable client rule
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_demandable_client_rule_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(nullptr), VC_ERROR_NOT_SUPPORTED);
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_EMPTY_FILE_PATH), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(nullptr), VC_ERROR_INVALID_PARAMETER);
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_EMPTY_FILE_PATH), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_demandable_client_rule_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for set demandable client rule
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_demandable_client_rule_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_DEMANDABLE_LIST_XML_PATH), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_demandable_client_rule(TEST_DEMANDABLE_LIST_XML_PATH), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_unset_demandable_client_rule_p
+ * @since_tizen 5.0
+ * @description Positive UTC for unset demandable client rule
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_unset_demandable_client_rule_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_unset_demandable_client_rule(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_unset_demandable_client_rule(), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_unset_demandable_client_rule_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for unset demandable client rule
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_unset_demandable_client_rule_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_unset_demandable_client_rule(), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_unset_demandable_client_rule(), VC_ERROR_INVALID_STATE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_domain_p
+ * @since_tizen 5.0
+ * @description Positive UTC for set domain
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_domain_p)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_domain(TEST_DOMAIN), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_domain(TEST_DOMAIN), VC_ERROR_NONE);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_domain_n1
+ * @since_tizen 5.0
+ * @description Negative UTC for set domain
+ */
+TEST_F(VcMgrTestInReadyState, utc_vc_mgr_set_domain_n1)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_domain(nullptr), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_domain(nullptr), VC_ERROR_INVALID_PARAMETER);
+}
+
+/**
+ * @testcase utc_vc_mgr_set_domain_n2
+ * @since_tizen 5.0
+ * @description Negative UTC for set domain
+ */
+TEST_F(VcMgrTestInInitializedState, utc_vc_mgr_set_domain_n2)
+{
+ if (false == __is_feature_supported) {
+ EXPECT_EQ(vc_mgr_set_domain(TEST_DOMAIN), VC_ERROR_NOT_SUPPORTED);
+ return;
+ }
+
+ EXPECT_EQ(vc_mgr_set_domain(TEST_DOMAIN), VC_ERROR_INVALID_STATE);
+}
+
} // namespace