libpurple/tests/test_file_transfer_manager.c

Sun, 10 Aug 2025 23:44:08 +0800

author
Gong Zhile <gongzl@stu.hebust.edu.cn>
date
Sun, 10 Aug 2025 23:44:08 +0800
branch
purple_conversation_find_message_by_id
changeset 43309
099e1dfb856b
parent 42866
4b201e18638f
permissions
-rw-r--r--

Add Purple.Conversation.find_message_by_id

The method was added so that a protocol or plugin could easily lookup
for the reference for a message. This will be especially useful when a
protocol received a quoted message but only with an id.

42560
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Purple - Internet Messaging Library
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * This library is free software; you can redistribute it and/or
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * modify it under the terms of the GNU Lesser General Public
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * License as published by the Free Software Foundation; either
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 * version 2 of the License, or (at your option) any later version.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 *
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * This library is distributed in the hope that it will be useful,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 * Lesser General Public License for more details.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 *
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * You should have received a copy of the GNU Lesser General Public
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * License along with this library; if not, see <https://www.gnu.org/licenses/>.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 #include <glib.h>
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 #include <purple.h>
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 /******************************************************************************
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 * Add/Remove Test
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 *****************************************************************************/
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26 static void
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 test_purple_file_transfer_manager_add_remove_cb(PurpleFileTransferManager *manager,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 PurpleFileTransfer *transfer,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29 gpointer data)
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 {
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 guint *counter = data;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33 g_assert_true(PURPLE_IS_FILE_TRANSFER_MANAGER(manager));
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34 g_assert_true(PURPLE_IS_FILE_TRANSFER(transfer));
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 *counter = *counter + 1;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37 }
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39 static void
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 test_purple_file_transfer_manager_add_remove(void) {
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 PurpleAccount *account = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42 PurpleContactInfo *remote = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 PurpleFileTransfer *transfer = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 PurpleFileTransferManager *manager = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 guint added = 0;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 guint removed = 0;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 account = purple_account_new("test", "test");
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49 remote = purple_contact_info_new(NULL);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
51 manager = g_object_new(PURPLE_TYPE_FILE_TRANSFER_MANAGER, NULL);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52 g_signal_connect(manager, "added",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53 G_CALLBACK(test_purple_file_transfer_manager_add_remove_cb),
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54 &added);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 g_signal_connect(manager, "removed",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56 G_CALLBACK(test_purple_file_transfer_manager_add_remove_cb),
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57 &removed);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 g_assert_cmpuint(g_list_model_get_n_items(G_LIST_MODEL(manager)), ==, 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61 /* Add the transfer, verify that it was added, and that the signal was
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62 * emitted.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 transfer = purple_file_transfer_new_receive(account, remote, "foo.bar", 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 purple_file_transfer_manager_add(manager, transfer);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
66 g_assert_cmpuint(g_list_model_get_n_items(G_LIST_MODEL(manager)), ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67 g_assert_cmpuint(added, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68 g_assert_cmpuint(removed, ==, 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
69
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 /* Remove the transfer, verify that it was removed, and that the signal
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
71 * was emitted.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72 */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73 purple_file_transfer_manager_remove(manager, transfer);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74 g_assert_cmpuint(g_list_model_get_n_items(G_LIST_MODEL(manager)), ==, 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 g_assert_cmpuint(added, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
76 g_assert_cmpuint(removed, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
77
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
78 /* Cleanup */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
79 g_clear_object(&transfer);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
80 g_clear_object(&manager);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
81 g_clear_object(&remote);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
82 g_clear_object(&account);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
83 }
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
84
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
85 /******************************************************************************
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
86 * Signal Propagation Tests
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
87 *****************************************************************************/
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
88 static void
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
89 test_purple_file_transfer_manager_transfer_changed_cb(PurpleFileTransferManager *manager,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
90 PurpleFileTransfer *transfer,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
91 GParamSpec *pspec,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
92 gpointer data)
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
93 {
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
94 guint *counter = data;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
95
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
96 g_assert_true(PURPLE_IS_FILE_TRANSFER_MANAGER(manager));
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
97 g_assert_true(PURPLE_IS_FILE_TRANSFER(transfer));
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
98 g_assert_true(G_IS_PARAM_SPEC(pspec));
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
99
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
100 *counter = *counter + 1;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
101 }
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
102
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
103 static void
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
104 test_purple_file_transfer_manager_propagates_notify(void) {
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
105 PurpleAccount *account = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
106 PurpleContactInfo *remote = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
107 PurpleFileTransferManager *manager = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
108 PurpleFileTransfer *transfer = NULL;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
109 guint generic_counter = 0;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
110 guint specific_counter = 0;
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
111
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
112 account = purple_account_new("test", "test");
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
113 remote = purple_contact_info_new(NULL);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
114
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
115 manager = g_object_new(PURPLE_TYPE_FILE_TRANSFER_MANAGER, NULL);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
116 g_signal_connect(manager, "transfer-changed",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
117 G_CALLBACK(test_purple_file_transfer_manager_transfer_changed_cb),
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
118 &generic_counter);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
119 g_signal_connect(manager, "transfer-changed::state",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
120 G_CALLBACK(test_purple_file_transfer_manager_transfer_changed_cb),
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
121 &specific_counter);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
122
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
123 transfer = purple_file_transfer_new_receive(account, remote, "foo.bar", 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
124 purple_file_transfer_manager_add(manager, transfer);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
125
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
126 /* Verify our counters are still 0. */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
127 g_assert_cmpuint(generic_counter, ==, 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
128 g_assert_cmpuint(specific_counter, ==, 0);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
129
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
130 /* Change the state property and verify that each counter was incremented
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
131 * by 1.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
132 */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
133 purple_file_transfer_set_state(transfer,
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
134 PURPLE_FILE_TRANSFER_STATE_NEGOTIATING);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
135 g_assert_cmpuint(generic_counter, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
136 g_assert_cmpuint(specific_counter, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
137
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
138 /* Now set another property and verify that only the generic counter was
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
139 * incremented.
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
140 */
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
141 purple_file_transfer_set_message(transfer, "heyo");
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
142 g_assert_cmpuint(generic_counter, ==, 2);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
143 g_assert_cmpuint(specific_counter, ==, 1);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
144
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
145 g_clear_object(&transfer);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
146 g_clear_object(&manager);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
147 g_clear_object(&remote);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
148 g_clear_object(&account);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
149 }
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
150
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
151 /******************************************************************************
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
152 * Main
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
153 *****************************************************************************/
42866
4b201e18638f Modernize most of the unit tests
Gary Kramlich <grim@reaperworld.com>
parents: 42560
diff changeset
154 int
4b201e18638f Modernize most of the unit tests
Gary Kramlich <grim@reaperworld.com>
parents: 42560
diff changeset
155 main(int argc, char *argv[]) {
42560
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
156 g_test_init(&argc, &argv, NULL);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
157 g_test_set_nonfatal_assertions();
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
158
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
159 g_test_add_func("/file-transfer-manager/add-remove",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
160 test_purple_file_transfer_manager_add_remove);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
161
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
162 g_test_add_func("/file-transfer-manager/propagates-notify",
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
163 test_purple_file_transfer_manager_propagates_notify);
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
164
42866
4b201e18638f Modernize most of the unit tests
Gary Kramlich <grim@reaperworld.com>
parents: 42560
diff changeset
165 return g_test_run();
42560
dcdf8a9a686b Implement PurpleFileTransferManager
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
166 }

mercurial