summaryrefslogtreecommitdiff
path: root/libnm/tests
diff options
context:
space:
mode:
Diffstat (limited to 'libnm/tests')
-rw-r--r--libnm/tests/test-remote-settings-client.c58
-rw-r--r--libnm/tests/test-secret-agent.c111
2 files changed, 99 insertions, 70 deletions
diff --git a/libnm/tests/test-remote-settings-client.c b/libnm/tests/test-remote-settings-client.c
index 4f8d873bbc..1561ef9e42 100644
--- a/libnm/tests/test-remote-settings-client.c
+++ b/libnm/tests/test-remote-settings-client.c
@@ -37,16 +37,24 @@ NMRemoteConnection *remote = NULL;
/*******************************************************************/
static void
-add_cb (NMRemoteSettings *s,
- NMRemoteConnection *connection,
- GError *error,
+add_cb (GObject *s,
+ GAsyncResult *result,
gpointer user_data)
{
+ gboolean *done = user_data;
+ GError *error = NULL;
+
+ remote = nm_remote_settings_add_connection_finish (settings, result, &error);
g_assert_no_error (error);
- *((gboolean *) user_data) = TRUE;
- remote = connection;
- g_object_add_weak_pointer (G_OBJECT (connection), (void **) &remote);
+ *done = TRUE;
+ g_object_add_weak_pointer (G_OBJECT (remote), (void **) &remote);
+
+ /* nm_remote_settings_add_connection_finish() adds a ref to @remote, but we
+ * want the weak pointer to be cleared as soon as @settings drops its own ref.
+ * So drop ours.
+ */
+ g_object_unref (remote);
}
#define TEST_CON_ID "blahblahblah"
@@ -55,18 +63,17 @@ static void
test_add_connection (void)
{
NMConnection *connection;
- gboolean success;
time_t start, now;
gboolean done = FALSE;
connection = nmtst_create_minimal_connection (TEST_CON_ID, NULL, NM_SETTING_WIRED_SETTING_NAME, NULL);
- success = nm_remote_settings_add_connection (settings,
- connection,
- TRUE,
- add_cb,
- &done);
- g_assert (success == TRUE);
+ nm_remote_settings_add_connection_async (settings,
+ connection,
+ TRUE,
+ NULL,
+ add_cb,
+ &done);
start = time (NULL);
do {
@@ -352,15 +359,19 @@ test_remove_connection (void)
#define TEST_ADD_REMOVE_ID "add-remove-test-connection"
static void
-add_remove_cb (NMRemoteSettings *s,
- NMRemoteConnection *connection,
- GError *error,
+add_remove_cb (GObject *s,
+ GAsyncResult *result,
gpointer user_data)
{
+ NMRemoteConnection *connection;
+ gboolean *done = user_data;
+ GError *error = NULL;
+
+ connection = nm_remote_settings_add_connection_finish (settings, result, &error);
g_assert_error (error, NM_REMOTE_SETTINGS_ERROR, NM_REMOTE_SETTINGS_ERROR_CONNECTION_REMOVED);
g_assert (connection == NULL);
- *((gboolean *) user_data) = TRUE;
+ *done = TRUE;
}
static void
@@ -369,7 +380,6 @@ test_add_remove_connection (void)
GVariant *ret;
GError *error = NULL;
NMConnection *connection;
- gboolean success;
time_t start, now;
gboolean done = FALSE;
@@ -386,12 +396,12 @@ test_add_remove_connection (void)
g_variant_unref (ret);
connection = nmtst_create_minimal_connection (TEST_ADD_REMOVE_ID, NULL, NM_SETTING_WIRED_SETTING_NAME, NULL);
- success = nm_remote_settings_add_connection (settings,
- connection,
- TRUE,
- add_remove_cb,
- &done);
- g_assert (success == TRUE);
+ nm_remote_settings_add_connection_async (settings,
+ connection,
+ TRUE,
+ NULL,
+ add_remove_cb,
+ &done);
start = time (NULL);
do {
diff --git a/libnm/tests/test-secret-agent.c b/libnm/tests/test-secret-agent.c
index 4bb99a7a24..c4eafd7a40 100644
--- a/libnm/tests/test-secret-agent.c
+++ b/libnm/tests/test-secret-agent.c
@@ -219,12 +219,15 @@ device_added_cb (NMClient *c,
}
static void
-connection_added_cb (NMRemoteSettings *s,
- NMRemoteConnection *connection,
- GError *error,
+connection_added_cb (GObject *s,
+ GAsyncResult *result,
gpointer user_data)
{
TestSecretAgentData *sadata = user_data;
+ NMRemoteConnection *connection;
+ GError *error = NULL;
+
+ connection = nm_remote_settings_add_connection_finish (sadata->settings, result, &error);
g_assert_no_error (error);
g_assert_cmpstr (nm_connection_get_id (NM_CONNECTION (connection)), ==, sadata->con_id);
@@ -258,7 +261,6 @@ test_setup (TestSecretAgentData *sadata, gconstpointer test_data)
NMSettingWireless *s_wireless;
GBytes *ssid;
NMSetting *s_wsec;
- gboolean success;
GError *error = NULL;
GVariant *ret;
gulong handler;
@@ -314,12 +316,12 @@ test_setup (TestSecretAgentData *sadata, gconstpointer test_data)
NULL);
nm_connection_add_setting (connection, s_wsec);
- success = nm_remote_settings_add_connection (sadata->settings,
- connection,
- TRUE,
- connection_added_cb,
- sadata);
- g_assert (success == TRUE);
+ nm_remote_settings_add_connection_async (sadata->settings,
+ connection,
+ TRUE,
+ NULL,
+ connection_added_cb,
+ sadata);
g_object_unref (connection);
g_main_loop_run (sadata->loop);
@@ -354,6 +356,7 @@ test_cleanup (TestSecretAgentData *sadata, gconstpointer test_data)
g_object_unref (sadata->agent);
}
+ g_object_unref (sadata->connection);
g_object_unref (sadata->client);
g_object_unref (sadata->settings);
@@ -380,12 +383,15 @@ test_cleanup (TestSecretAgentData *sadata, gconstpointer test_data)
/*******************************************************************/
static void
-connection_activated_none_cb (NMClient *c,
- NMActiveConnection *ac,
- GError *error,
+connection_activated_none_cb (GObject *c,
+ GAsyncResult *result,
gpointer user_data)
{
TestSecretAgentData *sadata = user_data;
+ NMActiveConnection *ac;
+ GError *error = NULL;
+
+ ac = nm_client_activate_connection_finish (sadata->client, result, &error);
g_assert (error != NULL);
g_dbus_error_strip_remote_error (error);
@@ -397,12 +403,13 @@ connection_activated_none_cb (NMClient *c,
static void
test_secret_agent_none (TestSecretAgentData *sadata, gconstpointer test_data)
{
- nm_client_activate_connection (sadata->client,
- sadata->connection,
- sadata->device,
- NULL,
- connection_activated_none_cb,
- sadata);
+ nm_client_activate_connection_async (sadata->client,
+ sadata->connection,
+ sadata->device,
+ NULL,
+ NULL,
+ connection_activated_none_cb,
+ sadata);
g_main_loop_run (sadata->loop);
}
@@ -425,12 +432,15 @@ secrets_requested_no_secrets_cb (TestSecretAgent *agent,
}
static void
-connection_activated_no_secrets_cb (NMClient *c,
- NMActiveConnection *ac,
- GError *error,
+connection_activated_no_secrets_cb (GObject *c,
+ GAsyncResult *result,
gpointer user_data)
{
TestSecretAgentData *sadata = user_data;
+ NMActiveConnection *ac;
+ GError *error = NULL;
+
+ ac = nm_client_activate_connection_finish (sadata->client, result, &error);
g_assert (error != NULL);
g_dbus_error_strip_remote_error (error);
@@ -446,12 +456,13 @@ test_secret_agent_no_secrets (TestSecretAgentData *sadata, gconstpointer test_da
G_CALLBACK (secrets_requested_no_secrets_cb),
sadata);
- nm_client_activate_connection (sadata->client,
- sadata->connection,
- sadata->device,
- NULL,
- connection_activated_no_secrets_cb,
- sadata);
+ nm_client_activate_connection_async (sadata->client,
+ sadata->connection,
+ sadata->device,
+ NULL,
+ NULL,
+ connection_activated_no_secrets_cb,
+ sadata);
g_main_loop_run (sadata->loop);
g_assert_cmpint (sadata->secrets_requested, ==, 1);
@@ -460,12 +471,15 @@ test_secret_agent_no_secrets (TestSecretAgentData *sadata, gconstpointer test_da
/*******************************************************************/
static void
-connection_activated_cancel_cb (NMClient *c,
- NMActiveConnection *ac,
- GError *error,
+connection_activated_cancel_cb (GObject *c,
+ GAsyncResult *result,
gpointer user_data)
{
TestSecretAgentData *sadata = user_data;
+ NMActiveConnection *ac;
+ GError *error = NULL;
+
+ ac = nm_client_activate_connection_finish (sadata->client, result, &error);
g_assert (error != NULL);
g_dbus_error_strip_remote_error (error);
@@ -497,12 +511,13 @@ test_secret_agent_cancel (TestSecretAgentData *sadata, gconstpointer test_data)
G_CALLBACK (secrets_requested_cancel_cb),
sadata);
- nm_client_activate_connection (sadata->client,
- sadata->connection,
- sadata->device,
- NULL,
- connection_activated_cancel_cb,
- sadata);
+ nm_client_activate_connection_async (sadata->client,
+ sadata->connection,
+ sadata->device,
+ NULL,
+ NULL,
+ connection_activated_cancel_cb,
+ sadata);
g_main_loop_run (sadata->loop);
g_assert_cmpint (sadata->secrets_requested, ==, 1);
@@ -511,12 +526,15 @@ test_secret_agent_cancel (TestSecretAgentData *sadata, gconstpointer test_data)
/*******************************************************************/
static void
-connection_activated_good_cb (NMClient *c,
- NMActiveConnection *ac,
- GError *error,
+connection_activated_good_cb (GObject *c,
+ GAsyncResult *result,
gpointer user_data)
{
TestSecretAgentData *sadata = user_data;
+ NMActiveConnection *ac;
+ GError *error = NULL;
+
+ ac = nm_client_activate_connection_finish (sadata->client, result, &error);
/* test-networkmanager-service.py doesn't implement activation, but
* we should at least get as far as the error telling us that (which the
@@ -552,12 +570,13 @@ test_secret_agent_good (TestSecretAgentData *sadata, gconstpointer test_data)
G_CALLBACK (secrets_requested_good_cb),
sadata);
- nm_client_activate_connection (sadata->client,
- sadata->connection,
- sadata->device,
- NULL,
- connection_activated_good_cb,
- sadata);
+ nm_client_activate_connection_async (sadata->client,
+ sadata->connection,
+ sadata->device,
+ NULL,
+ NULL,
+ connection_activated_good_cb,
+ sadata);
g_main_loop_run (sadata->loop);
g_assert_cmpint (sadata->secrets_requested, ==, 1);