20
_done_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED)
22
ecore_main_loop_quit();
26
_open_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, Eina_File *ef)
29
ecore_main_loop_quit();
33
_filter_cb(void *data, Eio_File *handler EINA_UNUSED, void *map, size_t length)
36
size_t len = strlen(str);
38
fail_if(len != length);
39
fail_if(memcmp(data, map, length) != 0);
44
_map_cb(void *datai EINA_UNUSED, Eio_File *handler EINA_UNUSED, void *map EINA_UNUSED, size_t length EINA_UNUSED)
46
ecore_main_loop_quit();
50
_error_cb(void *data EINA_UNUSED, Eio_File *handler EINA_UNUSED, int error)
52
fprintf(stderr, "Error:%s\n", strerror(error));
53
ecore_main_loop_quit();
56
EFL_START_TEST(eio_test_map_simple)
59
const char *file = "eio_map_exampleXXXXXX.txt";
60
const char *data = "This is the data to save in file";
62
Eina_Tmpstr *file_path;
64
fd = eina_file_mkstemp(file, &file_path);
66
fail_if(write(fd, data, strlen(data)) != (ssize_t)strlen(data));
69
ef = eio_file_open(file_path, EINA_FALSE, _open_cb, _error_cb, NULL);
70
ecore_main_loop_begin();
73
ef = eio_file_map_all(eie, EINA_FILE_POPULATE, _filter_cb, _map_cb,
75
ecore_main_loop_begin();
78
ef = eio_file_map_new(eie, EINA_FILE_WILLNEED, 0, strlen(data), _filter_cb,
79
_map_cb, _error_cb, data);
80
ecore_main_loop_begin();
83
ef = eio_file_close(eie, _done_cb, _error_cb, NULL);
84
ecore_main_loop_begin();
88
eina_tmpstr_del(file_path);
93
eio_test_map(TCase *tc)
95
tcase_add_test(tc, eio_test_map_simple);