summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Withnall <withnall@endlessm.com>2019-10-28 19:41:45 +0000
committerPhilip Withnall <withnall@endlessm.com>2019-10-28 20:17:07 +0000
commit833579d982e23d440210e82580fe920cacd24be9 (patch)
treeaaa575c9d9f4296fd7ddcad11e9e45dd7a342421
parent9df8d76c972de7cad6e62f7fbdda043ce86b8cc7 (diff)
downloadglib-833579d982e23d440210e82580fe920cacd24be9.tar.gz
tests: Move main loop and test GUID into test functions in gdbus-peer
There’s actually no need for them to be global or reused between unit tests, so move them inside the test functions. This is one step towards eliminating shared state between the unit tests. Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #1912
-rw-r--r--gio/tests/gdbus-peer.c45
1 files changed, 37 insertions, 8 deletions
diff --git a/gio/tests/gdbus-peer.c b/gio/tests/gdbus-peer.c
index a3260a6e0..b410e80d1 100644
--- a/gio/tests/gdbus-peer.c
+++ b/gio/tests/gdbus-peer.c
@@ -1033,6 +1033,9 @@ do_test_peer (void)
static void
test_peer (void)
{
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
/* Run this test multiple times using different address formats to ensure
* they all work.
*/
@@ -1049,6 +1052,9 @@ test_peer (void)
do_test_peer ();
teardown_test_address ();
#endif
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
/* ---------------------------------------------------------------------------------------------------- */
@@ -1064,6 +1070,9 @@ test_peer_signals (void)
g_test_bug ("https://gitlab.gnome.org/GNOME/glib/issues/1620");
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
setup_test_address ();
memset (&data, '\0', sizeof (PeerData));
data.current_connections = g_ptr_array_new_with_free_func (g_object_unref);
@@ -1119,6 +1128,9 @@ test_peer_signals (void)
g_thread_join (service_thread);
teardown_test_address ();
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
/* ---------------------------------------------------------------------------------------------------- */
@@ -1260,6 +1272,9 @@ delayed_message_processing (void)
GThread *service_thread;
guint n;
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
setup_test_address ();
data = g_new0 (DmpData, 1);
@@ -1307,6 +1322,9 @@ delayed_message_processing (void)
g_thread_join (service_thread);
dmp_data_free (data);
teardown_test_address ();
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
/* ---------------------------------------------------------------------------------------------------- */
@@ -1405,6 +1423,9 @@ test_nonce_tcp (void)
gboolean res;
const gchar *address;
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
memset (&data, '\0', sizeof (PeerData));
data.current_connections = g_ptr_array_new_with_free_func (g_object_unref);
@@ -1512,6 +1533,9 @@ test_nonce_tcp (void)
g_thread_join (service_thread);
g_ptr_array_unref (data.current_connections);
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
static void
@@ -1596,6 +1620,9 @@ test_tcp_anonymous (void)
GDBusConnection *connection;
GError *error;
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
seen_connection = FALSE;
service_thread = g_thread_new ("tcp-anon-service",
tcp_anonymous_service_thread_func,
@@ -1623,6 +1650,9 @@ test_tcp_anonymous (void)
server = NULL;
g_thread_join (service_thread);
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
/* ---------------------------------------------------------------------------------------------------- */
@@ -1767,6 +1797,9 @@ codegen_test_peer (void)
GVariant *value;
const gchar *s;
+ test_guid = g_dbus_generate_guid ();
+ loop = g_main_loop_new (NULL, FALSE);
+
setup_test_address ();
/* bring up a server - we run the server in a different thread to avoid deadlocks */
@@ -1874,6 +1907,9 @@ codegen_test_peer (void)
g_thread_join (service_thread);
teardown_test_address ();
+
+ g_main_loop_unref (loop);
+ g_free (test_guid);
}
/* ---------------------------------------------------------------------------------------------------- */
@@ -1892,11 +1928,6 @@ main (int argc,
g_assert (introspection_data != NULL);
test_interface_introspection_data = introspection_data->interfaces[0];
- test_guid = g_dbus_generate_guid ();
-
- /* all the tests rely on a shared main loop */
- loop = g_main_loop_new (NULL, FALSE);
-
g_test_add_func ("/gdbus/peer-to-peer", test_peer);
g_test_add_func ("/gdbus/peer-to-peer/signals", test_peer_signals);
g_test_add_func ("/gdbus/delayed-message-processing", delayed_message_processing);
@@ -1906,10 +1937,8 @@ main (int argc,
g_test_add_func ("/gdbus/credentials", test_credentials);
g_test_add_func ("/gdbus/codegen-peer-to-peer", codegen_test_peer);
- ret = g_test_run();
+ ret = g_test_run ();
- g_main_loop_unref (loop);
- g_free (test_guid);
g_dbus_node_info_unref (introspection_data);
return ret;