[UTC][capi-media-recorder][ACR-781][Add new UTC functions for new APIs]
authorJeongmo Yang <jm80.yang@samsung.com>
Thu, 29 Sep 2016 10:32:03 +0000 (19:32 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Thu, 29 Sep 2016 10:32:03 +0000 (19:32 +0900)
Change-Id: I0a43757695ccb5afa9489f8c0f3e10e5e16687bd
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
src/utc/recorder/tct-recorder-core_common_iot.h
src/utc/recorder/tct-recorder-core_mobile.h
src/utc/recorder/tct-recorder-core_tv.h
src/utc/recorder/tct-recorder-core_wearable.h
src/utc/recorder/utc_media_recorder.c
src/utc/recorder/utc_media_recorder_callback.c
src/utc/recorder/utc_media_recorder_lifecycle.c

index fd9d191..f8ee23a 100755 (executable)
@@ -169,6 +169,15 @@ extern int utc_media_recorder_get_filename_p(void);
 extern int utc_media_recorder_get_filename_n(void);
 extern int utc_media_recorder_set_sound_stream_info_p(void);
 extern int utc_media_recorder_set_sound_stream_info_n(void);
+extern int utc_media_recorder_get_device_state_p(void);
+extern int utc_media_recorder_get_device_state_n1(void);
+extern int utc_media_recorder_get_device_state_n2(void);
+extern int utc_media_recorder_add_device_state_changed_cb_p(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n2(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_p(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n2(void);
 
 testcase tc_array[] = {
        {"utc_media_recorder_foreach_supported_audio_encoder_p", utc_media_recorder_foreach_supported_audio_encoder_p, utc_media_recorder_callback_startup, utc_media_recorder_callback_cleanup},
@@ -314,6 +323,15 @@ testcase tc_array[] = {
        {"utc_media_recorder_get_filename_n", utc_media_recorder_get_filename_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_p", utc_media_recorder_set_sound_stream_info_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_n", utc_media_recorder_set_sound_stream_info_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_p", utc_media_recorder_get_device_state_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n1", utc_media_recorder_get_device_state_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n2", utc_media_recorder_get_device_state_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_p", utc_media_recorder_add_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n1", utc_media_recorder_add_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n2", utc_media_recorder_add_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_p", utc_media_recorder_remove_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n1", utc_media_recorder_remove_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n2", utc_media_recorder_remove_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {NULL, NULL}
 };
 
index fd9d191..f8ee23a 100755 (executable)
@@ -169,6 +169,15 @@ extern int utc_media_recorder_get_filename_p(void);
 extern int utc_media_recorder_get_filename_n(void);
 extern int utc_media_recorder_set_sound_stream_info_p(void);
 extern int utc_media_recorder_set_sound_stream_info_n(void);
+extern int utc_media_recorder_get_device_state_p(void);
+extern int utc_media_recorder_get_device_state_n1(void);
+extern int utc_media_recorder_get_device_state_n2(void);
+extern int utc_media_recorder_add_device_state_changed_cb_p(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n2(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_p(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n2(void);
 
 testcase tc_array[] = {
        {"utc_media_recorder_foreach_supported_audio_encoder_p", utc_media_recorder_foreach_supported_audio_encoder_p, utc_media_recorder_callback_startup, utc_media_recorder_callback_cleanup},
@@ -314,6 +323,15 @@ testcase tc_array[] = {
        {"utc_media_recorder_get_filename_n", utc_media_recorder_get_filename_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_p", utc_media_recorder_set_sound_stream_info_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_n", utc_media_recorder_set_sound_stream_info_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_p", utc_media_recorder_get_device_state_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n1", utc_media_recorder_get_device_state_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n2", utc_media_recorder_get_device_state_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_p", utc_media_recorder_add_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n1", utc_media_recorder_add_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n2", utc_media_recorder_add_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_p", utc_media_recorder_remove_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n1", utc_media_recorder_remove_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n2", utc_media_recorder_remove_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {NULL, NULL}
 };
 
index fd9d191..f8ee23a 100755 (executable)
@@ -169,6 +169,15 @@ extern int utc_media_recorder_get_filename_p(void);
 extern int utc_media_recorder_get_filename_n(void);
 extern int utc_media_recorder_set_sound_stream_info_p(void);
 extern int utc_media_recorder_set_sound_stream_info_n(void);
+extern int utc_media_recorder_get_device_state_p(void);
+extern int utc_media_recorder_get_device_state_n1(void);
+extern int utc_media_recorder_get_device_state_n2(void);
+extern int utc_media_recorder_add_device_state_changed_cb_p(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n2(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_p(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n2(void);
 
 testcase tc_array[] = {
        {"utc_media_recorder_foreach_supported_audio_encoder_p", utc_media_recorder_foreach_supported_audio_encoder_p, utc_media_recorder_callback_startup, utc_media_recorder_callback_cleanup},
@@ -314,6 +323,15 @@ testcase tc_array[] = {
        {"utc_media_recorder_get_filename_n", utc_media_recorder_get_filename_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_p", utc_media_recorder_set_sound_stream_info_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_n", utc_media_recorder_set_sound_stream_info_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_p", utc_media_recorder_get_device_state_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n1", utc_media_recorder_get_device_state_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n2", utc_media_recorder_get_device_state_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_p", utc_media_recorder_add_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n1", utc_media_recorder_add_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n2", utc_media_recorder_add_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_p", utc_media_recorder_remove_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n1", utc_media_recorder_remove_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n2", utc_media_recorder_remove_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {NULL, NULL}
 };
 
index fd9d191..f8ee23a 100755 (executable)
@@ -169,6 +169,15 @@ extern int utc_media_recorder_get_filename_p(void);
 extern int utc_media_recorder_get_filename_n(void);
 extern int utc_media_recorder_set_sound_stream_info_p(void);
 extern int utc_media_recorder_set_sound_stream_info_n(void);
+extern int utc_media_recorder_get_device_state_p(void);
+extern int utc_media_recorder_get_device_state_n1(void);
+extern int utc_media_recorder_get_device_state_n2(void);
+extern int utc_media_recorder_add_device_state_changed_cb_p(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_add_device_state_changed_cb_n2(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_p(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n1(void);
+extern int utc_media_recorder_remove_device_state_changed_cb_n2(void);
 
 testcase tc_array[] = {
        {"utc_media_recorder_foreach_supported_audio_encoder_p", utc_media_recorder_foreach_supported_audio_encoder_p, utc_media_recorder_callback_startup, utc_media_recorder_callback_cleanup},
@@ -314,6 +323,15 @@ testcase tc_array[] = {
        {"utc_media_recorder_get_filename_n", utc_media_recorder_get_filename_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_p", utc_media_recorder_set_sound_stream_info_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {"utc_media_recorder_set_sound_stream_info_n", utc_media_recorder_set_sound_stream_info_n, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_p", utc_media_recorder_get_device_state_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n1", utc_media_recorder_get_device_state_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_get_device_state_n2", utc_media_recorder_get_device_state_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_p", utc_media_recorder_add_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n1", utc_media_recorder_add_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_add_device_state_changed_cb_n2", utc_media_recorder_add_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_p", utc_media_recorder_remove_device_state_changed_cb_p, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n1", utc_media_recorder_remove_device_state_changed_cb_n1, utc_media_recorder_startup, utc_media_recorder_cleanup},
+       {"utc_media_recorder_remove_device_state_changed_cb_n2", utc_media_recorder_remove_device_state_changed_cb_n2, utc_media_recorder_startup, utc_media_recorder_cleanup},
        {NULL, NULL}
 };
 
index ae932f3..5bb693a 100755 (executable)
@@ -75,7 +75,6 @@ static bool _file_format_cb(recorder_file_format_e format, void *user_data)
 
 static int _get_supported_audio_encoder_and_file_format(recorder_h recorder, recorder_audio_codec_e *audio_codec, recorder_file_format_e *file_format)
 {
-       int i = 0;
        int ret = RECORDER_ERROR_NONE;
        recorder_audio_codec_e l_audio_codec = RECORDER_AUDIO_CODEC_DISABLE;
        recorder_file_format_e l_file_format = -1;
index 531db0a..1713160 100755 (executable)
@@ -122,6 +122,11 @@ static void _error_cb(recorder_error_e error, recorder_state_e current_state, vo
        return;
 }
 
+static void _device_state_changed_cb(recorder_type_e type, recorder_device_state_e state, void *user_data)
+{
+       return;
+}
+
 
 /**
  * @testcase            utc_media_recorder_foreach_supported_audio_encoder_p
@@ -1011,3 +1016,192 @@ int utc_media_recorder_unset_error_cb_n(void)
 
        return 0;
 }
+
+/**
+ * @testcase            utc_media_recorder_add_device_state_changed_cb_p
+ * @since_tizen         3.0
+ * @description         To check adding device state changed callback with valid parameters.
+ * @scenario            This test is for checking device state changed callback adding with valid parameters.
+                        1. Add device state changed callback with valid parameters. \n
+                        2. Check microphone device which is supported or not. \n
+                        3-1. If supported, compare "ret" value with RECORDER_ERROR_NONE. \n
+                        3-1. If not supported, compare "ret" value with RECORDER_ERROR_NOT_SUPPORTED. \n
+                        4. Remove added callback if cb_id is valid.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be success.
+ */
+int utc_media_recorder_add_device_state_changed_cb_p(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int check_ret = RECORDER_ERROR_NONE;
+       int cb_id = 0;
+
+       ret = recorder_add_device_state_changed_cb(_device_state_changed_cb, NULL, &cb_id);
+
+       if (mic_supported)
+               check_ret = RECORDER_ERROR_NONE;
+       else
+               check_ret = RECORDER_ERROR_NOT_SUPPORTED;
+
+       if (cb_id > 0)
+               recorder_remove_device_state_changed_cb(cb_id);
+
+       assert_eq(ret, check_ret);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_add_device_state_changed_cb_n1
+ * @since_tizen         3.0
+ * @description         To check adding device state changed callback with invalid parameters.
+ * @scenario            This test is for checking device state changed callback adding with invalid parameters.
+                        1. Add device state changed callback with invalid parameters.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the first parameter is null.
+ */
+int utc_media_recorder_add_device_state_changed_cb_n1(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int cb_id = 0;
+
+       ret = recorder_add_device_state_changed_cb(NULL, NULL, &cb_id);
+
+       assert_eq(ret, RECORDER_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_add_device_state_changed_cb_n2
+ * @since_tizen         3.0
+ * @description         To check adding device state changed callback with invalid parameters.
+ * @scenario            This test is for checking device state changed callback adding with invalid parameters.
+                        1. Add device state changed callback with invalid parameters.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the third parameter is null.
+ */
+int utc_media_recorder_add_device_state_changed_cb_n2(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+
+       ret = recorder_add_device_state_changed_cb(_device_state_changed_cb, NULL, NULL);
+
+       assert_eq(ret, RECORDER_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_remove_device_state_changed_cb_p
+ * @since_tizen         3.0
+ * @description         To check removing device state changed callback with valid parameter.
+ * @scenario            This test is for checking device state changed callback removing with valid parameter.
+                        1. Add device state changed callback with valid parameters. \n
+                        2. Check microphone device which is supported or not. \n
+                        3-1. If supported, remove device state changed callback with cb_id from recorder_add_device_state_changed_cb(). \n
+                        3-1. If not supported, compare "ret" value with RECORDER_ERROR_NOT_SUPPORTED.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be success if microphone device is supported.
+ */
+int utc_media_recorder_remove_device_state_changed_cb_p(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int cb_id = 0;
+
+       ret = recorder_add_device_state_changed_cb(_device_state_changed_cb, NULL, &cb_id);
+
+       if (mic_supported) {
+               assert_eq(ret, RECORDER_ERROR_NONE);
+               assert_neq(cb_id, 0);
+
+               ret = recorder_remove_device_state_changed_cb(cb_id);
+
+               assert_eq(ret, RECORDER_ERROR_NONE);
+       } else {
+               assert_eq(ret, RECORDER_ERROR_NOT_SUPPORTED);
+       }
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_remove_device_state_changed_cb_n1
+ * @since_tizen         3.0
+ * @description         To check removing device state changed callback with invalid condition.
+ * @scenario            This test is for checking device state changed callback removing with invalid condition.
+                        1. Remove device state changed callback without adding device state changed callback. \n
+                        2. Check microphone device which is supported or not. \n
+                        3-1. If supported, compare "ret" value with RECORDER_ERROR_INVALID_OPERATION. \n
+                        3-2. If not supported, compare "ret" value with RECORDER_ERROR_NOT_SUPPORTED.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the first parameter is null.
+ */
+int utc_media_recorder_remove_device_state_changed_cb_n1(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int check_ret = RECORDER_ERROR_NONE;
+
+       ret = recorder_remove_device_state_changed_cb(0);
+
+       if (mic_supported)
+               check_ret = RECORDER_ERROR_INVALID_OPERATION;
+       else
+               check_ret = RECORDER_ERROR_NOT_SUPPORTED;
+
+       assert_eq(ret, check_ret);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_remove_device_state_changed_cb_n2
+ * @since_tizen         3.0
+ * @description         To check removing device state changed callback with valid parameter.
+ * @scenario            This test is for checking device state changed callback removing with invalid parameter.
+                        1. Remove device state changed callback with invalid parameter. \n
+                        2. Check microphone device which is supported or not. \n
+                        3-1. If supported, remove device state changed callback with invalid cb_id. \n
+                        3-2. If not supported, compare "ret" value with RECORDER_ERROR_NOT_SUPPORTED.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the first parameter is null.
+ */
+int utc_media_recorder_remove_device_state_changed_cb_n2(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int cb_id = 0;
+
+       ret = recorder_add_device_state_changed_cb(_device_state_changed_cb, NULL, &cb_id);
+
+       if (mic_supported) {
+               assert_eq(ret, RECORDER_ERROR_NONE);
+               assert_neq(cb_id, 0);
+
+               ret = recorder_remove_device_state_changed_cb(cb_id + 100);
+
+               recorder_remove_device_state_changed_cb(cb_id);
+
+               assert_eq(ret, RECORDER_ERROR_INVALID_PARAMETER);
+       } else {
+               assert_eq(ret, RECORDER_ERROR_NOT_SUPPORTED);
+       }
+
+       return 0;
+}
index 97de2bb..58f8ee1 100755 (executable)
@@ -71,7 +71,6 @@ static bool _file_format_cb(recorder_file_format_e format, void *user_data)
 
 static int _get_supported_audio_encoder_and_file_format(recorder_h recorder, recorder_audio_codec_e *audio_codec, recorder_file_format_e *file_format)
 {
-       int i = 0;
        int ret = RECORDER_ERROR_NONE;
        recorder_audio_codec_e l_audio_codec = RECORDER_AUDIO_CODEC_DISABLE;
        recorder_file_format_e l_file_format = -1;
@@ -1077,3 +1076,82 @@ int utc_media_recorder_get_state_n2(void)
 
        return 0;
 }
+
+/**
+ * @testcase            utc_media_recorder_get_device_state_p
+ * @since_tizen         3.0
+ * @description         To check device state with valid value in parameters.
+ * @scenario            This test is for checking device state getting with valid parameters.
+                        1. Get device state with valid parameters. \n
+                        2. Check microphone which is supported or not. \n
+                        3-1. If supported, compare "ret" value with RECORDER_ERROR_NONE. \n
+                        3-1. If not supported, compare "ret" value with RECORDER_ERROR_NOT_SUPPORTED.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be success.
+ */
+int utc_media_recorder_get_device_state_p(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       int check_ret = RECORDER_ERROR_NONE;
+       recorder_device_state_e device_state = RECORDER_DEVICE_STATE_IDLE;
+
+       ret = recorder_get_device_state(RECORDER_TYPE_AUDIO, &device_state);
+
+       if (mic_supported)
+               check_ret = RECORDER_ERROR_NONE;
+       else
+               check_ret = RECORDER_ERROR_NOT_SUPPORTED;
+
+       assert_eq(ret, check_ret);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_get_device_state_n1
+ * @since_tizen         3.0
+ * @description         To check device state with invalid value in parameters.
+ * @scenario            This test is for checking invalid value in parameters.
+                        1. Get device state with invalid parameters.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the first parameter is invalid.
+ */
+int utc_media_recorder_get_device_state_n1(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+       recorder_device_state_e device_state = RECORDER_DEVICE_STATE_IDLE;
+
+       ret = recorder_get_device_state(-1, &device_state);
+
+       assert_eq(ret, RECORDER_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase            utc_media_recorder_get_device_state_n2
+ * @since_tizen         3.0
+ * @description         To check device state with invalid value in parameters.
+ * @scenario            This test is for checking invalid value in parameters.
+                        1. Get device state with invalid parameters.
+ * @parameter           N/A
+ * @return              1 is the fail. You need to check log in tct tool. \n
+                        0 is the success. \n
+                        The "ret" value should be error because the second parameter is null.
+ */
+int utc_media_recorder_get_device_state_n2(void)
+{
+       int ret = RECORDER_ERROR_NONE;
+
+       ret = recorder_get_device_state(RECORDER_TYPE_AUDIO, NULL);
+
+       assert_eq(ret, RECORDER_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}