mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-01-10 17:30:13 +01:00
containers test: Factor out disconnecting the unconfined manager
As this test's coverage expands, this function will have to do more (clear up name watches, filters, etc.) so it'll be helpful to keep it all in one place. Signed-off-by: Simon McVittie <smcv@collabora.com> Reviewed-by: Philip Withnall <withnall@endlessm.com> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=105656
This commit is contained in:
parent
eaaa2b67e4
commit
d26639ecc2
1 changed files with 21 additions and 16 deletions
|
|
@ -1,6 +1,6 @@
|
|||
/* Integration tests for restricted sockets for containers
|
||||
*
|
||||
* Copyright © 2017 Collabora Ltd.
|
||||
* Copyright © 2017-2018 Collabora Ltd.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation files
|
||||
|
|
@ -155,6 +155,24 @@ instance_removed_cb (GDBusConnection *observer,
|
|||
g_hash_table_add (f->containers_removed, g_strdup (container));
|
||||
}
|
||||
|
||||
static void
|
||||
fixture_disconnect_unconfined (Fixture *f)
|
||||
{
|
||||
if (f->unconfined_conn != NULL)
|
||||
{
|
||||
GError *error = NULL;
|
||||
|
||||
g_dbus_connection_close_sync (f->unconfined_conn, NULL, &error);
|
||||
|
||||
if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CLOSED))
|
||||
g_clear_error (&error);
|
||||
else
|
||||
g_assert_no_error (error);
|
||||
}
|
||||
|
||||
g_clear_object (&f->unconfined_conn);
|
||||
}
|
||||
|
||||
static void
|
||||
setup (Fixture *f,
|
||||
gconstpointer context)
|
||||
|
|
@ -851,8 +869,7 @@ test_stop_server (Fixture *f,
|
|||
NULL,
|
||||
name_gone_set_boolean_cb,
|
||||
&gone, NULL);
|
||||
g_dbus_connection_close_sync (f->unconfined_conn, NULL, &f->error);
|
||||
g_assert_no_error (f->error);
|
||||
fixture_disconnect_unconfined (f);
|
||||
|
||||
g_test_message ("Waiting for container manager bus name to disappear...");
|
||||
|
||||
|
|
@ -1599,19 +1616,7 @@ teardown (Fixture *f,
|
|||
|
||||
dbus_clear_connection (&f->libdbus_observer);
|
||||
|
||||
if (f->unconfined_conn != NULL)
|
||||
{
|
||||
GError *error = NULL;
|
||||
|
||||
g_dbus_connection_close_sync (f->unconfined_conn, NULL, &error);
|
||||
|
||||
if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CLOSED))
|
||||
g_clear_error (&error);
|
||||
else
|
||||
g_assert_no_error (error);
|
||||
}
|
||||
|
||||
g_clear_object (&f->unconfined_conn);
|
||||
fixture_disconnect_unconfined (f);
|
||||
|
||||
if (f->confined_conn != NULL)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue