diff options
author | Nicolas Dufresne <nicolas.dufresne@collabora.com> | 2011-05-26 18:18:44 -0400 |
---|---|---|
committer | Nicolas Dufresne <nicolas.dufresne@collabora.com> | 2011-05-26 18:18:44 -0400 |
commit | 945c4ec3bc883d9ed11fddd042240a0cc6602e82 (patch) | |
tree | 12f074691c3554aaaa385bec20ce84acca313585 /tests | |
parent | 4230ec13757892520a2971dacbb82b55fda7a76e (diff) | |
parent | 246744179fc337ac588206c03bc2260938c7c7f1 (diff) | |
download | telepathy-logger-945c4ec3bc883d9ed11fddd042240a0cc6602e82.tar.gz |
Merge branch 'fix-insert-after'
Diffstat (limited to 'tests')
4 files changed, 57 insertions, 18 deletions
diff --git a/tests/dbus/test-log-manager.c b/tests/dbus/test-log-manager.c index 5deb349..c3a91a6 100644 --- a/tests/dbus/test-log-manager.c +++ b/tests/dbus/test-log-manager.c @@ -455,7 +455,7 @@ test_get_entities (TestCaseFixture *fixture, get_entities_cb, fixture); g_main_loop_run (fixture->main_loop); - g_assert_cmpint (g_list_length (fixture->ret), ==, 4); + g_assert_cmpint (g_list_length (fixture->ret), ==, 5); /* we do not want duplicates */ fixture->ret = g_list_sort (fixture->ret, (GCompareFunc) _tpl_entity_compare); diff --git a/tests/dbus/test-tpl-log-store-xml.c b/tests/dbus/test-tpl-log-store-xml.c index d049cf8..fd70ee9 100644 --- a/tests/dbus/test-tpl-log-store-xml.c +++ b/tests/dbus/test-tpl-log-store-xml.c @@ -469,7 +469,7 @@ test_add_superseding_event (XmlTestCaseFixture *fixture, gconstpointer user_data) { TpAccount *account; - TplEntity *me, *contact, *room; + TplEntity *me, *contact; TplEvent *event; TplTextEvent *new_event; TplTextEvent *new_new_event; @@ -489,8 +489,6 @@ test_add_superseding_event (XmlTestCaseFixture *fixture, me = tpl_entity_new ("me", TPL_ENTITY_SELF, "my-alias", "my-avatar"); contact = tpl_entity_new ("contact", TPL_ENTITY_CONTACT, "contact-alias", "contact-token"); - room = tpl_entity_new_from_room_id ("room"); - /* 1. Outgoing message to a contact. */ event = g_object_new (TPL_TYPE_TEXT_EVENT, @@ -918,10 +916,11 @@ test_get_events_for_date (XmlTestCaseFixture *fixture, gconstpointer user_data) { TpAccount *account; - TplEntity *user2, *user3, *user4; + TplEntity *user2, *user3, *user4, *user5; GList *events; GDate *date; GError *error = NULL; + gint idx; account = tp_account_new (fixture->bus, TP_ACCOUNT_OBJECT_PATH_BASE "gabble/jabber/user_40collabora_2eco_2euk", @@ -940,44 +939,71 @@ test_get_events_for_date (XmlTestCaseFixture *fixture, user4 = tpl_entity_new ("user4@collabora.co.uk", TPL_ENTITY_CONTACT, "User4", ""); + user5 = tpl_entity_new ("user5@collabora.co.uk", TPL_ENTITY_CONTACT, + "User5", ""); + + /* Check that text event and call event are merged properly, call events + * should come after any older or same timestamp event. */ events = _tpl_log_store_get_events_for_date (fixture->store, account, user4, TPL_EVENT_MASK_ANY, date); g_assert_cmpint (g_list_length (events), ==, 6); + idx = -1; - g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, 0))); + g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpstr ( - tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, 0))), + tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, idx))), ==, "7"); - g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, 1))); + g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, ++idx))); + g_assert_cmpstr ( + tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, idx))), + ==, "8"); + + g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpint ( - tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, 1))), + tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, idx))), ==, 1); - g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, 2))); + g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpint ( - tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, 2))), + tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, idx))), ==, 2); - g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, 3))); + g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpint ( - tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, 3))), + tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, idx))), ==, 3); - g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, 4))); + g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpstr ( - tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, 4))), - ==, "8"); + tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, idx))), + ==, "9"); + + g_list_foreach (events, (GFunc) g_object_unref, NULL); + g_list_free (events); + + /* Check that a call older then any text event is sorted first */ + events = _tpl_log_store_get_events_for_date (fixture->store, account, user5, + TPL_EVENT_MASK_ANY, date); + + g_assert_cmpint (g_list_length (events), ==, 2); + idx = -1; + + g_assert (TPL_IS_CALL_EVENT (g_list_nth_data (events, ++idx))); + g_assert_cmpint ( + tpl_call_event_get_duration (TPL_CALL_EVENT (g_list_nth_data (events, idx))), + ==, 1); - g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, 5))); + g_assert (TPL_IS_TEXT_EVENT (g_list_nth_data (events, ++idx))); g_assert_cmpstr ( - tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, 5))), + tpl_text_event_get_message (TPL_TEXT_EVENT (g_list_nth_data (events, idx))), ==, "9"); g_list_foreach (events, (GFunc) g_object_unref, NULL); g_list_free (events); + /* Check that call mask work */ events = _tpl_log_store_get_events_for_date (fixture->store, account, user4, TPL_EVENT_MASK_CALL, date); @@ -990,6 +1016,7 @@ test_get_events_for_date (XmlTestCaseFixture *fixture, g_list_foreach (events, (GFunc) g_object_unref, NULL); g_list_free (events); + /* Check that text mask work */ events = _tpl_log_store_get_events_for_date (fixture->store, account, user4, TPL_EVENT_MASK_TEXT, date); @@ -1003,6 +1030,7 @@ test_get_events_for_date (XmlTestCaseFixture *fixture, g_list_foreach (events, (GFunc) g_object_unref, NULL); g_list_free (events); + /* Check that getting empty list is working */ events = _tpl_log_store_get_events_for_date (fixture->store, account, user2, TPL_EVENT_MASK_CALL, date); g_assert_cmpint (g_list_length (events), ==, 0); @@ -1015,6 +1043,7 @@ test_get_events_for_date (XmlTestCaseFixture *fixture, g_object_unref (user2); g_object_unref (user3); g_object_unref (user4); + g_object_unref (user5); g_date_free (date); } diff --git a/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.call.log b/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.call.log new file mode 100644 index 0000000..50b4e34 --- /dev/null +++ b/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.call.log @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='utf-8'?> +<?xml-stylesheet type="text/xsl" href="empathy-log.xsl"?> +<log> +<call time='20100113T17:48:01' id='user@collabora.co.uk' name='Nicolas1' isuser='false' token='' duration='1' actor='user@collabora.co.uk' actortype='contact' actorname='User1' actortoken='' reason='user-requested' detail='org.freedesktop.Telepathy.Error.Cancelled' /> +</log> diff --git a/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.log b/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.log new file mode 100644 index 0000000..23d6859 --- /dev/null +++ b/tests/logs/TpLogger/logs/gabble_jabber_user_40collabora_2eco_2euk/user5@collabora.co.uk/20100113.log @@ -0,0 +1,5 @@ +<?xml version='1.0' encoding='utf-8'?> +<?xml-stylesheet type="text/xsl" href="empathy-log.xsl"?> +<log> +<message time='20100113T17:49:10' cm_id='456' id='user1@collabora.co.uk' name='User1' token='' isuser='false' type='normal'>9</message> +</log> |