tracker r1963 - in branches/indexer-split: . data/services src/libtracker-common tests/libtracker-common
- From: ifrade svn gnome org
- To: svn-commits-list gnome org
- Subject: tracker r1963 - in branches/indexer-split: . data/services src/libtracker-common tests/libtracker-common
- Date: Tue, 29 Jul 2008 16:43:40 +0000 (UTC)
Author: ifrade
Date: Tue Jul 29 16:43:40 2008
New Revision: 1963
URL: http://svn.gnome.org/viewvc/tracker?rev=1963&view=rev
Log:
Adding mime support for Folders
Modified:
branches/indexer-split/ChangeLog
branches/indexer-split/data/services/default.service
branches/indexer-split/src/libtracker-common/tracker-file-utils.c
branches/indexer-split/tests/libtracker-common/tracker-file-utils-test.c
branches/indexer-split/tests/libtracker-common/tracker-ontology-test.c
Modified: branches/indexer-split/data/services/default.service
==============================================================================
--- branches/indexer-split/data/services/default.service (original)
+++ branches/indexer-split/data/services/default.service Tue Jul 29 16:43:40 2008
@@ -13,9 +13,11 @@
Parent=Files
UIVisible=true
UIView=icon
+MimePrefixes=x-directory/
Icon=folder
ShowServiceFiles=true
ShowServiceDirectories=true
+HasFullText=false
[Documents]
DisplayName=Documents
Modified: branches/indexer-split/src/libtracker-common/tracker-file-utils.c
==============================================================================
--- branches/indexer-split/src/libtracker-common/tracker-file-utils.c (original)
+++ branches/indexer-split/src/libtracker-common/tracker-file-utils.c Tue Jul 29 16:43:40 2008
@@ -334,6 +334,8 @@
if (!result || result == XDG_MIME_TYPE_UNKNOWN) {
if (is_text_file (str)) {
mime_type = g_strdup ("text/plain");
+ } else if (S_ISDIR (finfo.st_mode)) {
+ mime_type = g_strdup ("x-directory/normal");
} else {
mime_type = g_strdup ("unknown");
}
Modified: branches/indexer-split/tests/libtracker-common/tracker-file-utils-test.c
==============================================================================
--- branches/indexer-split/tests/libtracker-common/tracker-file-utils-test.c (original)
+++ branches/indexer-split/tests/libtracker-common/tracker-file-utils-test.c Tue Jul 29 16:43:40 2008
@@ -1,5 +1,6 @@
#include <glib.h>
#include <glib/gtestutils.h>
+#include <gio/gio.h>
#include <libtracker-common/tracker-file-utils.h>
#include <tracker-test-helpers.h>
@@ -126,6 +127,28 @@
}
+static void
+test_file_get_mime_type (void)
+{
+
+ gchar *dir_name, *result;
+ GFile *dir;
+
+ /* Create test directory */
+ dir_name = g_build_filename (g_get_tmp_dir (), "tracker-test", NULL);
+ dir = g_file_new_for_path (dir_name);
+ g_file_make_directory (dir, NULL, NULL);
+
+ result = tracker_file_get_mime_type (dir_name);
+
+ g_assert (tracker_test_helpers_cmpstr_equal (result, "x-directory/normal"));
+
+ /* Remove test directory */
+ g_file_delete (dir, NULL, NULL);
+ g_object_unref (dir);
+ g_free (dir_name);
+}
+
int
main (int argc, char **argv) {
@@ -141,6 +164,9 @@
g_test_add_func ("/tracker/libtracker-common/tracker-file-utils/path_list_filter_duplicates",
test_path_list_filter_duplicates);
+ g_test_add_func ("/tracker/libtracker-common/tracker-file-utils/file_get_mime_type",
+ test_file_get_mime_type);
+
result = g_test_run ();
return result;
Modified: branches/indexer-split/tests/libtracker-common/tracker-ontology-test.c
==============================================================================
--- branches/indexer-split/tests/libtracker-common/tracker-ontology-test.c (original)
+++ branches/indexer-split/tests/libtracker-common/tracker-ontology-test.c Tue Jul 29 16:43:40 2008
@@ -52,6 +52,26 @@
}
+static gboolean
+element_in_list (GSList *list, gchar *element)
+{
+ return (g_slist_find_custom (list, element, (GCompareFunc)strcmp) != NULL);
+}
+
+
+static GSList *
+array_to_list (char **array)
+{
+ GSList *list = NULL;
+ int i;
+
+ for (i = 0; array[i] != NULL; i++) {
+ list = g_slist_prepend (list, g_strdup (array[i]));
+ }
+ return list;
+}
+
+
TrackerField *
create_field_definition (const gchar *id,
const gchar *name,
@@ -78,6 +98,9 @@
create_service_definition (int id, const char *name, const char *parent, gboolean embedded) {
TrackerService *def;
+ /* array_to_list use prepend, so use reverse order here */
+ gchar * key_metadata [] = {"Key:Metadata2", "Key:MetaData1", NULL};
+
def = tracker_service_new ();
tracker_service_set_id (def, id);
@@ -89,29 +112,11 @@
tracker_service_set_has_thumbs (def, TRUE);
tracker_service_set_has_full_text (def, TRUE);
tracker_service_set_has_metadata (def, FALSE);
+ tracker_service_set_key_metadata (def, array_to_list (key_metadata));
return def;
}
-static gboolean
-element_in_list (GSList *list, gchar *element)
-{
- return (g_slist_find_custom (list, element, (GCompareFunc)strcmp) != NULL);
-}
-
-
-static GSList *
-array_to_list (char **array)
-{
- GSList *list = NULL;
- int i;
-
- for (i = 0; array[i] != NULL; i++) {
- list = g_slist_prepend (list, g_strdup (array[i]));
- }
- return list;
-}
-
typedef struct {
TrackerService *def;
TrackerService *parent_def;
@@ -366,6 +371,24 @@
}
+
+static void
+test_metadata_key_in_service (void)
+{
+ gint key;
+
+ key = tracker_ontology_metadata_key_in_service ("Applications",
+ "Key:MetaData1");
+ g_assert_cmpint (key, ==, 1);
+
+ key = tracker_ontology_metadata_key_in_service ("Applications",
+ "Key:MetaDataUnknown");
+ g_assert_cmpint (key, ==, 0);
+
+
+}
+
+
int
main (int argc, char **argv) {
@@ -408,6 +431,9 @@
g_test_add_func ("/libtracker-common/tracker-ontology/test_get_all_registered_field_types",
test_get_registered_field_types);
+ g_test_add_func ("/libtracker-common/tracker-ontology/test_metadata_key_in_service",
+ test_metadata_key_in_service);
+
result = g_test_run ();
tracker_ontology_shutdown ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]