static void
check(void)
{
- Eina_List *list;
- Efreet_Desktop *desktop, *desktop2;
- double start;
- const char *id;
-
- // EAPI char *efreet_util_path_to_file_id(const char *path);
- start = ecore_time_get();
- id = efreet_util_path_to_file_id("/usr/share/applications/gnome-panel.desktop");
- if (id)
- {
+ Eina_List *list;
+ Efreet_Desktop *desktop, *desktop2;
+ double start;
+ const char *id;
+
+ // EAPI char *efreet_util_path_to_file_id(const char *path);
+ start = ecore_time_get();
+ id = efreet_util_path_to_file_id("/usr/share/applications/gnome-panel.desktop");
+ if (id)
+ {
printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): %s %.6f\n", id, (ecore_time_get() - start));
- }
- else
- printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): NULL %.6f\n", (ecore_time_get() - start));
-
- //EAPI Efreet_Desktop *efreet_util_desktop_name_find(const char *name);
- start = ecore_time_get();
- desktop = efreet_util_desktop_name_find("Evolution");
- if (desktop)
- printf("efreet_util_desktop_name_find(Evolution): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
- else
- printf("efreet_util_desktop_name_find(Evolution): NULL %.6f\n", (ecore_time_get() - start));
- efreet_desktop_free(desktop);
-
- //EAPI Efreet_Desktop *efreet_util_desktop_generic_name_find(const char *generic_name);
- start = ecore_time_get();
- desktop = efreet_util_desktop_generic_name_find("Spreadsheet");
- if (desktop)
- printf("efreet_util_desktop_generic_name_find(Spreadsheet): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
- else
- printf("efreet_util_desktop_generic_name_find(Spreadsheet): NULL %.6f\n", (ecore_time_get() - start));
- efreet_desktop_free(desktop);
-
- //EAPI Efreet_Desktop *efreet_util_desktop_wm_class_find(const char *wmname, const char *wmclass);
- start = ecore_time_get();
- desktop = efreet_util_desktop_wm_class_find("Firefox", NULL);
- if (desktop)
- printf("efreet_util_desktop_wm_class_find(Firefox): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
- else
- printf("efreet_util_desktop_wm_class_find(Firefox): NULL %.6f\n", (ecore_time_get() - start));
- efreet_desktop_free(desktop);
-
- //EAPI Efreet_Desktop *efreet_util_desktop_exec_find(const char *exec);
- start = ecore_time_get();
- desktop = efreet_util_desktop_exec_find("/usr/bin/update-manager");
- if (desktop)
- printf("efreet_util_desktop_exec_find(update-manager): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
- else
- printf("efreet_util_desktop_exec_find(update-manager): NULL %.6f\n", (ecore_time_get() - start));
- efreet_desktop_free(desktop);
-
- //EAPI Eina_List *efreet_util_desktop_name_glob_list(const char *glob);
- start = ecore_time_get();
- list = efreet_util_desktop_name_glob_list("Ubuntu*");
- if (list)
- {
+ }
+ else
+ printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): NULL %.6f\n", (ecore_time_get() - start));
+
+ //EAPI Efreet_Desktop *efreet_util_desktop_name_find(const char *name);
+ start = ecore_time_get();
+ desktop = efreet_util_desktop_name_find("Evolution");
+ if (desktop)
+ printf("efreet_util_desktop_name_find(Evolution): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
+ else
+ printf("efreet_util_desktop_name_find(Evolution): NULL %.6f\n", (ecore_time_get() - start));
+ efreet_desktop_free(desktop);
+
+ //EAPI Efreet_Desktop *efreet_util_desktop_generic_name_find(const char *generic_name);
+ start = ecore_time_get();
+ desktop = efreet_util_desktop_generic_name_find("Spreadsheet");
+ if (desktop)
+ printf("efreet_util_desktop_generic_name_find(Spreadsheet): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
+ else
+ printf("efreet_util_desktop_generic_name_find(Spreadsheet): NULL %.6f\n", (ecore_time_get() - start));
+ efreet_desktop_free(desktop);
+
+ //EAPI Efreet_Desktop *efreet_util_desktop_wm_class_find(const char *wmname, const char *wmclass);
+ start = ecore_time_get();
+ desktop = efreet_util_desktop_wm_class_find("Firefox", NULL);
+ if (desktop)
+ printf("efreet_util_desktop_wm_class_find(Firefox): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
+ else
+ printf("efreet_util_desktop_wm_class_find(Firefox): NULL %.6f\n", (ecore_time_get() - start));
+ efreet_desktop_free(desktop);
+
+ //EAPI Efreet_Desktop *efreet_util_desktop_exec_find(const char *exec);
+ start = ecore_time_get();
+ desktop = efreet_util_desktop_exec_find("/usr/bin/update-manager");
+ if (desktop)
+ printf("efreet_util_desktop_exec_find(update-manager): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
+ else
+ printf("efreet_util_desktop_exec_find(update-manager): NULL %.6f\n", (ecore_time_get() - start));
+ efreet_desktop_free(desktop);
+
+ //EAPI Eina_List *efreet_util_desktop_name_glob_list(const char *glob);
+ start = ecore_time_get();
+ list = efreet_util_desktop_name_glob_list("Ubuntu*");
+ if (list)
+ {
EINA_LIST_FREE(list, desktop)
- {
- printf("efreet_util_desktop_name_glob_list(Ubuntu*): %s\n", desktop->name);
- efreet_desktop_free(desktop);
- }
- }
- printf("time: %.6f\n", (ecore_time_get() - start));
-
- //EAPI Eina_List *efreet_util_desktop_mime_list(const char *mime);
- start = ecore_time_get();
- list = efreet_util_desktop_mime_list("application/ogg");
- if (list)
- {
+ {
+ printf("efreet_util_desktop_name_glob_list(Ubuntu*): %s\n", desktop->name);
+ efreet_desktop_free(desktop);
+ }
+ }
+ printf("time: %.6f\n", (ecore_time_get() - start));
+
+ //EAPI Eina_List *efreet_util_desktop_mime_list(const char *mime);
+ start = ecore_time_get();
+ list = efreet_util_desktop_mime_list("application/ogg");
+ if (list)
+ {
EINA_LIST_FREE(list, desktop)
- {
- printf("efreet_util_desktop_mime_list(application/ogg): %s\n", desktop->name);
- efreet_desktop_free(desktop);
- }
- }
- printf("time: %.6f\n", (ecore_time_get() - start));
-
- //EAPI Eina_List *efreet_util_desktop_exec_glob_list(const char *glob);
- start = ecore_time_get();
- list = efreet_util_desktop_exec_glob_list("*gnome*");
- if (list)
- {
+ {
+ printf("efreet_util_desktop_mime_list(application/ogg): %s\n", desktop->name);
+ efreet_desktop_free(desktop);
+ }
+ }
+ printf("time: %.6f\n", (ecore_time_get() - start));
+
+ //EAPI Eina_List *efreet_util_desktop_exec_glob_list(const char *glob);
+ start = ecore_time_get();
+ list = efreet_util_desktop_exec_glob_list("*gnome*");
+ if (list)
+ {
EINA_LIST_FREE(list, desktop)
- {
- printf("efreet_util_desktop_exec_glob_list(*gnome*): %s\n", desktop->exec);
- efreet_desktop_free(desktop);
- }
- }
- printf("time: %.6f\n", (ecore_time_get() - start));
-
- //EAPI Eina_List *efreet_util_desktop_categories_list(void);
- start = ecore_time_get();
- list = efreet_util_desktop_categories_list();
- if (list)
- {
+ {
+ printf("efreet_util_desktop_exec_glob_list(*gnome*): %s\n", desktop->exec);
+ efreet_desktop_free(desktop);
+ }
+ }
+ printf("time: %.6f\n", (ecore_time_get() - start));
+
+ //EAPI Eina_List *efreet_util_desktop_categories_list(void);
+ start = ecore_time_get();
+ list = efreet_util_desktop_categories_list();
+ if (list)
+ {
EINA_LIST_FREE(list, id)
- {
- printf("efreet_util_desktop_categories_list(): %s\n", id);
- }
- }
- printf("time: %.6f\n", (ecore_time_get() - start));
-
- //EAPI Eina_List *efreet_util_desktop_category_list(const char *category);
- start = ecore_time_get();
- list = efreet_util_desktop_category_list("Graphics");
- if (list)
- {
+ {
+ printf("efreet_util_desktop_categories_list(): %s\n", id);
+ }
+ }
+ printf("time: %.6f\n", (ecore_time_get() - start));
+
+ //EAPI Eina_List *efreet_util_desktop_category_list(const char *category);
+ start = ecore_time_get();
+ list = efreet_util_desktop_category_list("Graphics");
+ if (list)
+ {
EINA_LIST_FREE(list, desktop)
- {
- printf("efreet_util_desktop_category_list(Graphics): %s\n", desktop->name);
- efreet_desktop_free(desktop);
- }
- }
- printf("time: %.6f\n", (ecore_time_get() - start));
-
- desktop = efreet_desktop_get("/opt/google/chrome/google-chrome.desktop");
- if (desktop)
- printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
- desktop2 = efreet_desktop_new("/opt/google/chrome/google-chrome.desktop");
- if (desktop2)
- {
+ {
+ printf("efreet_util_desktop_category_list(Graphics): %s\n", desktop->name);
+ efreet_desktop_free(desktop);
+ }
+ }
+ printf("time: %.6f\n", (ecore_time_get() - start));
+
+ desktop = efreet_desktop_get("/opt/google/chrome/google-chrome.desktop");
+ if (desktop)
+ printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
+ desktop2 = efreet_desktop_new("/opt/google/chrome/google-chrome.desktop");
+ if (desktop2)
+ {
printf("%s: %d %d\n", desktop2->orig_path, desktop2->ref, desktop2->eet);
efreet_desktop_free(desktop2);
- }
- if (desktop)
- efreet_desktop_free(desktop);
-
- desktop = efreet_desktop_get("/usr/share/applications/firefox.desktop");
- if (desktop)
- printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
- desktop2 = efreet_desktop_new("/usr/share/applications/firefox.desktop");
- if (desktop2)
- {
+ }
+ if (desktop)
+ efreet_desktop_free(desktop);
+
+ desktop = efreet_desktop_get("/usr/share/applications/firefox.desktop");
+ if (desktop)
+ printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
+ desktop2 = efreet_desktop_new("/usr/share/applications/firefox.desktop");
+ if (desktop2)
+ {
printf("%s: %d %d\n", desktop2->orig_path, desktop2->ref, desktop2->eet);
efreet_desktop_free(desktop2);
- }
- if (desktop)
- efreet_desktop_free(desktop);
- fflush(stdout);
+ }
+ if (desktop)
+ efreet_desktop_free(desktop);
+ fflush(stdout);
}
static Eina_Bool
icon_handler_cb(void *data EINA_UNUSED, int event_type EINA_UNUSED, void *event EINA_UNUSED)
{
- icon_cb = EINA_TRUE;
- if (icon_cb && desktop_cb)
- {
+ icon_cb = EINA_TRUE;
+ if (icon_cb && desktop_cb)
+ {
check();
ecore_main_loop_quit();
- }
- return ECORE_CALLBACK_PASS_ON;
+ }
+ return ECORE_CALLBACK_PASS_ON;
}
static Eina_Bool
desktop_handler_cb(void *data EINA_UNUSED, int event_type EINA_UNUSED, void *event EINA_UNUSED)
{
- desktop_cb = EINA_TRUE;
- if (icon_cb && desktop_cb)
- {
+ desktop_cb = EINA_TRUE;
+ if (icon_cb && desktop_cb)
+ {
check();
ecore_main_loop_quit();
- }
- return ECORE_CALLBACK_PASS_ON;
+ }
+ return ECORE_CALLBACK_PASS_ON;
}
int
main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
{
- Ecore_Event_Handler *icon_handler;
- Ecore_Event_Handler *desktop_handler;
-
- if (!efreet_init()) return 1;
- icon_handler = ecore_event_handler_add(EFREET_EVENT_ICON_CACHE_UPDATE, icon_handler_cb, NULL);
- desktop_handler = ecore_event_handler_add(EFREET_EVENT_DESKTOP_CACHE_UPDATE, desktop_handler_cb, NULL);
- check();
- ecore_main_loop_begin();
- ecore_event_handler_del(icon_handler);
- ecore_event_handler_del(desktop_handler);
- efreet_shutdown();
- return 0;
+ Ecore_Event_Handler *icon_handler;
+ Ecore_Event_Handler *desktop_handler;
+
+ if (!efreet_init()) return 1;
+ icon_handler = ecore_event_handler_add(EFREET_EVENT_ICON_CACHE_UPDATE, icon_handler_cb, NULL);
+ desktop_handler = ecore_event_handler_add(EFREET_EVENT_DESKTOP_CACHE_UPDATE, desktop_handler_cb, NULL);
+ check();
+ ecore_main_loop_begin();
+ ecore_event_handler_del(icon_handler);
+ ecore_event_handler_del(desktop_handler);
+ efreet_shutdown();
+ return 0;
}
int
ef_cb_efreet_data_home(void)
{
- const char *tmp;
- int ret = 1;
+ const char *tmp;
+ int ret = 1;
- efreet_shutdown();
- setenv("XDG_DATA_HOME", "/var/tmp", 1);
- efreet_init();
+ efreet_shutdown();
+ setenv("XDG_DATA_HOME", "/var/tmp", 1);
+ efreet_init();
- tmp = efreet_data_home_get();
- if (strcmp(tmp, "/var/tmp"))
- {
+ tmp = efreet_data_home_get();
+ if (strcmp(tmp, "/var/tmp"))
+ {
printf("efreet_data_home_get() returned incorrect "
- "value (%s) on XDG_DATA_HOME=/var/tmp\n", tmp);
+ "value (%s) on XDG_DATA_HOME=/var/tmp\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_DATA_HOME");
- setenv("HOME", "/home/tmp", 1);
- efreet_init();
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_DATA_HOME");
+ setenv("HOME", "/home/tmp", 1);
+ efreet_init();
- tmp = efreet_data_home_get();
- if (strcmp(tmp, "/home/tmp/.local/share"))
- {
+ tmp = efreet_data_home_get();
+ if (strcmp(tmp, "/home/tmp/.local/share"))
+ {
printf("efreet_data_home_get() returned incorrect "
- "value (%s) on blank XDG_DATA_HOME\n", tmp);
+ "value (%s) on blank XDG_DATA_HOME\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_DATA_HOME");
- unsetenv("HOME");
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_DATA_HOME");
+ unsetenv("HOME");
#ifdef _WIN32
- unsetenv("USERPROFILE");
+ unsetenv("USERPROFILE");
#endif
- efreet_init();
+ efreet_init();
- tmp = efreet_data_home_get();
- if (strcmp(tmp, "/tmp/.local/share"))
- {
+ tmp = efreet_data_home_get();
+ if (strcmp(tmp, "/tmp/.local/share"))
+ {
printf("efreet_data_home_get() returned incorrect "
- "value (%s) on blank XDG_DATA_HOME and blank HOME\n", tmp);
+ "value (%s) on blank XDG_DATA_HOME and blank HOME\n", tmp);
ret = 0;
- }
+ }
- return ret;
+ return ret;
}
int
ef_cb_efreet_config_home(void)
{
- const char *tmp;
- int ret = 1;
+ const char *tmp;
+ int ret = 1;
- efreet_shutdown();
- setenv("XDG_CONFIG_HOME", "/var/tmp", 1);
- efreet_init();
+ efreet_shutdown();
+ setenv("XDG_CONFIG_HOME", "/var/tmp", 1);
+ efreet_init();
- tmp = efreet_config_home_get();
- if (strcmp(tmp, "/var/tmp"))
- {
+ tmp = efreet_config_home_get();
+ if (strcmp(tmp, "/var/tmp"))
+ {
printf("efreet_config_home_get() returned incorrect "
- "value (%s) on XDG_CONFIG_HOME=/var/tmp\n", tmp);
+ "value (%s) on XDG_CONFIG_HOME=/var/tmp\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_CONFIG_HOME");
- setenv("HOME", "/home/tmp", 1);
- efreet_init();
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_CONFIG_HOME");
+ setenv("HOME", "/home/tmp", 1);
+ efreet_init();
- tmp = efreet_config_home_get();
- if (strcmp(tmp, "/home/tmp/.config"))
- {
+ tmp = efreet_config_home_get();
+ if (strcmp(tmp, "/home/tmp/.config"))
+ {
printf("efreet_config_home_get() returned incorrect "
- "value (%s) on blank XDG_CONFIG_HOME\n", tmp);
+ "value (%s) on blank XDG_CONFIG_HOME\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_CONFIG_HOME");
- unsetenv("HOME");
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_CONFIG_HOME");
+ unsetenv("HOME");
#ifdef _WIN32
- unsetenv("USERPROFILE");
+ unsetenv("USERPROFILE");
#endif
- efreet_init();
+ efreet_init();
- tmp = efreet_config_home_get();
- if (strcmp(tmp, "/tmp/.config"))
- {
+ tmp = efreet_config_home_get();
+ if (strcmp(tmp, "/tmp/.config"))
+ {
printf("efreet_config_home_get() returned incorrect "
- "value (%s) on blank XDG_CONFIG_HOME and blank HOME\n", tmp);
+ "value (%s) on blank XDG_CONFIG_HOME and blank HOME\n", tmp);
ret = 0;
- }
+ }
- return ret;
+ return ret;
}
int
ef_cb_efreet_cache_home(void)
{
- const char *tmp;
- int ret = 1;
+ const char *tmp;
+ int ret = 1;
- efreet_shutdown();
- setenv("XDG_CACHE_HOME", "/var/tmp", 1);
- efreet_init();
+ efreet_shutdown();
+ setenv("XDG_CACHE_HOME", "/var/tmp", 1);
+ efreet_init();
- tmp = efreet_cache_home_get();
- if (strcmp(tmp, "/var/tmp"))
- {
+ tmp = efreet_cache_home_get();
+ if (strcmp(tmp, "/var/tmp"))
+ {
printf("efreet_cache_home_get() returned incorrect "
- "value (%s) on XDG_CACHE_HOME=/var/tmp\n", tmp);
+ "value (%s) on XDG_CACHE_HOME=/var/tmp\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_CACHE_HOME");
- setenv("HOME", "/home/tmp", 1);
- efreet_init();
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_CACHE_HOME");
+ setenv("HOME", "/home/tmp", 1);
+ efreet_init();
- tmp = efreet_cache_home_get();
- if (strcmp(tmp, "/home/tmp/.cache"))
- {
+ tmp = efreet_cache_home_get();
+ if (strcmp(tmp, "/home/tmp/.cache"))
+ {
printf("efreet_cache_home_get() returned incorrect "
- "value (%s) on blank XDG_CACHE_HOME\n", tmp);
+ "value (%s) on blank XDG_CACHE_HOME\n", tmp);
ret = 0;
- }
+ }
- /* reset efreet here so we can set a new home dir */
- efreet_shutdown();
- unsetenv("XDG_CACHE_HOME");
- unsetenv("HOME");
+ /* reset efreet here so we can set a new home dir */
+ efreet_shutdown();
+ unsetenv("XDG_CACHE_HOME");
+ unsetenv("HOME");
#ifdef _WIN32
- unsetenv("USERPROFILE");
+ unsetenv("USERPROFILE");
#endif
- efreet_init();
+ efreet_init();
- tmp = efreet_cache_home_get();
- if (strcmp(tmp, "/tmp/.cache"))
- {
+ tmp = efreet_cache_home_get();
+ if (strcmp(tmp, "/tmp/.cache"))
+ {
printf("efreet_cache_home_get() returned incorrect "
- "value (%s) on blank XDG_CACHE_HOME and blank HOME\n", tmp);
+ "value (%s) on blank XDG_CACHE_HOME and blank HOME\n", tmp);
ret = 0;
- }
+ }
- return ret;
+ return ret;
}
int
ef_cb_efreet_data_dirs(void)
{
- Eina_List *tmp, *l;
- int ret = 1;
- unsigned int i;
- unsigned int ok;
- char dirs[128], *val;
- char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
- char *def_vals[] = {DATA_DIR, "/usr/share", "/usr/local/share", NULL};
-
- dirs[0] = '\0';
- for (i = 0; vals[i]; i++)
- {
+ Eina_List *tmp, *l;
+ int ret = 1;
+ unsigned int i;
+ unsigned int ok;
+ char dirs[128], *val;
+ char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
+ char *def_vals[] = {DATA_DIR, "/usr/share", "/usr/local/share", NULL};
+
+ dirs[0] = '\0';
+ for (i = 0; vals[i]; i++)
+ {
if (i > 0) strcat(dirs, ":");
strcat(dirs, vals[i]);
- }
+ }
- efreet_shutdown();
- setenv("XDG_DATA_DIRS", dirs, 1);
- efreet_init();
+ efreet_shutdown();
+ setenv("XDG_DATA_DIRS", dirs, 1);
+ efreet_init();
- ok = 0;
- tmp = efreet_data_dirs_get();
- for (i = 0; vals[i]; i++)
- {
+ ok = 0;
+ tmp = efreet_data_dirs_get();
+ for (i = 0; vals[i]; i++)
+ {
char *found;
found = eina_list_search_unsorted(tmp, EINA_COMPARE_CB(strcmp), vals[i]);
if (!ecore_file_exists(vals[i]) && found)
- {
- printf("efreet_data_dirs_get() includes non-existing dir (%s) when "
- "%s set\n", vals[i], dirs);
- ret = 0;
- continue;
- }
+ {
+ printf("efreet_data_dirs_get() includes non-existing dir (%s) when "
+ "%s set\n", vals[i], dirs);
+ ret = 0;
+ continue;
+ }
if (ecore_file_exists(vals[i]) && !found)
- {
- printf("efreet_data_dirs_get() is missing dir (%s) when "
- "%s set\n", vals[i], dirs);
- ret = 0;
- continue;
- }
+ {
+ printf("efreet_data_dirs_get() is missing dir (%s) when "
+ "%s set\n", vals[i], dirs);
+ ret = 0;
+ continue;
+ }
if (ecore_file_exists(vals[i]) && found)
- ok++;
- }
- if (eina_list_count(tmp) != ok)
- {
+ ok++;
+ }
+ if (eina_list_count(tmp) != ok)
+ {
printf("efreet_data_dirs_get() returned more values then it "
"should have given %s as input\n", dirs);
ret = 0;
- }
+ }
- efreet_shutdown();
- unsetenv("XDG_DATA_DIRS");
- efreet_init();
+ efreet_shutdown();
+ unsetenv("XDG_DATA_DIRS");
+ efreet_init();
- i = 0;
- tmp = efreet_data_dirs_get();
- if (eina_list_count(tmp) != 3)
- {
+ i = 0;
+ tmp = efreet_data_dirs_get();
+ if (eina_list_count(tmp) != 3)
+ {
printf("efreet_data_dirs_get() nodes is differnet from expected default\n");
ret = 0;
- }
+ }
- EINA_LIST_FOREACH(tmp, l, val)
- {
+ EINA_LIST_FOREACH(tmp, l, val)
+ {
if (!def_vals[i])
- {
- printf("efreet_data_dirs_get() returned more values then it "
+ {
+ printf("efreet_data_dirs_get() returned more values then it "
"should have given %s as input\n", dirs);
- ret = 0;
- break;
- }
+ ret = 0;
+ break;
+ }
if (strcmp(val, def_vals[i]))
- {
- printf("efreet_data_dirs_get() returned incorrect value (%s) when "
+ {
+ printf("efreet_data_dirs_get() returned incorrect value (%s) when "
"XDG_DATA_DIRS= is set %s\n", val, def_vals[i]);
- ret = 0;
- }
+ ret = 0;
+ }
i++;
- }
- return ret;
+ }
+ return ret;
}
int
ef_cb_efreet_config_dirs(void)
{
- Eina_List *tmp, *l;
- int ret = 1;
- unsigned int i;
- unsigned int ok;
- char dirs[128], *val;
- char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
- char *def_vals[] = {"/etc/xdg", NULL};
-
- dirs[0] = '\0';
-
- for (i = 0; vals[i]; i++)
- {
+ Eina_List *tmp, *l;
+ int ret = 1;
+ unsigned int i;
+ unsigned int ok;
+ char dirs[128], *val;
+ char *vals[] = {"/var/tmp/a", "/tmp/b", "/usr/local/share", "/etc", NULL};
+ char *def_vals[] = {"/etc/xdg", NULL};
+
+ dirs[0] = '\0';
+
+ for (i = 0; vals[i]; i++)
+ {
if (i > 0) strcat(dirs, ":");
strcat(dirs, vals[i]);
- }
+ }
- efreet_shutdown();
- setenv("XDG_CONFIG_DIRS", dirs, 1);
- efreet_init();
+ efreet_shutdown();
+ setenv("XDG_CONFIG_DIRS", dirs, 1);
+ efreet_init();
- ok = 0;
- tmp = efreet_config_dirs_get();
- for (i = 0; vals[i]; i++)
- {
+ ok = 0;
+ tmp = efreet_config_dirs_get();
+ for (i = 0; vals[i]; i++)
+ {
char *found;
found = eina_list_search_unsorted(tmp, EINA_COMPARE_CB(strcmp), vals[i]);
if (!ecore_file_exists(vals[i]) && found)
- {
- printf("efreet_data_dirs_get() includes non-existing dir (%s) when "
- "%s set\n", vals[i], dirs);
- ret = 0;
- continue;
- }
+ {
+ printf("efreet_data_dirs_get() includes non-existing dir (%s) when "
+ "%s set\n", vals[i], dirs);
+ ret = 0;
+ continue;
+ }
if (ecore_file_exists(vals[i]) && !found)
- {
- printf("efreet_data_dirs_get() is missing dir (%s) when "
- "%s set\n", vals[i], dirs);
- ret = 0;
- continue;
- }
+ {
+ printf("efreet_data_dirs_get() is missing dir (%s) when "
+ "%s set\n", vals[i], dirs);
+ ret = 0;
+ continue;
+ }
if (ecore_file_exists(vals[i]) && found)
- ok++;
- }
- if (eina_list_count(tmp) != ok)
- {
+ ok++;
+ }
+ if (eina_list_count(tmp) != ok)
+ {
printf("efreet_data_dirs_get() returned more values then it "
"should have given %s as input\n", dirs);
ret = 0;
- }
+ }
- efreet_shutdown();
- unsetenv("XDG_CONFIG_DIRS");
- efreet_init();
+ efreet_shutdown();
+ unsetenv("XDG_CONFIG_DIRS");
+ efreet_init();
- i = 0;
- tmp = efreet_config_dirs_get();
- EINA_LIST_FOREACH(tmp, l, val)
- {
+ i = 0;
+ tmp = efreet_config_dirs_get();
+ EINA_LIST_FOREACH(tmp, l, val)
+ {
if (!def_vals[i])
- {
- printf("efreet_config_dirs_get() returned more values then it "
+ {
+ printf("efreet_config_dirs_get() returned more values then it "
"should have given %s as input\n", dirs);
- ret = 0;
- break;
- }
+ ret = 0;
+ break;
+ }
if (strcmp(val, def_vals[i]))
- {
- printf("efreet_config_dirs_get() returned incorrect value (%s) when "
+ {
+ printf("efreet_config_dirs_get() returned incorrect value (%s) when "
"XDG_CONFIG_DIRS= is set\n", val);
- ret = 0;
- }
+ ret = 0;
+ }
i++;
- }
- return ret;
+ }
+ return ret;
}
#include <limits.h>
#include "ef_test.h"
-static void *_cb_command(void *data, Efreet_Desktop *desktop, char *exec, int remaining);
+typedef struct
+{
+ Eina_List *expected;
+ int error;
+ char type;
+} Test_Info;
+
+static void *
+_cb_command(void *data, Efreet_Desktop *desktop EINA_UNUSED,
+ char *exec, int remaining EINA_UNUSED)
+{
+ Test_Info *info = data;
+ char *expected;
+
+ expected = eina_list_data_get(info->expected);
+ info->expected = eina_list_demote_list(info->expected, info->expected);
+ if (!expected)
+ {
+ printf(" ERROR: (%%%c) got \"%s\", expected nothing\n",
+ info->type, exec);
+ info->error++;
+ }
+ else
+ {
+ if (strcmp(exec, expected))
+ {
+ printf(" ERROR: (%%%c) got \"%s\", expected \"%s\"\n",
+ info->type, exec, expected);
+ info->error++;
+ }
+ }
+ free(exec);
+ return NULL;
+}
int
ef_cb_desktop_parse(void)
{
- Efreet_Desktop *desktop;
- Eina_List *l;
- int ret = 1;
+ Efreet_Desktop *desktop;
+ Eina_List *l;
+ int ret = 1;
- desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
- if (!desktop)
- {
+ desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
+ if (!desktop)
+ {
printf("No desktop found.\n");
return 0;
- }
+ }
- if (!desktop->name || strcmp(desktop->name, "Efreet Test Application"))
- {
+ if (!desktop->name || strcmp(desktop->name, "Efreet Test Application"))
+ {
printf("Invalid Name\n");
ret = 0;
- }
+ }
- if (!desktop->generic_name ||
- strcmp(desktop->generic_name, "Test Application"))
- {
+ if (!desktop->generic_name ||
+ strcmp(desktop->generic_name, "Test Application"))
+ {
printf("Incorrent GenericName\n");
ret = 0;
- }
+ }
- if (!desktop->exec || strcmp(desktop->exec, "efreet_test %F %i"))
- {
+ if (!desktop->exec || strcmp(desktop->exec, "efreet_test %F %i"))
+ {
printf("Incorrect Exec (%s)\n", (desktop->exec ? desktop->exec : "(null)"));
ret = 0;
- }
+ }
- if (desktop->categories)
- {
+ if (desktop->categories)
+ {
const char *categories[] = {"Test", "Enlightenment"};
const char *cat;
int num_categories = 2, i = 0;
- EINA_LIST_FOREACH(desktop->categories, l, cat)
- {
- if (i >= num_categories)
- {
- printf("Too many categories found.\n");
- ret = 0;
- break;
- }
-
- if (!cat || !categories[i] || strcmp(cat, categories[i]))
- {
- printf("Expected category %s, found %s\n", categories[i], cat);
- ret = 0;
- }
- i++;
- }
- }
- else ret = 0;
-
- efreet_desktop_free(desktop);
-
- return ret;
+ EINA_LIST_FOREACH(desktop->categories, l, cat)
+ {
+ if (i >= num_categories)
+ {
+ printf("Too many categories found.\n");
+ ret = 0;
+ break;
+ }
+
+ if (!cat || !categories[i] || strcmp(cat, categories[i]))
+ {
+ printf("Expected category %s, found %s\n", categories[i], cat);
+ ret = 0;
+ }
+ i++;
+ }
+ }
+ else ret = 0;
+
+ efreet_desktop_free(desktop);
+
+ return ret;
}
#if 0
int
ef_cb_desktop_file_id(void)
{
- Efreet_Desktop *desktop;
- int ret = 1;
+ Efreet_Desktop *desktop;
+ int ret = 1;
- desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
- if (desktop)
- {
+ desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
+ if (desktop)
+ {
const char *id;
int i = 0;
struct {
- char *dir;
- int legacy;
- char *prefix;
- char *expected;
+ char *dir;
+ int legacy;
+ char *prefix;
+ char *expected;
} tests[] = {
- // TODO: once enabled fix to remove PACKAGE_DATA_DIR
- {PACKAGE_DATA_DIR"/test/", 0, NULL, "test.desktop"},
- {PACKAGE_DATA_DIR"/", 0, NULL, "test-test.desktop"},
- {PACKAGE_DATA_DIR"/", 1, NULL, "test.desktop"},
- {PACKAGE_DATA_DIR"/", 1, "prefix", "prefix-test.desktop"},
- {NULL, 0, NULL, NULL}
+ // TODO: once enabled fix to remove PACKAGE_DATA_DIR
+ {PACKAGE_DATA_DIR"/test/", 0, NULL, "test.desktop"},
+ {PACKAGE_DATA_DIR"/", 0, NULL, "test-test.desktop"},
+ {PACKAGE_DATA_DIR"/", 1, NULL, "test.desktop"},
+ {PACKAGE_DATA_DIR"/", 1, "prefix", "prefix-test.desktop"},
+ {NULL, 0, NULL, NULL}
};
for (i = 0; tests[i].dir != NULL; i++)
- {
- id = efreet_desktop_id_get(desktop,
- tests[i].dir,
- tests[i].legacy,
- tests[i].prefix);
- if (!id || strcmp(id, tests[i].expected))
- {
- printf("Expecting id: %s, got: %s\n", tests[i].expected, id);
- ret = 0;
- }
- if (id) eina_stringshare_del(id);
- }
- }
- else
- ret = 0;
-
- return ret;
+ {
+ id = efreet_desktop_id_get(desktop,
+ tests[i].dir,
+ tests[i].legacy,
+ tests[i].prefix);
+ if (!id || strcmp(id, tests[i].expected))
+ {
+ printf("Expecting id: %s, got: %s\n", tests[i].expected, id);
+ ret = 0;
+ }
+ if (id) eina_stringshare_del(id);
+ }
+ }
+ else
+ ret = 0;
+
+ return ret;
}
#endif
int
ef_cb_desktop_save(void)
{
- Efreet_Desktop *desktop;
-
- printf("\n");
-
- if (eina_file_copy(ef_test_path_get("test.desktop"),
- "/tmp/test.desktop", 0, NULL, NULL))
- {
- desktop = efreet_desktop_get("/tmp/test.desktop");
- if (!desktop)
- {
- unlink("/tmp/test.desktop");
- printf("Failed to get Desktop file\n");
- return 0;
- }
-
- printf("save data: %d\n", efreet_desktop_save(desktop));
- efreet_desktop_free(desktop);
- unlink("/tmp/test.desktop");
- }
-
- desktop = efreet_desktop_empty_new("/tmp/test.desktop");
- desktop->name = strdup("Efreet Test Application");
- desktop->type = EFREET_DESKTOP_TYPE_APPLICATION;
- desktop->generic_name = strdup("Test Application");
- desktop->exec = strdup("efreet_test");
- desktop->categories = NULL;
- desktop->categories = eina_list_append(desktop->categories, eina_stringshare_add("Test"));
- desktop->categories = eina_list_append(desktop->categories, eina_stringshare_add("Enlightenment"));
- printf("save test: %d\n", efreet_desktop_save(desktop));
- unlink("/tmp/test.desktop");
- efreet_desktop_free(desktop);
-
- return 1;
+ Efreet_Desktop *desktop;
+
+ printf("\n");
+
+ if (eina_file_copy(ef_test_path_get("test.desktop"),
+ "/tmp/test.desktop", 0, NULL, NULL))
+ {
+ desktop = efreet_desktop_get("/tmp/test.desktop");
+ if (!desktop)
+ {
+ unlink("/tmp/test.desktop");
+ printf("Failed to get Desktop file\n");
+ return 0;
+ }
+
+ printf("save data: %d\n", efreet_desktop_save(desktop));
+ efreet_desktop_free(desktop);
+ unlink("/tmp/test.desktop");
+ }
+
+ desktop = efreet_desktop_empty_new("/tmp/test.desktop");
+ desktop->name = strdup("Efreet Test Application");
+ desktop->type = EFREET_DESKTOP_TYPE_APPLICATION;
+ desktop->generic_name = strdup("Test Application");
+ desktop->exec = strdup("efreet_test");
+ desktop->categories = NULL;
+ desktop->categories = eina_list_append(desktop->categories,
+ eina_stringshare_add("Test"));
+ desktop->categories = eina_list_append(desktop->categories,
+ eina_stringshare_add("Enlightenment"));
+ printf("save test: %d\n", efreet_desktop_save(desktop));
+ unlink("/tmp/test.desktop");
+ efreet_desktop_free(desktop);
+
+ return 1;
}
-typedef struct
-{
- Eina_List *expected;
- int error;
- char type;
-} Test_Info;
-
int
ef_cb_desktop_command_get(void)
{
- Efreet_Desktop *desktop;
- Eina_List *files, *expected;
- char olddir[PATH_MAX];
- Test_Info *info;
- int ret;
-
- if (getcwd(olddir, PATH_MAX) != 0) ret = 0;
- if (chdir("/") != 0) ret = 0;
-
- printf("\n");
- desktop = efreet_desktop_empty_new("test.desktop");
-
- desktop->name = strdup("App Name");
- desktop->icon = strdup("icon.png");
-
- files = NULL;
- files = eina_list_append(files, "/tmp/absolute_path");
- files = eina_list_append(files, "relative_path");
- files = eina_list_append(files, "file:///tmp/absolute_uri");
- files = eina_list_append(files, "file:relative_uri");
-
- info = NEW(Test_Info, 1);
- expected = NULL;
- info->error = 0;
-
- /* test single full path */
- info->type = 'f';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %f");
- expected = eina_list_append(expected, "app '/tmp/absolute_path'");
- expected = eina_list_append(expected, "app '/relative_path'");
- expected = eina_list_append(expected, "app '/tmp/absolute_uri'");
- expected = eina_list_append(expected, "app '/relative_uri'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
-
- /* test single uri */
- info->type = 'u';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %u");
- expected = eina_list_append(expected, "app 'file:///tmp/absolute_path'");
- expected = eina_list_append(expected, "app 'file:///relative_path'");
- expected = eina_list_append(expected, "app 'file:///tmp/absolute_uri'");
- expected = eina_list_append(expected, "app 'file:///relative_uri'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
-
- /* test single dir */
+ Efreet_Desktop *desktop;
+ Eina_List *files, *expected;
+ char olddir[PATH_MAX];
+ Test_Info *info;
+ int ret;
+
+ if (getcwd(olddir, PATH_MAX) != 0) ret = 0;
+ if (chdir("/") != 0) ret = 0;
+
+ printf("\n");
+ desktop = efreet_desktop_empty_new("test.desktop");
+
+ desktop->name = strdup("App Name");
+ desktop->icon = strdup("icon.png");
+
+ files = NULL;
+ files = eina_list_append(files, "/tmp/absolute_path");
+ files = eina_list_append(files, "relative_path");
+ files = eina_list_append(files, "file:///tmp/absolute_uri");
+ files = eina_list_append(files, "file:relative_uri");
+
+ info = NEW(Test_Info, 1);
+ expected = NULL;
+ info->error = 0;
+
+ /* test single full path */
+ info->type = 'f';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %f");
+ expected = eina_list_append(expected, "app '/tmp/absolute_path'");
+ expected = eina_list_append(expected, "app '/relative_path'");
+ expected = eina_list_append(expected, "app '/tmp/absolute_uri'");
+ expected = eina_list_append(expected, "app '/relative_uri'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
+
+ /* test single uri */
+ info->type = 'u';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %u");
+ expected = eina_list_append(expected, "app 'file:///tmp/absolute_path'");
+ expected = eina_list_append(expected, "app 'file:///relative_path'");
+ expected = eina_list_append(expected, "app 'file:///tmp/absolute_uri'");
+ expected = eina_list_append(expected, "app 'file:///relative_uri'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
+
+ /* test single dir */
#if 0
- info->type = 'd';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %d");
- expected = eina_list_append(expected, "app '/tmp'");
- expected = eina_list_append(expected, "app '/'");
- expected = eina_list_append(expected, "app '/tmp'");
- expected = eina_list_append(expected, "app '/'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->type = 'd';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %d");
+ expected = eina_list_append(expected, "app '/tmp'");
+ expected = eina_list_append(expected, "app '/'");
+ expected = eina_list_append(expected, "app '/tmp'");
+ expected = eina_list_append(expected, "app '/'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
#endif
- /* test single names */
+ /* test single names */
#if 0
- info->type = 'n';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %n");
- expected = eina_list_append(expected, "app 'absolute_path'");
- expected = eina_list_append(expected, "app 'relative_path'");
- expected = eina_list_append(expected, "app 'absolute_uri'");
- expected = eina_list_append(expected, "app 'relative_uri'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->type = 'n';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %n");
+ expected = eina_list_append(expected, "app 'absolute_path'");
+ expected = eina_list_append(expected, "app 'relative_path'");
+ expected = eina_list_append(expected, "app 'absolute_uri'");
+ expected = eina_list_append(expected, "app 'relative_uri'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
#endif
- /* test multiple fullpaths */
- info->type = 'F';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %F");
- expected = eina_list_append(expected, "app '/tmp/absolute_path' '/relative_path' '/tmp/absolute_uri' '/relative_uri'");
+ /* test multiple fullpaths */
+ info->type = 'F';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %F");
+ expected = eina_list_append(expected, "app '/tmp/absolute_path' '/relative_path' '/tmp/absolute_uri' '/relative_uri'");
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
- /* test multiple URIs */
- info->type = 'U';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %U");
- expected = eina_list_append(expected, "app 'file:///tmp/absolute_path' 'file:///relative_path' 'file:///tmp/absolute_uri' 'file:///relative_uri'");
+ /* test multiple URIs */
+ info->type = 'U';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %U");
+ expected = eina_list_append(expected, "app 'file:///tmp/absolute_path' 'file:///relative_path' 'file:///tmp/absolute_uri' 'file:///relative_uri'");
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
- /* test multiple dirs */
+ /* test multiple dirs */
#if 0
- info->type = 'D';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %D");
- expected = eina_list_append(expected, "app '/tmp' '/' '/tmp' '/'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->type = 'D';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %D");
+ expected = eina_list_append(expected, "app '/tmp' '/' '/tmp' '/'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
#endif
- /* test multiple names */
+ /* test multiple names */
#if 0
- info->type = 'N';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %N");
- expected = eina_list_append(expected, "app 'absolute_path' 'relative_path' 'absolute_uri' 'relative_uri'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, files, _cb_command, info);
- expected = eina_list_free(expected);
+ info->type = 'N';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %N");
+ expected = eina_list_append(expected, "app 'absolute_path' 'relative_path' 'absolute_uri' 'relative_uri'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, files, _cb_command, info);
+ expected = eina_list_free(expected);
#endif
- /* test icon appending */
- info->type = 'i';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %i");
- expected = eina_list_append(expected, "app --icon 'icon.png'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, NULL, _cb_command, info);
- expected = eina_list_free(expected);
-
- /* test app name */
- info->type = 'c';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %c");
- expected = eina_list_append(expected, "app 'App Name'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, NULL, _cb_command, info);
- expected = eina_list_free(expected);
-
- /* test desktop path */
- info->type = 'k';
- IF_FREE(desktop->exec);
- desktop->exec = strdup("app %k");
- expected = eina_list_append(expected, "app 'test.desktop'");
-
- info->expected = expected;
- efreet_desktop_command_get(desktop, NULL, _cb_command, info);
- eina_list_free(expected);
-
- /* clean up */
- efreet_desktop_free(desktop);
- eina_list_free(files);
-
- if (chdir(olddir) != 0) ret = 0;
-
- ret = info->error > 0 ? 0 : 1;
- free(info);
-
- return ret;
-}
+ /* test icon appending */
+ info->type = 'i';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %i");
+ expected = eina_list_append(expected, "app --icon 'icon.png'");
-static void *
-_cb_command(void *data, Efreet_Desktop *desktop EINA_UNUSED,
- char *exec, int remaining EINA_UNUSED)
-{
- Test_Info *info = data;
- char *expected;
-
- expected = eina_list_data_get(info->expected);
- info->expected = eina_list_demote_list(info->expected, info->expected);
- if (!expected)
- {
- printf(" ERROR: (%%%c) got \"%s\", expected nothing\n", info->type, exec);
- info->error++;
- }
- else
- {
- if (strcmp(exec, expected))
- {
- printf(" ERROR: (%%%c) got \"%s\", expected \"%s\"\n", info->type, exec, expected);
- info->error++;
- }
- }
- free(exec);
- return NULL;
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, NULL, _cb_command, info);
+ expected = eina_list_free(expected);
+
+ /* test app name */
+ info->type = 'c';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %c");
+ expected = eina_list_append(expected, "app 'App Name'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, NULL, _cb_command, info);
+ expected = eina_list_free(expected);
+
+ /* test desktop path */
+ info->type = 'k';
+ IF_FREE(desktop->exec);
+ desktop->exec = strdup("app %k");
+ expected = eina_list_append(expected, "app 'test.desktop'");
+
+ info->expected = expected;
+ efreet_desktop_command_get(desktop, NULL, _cb_command, info);
+ eina_list_free(expected);
+
+ /* clean up */
+ efreet_desktop_free(desktop);
+ eina_list_free(files);
+
+ if (chdir(olddir) != 0) ret = 0;
+
+ ret = info->error > 0 ? 0 : 1;
+ free(info);
+
+ return ret;
}
static void *
cb_type_parse(Efreet_Desktop *desktop EINA_UNUSED, Efreet_Ini *ini)
{
- const char *val;
- val = efreet_ini_string_get(ini, "X-Test");
- if (!val) return NULL;
- return (void *)strdup(val);
+ const char *val;
+ val = efreet_ini_string_get(ini, "X-Test");
+ if (!val) return NULL;
+ return (void *)strdup(val);
}
int
ef_cb_desktop_type_parse(void)
{
- Efreet_Desktop *desktop;
- int my_type;
- char *val;
- int ret = 1;
-
- /* add my custom desktop type to efreet */
- my_type = efreet_desktop_type_add("My_Type", cb_type_parse, NULL,
- (Efreet_Desktop_Type_Free_Cb)free);
-
- desktop = efreet_desktop_get(ef_test_path_get("test_type.desktop"));
- if (!desktop)
- {
+ Efreet_Desktop *desktop;
+ int my_type;
+ char *val;
+ int ret = 1;
+
+ /* add my custom desktop type to efreet */
+ my_type = efreet_desktop_type_add("My_Type", cb_type_parse, NULL,
+ (Efreet_Desktop_Type_Free_Cb)free);
+
+ desktop = efreet_desktop_get(ef_test_path_get("test_type.desktop"));
+ if (!desktop)
+ {
printf("No desktop found.\n");
return 0;
- }
+ }
- if (desktop->type != my_type)
- {
+ if (desktop->type != my_type)
+ {
printf("Invalid type returned in desktop");
ret = 0;
- }
+ }
- val = (char *)efreet_desktop_type_data_get(desktop);
- if (!val || strcmp(val, "Own key"))
- {
+ val = (char *)efreet_desktop_type_data_get(desktop);
+ if (!val || strcmp(val, "Own key"))
+ {
printf("Invalid value of custom key (%s).\n", val);
ret = 0;
- }
+ }
- efreet_desktop_free(desktop);
- return ret;
+ efreet_desktop_free(desktop);
+ return ret;
}
static Eina_Bool _hash_keys(Eina_Hash *hash, const char *key, void *list);
static void ef_icon_theme_themes_find(const char *search_dir,
- Eina_Hash *themes);
+ Eina_Hash *themes);
static void ef_icons_find(Efreet_Icon_Theme *theme, Eina_Hash *icons);
static void ef_read_dir(const char *dir, Eina_Hash *icons);
int
ef_cb_efreet_icon_theme(void)
{
- int ret = 1;
- const char *tmp;
+ int ret = 1;
+ const char *tmp;
- unsetenv("XDG_DATA_HOME");
- efreet_shutdown();
- putenv("HOME=/var/tmp");
- efreet_init();
+ unsetenv("XDG_DATA_HOME");
+ efreet_shutdown();
+ putenv("HOME=/var/tmp");
+ efreet_init();
- tmp = efreet_icon_user_dir_get();
- if (strcmp(tmp, "/var/tmp/.local/share/icons"))
- {
+ tmp = efreet_icon_user_dir_get();
+ if (strcmp(tmp, "/var/tmp/.local/share/icons"))
+ {
printf("efreet_icon_user_dir_get() returned incorrect "
- "value (%s) on HOME=/var/tmp\n", tmp);
+ "value (%s) on HOME=/var/tmp\n", tmp);
ret = 0;
- }
+ }
- efreet_shutdown();
- unsetenv("HOME");
+ efreet_shutdown();
+ unsetenv("HOME");
#ifdef _WIN32
- unsetenv("USERPROFILE");
+ unsetenv("USERPROFILE");
#endif
- efreet_init();
+ efreet_init();
- tmp = efreet_icon_user_dir_get();
- if (strcmp(tmp, "/tmp/.local/share/icons"))
- {
+ tmp = efreet_icon_user_dir_get();
+ if (strcmp(tmp, "/tmp/.local/share/icons"))
+ {
printf("efreet_icon_user_dir_get() returned incorrect "
- "value (%s) on HOME=\n", tmp);
+ "value (%s) on HOME=\n", tmp);
ret = 0;
- }
+ }
- return ret;
+ return ret;
}
static Eina_Bool
_hash_keys(Eina_Hash *hash EINA_UNUSED, const char *key, void *list)
{
- Eina_List **l = list;
+ Eina_List **l = list;
- *l = eina_list_append(*l, key);
- return EINA_TRUE;
+ *l = eina_list_append(*l, key);
+ return EINA_TRUE;
}
int
ef_cb_efreet_icon_theme_list(void)
{
- int ret = 1;
- Eina_List *themes;
- Eina_List *icon_dirs;
- Eina_List *l;
- Eina_Hash *dirs;
- Eina_Iterator *it;
- Efreet_Icon_Theme *theme;
- const char *dir;
- char buf[PATH_MAX];
-
- dirs = eina_hash_string_superfast_new(free);
-
- icon_dirs = efreet_data_dirs_get();
-
- ef_icon_theme_themes_find(efreet_icon_user_dir_get(), dirs);
- EINA_LIST_FOREACH(icon_dirs, l, dir)
- {
+ int ret = 1;
+ Eina_List *themes;
+ Eina_List *icon_dirs;
+ Eina_List *l;
+ Eina_Hash *dirs;
+ Eina_Iterator *it;
+ Efreet_Icon_Theme *theme;
+ const char *dir;
+ char buf[PATH_MAX];
+
+ dirs = eina_hash_string_superfast_new(free);
+
+ icon_dirs = efreet_data_dirs_get();
+
+ ef_icon_theme_themes_find(efreet_icon_user_dir_get(), dirs);
+ EINA_LIST_FOREACH(icon_dirs, l, dir)
+ {
snprintf(buf, sizeof(buf), "%s/icons", dir);
ef_icon_theme_themes_find(buf, dirs);
- }
- EINA_LIST_FOREACH(icon_dirs, l, dir)
- {
+ }
+ EINA_LIST_FOREACH(icon_dirs, l, dir)
+ {
snprintf(buf, sizeof(buf), "%s/pixmaps", dir);
ef_icon_theme_themes_find(buf, dirs);
- }
- ef_icon_theme_themes_find("/usr/share/pixmaps", dirs);
+ }
+ ef_icon_theme_themes_find("/usr/share/pixmaps", dirs);
- themes = efreet_icon_theme_list_get();
- EINA_LIST_FOREACH(themes, l, theme)
- {
+ themes = efreet_icon_theme_list_get();
+ EINA_LIST_FOREACH(themes, l, theme)
+ {
if ((eina_hash_find(dirs, theme->name.internal)))
- eina_hash_del(dirs, theme->name.internal, NULL);
+ eina_hash_del(dirs, theme->name.internal, NULL);
else
- {
- printf("efreet_icon_theme_list_get() returned %s which we didn't "
+ {
+ printf("efreet_icon_theme_list_get() returned %s which we didn't "
"see when scanning the directories.\n", theme->name.internal);
- ret = 0;
- }
- }
- while (themes)
- {
+ ret = 0;
+ }
+ }
+ while (themes)
+ {
themes = eina_list_remove_list(themes, themes);
- }
+ }
- themes = NULL;
- it = eina_hash_iterator_key_new(dirs);
- eina_iterator_foreach(it, EINA_EACH_CB(_hash_keys), &themes);
- eina_iterator_free(it);
+ themes = NULL;
+ it = eina_hash_iterator_key_new(dirs);
+ eina_iterator_foreach(it, EINA_EACH_CB(_hash_keys), &themes);
+ eina_iterator_free(it);
- if (eina_list_count(themes) > 0)
- {
+ if (eina_list_count(themes) > 0)
+ {
printf("efreet_icon_theme_list_get() missed: ");
EINA_LIST_FOREACH(themes, l, dir)
- printf("%s ", dir);
+ printf("%s ", dir);
printf("\n");
ret = 0;
- }
- while (themes)
- {
+ }
+ while (themes)
+ {
themes = eina_list_remove_list(themes, themes);
- }
- eina_hash_free(dirs);
+ }
+ eina_hash_free(dirs);
- return ret;
+ return ret;
}
static void
ef_icon_theme_themes_find(const char *search_dir, Eina_Hash *themes)
{
- Eina_List *dirs;
- char *dir;
+ Eina_List *dirs;
+ char *dir;
- if (!search_dir || !themes) return;
+ if (!search_dir || !themes) return;
- dirs = ecore_file_ls(search_dir);
- if (!dirs) return;
+ dirs = ecore_file_ls(search_dir);
+ if (!dirs) return;
- while ((dir = eina_list_data_get(dirs)))
- {
+ while ((dir = eina_list_data_get(dirs)))
+ {
char p[PATH_MAX];
dirs = eina_list_remove_list(dirs, dirs);
/* if we've already added the theme we're done */
if (eina_hash_find(themes, dir))
- {
- free(dir);
- continue;
- }
+ {
+ free(dir);
+ continue;
+ }
/* if the index.theme file exists we open it and look for the hidden
* flag. */
snprintf(p, sizeof(p), "%s/%s/index.theme", search_dir, dir);
if (ecore_file_exists(p))
- {
- Efreet_Ini *ini;
- char *d;
- int skip = 0;
-
- ini = efreet_ini_new(p);
- efreet_ini_section_set(ini, "Icon Theme");
-
- //if (efreet_ini_boolean_get(ini, "Hidden")) skip = 1;
- if (!efreet_ini_localestring_get(ini, "Name")) skip = 1;
- efreet_ini_free(ini);
-
- if (!skip)
- {
- d = strdup(dir);
- eina_hash_add(themes, dir, d);
- }
- }
+ {
+ Efreet_Ini *ini;
+ char *d;
+ int skip = 0;
+
+ ini = efreet_ini_new(p);
+ efreet_ini_section_set(ini, "Icon Theme");
+
+ //if (efreet_ini_boolean_get(ini, "Hidden")) skip = 1;
+ if (!efreet_ini_localestring_get(ini, "Name")) skip = 1;
+ efreet_ini_free(ini);
+
+ if (!skip)
+ {
+ d = strdup(dir);
+ eina_hash_add(themes, dir, d);
+ }
+ }
free(dir);
- }
+ }
}
const char *system_icons[] =
{
- "address-book-new",
- "application-exit",
- "appointment-new",
- "contact-new",
- "dialog-apply",
- "dialog-cancel",
- "dialog-close",
- "dialog-ok",
- "document-new",
- "document-open",
- "document-open-recent",
- "document-page-setup",
- "document-print",
- "document-print-preview",
- "document-properties",
- "document-revert",
- "document-save",
- "document-save-as",
- "edit-copy",
- "edit-cut",
- "edit-delete",
- "edit-find",
- "edit-find-replace",
- "edit-paste",
- "edit-redo",
- "edit-select-all",
- "edit-undo",
- "format-indent-less",
- "format-indent-more",
- "format-justify-center",
- "format-justify-fill",
- "format-justify-left",
- "format-justify-right",
- "format-text-direction-ltr",
- "format-text-direction-rtl",
- "format-text-bold",
- "format-text-italic",
- "format-text-underline",
- "format-text-strikethrough",
- "go-bottom",
- "go-down",
- "go-first",
- "go-home",
- "go-jump",
- "go-last",
- "go-next",
- "go-previous",
- "go-top",
- "go-up",
- "help-about",
- "help-contents",
- "help-faq",
- "insert-image",
- "insert-link",
- "insert-object",
- "insert-text",
- "list-add",
- "list-remove",
- "mail-forward",
- "mail-mark-important",
- "mail-mark-junk",
- "mail-mark-notjunk",
- "mail-mark-read",
- "mail-mark-unread",
- "mail-message-new",
- "mail-reply-all",
- "mail-reply-sender",
- "mail-send-receive",
- "media-eject",
- "media-playback-pause",
- "media-playback-start",
- "media-playback-stop",
- "media-record",
- "media-seek-backward",
- "media-seek-forward",
- "media-skip-backward",
- "media-skip-forward",
- "system-lock-screen",
- "system-log-out",
- "system-run",
- "system-search",
- "system-search",
- "tools-check-spelling",
- "view-fullscreen",
- "view-refresh",
- "view-sort-ascending",
- "view-sort-descending",
- "window-close",
- "window-new",
- "zoom-best-fit",
- "zoom-in",
- "zoom-original",
- "zoom-out",
- "process-working",
- "accessories-calculator",
- "accessories-character-map",
- "accessories-dictionary",
- "accessories-text-editor",
- "help-browser",
- "multimedia-volume-control",
+ "address-book-new",
+ "application-exit",
+ "appointment-new",
+ "contact-new",
+ "dialog-apply",
+ "dialog-cancel",
+ "dialog-close",
+ "dialog-ok",
+ "document-new",
+ "document-open",
+ "document-open-recent",
+ "document-page-setup",
+ "document-print",
+ "document-print-preview",
+ "document-properties",
+ "document-revert",
+ "document-save",
+ "document-save-as",
+ "edit-copy",
+ "edit-cut",
+ "edit-delete",
+ "edit-find",
+ "edit-find-replace",
+ "edit-paste",
+ "edit-redo",
+ "edit-select-all",
+ "edit-undo",
+ "format-indent-less",
+ "format-indent-more",
+ "format-justify-center",
+ "format-justify-fill",
+ "format-justify-left",
+ "format-justify-right",
+ "format-text-direction-ltr",
+ "format-text-direction-rtl",
+ "format-text-bold",
+ "format-text-italic",
+ "format-text-underline",
+ "format-text-strikethrough",
+ "go-bottom",
+ "go-down",
+ "go-first",
+ "go-home",
+ "go-jump",
+ "go-last",
+ "go-next",
+ "go-previous",
+ "go-top",
+ "go-up",
+ "help-about",
+ "help-contents",
+ "help-faq",
+ "insert-image",
+ "insert-link",
+ "insert-object",
+ "insert-text",
+ "list-add",
+ "list-remove",
+ "mail-forward",
+ "mail-mark-important",
+ "mail-mark-junk",
+ "mail-mark-notjunk",
+ "mail-mark-read",
+ "mail-mark-unread",
+ "mail-message-new",
+ "mail-reply-all",
+ "mail-reply-sender",
+ "mail-send-receive",
+ "media-eject",
+ "media-playback-pause",
+ "media-playback-start",
+ "media-playback-stop",
+ "media-record",
+ "media-seek-backward",
+ "media-seek-forward",
+ "media-skip-backward",
+ "media-skip-forward",
+ "system-lock-screen",
+ "system-log-out",
+ "system-run",
+ "system-search",
+ "system-search",
+ "tools-check-spelling",
+ "view-fullscreen",
+ "view-refresh",
+ "view-sort-ascending",
+ "view-sort-descending",
+ "window-close",
+ "window-new",
+ "zoom-best-fit",
+ "zoom-in",
+ "zoom-original",
+ "zoom-out",
+ "process-working",
+ "accessories-calculator",
+ "accessories-character-map",
+ "accessories-dictionary",
+ "accessories-text-editor",
+ "help-browser",
+ "multimedia-volume-control",
#if 0
- "preferences-desktop-accessibility",
- "preferences-desktop-font",
- "preferences-desktop-keyboard",
- "preferences-desktop-locale",
- "preferences-desktop-multimedia",
- "preferences-desktop-screensaver",
- "preferences-desktop-theme",
- "preferences-desktop-wallpaper",
- "system-file-manager",
- "system-software-update",
- "utilities-terminal",
- "applications-accessories",
- "applications-development",
- "applications-games",
- "applications-graphics",
- "applications-internet",
- "applications-multimedia",
- "applications-office",
- "applications-other",
- "applications-system",
- "applications-utilities",
- "preferences-desktop",
- "preferences-desktop-accessibility",
- "preferences-desktop-peripherals",
- "preferences-desktop-personal",
- "preferences-other",
- "preferences-system",
- "preferences-system-network",
- "system-help",
- "audio-card",
- "audio-input-microphone",
- "battery",
- "camera-photo",
- "camera-video",
- "computer",
- "drive-cdrom",
- "drive-harddisk",
- "drive-removable-media",
- "input-gaming",
- "input-keyboard",
- "input-mouse",
- "media-cdrom",
- "media-floppy",
- "multimedia-player",
- "multimedia-player",
- "network-wired",
- "network-wireless",
- "printer",
- "emblem-default",
- "emblem-documents",
- "emblem-downloads",
- "emblem-favorite",
- "emblem-important",
- "emblem-mail",
- "emblem-photos",
- "emblem-readonly",
- "emblem-shared",
- "emblem-symbolic-link",
- "emblem-synchronized",
- "emblem-system",
- "emblem-unreadable",
- "face-angel",
- "face-crying",
- "face-devil-grin",
- "face-devil-sad",
- "face-glasses",
- "face-kiss",
- "face-monkey",
- "face-plain",
- "face-sad",
- "face-smile",
- "face-smile-big",
- "face-smirk",
- "face-surprise",
- "face-wink",
- "application-x-executable",
- "audio-x-generic",
- "font-x-generic",
- "image-x-generic",
- "package-x-generic",
- "text-html",
- "text-x-generic",
- "text-x-generic-template",
- "text-x-script",
- "video-x-generic",
- "x-office-address-book",
- "x-office-calendar",
- "x-office-document",
- "x-office-presentation",
- "x-office-spreadsheet",
- "folder",
- "folder-remote",
- "network-server",
- "network-workgroup",
- "start-here",
- "user-desktop",
- "user-home",
- "user-trash",
- "appointment-missed",
- "appointment-soon",
- "audio-volume-high",
- "audio-volume-low",
- "audio-volume-medium",
- "audio-volume-muted",
- "battery-caution",
- "battery-low",
- "dialog-error",
- "dialog-information",
- "dialog-password",
- "dialog-question",
- "dialog-warning",
- "folder-drag-accept",
- "folder-open",
- "folder-visiting",
- "image-loading",
- "image-missing",
- "mail-attachment",
- "mail-unread",
- "mail-read",
- "mail-replied",
- "mail-signed",
- "mail-signed-verified",
- "media-playlist-repeat",
- "media-playlist-shuffle",
- "network-error",
- "network-idle",
- "network-offline",
- "network-receive",
- "network-transmit",
- "network-transmit-receive",
- "printer-error",
- "printer-printing",
- "software-update-available",
- "software-update-urgent",
- "sync-error",
- "sync-synchronizing",
- "task-due",
- "task-passed-due",
- "user-away",
- "user-idle",
- "user-offline",
- "user-online",
- "user-trash-full",
- "weather-clear",
- "weather-clear-night",
- "weather-few-clouds",
- "weather-few-clouds-night",
- "weather-fog",
- "weather-overcast",
- "weather-severe-alert",
- "weather-showers",
- "weather-showers-scattered",
- "weather-snow",
- "weather-storm",
+ "preferences-desktop-accessibility",
+ "preferences-desktop-font",
+ "preferences-desktop-keyboard",
+ "preferences-desktop-locale",
+ "preferences-desktop-multimedia",
+ "preferences-desktop-screensaver",
+ "preferences-desktop-theme",
+ "preferences-desktop-wallpaper",
+ "system-file-manager",
+ "system-software-update",
+ "utilities-terminal",
+ "applications-accessories",
+ "applications-development",
+ "applications-games",
+ "applications-graphics",
+ "applications-internet",
+ "applications-multimedia",
+ "applications-office",
+ "applications-other",
+ "applications-system",
+ "applications-utilities",
+ "preferences-desktop",
+ "preferences-desktop-accessibility",
+ "preferences-desktop-peripherals",
+ "preferences-desktop-personal",
+ "preferences-other",
+ "preferences-system",
+ "preferences-system-network",
+ "system-help",
+ "audio-card",
+ "audio-input-microphone",
+ "battery",
+ "camera-photo",
+ "camera-video",
+ "computer",
+ "drive-cdrom",
+ "drive-harddisk",
+ "drive-removable-media",
+ "input-gaming",
+ "input-keyboard",
+ "input-mouse",
+ "media-cdrom",
+ "media-floppy",
+ "multimedia-player",
+ "multimedia-player",
+ "network-wired",
+ "network-wireless",
+ "printer",
+ "emblem-default",
+ "emblem-documents",
+ "emblem-downloads",
+ "emblem-favorite",
+ "emblem-important",
+ "emblem-mail",
+ "emblem-photos",
+ "emblem-readonly",
+ "emblem-shared",
+ "emblem-symbolic-link",
+ "emblem-synchronized",
+ "emblem-system",
+ "emblem-unreadable",
+ "face-angel",
+ "face-crying",
+ "face-devil-grin",
+ "face-devil-sad",
+ "face-glasses",
+ "face-kiss",
+ "face-monkey",
+ "face-plain",
+ "face-sad",
+ "face-smile",
+ "face-smile-big",
+ "face-smirk",
+ "face-surprise",
+ "face-wink",
+ "application-x-executable",
+ "audio-x-generic",
+ "font-x-generic",
+ "image-x-generic",
+ "package-x-generic",
+ "text-html",
+ "text-x-generic",
+ "text-x-generic-template",
+ "text-x-script",
+ "video-x-generic",
+ "x-office-address-book",
+ "x-office-calendar",
+ "x-office-document",
+ "x-office-presentation",
+ "x-office-spreadsheet",
+ "folder",
+ "folder-remote",
+ "network-server",
+ "network-workgroup",
+ "start-here",
+ "user-desktop",
+ "user-home",
+ "user-trash",
+ "appointment-missed",
+ "appointment-soon",
+ "audio-volume-high",
+ "audio-volume-low",
+ "audio-volume-medium",
+ "audio-volume-muted",
+ "battery-caution",
+ "battery-low",
+ "dialog-error",
+ "dialog-information",
+ "dialog-password",
+ "dialog-question",
+ "dialog-warning",
+ "folder-drag-accept",
+ "folder-open",
+ "folder-visiting",
+ "image-loading",
+ "image-missing",
+ "mail-attachment",
+ "mail-unread",
+ "mail-read",
+ "mail-replied",
+ "mail-signed",
+ "mail-signed-verified",
+ "media-playlist-repeat",
+ "media-playlist-shuffle",
+ "network-error",
+ "network-idle",
+ "network-offline",
+ "network-receive",
+ "network-transmit",
+ "network-transmit-receive",
+ "printer-error",
+ "printer-printing",
+ "software-update-available",
+ "software-update-urgent",
+ "sync-error",
+ "sync-synchronizing",
+ "task-due",
+ "task-passed-due",
+ "user-away",
+ "user-idle",
+ "user-offline",
+ "user-online",
+ "user-trash-full",
+ "weather-clear",
+ "weather-clear-night",
+ "weather-few-clouds",
+ "weather-few-clouds-night",
+ "weather-fog",
+ "weather-overcast",
+ "weather-severe-alert",
+ "weather-showers",
+ "weather-showers-scattered",
+ "weather-snow",
+ "weather-storm",
#endif
- NULL
+ NULL
};
int
ef_cb_efreet_icon_match(void)
{
- int i, ret = 1;
- Eina_Hash *icon_hash;
- Efreet_Icon_Theme *theme;
+ int i, ret = 1;
+ Eina_Hash *icon_hash;
+ Efreet_Icon_Theme *theme;
- theme = efreet_icon_theme_find(THEME);
- icon_hash = eina_hash_string_superfast_new(free);
+ theme = efreet_icon_theme_find(THEME);
+ icon_hash = eina_hash_string_superfast_new(free);
- ef_icons_find(theme, icon_hash);
+ ef_icons_find(theme, icon_hash);
- double start = ecore_time_get();
- for (i = 0; system_icons[i]; i++)
- {
+ double start = ecore_time_get();
+ for (i = 0; system_icons[i]; i++)
+ {
const char *path;
char *p, *s;
path = efreet_icon_path_find(THEME, system_icons[i], SIZE);
if (!path)
- {
+ {
#if 1
- if (eina_hash_find(icon_hash, system_icons[i]))
- {
- printf("NOT FOUND %s\n", system_icons[i]);
- ret = 0;
- }
+ if (eina_hash_find(icon_hash, system_icons[i]))
+ {
+ printf("NOT FOUND %s\n", system_icons[i]);
+ ret = 0;
+ }
#endif
- continue;
- }
+ continue;
+ }
else if (!eina_hash_find(icon_hash, system_icons[i]))
- {
- printf("Found icon not in hash: %s\n", system_icons[i]);
- }
+ {
+ printf("Found icon not in hash: %s\n", system_icons[i]);
+ }
p = strdup(path);
s = strrchr(p, '.');
if (s) s++;
if (s && strcmp(s, system_icons[i]))
- {
- printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
- ret = 0;
- }
+ {
+ printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
+ ret = 0;
+ }
free(p);
- }
- printf("Time: %f\n", (ecore_time_get() - start));
- eina_hash_free(icon_hash);
+ }
+ printf("Time: %f\n", (ecore_time_get() - start));
+ eina_hash_free(icon_hash);
- start = ecore_time_get();
- for (i = 0; system_icons[i]; i++)
- {
+ start = ecore_time_get();
+ for (i = 0; system_icons[i]; i++)
+ {
const char *path;
char *p, *s;
if (s) s++;
if (s && strcmp(s, system_icons[i]))
- {
- printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
- ret = 0;
- }
+ {
+ printf("Name mismatch name (%s) vs ef (%s)\n", system_icons[i], s);
+ ret = 0;
+ }
free(p);
- }
- printf("Time: %f\n", (ecore_time_get() - start));
+ }
+ printf("Time: %f\n", (ecore_time_get() - start));
- return ret;
+ return ret;
}
static void
ef_icons_find(Efreet_Icon_Theme *theme, Eina_Hash *icons)
{
- Eina_List *l, *ll;
- char path[PATH_MAX];
- const char *theme_path;
+ Eina_List *l, *ll;
+ char path[PATH_MAX];
+ const char *theme_path;
- if (!theme || !icons) return;
+ if (!theme || !icons) return;
- EINA_LIST_FOREACH(theme->paths, l, theme_path)
- {
+ EINA_LIST_FOREACH(theme->paths, l, theme_path)
+ {
Efreet_Icon_Theme_Directory *dir;
EINA_LIST_FOREACH(theme->directories, ll, dir)
- {
- snprintf(path, sizeof(path), "%s/%s/", theme_path, dir->name);
- ef_read_dir(path, icons);
- }
- }
-
- if (theme->inherits)
- {
+ {
+ snprintf(path, sizeof(path), "%s/%s/", theme_path, dir->name);
+ ef_read_dir(path, icons);
+ }
+ }
+
+ if (theme->inherits)
+ {
Efreet_Icon_Theme *parent_theme;
char *parent;
EINA_LIST_FOREACH(theme->inherits, l, parent)
- {
- parent_theme = efreet_icon_theme_find(parent);
- if (parent_theme)
- ef_icons_find(parent_theme, icons);
- }
- }
- else if (strcmp(theme->name.internal, "hicolor"))
- {
+ {
+ parent_theme = efreet_icon_theme_find(parent);
+ if (parent_theme)
+ ef_icons_find(parent_theme, icons);
+ }
+ }
+ else if (strcmp(theme->name.internal, "hicolor"))
+ {
Efreet_Icon_Theme *parent_theme;
parent_theme = efreet_icon_theme_find("hicolor");
if (parent_theme)
- ef_icons_find(parent_theme, icons);
- }
+ ef_icons_find(parent_theme, icons);
+ }
- ef_read_dir("/usr/share/pixmaps", icons);
+ ef_read_dir("/usr/share/pixmaps", icons);
}
static void
ef_read_dir(const char *dir, Eina_Hash *icons)
{
- Eina_List *files;
- char *file;
+ Eina_List *files;
+ char *file;
- if (!dir || !icons) return;
+ if (!dir || !icons) return;
- files = ecore_file_ls(dir);
- if (!files) return;
+ files = ecore_file_ls(dir);
+ if (!files) return;
- while ((file = eina_list_data_get(files)))
- {
+ while ((file = eina_list_data_get(files)))
+ {
char *p;
files = eina_list_remove_list(files, files);
p = strrchr(file, '.');
if (!p)
- {
- FREE(file);
- continue;
- }
+ {
+ FREE(file);
+ continue;
+ }
if (!strcmp(p, ".png") || !strcmp(p, ".xpm"))
- {
- *p = '\0';
+ {
+ *p = '\0';
- eina_hash_add(icons, file, strdup(file));
- }
+ eina_hash_add(icons, file, strdup(file));
+ }
FREE(file);
- }
+ }
}
int
ef_cb_ini_parse(void)
{
- int ret = 1;
- Efreet_Ini *ini;
+ int ret = 1;
+ Efreet_Ini *ini;
- putenv("LC_ALL=en_US");
+ putenv("LC_ALL=en_US");
- ini = efreet_ini_new(ef_test_path_get("test.ini"));
- if (!ini)
- {
+ ini = efreet_ini_new(ef_test_path_get("test.ini"));
+ if (!ini)
+ {
printf("efreet_ini_parse() Failed to initialize Efreet_Ini\n");
return 0;
- }
+ }
- if (efreet_ini_section_set(ini, "contact"))
- {
+ if (efreet_ini_section_set(ini, "contact"))
+ {
const char *val;
int ival;
unsigned int bval;
val = efreet_ini_string_get(ini, "Name");
if (!val || strcmp(val, "Foo Bar"))
- {
- printf("efreet_ini_string_get() Name parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_string_get() Name parsed incorrectly\n");
+ ret = 0;
+ }
val = efreet_ini_localestring_get(ini, "Name");
if (!val || strcmp(val, "English Foo Bar"))
- {
- printf("efreet_ini_localestring_get() Name parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_localestring_get() Name parsed incorrectly\n");
+ ret = 0;
+ }
val = efreet_ini_string_get(ini, "Email");
if (!val || strcmp(val, "foo@bar.com"))
- {
- printf("efreet_ini_string_get() Email parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_string_get() Email parsed incorrectly\n");
+ ret = 0;
+ }
val = efreet_ini_localestring_get(ini, "Email");
if (!val || strcmp(val, "foo@bar.com"))
- {
- printf("efreet_ini_localestring_get() Email parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_localestring_get() Email parsed incorrectly\n");
+ ret = 0;
+ }
ival = efreet_ini_int_get(ini, "Age");
if (ival != 30)
- {
- printf("efreet_ini_int_get() Age parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_int_get() Age parsed incorrectly\n");
+ ret = 0;
+ }
bval = efreet_ini_boolean_get(ini, "TrueBoolean");
if (!bval)
- {
- printf("efreet_ini_boolean_get() TrueBoolean parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_boolean_get() TrueBoolean parsed incorrectly\n");
+ ret = 0;
+ }
bval = efreet_ini_boolean_get(ini, "FalseBoolean");
if (bval)
- {
- printf("efreet_ini_boolean_get() FalseBoolean parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_boolean_get() FalseBoolean parsed incorrectly\n");
+ ret = 0;
+ }
bval = efreet_ini_boolean_get(ini, "InvalidBoolean");
if (bval)
- {
- printf("efreet_ini_boolean_get() InvalidBoolean parsed incorrectly\n");
- ret = 0;
- }
+ {
+ printf("efreet_ini_boolean_get() InvalidBoolean parsed incorrectly\n");
+ ret = 0;
+ }
val = efreet_ini_string_get(ini, "Escaped");
if (!val || strcmp(val, "line1\nline2\r\nline3\ttabbed \\ with a backslash and spaces"))
- {
- printf("efreet_ini_unescape() improperly unescaped value\n");
- ret = 0;
- }
- }
- else
- {
+ {
+ printf("efreet_ini_unescape() improperly unescaped value\n");
+ ret = 0;
+ }
+ }
+ else
+ {
printf("efreet_ini_section_set() Failed to set 'contact' section\n");
ret = 0;
- }
+ }
- efreet_ini_free(ini);
+ efreet_ini_free(ini);
- return ret;
+ return ret;
}
int
ef_cb_ini_long_line(void)
{
- Efreet_Ini *ini;
- int ret = 1;
-
- struct
- {
- char *key;
- int len;
- } tests[] = {
- {"key", 5099},
- {"key2", 5099},
- {NULL, 0}
- };
-
- ini = efreet_ini_new(ef_test_path_get("long.ini"));
- if (!ini)
- {
- printf("Ini failed to parse.\n");
- ret = 0;
- }
-
- if (ret) ret = efreet_ini_section_set(ini, "section");
- if (ret)
- {
- const char *val;
- int i, len;
-
- for (i = 0; tests[i].key; i++)
- {
- val = efreet_ini_string_get(ini, tests[i].key);
- if (val)
- {
- len = strlen(val);
- if (len != tests[i].len)
- {
- printf("Invalid long line parsing. Value length: %d (expected %d)\n", len, tests[i].len);
- ret = 0;
- }
- }
- else
- {
- printf("Key missing: %s.", tests[i].key);
+ Efreet_Ini *ini;
+ int ret = 1;
+
+ struct
+ {
+ char *key;
+ int len;
+ } tests[] = {
+ {"key", 5099},
+ {"key2", 5099},
+ {NULL, 0}
+ };
+
+ ini = efreet_ini_new(ef_test_path_get("long.ini"));
+ if (!ini)
+ {
+ printf("Ini failed to parse.\n");
ret = 0;
- }
- }
- }
- else
- {
- printf("Section missing: 'section'.");
- }
-
- if (ini) efreet_ini_free(ini);
- return ret;
+ }
+
+ if (ret) ret = efreet_ini_section_set(ini, "section");
+ if (ret)
+ {
+ const char *val;
+ int i, len;
+
+ for (i = 0; tests[i].key; i++)
+ {
+ val = efreet_ini_string_get(ini, tests[i].key);
+ if (val)
+ {
+ len = strlen(val);
+ if (len != tests[i].len)
+ {
+ printf("Invalid long line parsing. Value length: %d (expected %d)\n", len, tests[i].len);
+ ret = 0;
+ }
+ }
+ else
+ {
+ printf("Key missing: %s.", tests[i].key);
+ ret = 0;
+ }
+ }
+ }
+ else
+ {
+ printf("Section missing: 'section'.");
+ }
+
+ if (ini) efreet_ini_free(ini);
+ return ret;
}
int
ef_cb_ini_garbage(void)
{
- Efreet_Ini *ini;
- int ret = 1;
-
- ini = efreet_ini_new(ef_test_path_get("test_garbage"));
- if (!ini)
- {
- printf("Ini failed to parse.\n");
- return 0;
- }
- if (ini->data) ret = 0;
- efreet_ini_free(ini);
- return ret;
+ Efreet_Ini *ini;
+ int ret = 1;
+
+ ini = efreet_ini_new(ef_test_path_get("test_garbage"));
+ if (!ini)
+ {
+ printf("Ini failed to parse.\n");
+ return 0;
+ }
+ if (ini->data) ret = 0;
+ efreet_ini_free(ini);
+ return ret;
}
int
ef_cb_locale(void)
{
- int ret = 1, i;
- struct
- {
+ int ret = 1, i;
+ struct
+ {
char *lc_message;
char *lang;
char *country;
char *modifier;
- } langs[] = {
- /* these are ordered such that when we move from LANG to LC_MESSAGES
- * the LANG env will still be effect. Same with moving from
- * LC_MESSAGES to LANG */
- {"LANG=", NULL, NULL, NULL},
- {"LANG=en", "en", NULL, NULL},
- {"LANG=en@Latn", "en", NULL, "Latn"},
- {"LANG=en_US", "en", "US", NULL},
- {"LANG=en_US@Latn", "en", "US", "Latn"},
- {"LANG=en_US.blah@Latn", "en", "US", "Latn"},
- {"LC_MESSAGES=", "en", "US", "Latn"}, /* This will fallback to LANG */
- {"LC_MESSAGES=fr", "fr", NULL, NULL},
- {"LC_MESSAGES=fr@Blah", "fr", NULL, "Blah"},
- {"LC_MESSAGES=fr_FR", "fr", "FR", NULL},
- {"LC_MESSAGES=fr_FR@Blah", "fr", "FR", "Blah"},
- {"LC_MESSAGES=fr_FR.Foo@Blah", "fr", "FR", "Blah"},
- {"LC_ALL=", "fr", "FR", "Blah"}, /* this will fallback to LC_MESSAGES */
- {"LC_ALL=sr", "sr", NULL, NULL},
- {"LC_ALL=sr@Ret", "sr", NULL, "Ret"},
- {"LC_ALL=sr_YU", "sr", "YU", NULL},
- {"LC_ALL=sr_YU@Ret", "sr", "YU", "Ret"},
- {"LC_ALL=sr_YU.ssh@Ret", "sr", "YU", "Ret"},
- {NULL, NULL, NULL, NULL}
- };
+ } langs[] = {
+ /* these are ordered such that when we move from LANG to LC_MESSAGES
+ * the LANG env will still be effect. Same with moving from
+ * LC_MESSAGES to LANG */
+ {"LANG=", NULL, NULL, NULL},
+ {"LANG=en", "en", NULL, NULL},
+ {"LANG=en@Latn", "en", NULL, "Latn"},
+ {"LANG=en_US", "en", "US", NULL},
+ {"LANG=en_US@Latn", "en", "US", "Latn"},
+ {"LANG=en_US.blah@Latn", "en", "US", "Latn"},
+ {"LC_MESSAGES=", "en", "US", "Latn"}, /* This will fallback to LANG */
+ {"LC_MESSAGES=fr", "fr", NULL, NULL},
+ {"LC_MESSAGES=fr@Blah", "fr", NULL, "Blah"},
+ {"LC_MESSAGES=fr_FR", "fr", "FR", NULL},
+ {"LC_MESSAGES=fr_FR@Blah", "fr", "FR", "Blah"},
+ {"LC_MESSAGES=fr_FR.Foo@Blah", "fr", "FR", "Blah"},
+ {"LC_ALL=", "fr", "FR", "Blah"}, /* this will fallback to LC_MESSAGES */
+ {"LC_ALL=sr", "sr", NULL, NULL},
+ {"LC_ALL=sr@Ret", "sr", NULL, "Ret"},
+ {"LC_ALL=sr_YU", "sr", "YU", NULL},
+ {"LC_ALL=sr_YU@Ret", "sr", "YU", "Ret"},
+ {"LC_ALL=sr_YU.ssh@Ret", "sr", "YU", "Ret"},
+ {NULL, NULL, NULL, NULL}
+ };
- /* reset everything to blank */
- putenv("LC_ALL=");
- putenv("LC_MESSAGES=");
- putenv("LANG=");
+ /* reset everything to blank */
+ putenv("LC_ALL=");
+ putenv("LC_MESSAGES=");
+ putenv("LANG=");
- for (i = 0; langs[i].lc_message; i++)
- {
+ for (i = 0; langs[i].lc_message; i++)
+ {
const char *tmp;
putenv(langs[i].lc_message);
tmp = efreet_lang_get();
if ((langs[i].lang && (!tmp || strcmp(tmp, langs[i].lang)))
- || (!langs[i].lang && tmp))
- {
- printf("efreet_lang_get() is wrong (%s) with %s\n",
- tmp, langs[i].lang);
- ret = 0;
- }
+ || (!langs[i].lang && tmp))
+ {
+ printf("efreet_lang_get() is wrong (%s) with %s\n",
+ tmp, langs[i].lang);
+ ret = 0;
+ }
tmp = efreet_lang_country_get();
if ((langs[i].country && (!tmp || strcmp(tmp, langs[i].country)))
- || (!langs[i].country && tmp))
- {
- printf("efreet_lang_country_get() is wrong (%s) with %s\n",
- tmp, langs[i].lang);
- ret = 0;
- }
+ || (!langs[i].country && tmp))
+ {
+ printf("efreet_lang_country_get() is wrong (%s) with %s\n",
+ tmp, langs[i].lang);
+ ret = 0;
+ }
tmp = efreet_lang_modifier_get();
if ((langs[i].modifier && (!tmp || strcmp(tmp, langs[i].modifier)))
- || (!langs[i].modifier && tmp))
- {
- printf("efreet_lang_modifier_get() is wrong with %s with %s\n",
- tmp, langs[i].lang);
- ret = 0;
- }
+ || (!langs[i].modifier && tmp))
+ {
+ printf("efreet_lang_modifier_get() is wrong with %s with %s\n",
+ tmp, langs[i].lang);
+ ret = 0;
+ }
efreet_shutdown();
efreet_init();
- }
+ }
- return ret;
+ return ret;
}
static void
ef_menu_desktop_exec(Efreet_Menu *menu)
{
- Eina_List *l;
+ Eina_List *l;
- if (menu->entries)
- {
+ if (menu->entries)
+ {
Efreet_Desktop *desktop;
EINA_LIST_FOREACH(menu->entries, l, desktop)
- efreet_desktop_exec(desktop, NULL);
- }
- if (menu->sub_menus)
- {
+ efreet_desktop_exec(desktop, NULL);
+ }
+ if (menu->sub_menus)
+ {
Efreet_Menu *sub_menu;
EINA_LIST_FOREACH(menu->sub_menus, l, sub_menu)
- ef_menu_desktop_exec(sub_menu);
- }
+ ef_menu_desktop_exec(sub_menu);
+ }
}
#endif
int
ef_cb_menu_get(void)
{
- Efreet_Menu *menu;
+ Efreet_Menu *menu;
- menu = efreet_menu_get();
-// menu = efreet_menu_parse(ef_test_path_get("test.menu"));
- if (!menu)
- {
+ menu = efreet_menu_get();
+ // menu = efreet_menu_parse(ef_test_path_get("test.menu"));
+ if (!menu)
+ {
printf("efreet_menu_get() returned NULL\n");
return 0;
- }
- printf("\n");
- efreet_menu_dump(menu, "");
- efreet_menu_free(menu);
+ }
+ printf("\n");
+ efreet_menu_dump(menu, "");
+ efreet_menu_free(menu);
- return 1;
+ return 1;
}
int
ef_cb_menu_with_slashes(void)
{
- Efreet_Menu *menu;
+ Efreet_Menu *menu;
- menu = efreet_menu_parse(ef_test_path_get("test_menu_slash_bad.menu"));
- if (menu)
- {
+ menu = efreet_menu_parse(ef_test_path_get("test_menu_slash_bad.menu"));
+ if (menu)
+ {
printf("efreet_menu_get() didn't return NULL\n");
return 0;
- }
+ }
- return 1;
+ return 1;
}
int
ef_cb_menu_save(void)
{
- Efreet_Menu *menu;
- int ret;
+ Efreet_Menu *menu;
+ int ret;
-// menu = efreet_menu_get();
- menu = efreet_menu_parse(ef_test_path_get("test.menu"));
- if (!menu)
- {
+ // menu = efreet_menu_get();
+ menu = efreet_menu_parse(ef_test_path_get("test.menu"));
+ if (!menu)
+ {
printf("efreet_menu_get() returned NULL\n");
return 0;
- }
- unlink("/tmp/test.menu");
- ret = efreet_menu_save(menu, "/tmp/test.menu");
- efreet_menu_free(menu);
- return ret;
+ }
+ unlink("/tmp/test.menu");
+ ret = efreet_menu_save(menu, "/tmp/test.menu");
+ efreet_menu_free(menu);
+ return ret;
}
int
ef_cb_menu_edit(void)
{
- Efreet_Menu *menu, *entry;
- Efreet_Desktop *desktop;
+ Efreet_Menu *menu, *entry;
+ Efreet_Desktop *desktop;
-// menu = efreet_menu_get();
- menu = efreet_menu_parse(ef_test_path_get("test.menu"));
- if (!menu)
- {
+ // menu = efreet_menu_get();
+ menu = efreet_menu_parse(ef_test_path_get("test.menu"));
+ if (!menu)
+ {
printf("efreet_menu_get() returned NULL\n");
return 0;
- }
+ }
#if 0
- printf("\n");
- efreet_menu_dump(menu, "");
- printf("\n");
+ printf("\n");
+ efreet_menu_dump(menu, "");
+ printf("\n");
#endif
- desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
- if (!desktop)
- {
+ desktop = efreet_desktop_get(ef_test_path_get("test.desktop"));
+ if (!desktop)
+ {
efreet_menu_free(menu);
printf("No desktop found.\n");
return 0;
- }
+ }
- efreet_menu_desktop_insert(menu, desktop, 0);
+ efreet_menu_desktop_insert(menu, desktop, 0);
#if 0
- printf("\n");
- efreet_menu_dump(menu, "");
- printf("\n");
+ printf("\n");
+ efreet_menu_dump(menu, "");
+ printf("\n");
#endif
- entry = eina_list_data_get(menu->entries);
- if (desktop != entry->desktop)
- {
+ entry = eina_list_data_get(menu->entries);
+ if (desktop != entry->desktop)
+ {
efreet_menu_free(menu);
return 0;
- }
+ }
- efreet_menu_desktop_insert(menu, desktop, 2);
+ efreet_menu_desktop_insert(menu, desktop, 2);
#if 0
- printf("\n");
- efreet_menu_dump(menu, "");
- printf("\n");
+ printf("\n");
+ efreet_menu_dump(menu, "");
+ printf("\n");
#endif
- entry = eina_list_nth(menu->entries, 2);
- if (desktop != entry->desktop)
- {
+ entry = eina_list_nth(menu->entries, 2);
+ if (desktop != entry->desktop)
+ {
efreet_menu_free(menu);
return 0;
- }
+ }
- efreet_menu_desktop_insert(menu, desktop, -1);
+ efreet_menu_desktop_insert(menu, desktop, -1);
#if 0
- printf("\n");
- efreet_menu_dump(menu, "");
- printf("\n");
+ printf("\n");
+ efreet_menu_dump(menu, "");
+ printf("\n");
#endif
- entry = eina_list_data_get(eina_list_last(menu->entries));
- if (desktop != entry->desktop)
- {
+ entry = eina_list_data_get(eina_list_last(menu->entries));
+ if (desktop != entry->desktop)
+ {
efreet_menu_free(menu);
return 0;
- }
+ }
- efreet_menu_free(menu);
- return 1;
+ efreet_menu_free(menu);
+ return 1;
}
int
ef_mime_cb_get(void)
{
- const char *mime = NULL, *icon;
- int misses = 0, i = 0;
- struct
- {
+ const char *mime = NULL, *icon;
+ int misses = 0, i = 0;
+ struct
+ {
char *file;
char *mime;
- } files[] = {
+ } files[] = {
{"test_type.desktop", "application/x-desktop"},
{"entry.png", "image/png"},
{"entry", "image/png"},
{"sub", "inode/directory"},
- {NULL, NULL}
- };
- double start;
+ { }
+ };
+ double start;
- if (!efreet_mime_init())
- {
+ if (!efreet_mime_init())
+ {
printf("Could not init efreet\n");
return 1;
- }
+ }
- for (i = 0; files[i].file; ++i)
- {
+ for (i = 0; files[i].file; ++i)
+ {
mime = efreet_mime_type_get(ef_test_path_get(files[i].file));
if (!mime)
- {
- printf("Got %s as null instead of %s\n", files[i].file, files[i].mime);
- misses ++;
- }
+ {
+ printf("Got %s as null instead of %s\n", files[i].file, files[i].mime);
+ misses ++;
+ }
else if (strcmp(mime, files[i].mime))
- {
- printf("Got %s as %s instead of %s\n", files[i].file, mime, files[i].mime);
- misses ++;
- }
+ {
+ printf("Got %s as %s instead of %s\n", files[i].file, mime, files[i].mime);
+ misses ++;
+ }
start = ecore_time_get();
icon = efreet_mime_type_icon_get(files[i].mime, THEME, SIZE);
printf("mime icon: %s %s %f\n", files[i].mime, icon, ecore_time_get() - start);
- }
+ }
- efreet_mime_shutdown();
+ efreet_mime_shutdown();
- return !misses;
+ return !misses;
}
int
ef_cb_utils(void)
{
- Efreet_Desktop *desktop;
- const char *tmp2;
+ Efreet_Desktop *desktop;
+ const char *tmp2;
- printf("\n");
+ printf("\n");
- tmp2 = efreet_util_path_to_file_id("/usr/share/applications/this/tmp/test.desktop");
- if (tmp2) printf("%s\n", tmp2);
+ tmp2 = efreet_util_path_to_file_id("/usr/share/applications/this/tmp/test.desktop");
+ if (tmp2) printf("%s\n", tmp2);
- desktop = efreet_util_desktop_file_id_find("kde-kresources.desktop");
- printf("kde-kresources.desktop: %p\n", desktop);
- efreet_desktop_free(desktop);
+ desktop = efreet_util_desktop_file_id_find("kde-kresources.desktop");
+ printf("kde-kresources.desktop: %p\n", desktop);
+ efreet_desktop_free(desktop);
- desktop = efreet_util_desktop_file_id_find("mplayer.desktop");
- printf("mplayer.desktop: %p\n", desktop);
- efreet_desktop_free(desktop);
+ desktop = efreet_util_desktop_file_id_find("mplayer.desktop");
+ printf("mplayer.desktop: %p\n", desktop);
+ efreet_desktop_free(desktop);
- desktop = efreet_util_desktop_file_id_find("nautilus-computer.desktop");
- printf("nautilus-computer.desktop: %p\n", desktop);
- efreet_desktop_free(desktop);
+ desktop = efreet_util_desktop_file_id_find("nautilus-computer.desktop");
+ printf("nautilus-computer.desktop: %p\n", desktop);
+ efreet_desktop_free(desktop);
- return 1;
+ return 1;
}
typedef struct Efreet_Test Efreet_Test;
struct Efreet_Test
{
- char *name;
- int (*cb)(void);
+ char *name;
+ int (*cb)(void);
};
static Efreet_Test tests[] = {
- {"Data Home", ef_cb_efreet_data_home},
- {"Config Home", ef_cb_efreet_config_home},
- {"Cache Home", ef_cb_efreet_cache_home},
- {"Data Directories", ef_cb_efreet_data_dirs},
- {"Config Directories", ef_cb_efreet_config_dirs},
- {"Icon Theme Basic", ef_cb_efreet_icon_theme},
- {"Icon Theme List", ef_cb_efreet_icon_theme_list},
- {"Icon Matching", ef_cb_efreet_icon_match},
- {"INI Parsing", ef_cb_ini_parse},
- {"INI Long Line Parsing", ef_cb_ini_long_line},
- {"INI Garbage Parsing", ef_cb_ini_garbage},
- {"Locale Parsing", ef_cb_locale},
- {"Desktop Parsing", ef_cb_desktop_parse},
- {"Desktop Type Parsing", ef_cb_desktop_type_parse},
- {"Desktop Save", ef_cb_desktop_save},
- {"Desktop Command", ef_cb_desktop_command_get},
+ {"Data Home", ef_cb_efreet_data_home},
+ {"Config Home", ef_cb_efreet_config_home},
+ {"Cache Home", ef_cb_efreet_cache_home},
+ {"Data Directories", ef_cb_efreet_data_dirs},
+ {"Config Directories", ef_cb_efreet_config_dirs},
+ {"Icon Theme Basic", ef_cb_efreet_icon_theme},
+ {"Icon Theme List", ef_cb_efreet_icon_theme_list},
+ {"Icon Matching", ef_cb_efreet_icon_match},
+ {"INI Parsing", ef_cb_ini_parse},
+ {"INI Long Line Parsing", ef_cb_ini_long_line},
+ {"INI Garbage Parsing", ef_cb_ini_garbage},
+ {"Locale Parsing", ef_cb_locale},
+ {"Desktop Parsing", ef_cb_desktop_parse},
+ {"Desktop Type Parsing", ef_cb_desktop_type_parse},
+ {"Desktop Save", ef_cb_desktop_save},
+ {"Desktop Command", ef_cb_desktop_command_get},
#if 0
- {"Desktop File ID", ef_cb_desktop_file_id},
+ {"Desktop File ID", ef_cb_desktop_file_id},
#endif
- {"Menu Parsing", ef_cb_menu_get},
- {"Menu Incorrect Names", ef_cb_menu_with_slashes},
- {"Menu Save", ef_cb_menu_save},
+ {"Menu Parsing", ef_cb_menu_get},
+ {"Menu Incorrect Names", ef_cb_menu_with_slashes},
+ {"Menu Save", ef_cb_menu_save},
#if 0
- {"Menu Edit", ef_cb_menu_edit},
+ {"Menu Edit", ef_cb_menu_edit},
#endif
- {"Utils", ef_cb_utils},
- {"Mime", ef_mime_cb_get},
- { }
+ {"Utils", ef_cb_utils},
+ {"Mime", ef_mime_cb_get},
+ { }
};
extern char **environ;
int
main(int argc, char ** argv)
{
- int i, passed = 0, num_tests = 0;
- Eina_List *run = NULL;
- double total;
+ int i, passed = 0, num_tests = 0;
+ Eina_List *run = NULL;
+ double total;
- eina_init();
- ecore_init();
+ eina_init();
+ ecore_init();
- total = ecore_time_get();
- if (argc > 1)
- {
+ total = ecore_time_get();
+ if (argc > 1)
+ {
for (i = 1; i < argc; i++)
- {
- if ((!strcmp(argv[i], "-h")) ||
- (!strcmp(argv[i], "--help")))
- {
- for (i = 0; tests[i].name; i++)
- {
+ {
+ if ((!strcmp(argv[i], "-h")) ||
+ (!strcmp(argv[i], "--help")))
+ {
+ for (i = 0; tests[i].name; i++)
printf("%s\n", tests[i].name);
- }
- return 1;
- }
- run = eina_list_append(run, argv[i]);
- }
- }
-
- efreet_cache_update = 0;
- for (i = 0; tests[i].name; i++)
- {
+ return 1;
+ }
+ run = eina_list_append(run, argv[i]);
+ }
+ }
+
+ efreet_cache_update = 0;
+ for (i = 0; tests[i].name; i++)
+ {
int ret;
double start;
/* we've been given specific tests and it isn't in the list */
if (run && !eina_list_search_unsorted(run, EINA_COMPARE_CB(strcasecmp),
- tests[i].name))
- continue;
+ tests[i].name))
+ continue;
if (!efreet_init())
- {
- printf("Error initializing Efreet\n");
- continue;
- }
+ {
+ printf("Error initializing Efreet\n");
+ continue;
+ }
num_tests ++;
ret = tests[i].cb();
printf("%s in %.3f seconds\n", (ret ? "PASSED" : "FAILED"),
- ecore_time_get() - start);
+ ecore_time_get() - start);
passed += ret;
efreet_shutdown();
- }
+ }
- printf("\n-----------------\n");
- printf("Passed %d of %d tests.\n", passed, num_tests);
+ printf("\n-----------------\n");
+ printf("Passed %d of %d tests.\n", passed, num_tests);
- while (run)
- run = eina_list_remove_list(run, run);
+ while (run)
+ run = eina_list_remove_list(run, run);
- printf("Total run: %.3f seconds\n", ecore_time_get() - total);
+ printf("Total run: %.3f seconds\n", ecore_time_get() - total);
- ecore_shutdown();
- eina_shutdown();
- return 0;
+ ecore_shutdown();
+ eina_shutdown();
+ return 0;
}