extern void utc_media_image_util_basic_cleanup(void);
extern void utc_image_util_agif_encode_startup(void);
extern void utc_image_util_agif_encode_cleanup(void);
+extern void utc_image_util_anim_encode_startup(void);
+extern void utc_image_util_anim_encode_cleanup(void);
extern int utc_image_util_foreach_supported_colorspace_n1(void);
extern int utc_image_util_foreach_supported_colorspace_n2(void);
extern int utc_image_util_agif_encode_destroy_p(void);
extern int utc_image_util_agif_encode_destroy_n(void);
+extern int utc_image_util_anim_encode_create_p(void);
+extern int utc_image_util_anim_encode_create_n1(void);
+extern int utc_image_util_anim_encode_create_n2(void);
+extern int utc_image_util_anim_encode_set_loop_count_p(void);
+extern int utc_image_util_anim_encode_set_loop_count_n(void);
+extern int utc_image_util_anim_encode_set_background_color_p(void);
+extern int utc_image_util_anim_encode_set_background_color_n1(void);
+extern int utc_image_util_anim_encode_set_background_color_n2(void);
+extern int utc_image_util_anim_encode_set_lossless_p(void);
+extern int utc_image_util_anim_encode_set_lossless_n1(void);
+extern int utc_image_util_anim_encode_set_lossless_n2(void);
+extern int utc_image_util_anim_encode_add_frame_p(void);
+extern int utc_image_util_anim_encode_add_frame_n(void);
+extern int utc_image_util_anim_encode_save_to_file_p1(void);
+extern int utc_image_util_anim_encode_save_to_file_p2(void);
+extern int utc_image_util_anim_encode_save_to_file_n1(void);
+extern int utc_image_util_anim_encode_save_to_file_n2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n2(void);
+extern int utc_image_util_anim_encode_destroy_p(void);
+extern int utc_image_util_anim_encode_destroy_n(void);
+
testcase tc_array[] = {
{"utc_image_util_foreach_supported_colorspace_n1",utc_image_util_foreach_supported_colorspace_n1,utc_image_util_decode_startup,utc_image_util_decode_cleanup},
{"utc_image_util_agif_encode_save_to_buffer_n",utc_image_util_agif_encode_save_to_buffer_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_p",utc_image_util_agif_encode_destroy_p,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_n",utc_image_util_agif_encode_destroy_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
+ {"utc_image_util_anim_encode_create_p",utc_image_util_anim_encode_create_p,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n1",utc_image_util_anim_encode_create_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n2",utc_image_util_anim_encode_create_n2,NULL,NULL},
+ {"utc_image_util_anim_encode_set_loop_count_p",utc_image_util_anim_encode_set_loop_count_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_loop_count_n",utc_image_util_anim_encode_set_loop_count_n,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_p",utc_image_util_anim_encode_set_background_color_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_background_color_n1",utc_image_util_anim_encode_set_background_color_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_n2",utc_image_util_anim_encode_set_background_color_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_p",utc_image_util_anim_encode_set_lossless_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_n1",utc_image_util_anim_encode_set_lossless_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_lossless_n2",utc_image_util_anim_encode_set_lossless_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_p",utc_image_util_anim_encode_add_frame_p,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_n",utc_image_util_anim_encode_add_frame_n,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p1",utc_image_util_anim_encode_save_to_file_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p2",utc_image_util_anim_encode_save_to_file_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n1",utc_image_util_anim_encode_save_to_file_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n2",utc_image_util_anim_encode_save_to_file_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p1",utc_image_util_anim_encode_save_to_buffer_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p2",utc_image_util_anim_encode_save_to_buffer_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n1",utc_image_util_anim_encode_save_to_buffer_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n2",utc_image_util_anim_encode_save_to_buffer_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_destroy_p",utc_image_util_anim_encode_destroy_p,NULL,NULL},
+ {"utc_image_util_anim_encode_destroy_n",utc_image_util_anim_encode_destroy_n,NULL,NULL},
{NULL, NULL}
};
extern void utc_media_image_util_basic_cleanup(void);
extern void utc_image_util_agif_encode_startup(void);
extern void utc_image_util_agif_encode_cleanup(void);
+extern void utc_image_util_anim_encode_startup(void);
+extern void utc_image_util_anim_encode_cleanup(void);
extern int utc_image_util_foreach_supported_colorspace_n1(void);
extern int utc_image_util_foreach_supported_colorspace_n2(void);
extern int utc_image_util_agif_encode_destroy_p(void);
extern int utc_image_util_agif_encode_destroy_n(void);
+extern int utc_image_util_anim_encode_create_p(void);
+extern int utc_image_util_anim_encode_create_n1(void);
+extern int utc_image_util_anim_encode_create_n2(void);
+extern int utc_image_util_anim_encode_set_loop_count_p(void);
+extern int utc_image_util_anim_encode_set_loop_count_n(void);
+extern int utc_image_util_anim_encode_set_background_color_p(void);
+extern int utc_image_util_anim_encode_set_background_color_n1(void);
+extern int utc_image_util_anim_encode_set_background_color_n2(void);
+extern int utc_image_util_anim_encode_set_lossless_p(void);
+extern int utc_image_util_anim_encode_set_lossless_n1(void);
+extern int utc_image_util_anim_encode_set_lossless_n2(void);
+extern int utc_image_util_anim_encode_add_frame_p(void);
+extern int utc_image_util_anim_encode_add_frame_n(void);
+extern int utc_image_util_anim_encode_save_to_file_p1(void);
+extern int utc_image_util_anim_encode_save_to_file_p2(void);
+extern int utc_image_util_anim_encode_save_to_file_n1(void);
+extern int utc_image_util_anim_encode_save_to_file_n2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n2(void);
+extern int utc_image_util_anim_encode_destroy_p(void);
+extern int utc_image_util_anim_encode_destroy_n(void);
+
testcase tc_array[] = {
{"utc_image_util_foreach_supported_colorspace_n1",utc_image_util_foreach_supported_colorspace_n1,utc_image_util_decode_startup,utc_image_util_decode_cleanup},
{"utc_image_util_agif_encode_save_to_buffer_n",utc_image_util_agif_encode_save_to_buffer_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_p",utc_image_util_agif_encode_destroy_p,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_n",utc_image_util_agif_encode_destroy_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
+ {"utc_image_util_anim_encode_create_p",utc_image_util_anim_encode_create_p,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n1",utc_image_util_anim_encode_create_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n2",utc_image_util_anim_encode_create_n2,NULL,NULL},
+ {"utc_image_util_anim_encode_set_loop_count_p",utc_image_util_anim_encode_set_loop_count_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_loop_count_n",utc_image_util_anim_encode_set_loop_count_n,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_p",utc_image_util_anim_encode_set_background_color_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_background_color_n1",utc_image_util_anim_encode_set_background_color_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_n2",utc_image_util_anim_encode_set_background_color_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_p",utc_image_util_anim_encode_set_lossless_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_n1",utc_image_util_anim_encode_set_lossless_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_lossless_n2",utc_image_util_anim_encode_set_lossless_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_p",utc_image_util_anim_encode_add_frame_p,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_n",utc_image_util_anim_encode_add_frame_n,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p1",utc_image_util_anim_encode_save_to_file_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p2",utc_image_util_anim_encode_save_to_file_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n1",utc_image_util_anim_encode_save_to_file_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n2",utc_image_util_anim_encode_save_to_file_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p1",utc_image_util_anim_encode_save_to_buffer_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p2",utc_image_util_anim_encode_save_to_buffer_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n1",utc_image_util_anim_encode_save_to_buffer_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n2",utc_image_util_anim_encode_save_to_buffer_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_destroy_p",utc_image_util_anim_encode_destroy_p,NULL,NULL},
+ {"utc_image_util_anim_encode_destroy_n",utc_image_util_anim_encode_destroy_n,NULL,NULL},
{NULL, NULL}
};
extern void utc_media_image_util_basic_cleanup(void);
extern void utc_image_util_agif_encode_startup(void);
extern void utc_image_util_agif_encode_cleanup(void);
+extern void utc_image_util_anim_encode_startup(void);
+extern void utc_image_util_anim_encode_cleanup(void);
extern int utc_image_util_foreach_supported_colorspace_n1(void);
extern int utc_image_util_foreach_supported_colorspace_n2(void);
extern int utc_image_util_agif_encode_destroy_p(void);
extern int utc_image_util_agif_encode_destroy_n(void);
+extern int utc_image_util_anim_encode_create_p(void);
+extern int utc_image_util_anim_encode_create_n1(void);
+extern int utc_image_util_anim_encode_create_n2(void);
+extern int utc_image_util_anim_encode_set_loop_count_p(void);
+extern int utc_image_util_anim_encode_set_loop_count_n(void);
+extern int utc_image_util_anim_encode_set_background_color_p(void);
+extern int utc_image_util_anim_encode_set_background_color_n1(void);
+extern int utc_image_util_anim_encode_set_background_color_n2(void);
+extern int utc_image_util_anim_encode_set_lossless_p(void);
+extern int utc_image_util_anim_encode_set_lossless_n1(void);
+extern int utc_image_util_anim_encode_set_lossless_n2(void);
+extern int utc_image_util_anim_encode_add_frame_p(void);
+extern int utc_image_util_anim_encode_add_frame_n(void);
+extern int utc_image_util_anim_encode_save_to_file_p1(void);
+extern int utc_image_util_anim_encode_save_to_file_p2(void);
+extern int utc_image_util_anim_encode_save_to_file_n1(void);
+extern int utc_image_util_anim_encode_save_to_file_n2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_p2(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n1(void);
+extern int utc_image_util_anim_encode_save_to_buffer_n2(void);
+extern int utc_image_util_anim_encode_destroy_p(void);
+extern int utc_image_util_anim_encode_destroy_n(void);
+
testcase tc_array[] = {
{"utc_image_util_foreach_supported_colorspace_n1",utc_image_util_foreach_supported_colorspace_n1,utc_image_util_decode_startup,utc_image_util_decode_cleanup},
{"utc_image_util_agif_encode_save_to_buffer_n",utc_image_util_agif_encode_save_to_buffer_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_p",utc_image_util_agif_encode_destroy_p,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
{"utc_image_util_agif_encode_destroy_n",utc_image_util_agif_encode_destroy_n,utc_image_util_agif_encode_startup,utc_image_util_agif_encode_cleanup},
+ {"utc_image_util_anim_encode_create_p",utc_image_util_anim_encode_create_p,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n1",utc_image_util_anim_encode_create_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_create_n2",utc_image_util_anim_encode_create_n2,NULL,NULL},
+ {"utc_image_util_anim_encode_set_loop_count_p",utc_image_util_anim_encode_set_loop_count_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_loop_count_n",utc_image_util_anim_encode_set_loop_count_n,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_p",utc_image_util_anim_encode_set_background_color_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_background_color_n1",utc_image_util_anim_encode_set_background_color_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_background_color_n2",utc_image_util_anim_encode_set_background_color_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_p",utc_image_util_anim_encode_set_lossless_p,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_set_lossless_n1",utc_image_util_anim_encode_set_lossless_n1,NULL,NULL},
+ {"utc_image_util_anim_encode_set_lossless_n2",utc_image_util_anim_encode_set_lossless_n2,NULL,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_p",utc_image_util_anim_encode_add_frame_p,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_add_frame_n",utc_image_util_anim_encode_add_frame_n,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p1",utc_image_util_anim_encode_save_to_file_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_p2",utc_image_util_anim_encode_save_to_file_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n1",utc_image_util_anim_encode_save_to_file_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_file_n2",utc_image_util_anim_encode_save_to_file_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p1",utc_image_util_anim_encode_save_to_buffer_p1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_p2",utc_image_util_anim_encode_save_to_buffer_p2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n1",utc_image_util_anim_encode_save_to_buffer_n1,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_save_to_buffer_n2",utc_image_util_anim_encode_save_to_buffer_n2,utc_image_util_anim_encode_startup,utc_image_util_anim_encode_cleanup},
+ {"utc_image_util_anim_encode_destroy_p",utc_image_util_anim_encode_destroy_p,NULL,NULL},
+ {"utc_image_util_anim_encode_destroy_n",utc_image_util_anim_encode_destroy_n,NULL,NULL},
{NULL, NULL}
};
#define FILENAME_ORIGIN "sample.gif"
#define FILENAME_ENCODE_AGIF "test_output.gif"
+#define NUM_OF_ANIM_FILES 5
+#define LAST_ANIM_TYPE IMAGE_UTIL_ANIM_WEBP
+
typedef struct {
unsigned char *buffer;
size_t buffer_size;
static image_util_image_h g_utc_img_origin = NULL;
static utc_buffer_data_t g_utc_buf_agif = { NULL, 0 };
+static const char *g_utc_anim_files[NUM_OF_ANIM_FILES] = {
+ "sample_anim1.png",
+ "sample_anim2.png",
+ "sample_anim3.png",
+ "sample_anim4.png",
+ "sample_anim5.png",
+};
+static const char *g_utc_anim_output_files[] = {
+ [IMAGE_UTIL_ANIM_GIF] = "test_output.gif",
+ [IMAGE_UTIL_ANIM_WEBP] = "test_output.webp",
+};
+
+static unsigned int g_utc_anim_idx = 0;
+static image_util_anim_type_e g_utc_anim_type = IMAGE_UTIL_ANIM_GIF;
+static image_util_image_h g_utc_anim_images[NUM_OF_ANIM_FILES] = { NULL, };
+static image_util_anim_encode_h g_utc_anim_encode_h[] = {
+ [IMAGE_UTIL_ANIM_GIF] = NULL,
+ [IMAGE_UTIL_ANIM_WEBP] = NULL,
+};
+static char *g_utc_anim_output_path[] = {
+ [IMAGE_UTIL_ANIM_GIF] = NULL,
+ [IMAGE_UTIL_ANIM_WEBP] = NULL,
+};
+static utc_buffer_data_t g_utc_anim_output_buffer[] = {
+ [IMAGE_UTIL_ANIM_GIF] = { NULL, 0 },
+ [IMAGE_UTIL_ANIM_WEBP] = { NULL, 0 },
+};
+
/**
* @function utc_image_util_encode_agif_startup
* @description Called before each test
return 0;
}
+
+/**
+ * @function utc_image_util_anim_encode_startup
+ * @description Called before each test
+ * @parameter NA
+ * @return NA
+ */
+void utc_image_util_anim_encode_startup(void)
+{
+ int ret = IMAGE_UTIL_ERROR_NONE;
+ char *anim_src_paths[NUM_OF_ANIM_FILES] = { NULL, };
+
+ char pszValue[CONFIG_VALUE_LEN_MAX] = {0,};
+ if ( true == GetValueForTCTSetting("DEVICE_SUITE_TARGET_30", pszValue, API_NAMESPACE )) {
+ PRINT_UTC_LOG("[Line : %d][%s] 'DEVICE_SUITE_TARGET_30' Values Received = %s\\n", __LINE__, API_NAMESPACE, pszValue);
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ anim_src_paths[g_utc_anim_idx] = _utc_get_test_path(pszValue, g_utc_anim_files[g_utc_anim_idx]);
+ FPRINTF("[%d:%s] IMAGE PATH [Decode: %s] \\n", __LINE__, __FUNCTION__, anim_src_paths[g_utc_anim_idx]);
+ }
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ g_utc_anim_output_path[g_utc_anim_type] = _utc_get_test_path(pszValue, g_utc_anim_output_files[g_utc_anim_type]);
+ FPRINTF("[%d:%s] IMAGE PATH [Encode: %s] \\n", __LINE__, __FUNCTION__, g_utc_anim_output_path[g_utc_anim_type]);
+ }
+ } else {
+ PRINT_UTC_LOG("[Line : %d][%s] GetValueForTCTSetting returned error for 'DEVICE_SUITE_TARGET_30'\\n", __LINE__, API_NAMESPACE);
+ return;
+ }
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = _utc_decode_from_file(anim_src_paths[g_utc_anim_idx], &g_utc_anim_images[g_utc_anim_idx]);
+ if (ret != IMAGE_UTIL_ERROR_NONE)
+ FPRINTF("[%d:%s] Startup error! \\n", __LINE__, __FUNCTION__);
+ g_free(anim_src_paths[g_utc_anim_idx]);
+ }
+}
+
+/**
+ * @function utc_image_util_anim_encode_cleanup
+ * @description Called after each test
+ * @parameter NA
+ * @return NA
+ */
+void utc_image_util_anim_encode_cleanup(void)
+{
+ /* end of TC */
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ image_util_destroy_image(g_utc_anim_images[g_utc_anim_idx]);
+ g_utc_anim_images[g_utc_anim_idx] = NULL;
+ }
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ g_free(g_utc_anim_output_path[g_utc_anim_type]);
+ g_utc_anim_output_path[g_utc_anim_type] = NULL;
+
+ g_free(g_utc_anim_output_buffer[g_utc_anim_type].buffer);
+ g_utc_anim_output_buffer[g_utc_anim_type].buffer = NULL;
+
+ image_util_anim_encode_destroy(g_utc_anim_encode_h[g_utc_anim_type]);
+ g_utc_anim_encode_h[g_utc_anim_type] = NULL;
+ }
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_create_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_create
+ */
+int utc_image_util_anim_encode_create_p(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_destroy(g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ g_utc_anim_encode_h[g_utc_anim_type] = NULL;
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_create_n1
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_create
+ */
+int utc_image_util_anim_encode_create_n1(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, NULL);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_create_n2
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_create
+ */
+int utc_image_util_anim_encode_create_n2(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(-1, &g_utc_anim_encode_h[0]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT);
+
+ ret = image_util_anim_encode_create(LAST_ANIM_TYPE + 2, &g_utc_anim_encode_h[0]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_loop_count_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_set_loop_count
+ */
+int utc_image_util_anim_encode_set_loop_count_p(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_loop_count(g_utc_anim_encode_h[g_utc_anim_type], 0);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_loop_count(g_utc_anim_encode_h[g_utc_anim_type], 10);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_loop_count_n
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_set_loop_count
+ */
+int utc_image_util_anim_encode_set_loop_count_n(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_set_loop_count(NULL, 10);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_background_color_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_set_background_color
+ */
+int utc_image_util_anim_encode_set_background_color_p(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_WEBP, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_background_color(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], 0xFF, 0x00, 0x00, 0xFF);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_background_color(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], 0x00, 0xFF, 0x00, 0xFF);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_background_color(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], 0x00, 0x00, 0xFF, 0xFF);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_background_color_n1
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_set_background_color
+ */
+int utc_image_util_anim_encode_set_background_color_n1(void)
+{
+ int ret = IMAGE_UTIL_ERROR_NONE;
+
+ ret = image_util_anim_encode_set_background_color(NULL, 0x00, 0x00, 0x00, 0xFF);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_background_color_n2
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_set_background_color
+ */
+int utc_image_util_anim_encode_set_background_color_n2(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_GIF, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_GIF]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_background_color(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_GIF], 0x00, 0x00, 0x00, 0xFF);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_lossless_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_set_lossless
+ */
+int utc_image_util_anim_encode_set_lossless_p(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_WEBP, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_lossless(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], true);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_lossless(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], false);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_lossless_n1
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_set_lossless
+ */
+int utc_image_util_anim_encode_set_lossless_n1(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_set_lossless(NULL, true);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_set_lossless_n2
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_set_lossless
+ */
+int utc_image_util_anim_encode_set_lossless_n2(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_GIF, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_GIF]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_lossless(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_GIF], true);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_add_frame_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_add_frame
+ */
+int utc_image_util_anim_encode_add_frame_p(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_images[0], 20);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_add_frame_n
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_add_frame
+ */
+int utc_image_util_anim_encode_add_frame_n(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_add_frame(NULL, g_utc_anim_images[0], 20);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], NULL, 20);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_file_p1
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_save_to_file
+ */
+int utc_image_util_anim_encode_save_to_file_p1(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_loop_count(g_utc_anim_encode_h[g_utc_anim_type], 0);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_images[g_utc_anim_idx], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_file(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_output_path[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_file_p2
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_save_to_file
+ */
+int utc_image_util_anim_encode_save_to_file_p2(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_WEBP, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_lossless(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], true);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], g_utc_anim_images[IMAGE_UTIL_ANIM_WEBP], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_file(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], g_utc_anim_output_path[IMAGE_UTIL_ANIM_WEBP]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_file_n1
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_save_to_file
+ */
+int utc_image_util_anim_encode_save_to_file_n1(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_images[g_utc_anim_idx], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_file(NULL, g_utc_anim_output_path[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ ret = image_util_anim_encode_save_to_file(g_utc_anim_encode_h[g_utc_anim_type], NULL);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_file_n2
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_save_to_file
+ */
+int utc_image_util_anim_encode_save_to_file_n2(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_save_to_file(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_output_path[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_buffer_p1
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_save_to_buffer
+ */
+int utc_image_util_anim_encode_save_to_buffer_p1(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_loop_count(g_utc_anim_encode_h[g_utc_anim_type], 0);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_images[g_utc_anim_idx], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_buffer(g_utc_anim_encode_h[g_utc_anim_type],
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer,
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer_size);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ assert_neq(g_utc_anim_output_buffer[g_utc_anim_type].buffer, NULL);
+ assert_gt(g_utc_anim_output_buffer[g_utc_anim_type].buffer_size, 8);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_buffer_p2
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_save_to_buffer
+ */
+int utc_image_util_anim_encode_save_to_buffer_p2(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_create(IMAGE_UTIL_ANIM_WEBP, &g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_set_lossless(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], true);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP], g_utc_anim_images[IMAGE_UTIL_ANIM_WEBP], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_buffer(g_utc_anim_encode_h[IMAGE_UTIL_ANIM_WEBP],
+ &g_utc_anim_output_buffer[IMAGE_UTIL_ANIM_WEBP].buffer,
+ &g_utc_anim_output_buffer[IMAGE_UTIL_ANIM_WEBP].buffer_size);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ assert_neq(g_utc_anim_output_buffer[IMAGE_UTIL_ANIM_WEBP].buffer, NULL);
+ assert_gt(g_utc_anim_output_buffer[IMAGE_UTIL_ANIM_WEBP].buffer_size, 8);
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_buffer_n1
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_save_to_buffer
+ */
+int utc_image_util_anim_encode_save_to_buffer_n1(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ for (g_utc_anim_idx = 0; g_utc_anim_idx < NUM_OF_ANIM_FILES; g_utc_anim_idx++) {
+ ret = image_util_anim_encode_add_frame(g_utc_anim_encode_h[g_utc_anim_type], g_utc_anim_images[g_utc_anim_idx], 100);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ }
+
+ ret = image_util_anim_encode_save_to_buffer(NULL,
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer,
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer_size);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ ret = image_util_anim_encode_save_to_buffer(g_utc_anim_encode_h[g_utc_anim_type],
+ NULL,
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer_size);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ ret = image_util_anim_encode_save_to_buffer(g_utc_anim_encode_h[g_utc_anim_type],
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer,
+ NULL);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_save_to_buffer_n2
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_save_to_buffer
+ */
+int utc_image_util_anim_encode_save_to_buffer_n2(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_save_to_buffer(g_utc_anim_encode_h[g_utc_anim_type],
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer,
+ &g_utc_anim_output_buffer[g_utc_anim_type].buffer_size);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_destroy_p
+ * @since_tizen 6.0
+ * @description Positive test case for image_util_anim_encode_destroy
+ */
+int utc_image_util_anim_encode_destroy_p(void)
+{
+ int ret;
+
+ for (g_utc_anim_type = 0; g_utc_anim_type <= LAST_ANIM_TYPE; g_utc_anim_type++) {
+ ret = image_util_anim_encode_create(g_utc_anim_type, &g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+
+ ret = image_util_anim_encode_destroy(g_utc_anim_encode_h[g_utc_anim_type]);
+ assert_eq(ret, IMAGE_UTIL_ERROR_NONE);
+ g_utc_anim_encode_h[g_utc_anim_type] = NULL;
+ }
+
+ return 0;
+}
+
+/**
+ * @testcase utc_image_util_anim_encode_destroy_n
+ * @since_tizen 6.0
+ * @description Negative test case for image_util_anim_encode_destroy
+ */
+int utc_image_util_anim_encode_destroy_n(void)
+{
+ int ret;
+
+ ret = image_util_anim_encode_destroy(NULL);
+ assert_eq(ret, IMAGE_UTIL_ERROR_INVALID_PARAMETER);
+
+ return 0;
+}