diff options
author | Siegfried-Angel Gevatter Pujals <siegfried@gevatter.com> | 2012-03-29 20:02:44 +0200 |
---|---|---|
committer | Siegfried-Angel Gevatter Pujals <siegfried@gevatter.com> | 2012-03-29 20:02:44 +0200 |
commit | 2d38dfab686c5f6a99f6f5c54cb606c620c5071b (patch) | |
tree | 2bfe4e7e5c6dac04596c90f2e759020e75a5ad21 /extensions | |
parent | 657dec3270e7a69ffd68c08fdb3726ffaa5e3eda (diff) | |
download | zeitgeist-2d38dfab686c5f6a99f6f5c54cb606c620c5071b.tar.gz |
FTS++: Ignore Ubuntu One events
See also:
https://wiki.ubuntu.com/UbuntuOne/Specs/ZeitgeistIntegration/EventsSpec
Diffstat (limited to 'extensions')
-rw-r--r-- | extensions/fts++/indexer.cpp | 8 | ||||
-rw-r--r-- | extensions/fts++/test/test-indexer.cpp | 19 |
2 files changed, 27 insertions, 0 deletions
diff --git a/extensions/fts++/indexer.cpp b/extensions/fts++/indexer.cpp index 6dcda548..21b03847 100644 --- a/extensions/fts++/indexer.cpp +++ b/extensions/fts++/indexer.cpp @@ -1303,6 +1303,14 @@ get_digest_for_uri (GChecksum *checksum, const gchar *uri, void Indexer::IndexEvent (ZeitgeistEvent *event) { + // Blacklist Ubuntu One events... + const gchar *actor; + actor = zeitgeist_event_get_actor (event); + if (strcmp(actor, "dbus://com.ubuntuone.SyncDaemon.service") == 0) + return; + if (strcmp(actor, "dbus://org.desktopcouch.CouchDB.service") == 0) + return; + try { const gchar *val; diff --git a/extensions/fts++/test/test-indexer.cpp b/extensions/fts++/test/test-indexer.cpp index 3d293d84..41beac81 100644 --- a/extensions/fts++/test/test-indexer.cpp +++ b/extensions/fts++/test/test-indexer.cpp @@ -1074,6 +1074,23 @@ test_query_most_popular_subjects (Fixture *fix, gconstpointer data) assert_nth_result_has_id (results, 2, event_id6); } +static void +test_index_ignore_ubuntu_one (Fixture *fix, gconstpointer data) +{ + guint matches; + + // add test events to DBs + index_event (fix, create_test_event_simple ("ubuntuone:uuid", "failme")); + ZeitgeistEvent *event = create_test_event_simple ("file:///nice%20uri", "failme"); + zeitgeist_event_set_actor (event, "dbus://com.ubuntuone.SyncDaemon.service"); + index_event (fix, event); + + GPtrArray *results = search_simple (fix, "failme", NULL, + ZEITGEIST_RESULT_TYPE_MOST_RECENT_EVENTS, &matches); + + g_assert_cmpuint (results->len, ==, 0); +} + G_BEGIN_DECLS static void discard_message (const gchar *domain, @@ -1138,6 +1155,8 @@ void test_indexer_create_suite (void) g_test_add ("/Zeitgeist/FTS/Indexer/Query/MostPopularSubjects", Fixture, 0, setup, test_query_most_popular_subjects, teardown); */ + g_test_add ("/Zeitgeist/FTS/Indexer/Index/IgnoreUbuntuOne", Fixture, 0, + setup, test_index_ignore_ubuntu_one, teardown); // get rid of the "rebuilding index..." messages g_log_set_handler (NULL, G_LOG_LEVEL_MESSAGE, discard_message, NULL); |