[UTC][capi-media-player][ACR-1427][Add test case about retriving supported format] 38/211038/4
authorEunhye Choi <eunhae1.choi@samsung.com>
Mon, 29 Jul 2019 07:35:23 +0000 (16:35 +0900)
committerEunhye Choi <eunhae1.choi@samsung.com>
Thu, 1 Aug 2019 02:52:09 +0000 (11:52 +0900)
- add new test case for retrive the supported media format
  about external media stream playback
- applied changed player_supported_media_format_cb return type
  at offload tct

Change-Id: I16b5e495dadcde56cd527923a59aad99b213a1b7

src/utc/player/tct-player-core_mobile.h
src/utc/player/tct-player-core_wearable.h
src/utc/player/utc-media-player-es.c
src/utc/player/utc-media-player.c

index 36356af508c32faa7ca4b0207b0a49be3c512b67..2dc58304e4e11fa9a9cb0b6919e9f92527c44414 100644 (file)
@@ -239,6 +239,8 @@ extern int utc_player_set_media_stream_seek_cb_n(void);
 extern int utc_player_unset_media_stream_seek_cb_p(void);
 extern int utc_player_unset_media_stream_seek_cb_p2(void);
 extern int utc_player_unset_media_stream_seek_cb_n(void);
+extern int utc_player_foreach_media_stream_supported_format_p(void);
+extern int utc_player_foreach_media_stream_supported_format_n(void);
 extern int utc_player_set_video_stream_changed_cb_p(void);
 extern int utc_player_set_video_stream_changed_cb_n(void);
 extern int utc_player_set_video_stream_changed_cb_n2(void);
@@ -487,6 +489,8 @@ testcase tc_array[] = {
        {"utc_player_unset_media_stream_seek_cb_p",utc_player_unset_media_stream_seek_cb_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_unset_media_stream_seek_cb_p2",utc_player_unset_media_stream_seek_cb_p2,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_unset_media_stream_seek_cb_n",utc_player_unset_media_stream_seek_cb_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
+       {"utc_player_foreach_media_stream_supported_format_p",utc_player_foreach_media_stream_supported_format_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
+       {"utc_player_foreach_media_stream_supported_format_n",utc_player_foreach_media_stream_supported_format_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_p",utc_player_set_video_stream_changed_cb_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_n",utc_player_set_video_stream_changed_cb_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_n2",utc_player_set_video_stream_changed_cb_n2,utc_media_player_es_startup,utc_media_player_es_cleanup},
index 378e4a6e17559dfde3846965fb52ed0f2c6915b2..3221ca38a19153af393ccf3e2da87b51e869fb70 100644 (file)
@@ -239,6 +239,8 @@ extern int utc_player_set_media_stream_seek_cb_n(void);
 extern int utc_player_unset_media_stream_seek_cb_p(void);
 extern int utc_player_unset_media_stream_seek_cb_p2(void);
 extern int utc_player_unset_media_stream_seek_cb_n(void);
+extern int utc_player_foreach_media_stream_supported_format_p(void);
+extern int utc_player_foreach_media_stream_supported_format_n(void);
 extern int utc_player_set_video_stream_changed_cb_p(void);
 extern int utc_player_set_video_stream_changed_cb_n(void);
 extern int utc_player_set_video_stream_changed_cb_n2(void);
@@ -487,6 +489,8 @@ testcase tc_array[] = {
        {"utc_player_unset_media_stream_seek_cb_p",utc_player_unset_media_stream_seek_cb_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_unset_media_stream_seek_cb_p2",utc_player_unset_media_stream_seek_cb_p2,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_unset_media_stream_seek_cb_n",utc_player_unset_media_stream_seek_cb_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
+       {"utc_player_foreach_media_stream_supported_format_p",utc_player_foreach_media_stream_supported_format_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
+       {"utc_player_foreach_media_stream_supported_format_n",utc_player_foreach_media_stream_supported_format_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_p",utc_player_set_video_stream_changed_cb_p,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_n",utc_player_set_video_stream_changed_cb_n,utc_media_player_es_startup,utc_media_player_es_cleanup},
        {"utc_player_set_video_stream_changed_cb_n2",utc_player_set_video_stream_changed_cb_n2,utc_media_player_es_startup,utc_media_player_es_cleanup},
index a48bc1006dfc93111ad0b3dd0f5e55a9a6c4eff8..89f72b6d815ef5b278790ce7cb315e507c542cdf 100644 (file)
@@ -30,6 +30,9 @@
 #define ES_DEFAULT_VIDEO_PTS_OFFSET 20000000
 #define ES_NUMBER_OF_FEED 100
 #define ES_BUFFER_MAX_SIZE (3*1024*1024)
+#define RETRY_COUNT_DEFAULT 5
+#define RETRY_COUNT_FOR_CONTENT 11
+
 static char* media = "test.h264";
 static char* media_path = NULL;
 static char* media2 = "test.mp4";
@@ -301,6 +304,13 @@ static void player_media_stream_seek_callback(unsigned long long offset, void *u
         _is_pass = true;
 }
 
+static bool _player_supported_media_format_cb(media_format_mimetype_e format, void *user_data)
+{
+       PRINT_UTC_LOG("[Line : %d][%s] supported format 0x%X\n", __LINE__, API_NAMESPACE, format);
+       _is_pass = true;
+       return true;
+}
+
 static void player_video_stream_changed_callback (int width, int height, int fps, int bit_rate, void *user_data)
 {
     if(width==320 && height==240)
@@ -981,8 +991,6 @@ int utc_player_unset_media_stream_buffer_status_cb_n(void)
  */
 int utc_player_set_media_stream_seek_cb_p(void)
 {
-#define PREPARE_MAX_TIMEOUT 5
-
     assert(!_is_broken);
     int ret = 0;
     int repeat = 0;
@@ -1023,7 +1031,7 @@ int utc_player_set_media_stream_seek_cb_p(void)
         return 0;
     }
 
-    for (repeat = 0; repeat < PREPARE_MAX_TIMEOUT; repeat++) {
+    for (repeat = 0; repeat < RETRY_COUNT_DEFAULT; repeat++) {
         wait_for_async();
     }
 
@@ -1106,57 +1114,102 @@ int utc_player_unset_media_stream_seek_cb_n(void)
 }
 
 /**
- * @testcase           utc_player_set_video_stream_changed_cb_p
- * @since_tizen                2.4
- * @description                Positive test case to set video stream changed callback
+ * @testcase        utc_player_foreach_media_stream_supported_format_p
+ * @since_tizen     5.5
+ * @description     Positive test case to retrieve the supported format
+ *                  about external media stream playback
+ */
+int utc_player_foreach_media_stream_supported_format_p(void)
+{
+       assert(!_is_broken);
+       int ret = PLAYER_ERROR_NONE;
+       int repeat = 0;
+
+       ret = player_foreach_media_stream_supported_format(player, _player_supported_media_format_cb, player);
+       assert_eq(ret, PLAYER_ERROR_NONE);
+
+       for (repeat = 0 ; repeat < RETRY_COUNT_DEFAULT ; repeat++) {
+               wait_for_async();
+               if (_is_pass)
+                       break;
+       }
+
+       assert(_is_pass);
+       _is_pass = false;
+
+       return 0;
+}
+
+/**
+ * @testcase        utc_player_foreach_media_stream_supported_format_n
+ * @since_tizen     5.5
+ * @description     Negative test case to retrieve the supported format
+ *                  about external media stream playback
+ */
+int utc_player_foreach_media_stream_supported_format_n(void)
+{
+       assert(!_is_broken);
+       int ret = PLAYER_ERROR_NONE;
+
+       ret = player_foreach_media_stream_supported_format(player, NULL, player);
+       assert_eq(ret, PLAYER_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase        utc_player_set_video_stream_changed_cb_p
+ * @since_tizen     2.4
+ * @description     Positive test case to set video stream changed callback
  */
 int utc_player_set_video_stream_changed_cb_p(void)
 {
-  player_state_e state;
-  int repeat = 0;
+       player_state_e state;
+       int repeat = 0;
 
-  int ret = player_get_state (player, &state);
-  if (PLAYER_ERROR_NONE != ret) {
-      PRINT_UTC_LOG("[Line : %d][%s] player_get_state is failed\\n", __LINE__, API_NAMESPACE);
-  }
-  if (state != PLAYER_STATE_IDLE){
-    player_unprepare(player);
-  }
-  ret = player_set_uri(player, media_drc_path);
-  if (PLAYER_ERROR_NONE != ret)
-      PRINT_UTC_LOG("[Line : %d][%s] player_set_uri is failed\\n", __LINE__, API_NAMESPACE);
+       int ret = player_get_state(player, &state);
+       if (ret != PLAYER_ERROR_NONE) {
+               PRINT_UTC_LOG("[Line : %d][%s] player_get_state is failed\\n", __LINE__, API_NAMESPACE);
+       }
 
-  create_window();
-  ret = player_set_display(player, PLAYER_DISPLAY_TYPE_OVERLAY, g_win);
-  if (PLAYER_ERROR_NONE != ret) {
-      PRINT_UTC_LOG("[Line : %d][%s] player_set_display is failed\\n", __LINE__, API_NAMESPACE);
-  }
+       if (state != PLAYER_STATE_IDLE) {
+               player_unprepare(player);
+       }
 
-  ret = player_set_video_stream_changed_cb (player, player_video_stream_changed_callback, NULL);
-  assert_eq(ret, PLAYER_ERROR_NONE);
+       ret = player_set_uri(player, media_drc_path);
+       if (ret != PLAYER_ERROR_NONE)
+               PRINT_UTC_LOG("[Line : %d][%s] player_set_uri is failed\\n", __LINE__, API_NAMESPACE);
 
-  ret = player_prepare(player);
-  if (PLAYER_ERROR_NONE != ret)
-      PRINT_UTC_LOG("[Line : %d][%s] player isn't prepared\\n", __LINE__, API_NAMESPACE);
+       create_window();
+       ret = player_set_display(player, PLAYER_DISPLAY_TYPE_OVERLAY, g_win);
+       if (ret != PLAYER_ERROR_NONE) {
+               PRINT_UTC_LOG("[Line : %d][%s] player_set_display is failed\\n", __LINE__, API_NAMESPACE);
+       }
 
-  ret = player_start(player);
-  if (PLAYER_ERROR_NONE != ret)
-      PRINT_UTC_LOG("[Line : %d][%s] player isn't started\\n", __LINE__, API_NAMESPACE);
+       ret = player_set_video_stream_changed_cb(player, player_video_stream_changed_callback, NULL);
+       assert_eq(ret, PLAYER_ERROR_NONE);
 
-  for(repeat=0; repeat<11; repeat++) {
-      wait_for_async();
-      if(_is_pass)
-          break;
-  }
+       ret = player_prepare(player);
+       if (ret != PLAYER_ERROR_NONE)
+               PRINT_UTC_LOG("[Line : %d][%s] player isn't prepared\\n", __LINE__, API_NAMESPACE);
 
-  ret = player_stop(player);
-  if (PLAYER_ERROR_NONE != ret)
-      PRINT_UTC_LOG("[Line : %d][%s] player isn't stopped\\n", __LINE__, API_NAMESPACE);
+       ret = player_start(player);
+       if (ret != PLAYER_ERROR_NONE)
+               PRINT_UTC_LOG("[Line : %d][%s] player isn't started\\n", __LINE__, API_NAMESPACE);
 
-  assert(_is_pass);
-  _is_pass = false;
+       for (repeat = 0 ; repeat < RETRY_COUNT_FOR_CONTENT ; repeat++) {
+               wait_for_async();
+               if (_is_pass)
+                       break;
+       }
 
-  return 0;
+       ret = player_stop(player);
+       if (ret != PLAYER_ERROR_NONE)
+               PRINT_UTC_LOG("[Line : %d][%s] player isn't stopped\\n", __LINE__, API_NAMESPACE);
+
+       assert(_is_pass);
+       _is_pass = false;
+
+       return 0;
 }
 
 /**
index f571250ca460c3ed85b364ac313a054ffa37a8a1..5c1dadaee0a939310c72ac8db96c20e60ed205c6 100644 (file)
@@ -154,10 +154,11 @@ static bool _check_audio_offload_feature(void)
     return false;
 }
 
-static void _audio_offload_format_cb(media_format_mimetype_e format, void *user_data)
+static bool _audio_offload_format_cb(media_format_mimetype_e format, void *user_data)
 {
        PRINT_UTC_LOG("[Line : %d][%s] supported format 0x%X\n", __LINE__, API_NAMESPACE, format);
        _is_pass = true;
+       return true;
 }
 
 /**