| 16 * License along with this library; if not, see <https://www.gnu.org/licenses/>. |
16 * License along with this library; if not, see <https://www.gnu.org/licenses/>. |
| 17 */ |
17 */ |
| 18 |
18 |
| 19 #include <glib.h> |
19 #include <glib.h> |
| 20 |
20 |
| |
21 #include <birb.h> |
| |
22 |
| 21 #include <purple.h> |
23 #include <purple.h> |
| 22 |
|
| 23 /****************************************************************************** |
|
| 24 * Callbacks |
|
| 25 *****************************************************************************/ |
|
| 26 static void |
|
| 27 test_purple_messages_items_changed_counter(G_GNUC_UNUSED GListModel *model, |
|
| 28 G_GNUC_UNUSED guint position, |
|
| 29 G_GNUC_UNUSED guint removed, |
|
| 30 G_GNUC_UNUSED guint added, |
|
| 31 gpointer data) |
|
| 32 { |
|
| 33 guint *counter = data; |
|
| 34 |
|
| 35 *counter = *counter + 1; |
|
| 36 } |
|
| 37 |
24 |
| 38 /****************************************************************************** |
25 /****************************************************************************** |
| 39 * Tests |
26 * Tests |
| 40 *****************************************************************************/ |
27 *****************************************************************************/ |
| 41 static void |
28 static void |
| 124 NULL); |
111 NULL); |
| 125 author = purple_conversation_find_or_add_member(conversation, info, FALSE, |
112 author = purple_conversation_find_or_add_member(conversation, info, FALSE, |
| 126 NULL); |
113 NULL); |
| 127 |
114 |
| 128 messages = purple_messages_new(conversation); |
115 messages = purple_messages_new(conversation); |
| 129 g_signal_connect(messages, "items-changed", |
116 birb_count_list_model_items_changed(G_LIST_MODEL(messages), &counter); |
| 130 G_CALLBACK(test_purple_messages_items_changed_counter), |
|
| 131 &counter); |
|
| 132 |
117 |
| 133 message1 = purple_message_new(author, "test message"); |
118 message1 = purple_message_new(author, "test message"); |
| 134 purple_messages_add(messages, message1); |
119 purple_messages_add(messages, message1); |
| 135 g_assert_cmpuint(counter, ==, 1); |
120 g_assert_cmpuint(counter, ==, 1); |
| 136 |
121 |
| 173 NULL); |
158 NULL); |
| 174 author = purple_conversation_find_or_add_member(conversation, info, FALSE, |
159 author = purple_conversation_find_or_add_member(conversation, info, FALSE, |
| 175 NULL); |
160 NULL); |
| 176 |
161 |
| 177 messages = purple_messages_new(conversation); |
162 messages = purple_messages_new(conversation); |
| 178 g_signal_connect(messages, "items-changed", |
163 birb_count_list_model_items_changed(G_LIST_MODEL(messages), &counter); |
| 179 G_CALLBACK(test_purple_messages_items_changed_counter), |
|
| 180 &counter); |
|
| 181 |
164 |
| 182 zone = g_time_zone_new_utc(); |
165 zone = g_time_zone_new_utc(); |
| 183 |
166 |
| 184 message1 = purple_message_new(author, "second message"); |
167 message1 = purple_message_new(author, "second message"); |
| 185 dt1 = g_date_time_new_from_iso8601("2024-08-07T03:07:33+0000", zone); |
168 dt1 = g_date_time_new_from_iso8601("2024-08-07T03:07:33+0000", zone); |