libpurple/tests/test_protocol_conversation.c

changeset 43235
42e7b89033fe
parent 43136
36eba703e2b9
child 43301
0e43dc8462e8
--- a/libpurple/tests/test_protocol_conversation.c	Mon Apr 21 22:43:29 2025 -0500
+++ b/libpurple/tests/test_protocol_conversation.c	Mon Apr 21 23:09:08 2025 -0500
@@ -350,17 +350,18 @@
                                                         GAsyncResult *result,
                                                         G_GNUC_UNUSED gpointer data)
 {
+	PurpleConversation *conversation = NULL;
 	PurpleProtocolConversation *protocol = NULL;
 	GError *error = NULL;
-	gboolean joined = FALSE;
 
 	protocol = PURPLE_PROTOCOL_CONVERSATION(source);
-	joined = purple_protocol_conversation_join_channel_finish(protocol, result,
-	                                                          &error);
+	conversation = purple_protocol_conversation_join_channel_finish(protocol,
+	                                                                result,
+	                                                                &error);
 
 	g_assert_error(error, PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0);
 	g_clear_error(&error);
-	g_assert_false(joined);
+	g_assert_null(conversation);
 }
 
 static void
@@ -861,13 +862,16 @@
 		                                    0, "error");
 		g_task_return_error(task, error);
 	} else {
-		g_task_return_boolean(task, TRUE);
+		PurpleConversation *conversation = NULL;
+
+		conversation = g_object_new(PURPLE_TYPE_CONVERSATION, NULL);
+		g_task_return_pointer(task, conversation, g_object_unref);
 	}
 
 	g_clear_object(&task);
 }
 
-static gboolean
+static PurpleConversation *
 test_purple_protocol_conversation_join_channel_finish(PurpleProtocolConversation *protocol,
                                                       GAsyncResult *result,
                                                       GError **error)
@@ -877,7 +881,7 @@
 	test_protocol = TEST_PURPLE_PROTOCOL_CONVERSATION(protocol);
 	test_protocol->join_channel_finish += 1;
 
-	return g_task_propagate_boolean(G_TASK(result), error);
+	return g_task_propagate_pointer(G_TASK(result), error);
 }
 
 static void
@@ -1499,23 +1503,25 @@
                                                   G_GNUC_UNUSED gpointer data)
 {
 	TestPurpleProtocolConversation *test_protocol = NULL;
+	PurpleConversation *conversation = NULL;
 	PurpleProtocolConversation *protocol = NULL;
 	GError *error = NULL;
-	gboolean result = FALSE;
 
 	protocol = PURPLE_PROTOCOL_CONVERSATION(obj);
 	test_protocol = TEST_PURPLE_PROTOCOL_CONVERSATION(obj);
 
-	result = purple_protocol_conversation_join_channel_finish(protocol, res,
-	                                                          &error);
+	conversation = purple_protocol_conversation_join_channel_finish(protocol,
+	                                                                res,
+	                                                                &error);
 
 	if(test_protocol->should_error) {
 		g_assert_error(error, TEST_PURPLE_PROTOCOL_CONVERSATION_DOMAIN, 0);
 		g_clear_error(&error);
-		g_assert_false(result);
+		g_assert_null(conversation);
 	} else {
 		g_assert_no_error(error);
-		g_assert_true(result);
+		g_assert_true(PURPLE_IS_CONVERSATION(conversation));
+		g_clear_object(&conversation);
 	}
 }
 

mercurial