[UTC][capi-media-webrtc][ACR-1637] Add new API set for native WebRTC #3 15/263015/9
authorSangchul Lee <sc11.lee@samsung.com>
Tue, 24 Aug 2021 12:01:03 +0000 (21:01 +0900)
committerSangchul Lee <sc11.lee@samsung.com>
Fri, 17 Sep 2021 05:08:25 +0000 (14:08 +0900)
Change-Id: I3e9b52d523401d916d63113a2aeea52089b90c1c
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
src/utc/webrtc/public.list
src/utc/webrtc/tct-webrtc-core_mobile.h
src/utc/webrtc/tct-webrtc-core_tizeniot.h
src/utc/webrtc/tct-webrtc-core_tv.h
src/utc/webrtc/tct-webrtc-core_wearable.h
src/utc/webrtc/utc-media-webrtc-callback.c
src/utc/webrtc/utc-media-webrtc.c

index 28ef678bb8af276da21b396c6bdbcf184ff8556e..16ea28164f6384d9a0219b68e8e845167cbf81d3 100644 (file)
@@ -5,6 +5,19 @@ webrtc_stop
 webrtc_get_state
 webrtc_add_media_source
 webrtc_remove_media_source
+webrtc_media_source_set_transceiver_direction
+webrtc_media_source_get_transceiver_direction
+webrtc_media_source_set_pause
+webrtc_media_source_get_pause
+webrtc_media_source_set_mute
+webrtc_media_source_get_mute
+webrtc_media_source_set_video_resolution
+webrtc_media_source_get_video_resolution
+webrtc_mic_source_set_sound_stream_info
+webrtc_media_packet_source_set_format
+webrtc_media_packet_source_push_packet
+webrtc_set_sound_stream_info
+webrtc_set_display
 webrtc_set_stun_server
 webrtc_get_stun_server
 webrtc_add_turn_server
@@ -18,6 +31,9 @@ webrtc_get_peer_connection_state
 webrtc_get_signaling_state
 webrtc_get_ice_gathering_state
 webrtc_get_ice_connection_state
+webrtc_create_data_channel
+webrtc_destroy_data_channel
+webrtc_get_data
 webrtc_set_state_changed_cb
 webrtc_unset_state_changed_cb
 webrtc_set_error_cb
@@ -37,4 +53,16 @@ webrtc_unset_ice_connection_state_change_cb
 webrtc_set_encoded_audio_frame_cb
 webrtc_unset_encoded_audio_frame_cb
 webrtc_set_encoded_video_frame_cb
-webrtc_unset_encoded_video_frame_cb
\ No newline at end of file
+webrtc_unset_encoded_video_frame_cb
+webrtc_media_packet_source_set_buffer_state_changed_cb
+webrtc_media_packet_source_unset_buffer_state_changed_cb
+webrtc_set_data_channel_cb
+webrtc_unset_data_channel_cb
+webrtc_data_channel_set_open_cb
+webrtc_data_channel_unset_open_cb
+webrtc_data_channel_set_message_cb
+webrtc_data_channel_unset_message_cb
+webrtc_data_channel_set_error_cb
+webrtc_data_channel_unset_error_cb
+webrtc_data_channel_set_close_cb
+webrtc_data_channel_unset_close_cb
index ffb964e027a666c9c26ea6f159c88be73da8ec1e..3afaeac88f7cb17668557473b05c2772c59713d5 100644 (file)
@@ -40,6 +40,35 @@ extern int utc_media_webrtc_add_media_source_n2(void);
 extern int utc_media_webrtc_remove_media_source_p(void);
 extern int utc_media_webrtc_remove_media_source_n1(void);
 extern int utc_media_webrtc_remove_media_source_n2(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_set_pause_p(void);
+extern int utc_media_webrtc_media_source_set_pause_n(void);
+extern int utc_media_webrtc_media_source_get_pause_p(void);
+extern int utc_media_webrtc_media_source_get_pause_n(void);
+extern int utc_media_webrtc_media_source_set_mute_p(void);
+extern int utc_media_webrtc_media_source_set_mute_n(void);
+extern int utc_media_webrtc_media_source_get_mute_p(void);
+extern int utc_media_webrtc_media_source_get_mute_n(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
+extern int utc_media_webrtc_media_packet_source_set_format_p(void);
+extern int utc_media_webrtc_media_packet_source_set_format_n(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_p(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n1(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n2(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n3(void);
+extern int utc_media_webrtc_set_sound_stream_info_n(void);
+extern int utc_media_webrtc_set_display_n(void);
 extern int utc_media_webrtc_set_stun_server_p(void);
 extern int utc_media_webrtc_set_stun_server_n1(void);
 extern int utc_media_webrtc_set_stun_server_n2(void);
@@ -72,6 +101,12 @@ extern int utc_media_webrtc_get_ice_gathering_state_p(void);
 extern int utc_media_webrtc_get_ice_gathering_state_n(void);
 extern int utc_media_webrtc_get_ice_connection_state_p(void);
 extern int utc_media_webrtc_get_ice_connection_state_n(void);
+extern int utc_media_webrtc_create_data_channel_p(void);
+extern int utc_media_webrtc_create_data_channel_n(void);
+extern int utc_media_webrtc_destroy_data_channel_p(void);
+extern int utc_media_webrtc_destroy_data_channel_n(void);
+extern int utc_media_webrtc_get_data_p(void);
+extern int utc_media_webrtc_get_data_n(void);
 extern int utc_media_webrtc_set_state_changed_cb_p(void);
 extern int utc_media_webrtc_set_state_changed_cb_n(void);
 extern int utc_media_webrtc_unset_state_changed_cb_p(void);
@@ -112,6 +147,31 @@ extern int utc_media_webrtc_set_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_set_encoded_video_frame_cb_n(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_n(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n(void);
+extern int utc_media_webrtc_set_data_channel_cb_p(void);
+extern int utc_media_webrtc_set_data_channel_cb_n(void);
+extern int utc_media_webrtc_unset_data_channel_cb_p(void);
+extern int utc_media_webrtc_unset_data_channel_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_n(void);
 
 testcase tc_array[] = {
        {"utc_media_webrtc_create_p",utc_media_webrtc_create_p,NULL,NULL},
@@ -133,6 +193,35 @@ testcase tc_array[] = {
        {"utc_media_webrtc_remove_media_source_p",utc_media_webrtc_remove_media_source_p,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n1",utc_media_webrtc_remove_media_source_n1,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n2",utc_media_webrtc_remove_media_source_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_p",utc_media_webrtc_media_source_set_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_n",utc_media_webrtc_media_source_set_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_p",utc_media_webrtc_media_source_get_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_n",utc_media_webrtc_media_source_get_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_p",utc_media_webrtc_media_source_set_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_n",utc_media_webrtc_media_source_set_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_p",utc_media_webrtc_media_source_get_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_n",utc_media_webrtc_media_source_get_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_p",utc_media_webrtc_media_source_set_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_n",utc_media_webrtc_media_source_set_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_p",utc_media_webrtc_media_source_get_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_n",utc_media_webrtc_media_source_get_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_p",utc_media_webrtc_media_source_set_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n1",utc_media_webrtc_media_source_set_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n2",utc_media_webrtc_media_source_set_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_p",utc_media_webrtc_media_packet_source_set_format_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_n",utc_media_webrtc_media_packet_source_set_format_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_p",utc_media_webrtc_media_packet_source_push_packet_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n1",utc_media_webrtc_media_packet_source_push_packet_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n2",utc_media_webrtc_media_packet_source_push_packet_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n3",utc_media_webrtc_media_packet_source_push_packet_n3,NULL,NULL},
+       {"utc_media_webrtc_set_sound_stream_info_n",utc_media_webrtc_set_sound_stream_info_n,NULL,NULL},
+       {"utc_media_webrtc_set_display_n",utc_media_webrtc_set_display_n,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_p",utc_media_webrtc_set_stun_server_p,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n1",utc_media_webrtc_set_stun_server_n1,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n2",utc_media_webrtc_set_stun_server_n2,NULL,NULL},
@@ -165,6 +254,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_get_ice_gathering_state_n",utc_media_webrtc_get_ice_gathering_state_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_p",utc_media_webrtc_get_ice_connection_state_p,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_n",utc_media_webrtc_get_ice_connection_state_n,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_p",utc_media_webrtc_create_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_n",utc_media_webrtc_create_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_p",utc_media_webrtc_destroy_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_n",utc_media_webrtc_destroy_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_get_data_p",utc_media_webrtc_get_data_p,NULL,NULL},
+       {"utc_media_webrtc_get_data_n",utc_media_webrtc_get_data_n,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_p",utc_media_webrtc_set_state_changed_cb_p,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_n",utc_media_webrtc_set_state_changed_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_state_changed_cb_p",utc_media_webrtc_unset_state_changed_cb_p,NULL,NULL},
@@ -205,6 +300,31 @@ testcase tc_array[] = {
        {"utc_media_webrtc_set_encoded_video_frame_cb_n",utc_media_webrtc_set_encoded_video_frame_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_p",utc_media_webrtc_unset_encoded_video_frame_cb_p,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_n",utc_media_webrtc_unset_encoded_video_frame_cb_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_p",utc_media_webrtc_set_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_n",utc_media_webrtc_set_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_p",utc_media_webrtc_unset_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_n",utc_media_webrtc_unset_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_p",utc_media_webrtc_data_channel_set_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_n",utc_media_webrtc_data_channel_set_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_p",utc_media_webrtc_data_channel_unset_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_n",utc_media_webrtc_data_channel_unset_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_p",utc_media_webrtc_data_channel_set_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_n",utc_media_webrtc_data_channel_set_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_p",utc_media_webrtc_data_channel_unset_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_n",utc_media_webrtc_data_channel_unset_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_p",utc_media_webrtc_data_channel_set_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_n",utc_media_webrtc_data_channel_set_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_p",utc_media_webrtc_data_channel_unset_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_n",utc_media_webrtc_data_channel_unset_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_p",utc_media_webrtc_data_channel_set_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_n",utc_media_webrtc_data_channel_set_close_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_p",utc_media_webrtc_data_channel_unset_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_n",utc_media_webrtc_data_channel_unset_close_cb_n,NULL,NULL},
        {NULL, NULL}
 };
 
index ffb964e027a666c9c26ea6f159c88be73da8ec1e..3afaeac88f7cb17668557473b05c2772c59713d5 100644 (file)
@@ -40,6 +40,35 @@ extern int utc_media_webrtc_add_media_source_n2(void);
 extern int utc_media_webrtc_remove_media_source_p(void);
 extern int utc_media_webrtc_remove_media_source_n1(void);
 extern int utc_media_webrtc_remove_media_source_n2(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_set_pause_p(void);
+extern int utc_media_webrtc_media_source_set_pause_n(void);
+extern int utc_media_webrtc_media_source_get_pause_p(void);
+extern int utc_media_webrtc_media_source_get_pause_n(void);
+extern int utc_media_webrtc_media_source_set_mute_p(void);
+extern int utc_media_webrtc_media_source_set_mute_n(void);
+extern int utc_media_webrtc_media_source_get_mute_p(void);
+extern int utc_media_webrtc_media_source_get_mute_n(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
+extern int utc_media_webrtc_media_packet_source_set_format_p(void);
+extern int utc_media_webrtc_media_packet_source_set_format_n(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_p(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n1(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n2(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n3(void);
+extern int utc_media_webrtc_set_sound_stream_info_n(void);
+extern int utc_media_webrtc_set_display_n(void);
 extern int utc_media_webrtc_set_stun_server_p(void);
 extern int utc_media_webrtc_set_stun_server_n1(void);
 extern int utc_media_webrtc_set_stun_server_n2(void);
@@ -72,6 +101,12 @@ extern int utc_media_webrtc_get_ice_gathering_state_p(void);
 extern int utc_media_webrtc_get_ice_gathering_state_n(void);
 extern int utc_media_webrtc_get_ice_connection_state_p(void);
 extern int utc_media_webrtc_get_ice_connection_state_n(void);
+extern int utc_media_webrtc_create_data_channel_p(void);
+extern int utc_media_webrtc_create_data_channel_n(void);
+extern int utc_media_webrtc_destroy_data_channel_p(void);
+extern int utc_media_webrtc_destroy_data_channel_n(void);
+extern int utc_media_webrtc_get_data_p(void);
+extern int utc_media_webrtc_get_data_n(void);
 extern int utc_media_webrtc_set_state_changed_cb_p(void);
 extern int utc_media_webrtc_set_state_changed_cb_n(void);
 extern int utc_media_webrtc_unset_state_changed_cb_p(void);
@@ -112,6 +147,31 @@ extern int utc_media_webrtc_set_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_set_encoded_video_frame_cb_n(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_n(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n(void);
+extern int utc_media_webrtc_set_data_channel_cb_p(void);
+extern int utc_media_webrtc_set_data_channel_cb_n(void);
+extern int utc_media_webrtc_unset_data_channel_cb_p(void);
+extern int utc_media_webrtc_unset_data_channel_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_n(void);
 
 testcase tc_array[] = {
        {"utc_media_webrtc_create_p",utc_media_webrtc_create_p,NULL,NULL},
@@ -133,6 +193,35 @@ testcase tc_array[] = {
        {"utc_media_webrtc_remove_media_source_p",utc_media_webrtc_remove_media_source_p,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n1",utc_media_webrtc_remove_media_source_n1,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n2",utc_media_webrtc_remove_media_source_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_p",utc_media_webrtc_media_source_set_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_n",utc_media_webrtc_media_source_set_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_p",utc_media_webrtc_media_source_get_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_n",utc_media_webrtc_media_source_get_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_p",utc_media_webrtc_media_source_set_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_n",utc_media_webrtc_media_source_set_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_p",utc_media_webrtc_media_source_get_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_n",utc_media_webrtc_media_source_get_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_p",utc_media_webrtc_media_source_set_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_n",utc_media_webrtc_media_source_set_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_p",utc_media_webrtc_media_source_get_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_n",utc_media_webrtc_media_source_get_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_p",utc_media_webrtc_media_source_set_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n1",utc_media_webrtc_media_source_set_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n2",utc_media_webrtc_media_source_set_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_p",utc_media_webrtc_media_packet_source_set_format_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_n",utc_media_webrtc_media_packet_source_set_format_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_p",utc_media_webrtc_media_packet_source_push_packet_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n1",utc_media_webrtc_media_packet_source_push_packet_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n2",utc_media_webrtc_media_packet_source_push_packet_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n3",utc_media_webrtc_media_packet_source_push_packet_n3,NULL,NULL},
+       {"utc_media_webrtc_set_sound_stream_info_n",utc_media_webrtc_set_sound_stream_info_n,NULL,NULL},
+       {"utc_media_webrtc_set_display_n",utc_media_webrtc_set_display_n,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_p",utc_media_webrtc_set_stun_server_p,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n1",utc_media_webrtc_set_stun_server_n1,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n2",utc_media_webrtc_set_stun_server_n2,NULL,NULL},
@@ -165,6 +254,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_get_ice_gathering_state_n",utc_media_webrtc_get_ice_gathering_state_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_p",utc_media_webrtc_get_ice_connection_state_p,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_n",utc_media_webrtc_get_ice_connection_state_n,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_p",utc_media_webrtc_create_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_n",utc_media_webrtc_create_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_p",utc_media_webrtc_destroy_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_n",utc_media_webrtc_destroy_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_get_data_p",utc_media_webrtc_get_data_p,NULL,NULL},
+       {"utc_media_webrtc_get_data_n",utc_media_webrtc_get_data_n,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_p",utc_media_webrtc_set_state_changed_cb_p,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_n",utc_media_webrtc_set_state_changed_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_state_changed_cb_p",utc_media_webrtc_unset_state_changed_cb_p,NULL,NULL},
@@ -205,6 +300,31 @@ testcase tc_array[] = {
        {"utc_media_webrtc_set_encoded_video_frame_cb_n",utc_media_webrtc_set_encoded_video_frame_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_p",utc_media_webrtc_unset_encoded_video_frame_cb_p,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_n",utc_media_webrtc_unset_encoded_video_frame_cb_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_p",utc_media_webrtc_set_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_n",utc_media_webrtc_set_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_p",utc_media_webrtc_unset_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_n",utc_media_webrtc_unset_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_p",utc_media_webrtc_data_channel_set_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_n",utc_media_webrtc_data_channel_set_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_p",utc_media_webrtc_data_channel_unset_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_n",utc_media_webrtc_data_channel_unset_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_p",utc_media_webrtc_data_channel_set_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_n",utc_media_webrtc_data_channel_set_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_p",utc_media_webrtc_data_channel_unset_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_n",utc_media_webrtc_data_channel_unset_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_p",utc_media_webrtc_data_channel_set_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_n",utc_media_webrtc_data_channel_set_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_p",utc_media_webrtc_data_channel_unset_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_n",utc_media_webrtc_data_channel_unset_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_p",utc_media_webrtc_data_channel_set_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_n",utc_media_webrtc_data_channel_set_close_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_p",utc_media_webrtc_data_channel_unset_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_n",utc_media_webrtc_data_channel_unset_close_cb_n,NULL,NULL},
        {NULL, NULL}
 };
 
index ffb964e027a666c9c26ea6f159c88be73da8ec1e..3afaeac88f7cb17668557473b05c2772c59713d5 100644 (file)
@@ -40,6 +40,35 @@ extern int utc_media_webrtc_add_media_source_n2(void);
 extern int utc_media_webrtc_remove_media_source_p(void);
 extern int utc_media_webrtc_remove_media_source_n1(void);
 extern int utc_media_webrtc_remove_media_source_n2(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_set_pause_p(void);
+extern int utc_media_webrtc_media_source_set_pause_n(void);
+extern int utc_media_webrtc_media_source_get_pause_p(void);
+extern int utc_media_webrtc_media_source_get_pause_n(void);
+extern int utc_media_webrtc_media_source_set_mute_p(void);
+extern int utc_media_webrtc_media_source_set_mute_n(void);
+extern int utc_media_webrtc_media_source_get_mute_p(void);
+extern int utc_media_webrtc_media_source_get_mute_n(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
+extern int utc_media_webrtc_media_packet_source_set_format_p(void);
+extern int utc_media_webrtc_media_packet_source_set_format_n(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_p(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n1(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n2(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n3(void);
+extern int utc_media_webrtc_set_sound_stream_info_n(void);
+extern int utc_media_webrtc_set_display_n(void);
 extern int utc_media_webrtc_set_stun_server_p(void);
 extern int utc_media_webrtc_set_stun_server_n1(void);
 extern int utc_media_webrtc_set_stun_server_n2(void);
@@ -72,6 +101,12 @@ extern int utc_media_webrtc_get_ice_gathering_state_p(void);
 extern int utc_media_webrtc_get_ice_gathering_state_n(void);
 extern int utc_media_webrtc_get_ice_connection_state_p(void);
 extern int utc_media_webrtc_get_ice_connection_state_n(void);
+extern int utc_media_webrtc_create_data_channel_p(void);
+extern int utc_media_webrtc_create_data_channel_n(void);
+extern int utc_media_webrtc_destroy_data_channel_p(void);
+extern int utc_media_webrtc_destroy_data_channel_n(void);
+extern int utc_media_webrtc_get_data_p(void);
+extern int utc_media_webrtc_get_data_n(void);
 extern int utc_media_webrtc_set_state_changed_cb_p(void);
 extern int utc_media_webrtc_set_state_changed_cb_n(void);
 extern int utc_media_webrtc_unset_state_changed_cb_p(void);
@@ -112,6 +147,31 @@ extern int utc_media_webrtc_set_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_set_encoded_video_frame_cb_n(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_n(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n(void);
+extern int utc_media_webrtc_set_data_channel_cb_p(void);
+extern int utc_media_webrtc_set_data_channel_cb_n(void);
+extern int utc_media_webrtc_unset_data_channel_cb_p(void);
+extern int utc_media_webrtc_unset_data_channel_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_n(void);
 
 testcase tc_array[] = {
        {"utc_media_webrtc_create_p",utc_media_webrtc_create_p,NULL,NULL},
@@ -133,6 +193,35 @@ testcase tc_array[] = {
        {"utc_media_webrtc_remove_media_source_p",utc_media_webrtc_remove_media_source_p,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n1",utc_media_webrtc_remove_media_source_n1,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n2",utc_media_webrtc_remove_media_source_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_p",utc_media_webrtc_media_source_set_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_n",utc_media_webrtc_media_source_set_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_p",utc_media_webrtc_media_source_get_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_n",utc_media_webrtc_media_source_get_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_p",utc_media_webrtc_media_source_set_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_n",utc_media_webrtc_media_source_set_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_p",utc_media_webrtc_media_source_get_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_n",utc_media_webrtc_media_source_get_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_p",utc_media_webrtc_media_source_set_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_n",utc_media_webrtc_media_source_set_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_p",utc_media_webrtc_media_source_get_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_n",utc_media_webrtc_media_source_get_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_p",utc_media_webrtc_media_source_set_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n1",utc_media_webrtc_media_source_set_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n2",utc_media_webrtc_media_source_set_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_p",utc_media_webrtc_media_packet_source_set_format_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_n",utc_media_webrtc_media_packet_source_set_format_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_p",utc_media_webrtc_media_packet_source_push_packet_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n1",utc_media_webrtc_media_packet_source_push_packet_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n2",utc_media_webrtc_media_packet_source_push_packet_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n3",utc_media_webrtc_media_packet_source_push_packet_n3,NULL,NULL},
+       {"utc_media_webrtc_set_sound_stream_info_n",utc_media_webrtc_set_sound_stream_info_n,NULL,NULL},
+       {"utc_media_webrtc_set_display_n",utc_media_webrtc_set_display_n,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_p",utc_media_webrtc_set_stun_server_p,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n1",utc_media_webrtc_set_stun_server_n1,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n2",utc_media_webrtc_set_stun_server_n2,NULL,NULL},
@@ -165,6 +254,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_get_ice_gathering_state_n",utc_media_webrtc_get_ice_gathering_state_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_p",utc_media_webrtc_get_ice_connection_state_p,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_n",utc_media_webrtc_get_ice_connection_state_n,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_p",utc_media_webrtc_create_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_n",utc_media_webrtc_create_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_p",utc_media_webrtc_destroy_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_n",utc_media_webrtc_destroy_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_get_data_p",utc_media_webrtc_get_data_p,NULL,NULL},
+       {"utc_media_webrtc_get_data_n",utc_media_webrtc_get_data_n,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_p",utc_media_webrtc_set_state_changed_cb_p,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_n",utc_media_webrtc_set_state_changed_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_state_changed_cb_p",utc_media_webrtc_unset_state_changed_cb_p,NULL,NULL},
@@ -205,6 +300,31 @@ testcase tc_array[] = {
        {"utc_media_webrtc_set_encoded_video_frame_cb_n",utc_media_webrtc_set_encoded_video_frame_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_p",utc_media_webrtc_unset_encoded_video_frame_cb_p,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_n",utc_media_webrtc_unset_encoded_video_frame_cb_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_p",utc_media_webrtc_set_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_n",utc_media_webrtc_set_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_p",utc_media_webrtc_unset_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_n",utc_media_webrtc_unset_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_p",utc_media_webrtc_data_channel_set_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_n",utc_media_webrtc_data_channel_set_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_p",utc_media_webrtc_data_channel_unset_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_n",utc_media_webrtc_data_channel_unset_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_p",utc_media_webrtc_data_channel_set_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_n",utc_media_webrtc_data_channel_set_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_p",utc_media_webrtc_data_channel_unset_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_n",utc_media_webrtc_data_channel_unset_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_p",utc_media_webrtc_data_channel_set_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_n",utc_media_webrtc_data_channel_set_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_p",utc_media_webrtc_data_channel_unset_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_n",utc_media_webrtc_data_channel_unset_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_p",utc_media_webrtc_data_channel_set_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_n",utc_media_webrtc_data_channel_set_close_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_p",utc_media_webrtc_data_channel_unset_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_n",utc_media_webrtc_data_channel_unset_close_cb_n,NULL,NULL},
        {NULL, NULL}
 };
 
index ffb964e027a666c9c26ea6f159c88be73da8ec1e..3afaeac88f7cb17668557473b05c2772c59713d5 100644 (file)
@@ -40,6 +40,35 @@ extern int utc_media_webrtc_add_media_source_n2(void);
 extern int utc_media_webrtc_remove_media_source_p(void);
 extern int utc_media_webrtc_remove_media_source_n1(void);
 extern int utc_media_webrtc_remove_media_source_n2(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_set_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_p(void);
+extern int utc_media_webrtc_media_source_get_transceiver_direction_n(void);
+extern int utc_media_webrtc_media_source_set_pause_p(void);
+extern int utc_media_webrtc_media_source_set_pause_n(void);
+extern int utc_media_webrtc_media_source_get_pause_p(void);
+extern int utc_media_webrtc_media_source_get_pause_n(void);
+extern int utc_media_webrtc_media_source_set_mute_p(void);
+extern int utc_media_webrtc_media_source_set_mute_n(void);
+extern int utc_media_webrtc_media_source_get_mute_p(void);
+extern int utc_media_webrtc_media_source_get_mute_n(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
+extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
+extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
+extern int utc_media_webrtc_media_packet_source_set_format_p(void);
+extern int utc_media_webrtc_media_packet_source_set_format_n(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_p(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n1(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n2(void);
+extern int utc_media_webrtc_media_packet_source_push_packet_n3(void);
+extern int utc_media_webrtc_set_sound_stream_info_n(void);
+extern int utc_media_webrtc_set_display_n(void);
 extern int utc_media_webrtc_set_stun_server_p(void);
 extern int utc_media_webrtc_set_stun_server_n1(void);
 extern int utc_media_webrtc_set_stun_server_n2(void);
@@ -72,6 +101,12 @@ extern int utc_media_webrtc_get_ice_gathering_state_p(void);
 extern int utc_media_webrtc_get_ice_gathering_state_n(void);
 extern int utc_media_webrtc_get_ice_connection_state_p(void);
 extern int utc_media_webrtc_get_ice_connection_state_n(void);
+extern int utc_media_webrtc_create_data_channel_p(void);
+extern int utc_media_webrtc_create_data_channel_n(void);
+extern int utc_media_webrtc_destroy_data_channel_p(void);
+extern int utc_media_webrtc_destroy_data_channel_n(void);
+extern int utc_media_webrtc_get_data_p(void);
+extern int utc_media_webrtc_get_data_n(void);
 extern int utc_media_webrtc_set_state_changed_cb_p(void);
 extern int utc_media_webrtc_set_state_changed_cb_n(void);
 extern int utc_media_webrtc_unset_state_changed_cb_p(void);
@@ -112,6 +147,31 @@ extern int utc_media_webrtc_set_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_set_encoded_video_frame_cb_n(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_p(void);
 extern int utc_media_webrtc_unset_encoded_video_frame_cb_n(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1(void);
+extern int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p(void);
+extern int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n(void);
+extern int utc_media_webrtc_set_data_channel_cb_p(void);
+extern int utc_media_webrtc_set_data_channel_cb_n(void);
+extern int utc_media_webrtc_unset_data_channel_cb_p(void);
+extern int utc_media_webrtc_unset_data_channel_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_open_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_message_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_error_cb_n(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_set_close_cb_n(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_p(void);
+extern int utc_media_webrtc_data_channel_unset_close_cb_n(void);
 
 testcase tc_array[] = {
        {"utc_media_webrtc_create_p",utc_media_webrtc_create_p,NULL,NULL},
@@ -133,6 +193,35 @@ testcase tc_array[] = {
        {"utc_media_webrtc_remove_media_source_p",utc_media_webrtc_remove_media_source_p,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n1",utc_media_webrtc_remove_media_source_n1,NULL,NULL},
        {"utc_media_webrtc_remove_media_source_n2",utc_media_webrtc_remove_media_source_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_p",utc_media_webrtc_media_source_set_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_transceiver_direction_n",utc_media_webrtc_media_source_set_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_p",utc_media_webrtc_media_source_get_transceiver_direction_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_transceiver_direction_n",utc_media_webrtc_media_source_get_transceiver_direction_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_p",utc_media_webrtc_media_source_set_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_pause_n",utc_media_webrtc_media_source_set_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_p",utc_media_webrtc_media_source_get_pause_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_pause_n",utc_media_webrtc_media_source_get_pause_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_p",utc_media_webrtc_media_source_set_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_mute_n",utc_media_webrtc_media_source_set_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_p",utc_media_webrtc_media_source_get_mute_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_mute_n",utc_media_webrtc_media_source_get_mute_n,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_p",utc_media_webrtc_media_source_set_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n1",utc_media_webrtc_media_source_set_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_resolution_n2",utc_media_webrtc_media_source_set_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
+       {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_p",utc_media_webrtc_media_packet_source_set_format_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_format_n",utc_media_webrtc_media_packet_source_set_format_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_p",utc_media_webrtc_media_packet_source_push_packet_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n1",utc_media_webrtc_media_packet_source_push_packet_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n2",utc_media_webrtc_media_packet_source_push_packet_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_push_packet_n3",utc_media_webrtc_media_packet_source_push_packet_n3,NULL,NULL},
+       {"utc_media_webrtc_set_sound_stream_info_n",utc_media_webrtc_set_sound_stream_info_n,NULL,NULL},
+       {"utc_media_webrtc_set_display_n",utc_media_webrtc_set_display_n,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_p",utc_media_webrtc_set_stun_server_p,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n1",utc_media_webrtc_set_stun_server_n1,NULL,NULL},
        {"utc_media_webrtc_set_stun_server_n2",utc_media_webrtc_set_stun_server_n2,NULL,NULL},
@@ -165,6 +254,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_get_ice_gathering_state_n",utc_media_webrtc_get_ice_gathering_state_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_p",utc_media_webrtc_get_ice_connection_state_p,NULL,NULL},
        {"utc_media_webrtc_get_ice_connection_state_n",utc_media_webrtc_get_ice_connection_state_n,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_p",utc_media_webrtc_create_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_create_data_channel_n",utc_media_webrtc_create_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_p",utc_media_webrtc_destroy_data_channel_p,NULL,NULL},
+       {"utc_media_webrtc_destroy_data_channel_n",utc_media_webrtc_destroy_data_channel_n,NULL,NULL},
+       {"utc_media_webrtc_get_data_p",utc_media_webrtc_get_data_p,NULL,NULL},
+       {"utc_media_webrtc_get_data_n",utc_media_webrtc_get_data_n,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_p",utc_media_webrtc_set_state_changed_cb_p,NULL,NULL},
        {"utc_media_webrtc_set_state_changed_cb_n",utc_media_webrtc_set_state_changed_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_state_changed_cb_p",utc_media_webrtc_unset_state_changed_cb_p,NULL,NULL},
@@ -205,6 +300,31 @@ testcase tc_array[] = {
        {"utc_media_webrtc_set_encoded_video_frame_cb_n",utc_media_webrtc_set_encoded_video_frame_cb_n,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_p",utc_media_webrtc_unset_encoded_video_frame_cb_p,NULL,NULL},
        {"utc_media_webrtc_unset_encoded_video_frame_cb_n",utc_media_webrtc_unset_encoded_video_frame_cb_n,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2",utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p,NULL,NULL},
+       {"utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n",utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_p",utc_media_webrtc_set_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_set_data_channel_cb_n",utc_media_webrtc_set_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_p",utc_media_webrtc_unset_data_channel_cb_p,NULL,NULL},
+       {"utc_media_webrtc_unset_data_channel_cb_n",utc_media_webrtc_unset_data_channel_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_p",utc_media_webrtc_data_channel_set_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_open_cb_n",utc_media_webrtc_data_channel_set_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_p",utc_media_webrtc_data_channel_unset_open_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_open_cb_n",utc_media_webrtc_data_channel_unset_open_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_p",utc_media_webrtc_data_channel_set_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_message_cb_n",utc_media_webrtc_data_channel_set_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_p",utc_media_webrtc_data_channel_unset_message_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_message_cb_n",utc_media_webrtc_data_channel_unset_message_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_p",utc_media_webrtc_data_channel_set_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_error_cb_n",utc_media_webrtc_data_channel_set_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_p",utc_media_webrtc_data_channel_unset_error_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_error_cb_n",utc_media_webrtc_data_channel_unset_error_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_p",utc_media_webrtc_data_channel_set_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_set_close_cb_n",utc_media_webrtc_data_channel_set_close_cb_n,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_p",utc_media_webrtc_data_channel_unset_close_cb_p,NULL,NULL},
+       {"utc_media_webrtc_data_channel_unset_close_cb_n",utc_media_webrtc_data_channel_unset_close_cb_n,NULL,NULL},
        {NULL, NULL}
 };
 
index 1de12a5bf9d9cb1ed409ee4ec3ee8f68948a3757..f0d71f07cd653044a873338c9a2becc5a108d119 100644 (file)
@@ -53,6 +53,30 @@ static void __webrtc_encoded_frame_cb(webrtc_h webrtc, webrtc_media_type_e type,
 {
 }
 
+static void __webrtc_media_packet_source_buffer_state_changed_cb(unsigned int source_id, webrtc_media_packet_source_buffer_state_e state, void *user_data)
+{
+}
+
+static void __webrtc_data_channel_cb(webrtc_h webrtc, webrtc_data_channel_h channel, void *user_data)
+{
+}
+
+static void __webrtc_data_channel_open_cb(webrtc_data_channel_h channel, void *user_data)
+{
+}
+
+static void __webrtc_data_channel_message_cb(webrtc_data_channel_h channel, webrtc_data_channel_type_e type, void *message, void *user_data)
+{
+}
+
+static void __webrtc_data_channel_error_cb(webrtc_data_channel_h channel, webrtc_error_e error, void *user_data)
+{
+}
+
+static void __webrtc_data_channel_close_cb(webrtc_data_channel_h channel, void *user_data)
+{
+}
+
 /**
  * @testcase           utc_media_webrtc_set_state_changed_cb_p
  * @since_tizen                6.5
@@ -890,3 +914,672 @@ int utc_media_webrtc_unset_encoded_video_frame_cb_n(void)
 
        return 0;
 }
+
+/**
+ * @testcase           utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p
+ * @since_tizen                6.5
+ * @description                Sets a buffer state changed callback to media packet source
+ */
+int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1
+ * @since_tizen                6.5
+ * @description                Sets a buffer state changed callback to media packet source
+ *                             - Create a webrtc handle\n
+ *                             - Add a media packet source\n
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2
+ * @since_tizen                6.5
+ * @description                Sets a buffer state changed callback to media packet source
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_packet_source_set_buffer_state_changed_cb_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, 1, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the buffer state changed callback from media packet source
+ */
+int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_unset_buffer_state_changed_cb(webrtc, id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the buffer state changed callback from media packet source
+ *                             - Create a webrtc handle\n
+ *                             - Add a media packet source\n
+ *                             - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_media_packet_source_unset_buffer_state_changed_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_unset_buffer_state_changed_cb(webrtc, id);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_set_data_channel_cb_p
+ * @since_tizen                6.5
+ * @description                Sets a data channel callback
+ */
+int utc_media_webrtc_set_data_channel_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_data_channel_cb(webrtc, __webrtc_data_channel_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_set_data_channel_cb_n
+ * @since_tizen                6.5
+ * @description                Sets a data channel callback
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_set_data_channel_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_data_channel_cb(webrtc, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_unset_data_channel_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the data channel callback
+ */
+int utc_media_webrtc_unset_data_channel_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_data_channel_cb(webrtc, __webrtc_data_channel_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_unset_data_channel_cb(webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_unset_data_channel_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the data channel callback
+*                              - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_unset_data_channel_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_unset_data_channel_cb(webrtc);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_open_cb_p
+ * @since_tizen                6.5
+ * @description                Sets an open callback to a data channel
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel\n
+ *                             - Set a data channel open callback
+ */
+int utc_media_webrtc_data_channel_set_open_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_open_cb(channel, __webrtc_data_channel_open_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_open_cb_n
+ * @since_tizen                6.5
+ * @description                Sets an open callback to a data channel
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_data_channel_set_open_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_open_cb(channel, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_open_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the data channel open callback
+ */
+int utc_media_webrtc_data_channel_unset_open_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_open_cb(channel, __webrtc_data_channel_open_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_open_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_open_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the data channel open callback
+*                              - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_data_channel_unset_open_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_open_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_message_cb_p
+ * @since_tizen                6.5
+ * @description                Sets a message callback to a data channel
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel\n
+ *                             - Set a data channel message callback
+ */
+int utc_media_webrtc_data_channel_set_message_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_message_cb(channel, __webrtc_data_channel_message_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_message_cb_n
+ * @since_tizen                6.5
+ * @description                Sets a message callback to a data channel
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_data_channel_set_message_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_message_cb(channel, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_message_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the data channel message callback
+ */
+int utc_media_webrtc_data_channel_unset_message_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_message_cb(channel, __webrtc_data_channel_message_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_message_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_message_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the data channel message callback
+*                              - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_data_channel_unset_message_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_message_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_error_cb_p
+ * @since_tizen                6.5
+ * @description                Sets an error callback to a data channel
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel\n
+ *                             - Set a data channel error callback
+ */
+int utc_media_webrtc_data_channel_set_error_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_error_cb(channel, __webrtc_data_channel_error_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_error_cb_n
+ * @since_tizen                6.5
+ * @description                Sets an error callback to a data channel
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_data_channel_set_error_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_error_cb(channel, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_error_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the data channel error callback
+ */
+int utc_media_webrtc_data_channel_unset_error_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_error_cb(channel, __webrtc_data_channel_error_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_error_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_error_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the data channel error callback
+*                              - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_data_channel_unset_error_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_error_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_close_cb_p
+ * @since_tizen                6.5
+ * @description                Sets a close callback to a data channel
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel\n
+ *                             - Set a data channel close callback
+ */
+int utc_media_webrtc_data_channel_set_close_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_close_cb(channel, __webrtc_data_channel_close_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_set_close_cb_n
+ * @since_tizen                6.5
+ * @description                Sets a close callback to a data channel
+ *                             - Sets the callback without callback function pointer to get negative result
+ */
+int utc_media_webrtc_data_channel_set_close_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_close_cb(channel, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_close_cb_p
+ * @since_tizen                6.5
+ * @description                Unsets the data channel close callback
+ */
+int utc_media_webrtc_data_channel_unset_close_cb_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_set_close_cb(channel, __webrtc_data_channel_close_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_close_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_data_channel_unset_close_cb_n
+ * @since_tizen                6.5
+ * @description                Unsets the data channel close callback
+*                              - Unsets the callback without setting it to get negative result
+ */
+int utc_media_webrtc_data_channel_unset_close_cb_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_data_channel_unset_close_cb(channel);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
index ea623fd94c9ed6fa5294dc0e90899df28a6491a4..6116ab05406ce4d310ee72064dac310faa30b4d3 100644 (file)
@@ -20,6 +20,8 @@
 #include <dlog.h>
 
 #define TIMEOUT_MS 1000
+#define TEST_WIDTH 640
+#define TEST_HEIGHT 480
 #define TEST_STUN_SERVER_URL   "stun://stun.testurl.com:19302"
 #define TEST_TURN_SERVER_URL   "turn://turn.testurl.com:19303"
 #define TEST_TURN_SERVER_URL2  "turn://turn2.testurl.com:19303"
@@ -63,6 +65,10 @@ static void __run_mainloop()
        g_mainloop = NULL;
 }
 
+static void __webrtc_media_packet_source_buffer_state_changed_cb(unsigned int source_id, webrtc_media_packet_source_buffer_state_e state, void *user_data)
+{
+}
+
 static void __webrtc_ice_candidate_cb(webrtc_h webrtc, const char *candidate, void *user_data)
 {
 }
@@ -224,254 +230,1223 @@ int utc_media_webrtc_start_n2(void)
 }
 
 /**
- * @testcase           utc_media_webrtc_stop_p
+ * @testcase           utc_media_webrtc_stop_p
+ * @since_tizen                6.5
+ * @description                Stops the webrtc handle\n
+ *                             - Create a webrtc handle\n
+ *                             - Set ICE candidate callback\n
+ *                             - Start the handle\n
+ *                             - Stop the handle
+ */
+int utc_media_webrtc_stop_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_ice_candidate_cb(webrtc, __webrtc_ice_candidate_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_state_changed_cb(webrtc, __webrtc_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_start(webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       __run_mainloop();
+
+       ret = webrtc_stop(webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_stop_n1
+ * @since_tizen                6.5
+ * @description                Stops the webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_stop_n1(void)
+{
+       int ret = webrtc_stop(NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_stop_n2
+ * @since_tizen                6.5
+ * @description                Stops the webrtc handle\n
+ *                             - Create a webrtc handle\n
+ *                             - Stop the handle without start to get negative result
+ */
+int utc_media_webrtc_stop_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_stop(webrtc);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_STATE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_state_p
+ * @since_tizen                6.5
+ * @description                Gets the webrtc state\n
+ *                             - Create a webrtc handle\n
+ *                             - Get state of the handle
+ */
+int utc_media_webrtc_get_state_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_state_e state;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_get_state(webrtc, &state);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(state, WEBRTC_STATE_IDLE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_state_n1
+ * @since_tizen                6.5
+ * @description                Gets the webrtc state\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_get_state_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_get_state(webrtc, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_state_n2
+ * @since_tizen                6.5
+ * @description                Gets the webrtc state\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_get_state_n2(void)
+{
+       webrtc_state_e state;
+       int ret = webrtc_get_state(NULL, &state);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_add_media_source_p
+ * @since_tizen                6.5
+ * @description                Adds a media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source
+ */
+int utc_media_webrtc_add_media_source_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_add_media_source_n1
+ * @since_tizen                6.5
+ * @description                Adds a media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_add_media_source_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_add_media_source_n2
+ * @since_tizen                6.5
+ * @description                Adds a media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_add_media_source_n2(void)
+{
+       unsigned int id;
+
+       int ret = webrtc_add_media_source(NULL, WEBRTC_MEDIA_SOURCE_TYPE_MIC, &id);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_remove_media_source_p
+ * @since_tizen                6.5
+ * @description                Removes the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Remove the media source
+ */
+int utc_media_webrtc_remove_media_source_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_remove_media_source(webrtc, id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_remove_media_source_n1
+ * @since_tizen                6.5
+ * @description                Removes the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_remove_media_source_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_SCREEN, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_remove_media_source(webrtc, id + 1);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_remove_media_source_n2
+ * @since_tizen                6.5
+ * @description                Removes the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_remove_media_source_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_FILE, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_remove_media_source(webrtc, id - 1);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_transceiver_direction_p
+ * @since_tizen                6.5
+ * @description                Sets a transceiver direction\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set a direction
+ */
+int utc_media_webrtc_media_source_set_transceiver_direction_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       webrtc_transceiver_direction_e direction;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_transceiver_direction(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, WEBRTC_TRANSCEIVER_DIRECTION_RECVONLY);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_transceiver_direction(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, &direction);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(direction, WEBRTC_TRANSCEIVER_DIRECTION_RECVONLY);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_transceiver_direction_n
+ * @since_tizen                6.5
+ * @description                Sets a transceiver direction\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set an invalid direction to get negative result
+ */
+int utc_media_webrtc_media_source_set_transceiver_direction_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_transceiver_direction(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, WEBRTC_TRANSCEIVER_DIRECTION_SENDRECV + 1);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_transceiver_direction_p
+ * @since_tizen                6.5
+ * @description                Gets the transceiver direction\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Get the direction
+ */
+int utc_media_webrtc_media_source_get_transceiver_direction_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       webrtc_transceiver_direction_e direction;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_transceiver_direction(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, &direction);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(direction, WEBRTC_TRANSCEIVER_DIRECTION_SENDRECV); /* check the default value */
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_transceiver_direction_n
+ * @since_tizen                6.5
+ * @description                Gets the transceiver direction\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_get_transceiver_direction_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       webrtc_transceiver_direction_e direction;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_transceiver_direction(webrtc, id + 1, WEBRTC_MEDIA_TYPE_VIDEO, &direction);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_pause_p
+ * @since_tizen                6.5
+ * @description                Sets pause to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set pause
+ */
+int utc_media_webrtc_media_source_set_pause_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       bool paused;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_pause(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, true);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_pause(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, &paused);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(paused, true);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_pause_n
+ * @since_tizen                6.5
+ * @description                Sets pause to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_set_pause_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_pause(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, true);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_pause_p
+ * @since_tizen                6.5
+ * @description                Gets pause from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Get pause
+ */
+int utc_media_webrtc_media_source_get_pause_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       bool paused;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_pause(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, &paused);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(paused, false); /* check the default value */
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_pause_n
+ * @since_tizen                6.5
+ * @description                Gets pause from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_get_pause_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_pause(webrtc, id, WEBRTC_MEDIA_TYPE_AUDIO, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_mute_p
+ * @since_tizen                6.5
+ * @description                Sets mute to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set mute
+ */
+int utc_media_webrtc_media_source_set_mute_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       bool muted;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_mute(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, true);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_mute(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, &muted);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(muted, true);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_mute_n
+ * @since_tizen                6.5
+ * @description                Sets mute to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_set_mute_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_FILE, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_mute(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, true);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_mute_p
+ * @since_tizen                6.5
+ * @description                Gets mute from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Get mute
+ */
+int utc_media_webrtc_media_source_get_mute_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       bool muted;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_mute(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, &muted);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(muted, false); /* check the default value */
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_mute_n
+ * @since_tizen                6.5
+ * @description                Gets mute from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_get_mute_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       bool muted;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_FILE, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_mute(webrtc, id, WEBRTC_MEDIA_TYPE_VIDEO, &muted);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_resolution_p
+ * @since_tizen                6.5
+ * @description                Sets video resolution to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set video resolution
+ */
+int utc_media_webrtc_media_source_set_video_resolution_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int width;
+       int height;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_resolution(webrtc, id, TEST_WIDTH, TEST_HEIGHT);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_resolution(webrtc, id, &width, &height);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(width, TEST_WIDTH);
+       assert_eq(height, TEST_HEIGHT);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_resolution_n1
+ * @since_tizen                6.5
+ * @description                Sets video resolution to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_set_video_resolution_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_resolution(webrtc, id, 0, 0);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_resolution_n2
+ * @since_tizen                6.5
+ * @description                Sets video resolution to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source for audio\n
+ *                             - Set a video resolution to get negative result
+ */
+int utc_media_webrtc_media_source_set_video_resolution_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MIC, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_resolution(webrtc, id, TEST_WIDTH, TEST_HEIGHT);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_resolution_p
+ * @since_tizen                6.5
+ * @description                Gets video resolution from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Get the video resolution
+ */
+int utc_media_webrtc_media_source_get_video_resolution_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int width;
+       int height;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_resolution(webrtc, id, &width, &height);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_resolution_n1
+ * @since_tizen                6.5
+ * @description                Gets video resolution from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_get_video_resolution_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_resolution(webrtc, id, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_resolution_n2
+ * @since_tizen                6.5
+ * @description                Gets video resolution from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source for audio\n
+ *                             - Get the video resolution to get negative result
+ */
+int utc_media_webrtc_media_source_get_video_resolution_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int width;
+       int height;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_resolution(webrtc, id, &width, &height);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_mic_source_set_sound_stream_info_p
+ * @since_tizen                6.5
+ * @description                Sets sound stream info to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set sound stream info
+ */
+int utc_media_webrtc_mic_source_set_sound_stream_info_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       sound_stream_info_h stream_info;
+
+       ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MIC, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_mic_source_set_sound_stream_info(webrtc, id, stream_info);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       sound_manager_destroy_stream_information(stream_info);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_mic_source_set_sound_stream_info_n1
+ * @since_tizen                6.5
+ * @description                Sets sound stream info to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MIC, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_mic_source_set_sound_stream_info(webrtc, id, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_mic_source_set_sound_stream_info_n2
  * @since_tizen                6.5
- * @description                Stops the webrtc handle\n
+ * @description                Sets sound stream info to the media source\n
  *                             - Create a webrtc handle\n
- *                             - Set ICE candidate callback\n
- *                             - Start the handle\n
- *                             - Stop the handle
+ *                             - Add a media source not for mic\n
+ *                             - Set sound stream info to get negative result
  */
-int utc_media_webrtc_stop_p(void)
+int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void)
 {
        int ret;
        webrtc_h webrtc;
+       unsigned int id;
+       sound_stream_info_h stream_info;
+
+       ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_set_ice_candidate_cb(webrtc, __webrtc_ice_candidate_cb, NULL);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_set_state_changed_cb(webrtc, __webrtc_state_changed_cb, NULL);
-       assert_eq(ret, WEBRTC_ERROR_NONE);
+       ret = webrtc_mic_source_set_sound_stream_info(webrtc, id, stream_info);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
 
-       ret = webrtc_start(webrtc);
-       assert_eq(ret, WEBRTC_ERROR_NONE);
+       sound_manager_destroy_stream_information(stream_info);
+       webrtc_destroy(webrtc);
 
-       __run_mainloop();
+       return 0;
+}
 
-       ret = webrtc_stop(webrtc);
-       assert_eq(ret, WEBRTC_ERROR_NONE);
+static int __set_audio_format(media_format_h format)
+{
+       int ret;
 
-       webrtc_destroy(webrtc);
+       if (!format)
+               return -1;
 
-       return 0;
+       ret = media_format_set_audio_mime(format, MEDIA_FORMAT_PCM_S16LE);
+       ret |= media_format_set_audio_channel(format, 1);
+       ret |= media_format_set_audio_samplerate(format, 8000);
+       ret |= media_format_set_audio_bit(format, 16);
+
+       return ret;
 }
 
-/**
- * @testcase           utc_media_webrtc_stop_n1
- * @since_tizen                6.5
- * @description                Stops the webrtc handle\n
- *                             - Pass invalid parameter to get negative result
- */
-int utc_media_webrtc_stop_n1(void)
+static int __set_video_format(media_format_h format)
 {
-       int ret = webrtc_stop(NULL);
-       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+       int ret;
 
-       return 0;
+       if (!format)
+               return -1;
+
+       ret = media_format_set_video_mime(format, MEDIA_FORMAT_I420);
+       ret |= media_format_set_video_width(format, 640);
+       ret |= media_format_set_video_height(format, 480);
+
+       return ret;
 }
 
 /**
- * @testcase           utc_media_webrtc_stop_n2
+ * @testcase           utc_media_webrtc_media_packet_source_set_format_p
  * @since_tizen                6.5
- * @description                Stops the webrtc handle\n
+ * @description                Sets media format to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Stop the handle without start to get negative result
+ *                             - Add a media packet source\n
+ *                             - Set media format
  */
-int utc_media_webrtc_stop_n2(void)
+int utc_media_webrtc_media_packet_source_set_format_p(void)
 {
        int ret;
        webrtc_h webrtc;
+       unsigned int id;
+       media_format_h format;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_stop(webrtc);
-       assert_eq(ret, WEBRTC_ERROR_INVALID_STATE);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
+       ret = __set_audio_format(format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_format(webrtc, id, format);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       media_format_unref(format);
        webrtc_destroy(webrtc);
 
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_get_state_p
+ * @testcase           utc_media_webrtc_media_packet_source_set_format_n
  * @since_tizen                6.5
- * @description                Gets the webrtc state\n
+ * @description                Sets media format to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Get state of the handle
+ *                             - Add a media packet source\n
+ *                             - Pass invalid parameter to get negative result
  */
-int utc_media_webrtc_get_state_p(void)
+int utc_media_webrtc_media_packet_source_set_format_n(void)
 {
        int ret;
        webrtc_h webrtc;
-       webrtc_state_e state;
+       unsigned int id;
+       media_format_h format;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_get_state(webrtc, &state);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
        assert_eq(ret, WEBRTC_ERROR_NONE);
-       assert_eq(state, WEBRTC_STATE_IDLE);
 
+       ret = webrtc_media_packet_source_set_format(webrtc, id, format);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       media_format_unref(format);
        webrtc_destroy(webrtc);
 
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_get_state_n1
+ * @testcase           utc_media_webrtc_media_packet_source_push_packet_p
  * @since_tizen                6.5
- * @description                Gets the webrtc state\n
+ * @description                Pushes media packet to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Pass invalid parameter to get negative result
+ *                             - Add a media packet source\n
+ *                             - Set media format\n
+ *                             - Set buffer state changed callback\n
+ *                             - Push media packet
  */
-int utc_media_webrtc_get_state_n1(void)
+int utc_media_webrtc_media_packet_source_push_packet_p(void)
 {
        int ret;
        webrtc_h webrtc;
+       unsigned int id;
+       media_format_h format;
+       media_packet_h packet;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_get_state(webrtc, NULL);
-       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       webrtc_destroy(webrtc);
+       ret = __set_video_format(format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
-       return 0;
-}
+       ret = webrtc_media_packet_source_set_format(webrtc, id, format);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
-/**
- * @testcase           utc_media_webrtc_get_state_n2
- * @since_tizen                6.5
- * @description                Gets the webrtc state\n
- *                             - Pass invalid parameter to get negative result
- */
-int utc_media_webrtc_get_state_n2(void)
-{
-       webrtc_state_e state;
-       int ret = webrtc_get_state(NULL, &state);
-       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = media_packet_new_alloc(format, NULL, NULL, &packet);
+       assert_eq(ret, MEDIA_PACKET_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_push_packet(webrtc, id, packet);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       media_format_unref(format);
+       media_packet_unref(packet);
+       webrtc_destroy(webrtc);
 
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_add_media_source_p
+ * @testcase           utc_media_webrtc_media_packet_source_push_packet_n1
  * @since_tizen                6.5
- * @description                Adds a media source\n
+ * @description                Pushes media packet to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Add a media source
+ *                             - Add a media packet source\n
+ *                             - Set buffer state changed callback\n
+ *                             - Push media packet without setting format to get negative result
  */
-int utc_media_webrtc_add_media_source_p(void)
+int utc_media_webrtc_media_packet_source_push_packet_n1(void)
 {
        int ret;
        webrtc_h webrtc;
        unsigned int id;
+       media_format_h format;
+       media_packet_h packet;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = __set_video_format(format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
+       ret = media_packet_new_alloc(format, NULL, NULL, &packet);
+       assert_eq(ret, MEDIA_PACKET_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_push_packet(webrtc, id, packet);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       media_format_unref(format);
+       media_packet_unref(packet);
        webrtc_destroy(webrtc);
 
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_add_media_source_n1
+ * @testcase           utc_media_webrtc_media_packet_source_push_packet_n2
  * @since_tizen                6.5
- * @description                Adds a media source\n
+ * @description                Pushes media packet to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Pass invalid parameter to get negative result
+ *                             - Add a media packet source\n
+ *                             - Set media format\n
+ *                             - Set buffer state changed callback\n
+ *                             - Push media packet with invalid source id to get negative result
  */
-int utc_media_webrtc_add_media_source_n1(void)
+int utc_media_webrtc_media_packet_source_push_packet_n2(void)
 {
        int ret;
        webrtc_h webrtc;
+       unsigned int id;
+       media_format_h format;
+       media_packet_h packet;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, NULL);
-       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       webrtc_destroy(webrtc);
+       ret = __set_video_format(format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
-       return 0;
-}
+       ret = webrtc_media_packet_source_set_format(webrtc, id, format);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
-/**
- * @testcase           utc_media_webrtc_add_media_source_n2
- * @since_tizen                6.5
- * @description                Adds a media source\n
- *                             - Create a webrtc handle\n
- *                             - Pass invalid parameter to get negative result
- */
-int utc_media_webrtc_add_media_source_n2(void)
-{
-       unsigned int id;
+       ret = webrtc_media_packet_source_set_buffer_state_changed_cb(webrtc, id, __webrtc_media_packet_source_buffer_state_changed_cb, NULL);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       int ret = webrtc_add_media_source(NULL, WEBRTC_MEDIA_SOURCE_TYPE_MIC, &id);
+       ret = media_packet_new_alloc(format, NULL, NULL, &packet);
+       assert_eq(ret, MEDIA_PACKET_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_push_packet(webrtc, id + 1, packet);
        assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
 
+       media_format_unref(format);
+       media_packet_unref(packet);
+       webrtc_destroy(webrtc);
+
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_remove_media_source_p
+ * @testcase           utc_media_webrtc_media_packet_source_push_packet_n3
  * @since_tizen                6.5
- * @description                Removes the media source\n
+ * @description                Pushes media packet to the media packet source\n
  *                             - Create a webrtc handle\n
- *                             - Add a media source\n
- *                             - Remove the media source
+ *                             - Add a media packet source\n
+ *                             - Set media format\n
+ *                             - Push media packet without setting buffer state changed callback to get negative result
  */
-int utc_media_webrtc_remove_media_source_p(void)
+int utc_media_webrtc_media_packet_source_push_packet_n3(void)
 {
        int ret;
        webrtc_h webrtc;
        unsigned int id;
+       media_format_h format;
+       media_packet_h packet;
+
+       ret = media_format_create(&format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_MEDIA_PACKET, &id);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_remove_media_source(webrtc, id);
+       ret = __set_video_format(format);
+       assert_eq(ret, MEDIA_FORMAT_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_set_format(webrtc, id, format);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
+       ret = media_packet_new_alloc(format, NULL, NULL, &packet);
+       assert_eq(ret, MEDIA_PACKET_ERROR_NONE);
+
+       ret = webrtc_media_packet_source_push_packet(webrtc, id, packet);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_OPERATION);
+
+       media_format_unref(format);
+       media_packet_unref(packet);
        webrtc_destroy(webrtc);
 
        return 0;
 }
 
 /**
- * @testcase           utc_media_webrtc_remove_media_source_n1
+ * @testcase           utc_media_webrtc_set_sound_stream_info_n
  * @since_tizen                6.5
- * @description                Removes the media source\n
+ * @description                Sets sound stream info\n
  *                             - Create a webrtc handle\n
- *                             - Add a media source\n
  *                             - Pass invalid parameter to get negative result
  */
-int utc_media_webrtc_remove_media_source_n1(void)
+int utc_media_webrtc_set_sound_stream_info_n(void)
 {
        int ret;
        webrtc_h webrtc;
-       unsigned int id;
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_SCREEN, &id);
-       assert_eq(ret, WEBRTC_ERROR_NONE);
-
-       ret = webrtc_remove_media_source(webrtc, id + 1);
+       ret = webrtc_set_sound_stream_info(webrtc, 0, NULL);
        assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
 
        webrtc_destroy(webrtc);
@@ -480,26 +1455,21 @@ int utc_media_webrtc_remove_media_source_n1(void)
 }
 
 /**
- * @testcase           utc_media_webrtc_remove_media_source_n2
+ * @testcase           utc_media_webrtc_set_display_n
  * @since_tizen                6.5
- * @description                Removes the media source\n
+ * @description                Sets display\n
  *                             - Create a webrtc handle\n
- *                             - Add a media source\n
  *                             - Pass invalid parameter to get negative result
  */
-int utc_media_webrtc_remove_media_source_n2(void)
+int utc_media_webrtc_set_display_n(void)
 {
        int ret;
        webrtc_h webrtc;
-       unsigned int id;
 
        ret = webrtc_create(&webrtc);
        assert_eq(ret, WEBRTC_ERROR_NONE);
 
-       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_FILE, &id);
-       assert_eq(ret, WEBRTC_ERROR_NONE);
-
-       ret = webrtc_remove_media_source(webrtc, id - 1);
+       ret = webrtc_set_display(webrtc, 0, WEBRTC_DISPLAY_TYPE_EVAS, NULL);
        assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
 
        webrtc_destroy(webrtc);
@@ -1436,3 +2406,134 @@ int utc_media_webrtc_get_ice_connection_state_n(void)
 
        return 0;
 }
+
+/**
+ * @testcase           utc_media_webrtc_create_data_channel_p
+ * @since_tizen                6.5
+ * @description                Creates a data channel\n
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel
+ */
+int utc_media_webrtc_create_data_channel_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_create_data_channel_n
+ * @since_tizen                6.5
+ * @description                Creates a data channel\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_create_data_channel_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, NULL, NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_destroy_data_channel_p
+ * @since_tizen                6.5
+ * @description                Destroys the data channel\n
+ *                             - Create a webrtc handle\n
+ *                             - Create a data channel\n
+ *                             - Destroy the data channel
+ */
+int utc_media_webrtc_destroy_data_channel_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_data_channel_h channel;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_create_data_channel(webrtc, "test channel", NULL, &channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy_data_channel(channel);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_destroy_data_channel_n
+ * @since_tizen                6.5
+ * @description                Destroys the data channel\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_destroy_data_channel_n(void)
+{
+       int ret = webrtc_destroy_data_channel(NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_data_p
+ * @since_tizen                6.5
+ * @description                Gets the data\n
+ *                             - Get the data
+ */
+int utc_media_webrtc_get_data_p(void)
+{
+       /* simulate data structure */
+       typedef struct _bytes_data_s {
+               void *data;
+               unsigned long size;
+       } bytes_data_s;
+
+       int ret;
+       char buf[] = {'a', 'b', 'c', 'd'};
+       bytes_data_s bytes = {buf, sizeof(buf)};
+       const char *data;
+       unsigned long size;
+
+       ret = webrtc_get_data((webrtc_bytes_data_h)&bytes, &data, &size);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_data_n
+ * @since_tizen                6.5
+ * @description                Gets the data\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_get_data_n(void)
+{
+       int ret = webrtc_get_data(NULL, NULL, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}