EFL 1.7 svn doobies
[profile/ivi/efreet.git] / src / tests / ef_mime.c
1 #include "Efreet.h"
2 #include "Efreet_Mime.h"
3 #include "config.h"
4 #include <stdio.h>
5 #include <string.h>
6 #include <sys/time.h>
7 #include <Ecore.h>
8
9 #define THEME "Tango"
10 #define SIZE 128
11
12 int
13 ef_mime_cb_get(void)
14 {
15     const char *mime = NULL, *icon;
16     int misses = 0, i = 0;
17     struct
18     {
19         char *file;
20         char *mime;
21     } files[] = {
22         {PKG_DATA_DIR"/test/test_type.desktop", "application/x-desktop"},
23         {PKG_DATA_DIR"/test/entry.png", "image/png"},
24         {PKG_DATA_DIR"/test/entry", "image/png"},
25         {PKG_DATA_DIR"/test/sub", "inode/directory"},
26         {NULL, NULL}
27     };
28     double start;
29
30     if (!efreet_mime_init())
31     {
32         printf("Could not init efreet\n");
33         return 1;
34     }
35
36     for (i = 0; files[i].file; ++i)
37     {
38         mime = efreet_mime_type_get(files[i].file);
39         if (!mime)
40         {
41             printf("Got %s as null instead of %s\n", files[i].file, files[i].mime);
42             misses ++;
43         }
44         else if (strcmp(mime, files[i].mime))
45         {
46             printf("Got %s as %s instead of %s\n", files[i].file, mime, files[i].mime);
47             misses ++;
48         }
49         start = ecore_time_get();
50         icon = efreet_mime_type_icon_get(files[i].mime, THEME, SIZE);
51         printf("mime icon: %s %s %f\n", files[i].mime, icon, ecore_time_get() - start);
52     }
53
54     efreet_mime_shutdown();
55
56     return !misses;
57 }