diff options
author | Philip Withnall <withnall@endlessm.com> | 2019-10-28 19:41:45 +0000 |
---|---|---|
committer | Philip Withnall <withnall@endlessm.com> | 2019-10-28 20:17:07 +0000 |
commit | 833579d982e23d440210e82580fe920cacd24be9 (patch) | |
tree | aaa575c9d9f4296fd7ddcad11e9e45dd7a342421 | |
parent | 9df8d76c972de7cad6e62f7fbdda043ce86b8cc7 (diff) | |
download | glib-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.c | 45 |
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; |