forked from enlightenment/efl
tests/elm: verify image file_set -> memfile_set -> file_set
Summary: ref D11392 Depends on D11397 Reviewers: kimcinoo, Hermet Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11398
This commit is contained in:
parent
1b5ad4740e
commit
526b1e2c72
|
@ -18,6 +18,34 @@ struct _Test_Data
|
||||||
int success;
|
int success;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static int
|
||||||
|
_file_to_memory(const char *filename, char **result)
|
||||||
|
{
|
||||||
|
int size;
|
||||||
|
FILE *f;
|
||||||
|
|
||||||
|
f = fopen(filename, "rb");
|
||||||
|
if (f == NULL)
|
||||||
|
{
|
||||||
|
*result = NULL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fseek(f, 0, SEEK_END);
|
||||||
|
size = ftell(f);
|
||||||
|
fseek(f, 0, SEEK_SET);
|
||||||
|
*result = (char *)malloc(size + 1);
|
||||||
|
if ((size_t)size != fread(*result, sizeof(char), size, f))
|
||||||
|
{
|
||||||
|
free(*result);
|
||||||
|
fclose(f);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
fclose(f);
|
||||||
|
(*result)[size] = 0;
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
EFL_START_TEST(elm_image_legacy_type_check)
|
EFL_START_TEST(elm_image_legacy_type_check)
|
||||||
{
|
{
|
||||||
Evas_Object *win, *image;
|
Evas_Object *win, *image;
|
||||||
|
@ -227,6 +255,28 @@ EFL_START_TEST(elm_image_evas_image_get)
|
||||||
}
|
}
|
||||||
EFL_END_TEST
|
EFL_END_TEST
|
||||||
|
|
||||||
|
EFL_START_TEST(elm_image_test_memfile_set)
|
||||||
|
{
|
||||||
|
Evas_Object *win, *image;
|
||||||
|
char *mem;
|
||||||
|
int size;
|
||||||
|
const char *file = NULL;
|
||||||
|
|
||||||
|
win = win_add(NULL, "image", ELM_WIN_BASIC);
|
||||||
|
|
||||||
|
image = elm_image_add(win);
|
||||||
|
ck_assert(elm_image_file_set(image, ELM_IMAGE_DATA_DIR"/images/icon_01.png", NULL));
|
||||||
|
size = _file_to_memory(ELM_IMAGE_DATA_DIR"/images/icon_02.png", &mem);
|
||||||
|
ck_assert_int_ge(size, 0);
|
||||||
|
ck_assert(elm_image_memfile_set(image, mem, size, "png", NULL));
|
||||||
|
elm_image_file_get(image, &file, NULL);
|
||||||
|
ck_assert_str_ne(file, ELM_IMAGE_DATA_DIR"/images/icon_01.png");
|
||||||
|
ck_assert(elm_image_file_set(image, ELM_IMAGE_DATA_DIR"/images/icon_01.png", NULL));
|
||||||
|
elm_image_file_get(image, &file, NULL);
|
||||||
|
ck_assert_str_eq(file, ELM_IMAGE_DATA_DIR"/images/icon_01.png");
|
||||||
|
}
|
||||||
|
EFL_END_TEST
|
||||||
|
|
||||||
void elm_test_image(TCase *tc)
|
void elm_test_image(TCase *tc)
|
||||||
{
|
{
|
||||||
tcase_add_test(tc, elm_image_legacy_type_check);
|
tcase_add_test(tc, elm_image_legacy_type_check);
|
||||||
|
@ -235,4 +285,5 @@ void elm_test_image(TCase *tc)
|
||||||
tcase_add_test(tc, elm_image_async_mmap);
|
tcase_add_test(tc, elm_image_async_mmap);
|
||||||
tcase_add_test(tc, elm_image_evas_object_color_set);
|
tcase_add_test(tc, elm_image_evas_object_color_set);
|
||||||
tcase_add_test(tc, elm_image_evas_image_get);
|
tcase_add_test(tc, elm_image_evas_image_get);
|
||||||
|
tcase_add_test(tc, elm_image_test_memfile_set);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue