#include "nm-setting-wireless.h"
#include "nm-simple-connection.h"
#include "nm-utils.h"
+#include "nm-core-internal.h"
#include "nm-test-utils.h"
#define TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT TEST_CERT_DIR "/test_key_and_cert.pem"
#define TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY TEST_CERT_DIR "/test_key_and_cert.pem"
-static gboolean
-find_hints_item (GPtrArray *hints, const char *item)
+static void
+_assert_hints_has (GPtrArray *hints, const char *item)
{
- int i;
+ guint i;
+ guint found = 0;
+ g_assert (hints);
+ g_assert (item);
for (i = 0; i < hints->len; i++) {
- if (!strcmp (item, (const char *) g_ptr_array_index (hints, i)))
- return TRUE;
+ g_assert (hints->pdata[i]);
+ if (strcmp (hints->pdata[i], item) == 0)
+ found++;
}
- return FALSE;
+ g_assert_cmpint (found, ==, 1);
}
static NMConnection *
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set CA certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CA_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_client_cert (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set client certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_private_key (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set private key '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY, error->message);
+ nmtst_assert_success (success, error);
/* IP4 setting */
s_ip4 = (NMSettingIP4Config *) nm_setting_ip4_config_new ();
g_object_set (s_ip4, NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL);
- ASSERT (nm_connection_verify (connection, &error) == TRUE,
- detail, "failed to verify connection: %s",
- (error && error->message) ? error->message : "(unknown)");
+ nmtst_assert_connection_verifies_and_normalizable (connection);
return connection;
}
GPtrArray *hints = NULL;
connection = make_tls_connection ("need-tls-secrets-path-key", NM_SETTING_802_1X_CK_SCHEME_PATH);
- ASSERT (connection != NULL,
- "need-tls-secrets-path-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-secrets-path-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-secrets-path-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-secrets-path-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-secrets-path-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-secrets-path-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD),
- "need-tls-secrets-path-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
GPtrArray *hints = NULL;
connection = make_tls_connection ("need-tls-secrets-blob-key", NM_SETTING_802_1X_CK_SCHEME_BLOB);
- ASSERT (connection != NULL,
- "need-tls-secrets-blob-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-secrets-blob-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-secrets-blob-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Clear secrets and ensure password is again required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-secrets-blob-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-secrets-blob-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-secrets-blob-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD),
- "need-tls-secrets-blob-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 CA certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CA_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_phase2_client_cert (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 client certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_phase2_private_key (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 private key '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY, error->message);
+ nmtst_assert_success (success, error);
/* IP4 setting */
s_ip4 = (NMSettingIP4Config *) nm_setting_ip4_config_new ();
g_object_set (s_ip4, NM_SETTING_IP_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL);
- ASSERT (nm_connection_verify (connection, &error) == TRUE,
- detail, "failed to verify connection: %s",
- (error && error->message) ? error->message : "(unknown)");
-
+ nmtst_assert_connection_verifies_and_normalizable (connection);
return connection;
}
connection = make_tls_phase2_connection ("need-tls-phase2-secrets-path-key",
NM_SETTING_802_1X_CK_SCHEME_PATH);
- ASSERT (connection != NULL,
- "need-tls-phase2-secrets-path-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-phase2-secrets-path-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-phase2-secrets-path-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-phase2-secrets-path-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-phase2-secrets-path-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-phase2-secrets-path-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD),
- "need-tls-phase2-secrets-path-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
connection = make_tls_phase2_connection ("need-tls-phase2-secrets-blob-key",
NM_SETTING_802_1X_CK_SCHEME_BLOB);
- ASSERT (connection != NULL,
- "need-tls-phase2-secrets-blob-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-phase2-secrets-blob-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-phase2-secrets-blob-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-phase2-secrets-blob-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-phase2-secrets-blob-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-phase2-secrets-blob-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD),
- "need-tls-phase2-secrets-blob-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
#define TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT TEST_CERT_DIR "/test_key_and_cert.pem"
#define TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY TEST_CERT_DIR "/test_key_and_cert.pem"
-static gboolean
-find_hints_item (GPtrArray *hints, const char *item)
+static void
+_assert_hints_has (GPtrArray *hints, const char *item)
{
- int i;
+ guint i;
+ guint found = 0;
+ g_assert (hints);
+ g_assert (item);
for (i = 0; i < hints->len; i++) {
- if (!strcmp (item, (const char *) g_ptr_array_index (hints, i)))
- return TRUE;
+ g_assert (hints->pdata[i]);
+ if (!strcmp (item, hints->pdata[i]))
+ found++;
}
- return FALSE;
+ g_assert_cmpint (found, ==, 1);
}
static NMConnection *
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set CA certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CA_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_client_cert (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set client certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_private_key (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set private key '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY, error->message);
+ nmtst_assert_success (success, error);
/* IP4 setting */
s_ip4 = (NMSettingIP4Config *) nm_setting_ip4_config_new ();
g_object_set (s_ip4, NM_SETTING_IP4_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL);
- ASSERT (nm_connection_verify (connection, &error) == TRUE,
- detail, "failed to verify connection: %s",
- (error && error->message) ? error->message : "(unknown)");
+ nmtst_assert_connection_verifies_and_normalizable (connection);
return connection;
}
GPtrArray *hints = NULL;
connection = make_tls_connection ("need-tls-secrets-path-key", NM_SETTING_802_1X_CK_SCHEME_PATH);
- ASSERT (connection != NULL,
- "need-tls-secrets-path-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-secrets-path-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-secrets-path-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-secrets-path-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-secrets-path-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-secrets-path-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD),
- "need-tls-secrets-path-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
GPtrArray *hints = NULL;
connection = make_tls_connection ("need-tls-secrets-blob-key", NM_SETTING_802_1X_CK_SCHEME_BLOB);
- ASSERT (connection != NULL,
- "need-tls-secrets-blob-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-secrets-blob-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-secrets-blob-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Clear secrets and ensure password is again required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-secrets-blob-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-secrets-blob-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-secrets-blob-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD),
- "need-tls-secrets-blob-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 CA certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CA_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_phase2_client_cert (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 client certificate '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_CLIENT_CERT, error->message);
+ nmtst_assert_success (success, error);
success = nm_setting_802_1x_set_phase2_private_key (s_8021x,
TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY,
scheme,
NULL,
&error);
- ASSERT (success == TRUE,
- detail, "failed to set phase2 private key '%s': %s",
- TEST_NEED_SECRETS_EAP_TLS_PRIVATE_KEY, error->message);
+ nmtst_assert_success (success, error);
/* IP4 setting */
s_ip4 = (NMSettingIP4Config *) nm_setting_ip4_config_new ();
g_object_set (s_ip4, NM_SETTING_IP4_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_AUTO, NULL);
- ASSERT (nm_connection_verify (connection, &error) == TRUE,
- detail, "failed to verify connection: %s",
- (error && error->message) ? error->message : "(unknown)");
+ nmtst_assert_connection_verifies_and_normalizable (connection);
return connection;
}
connection = make_tls_phase2_connection ("need-tls-phase2-secrets-path-key",
NM_SETTING_802_1X_CK_SCHEME_PATH);
- ASSERT (connection != NULL,
- "need-tls-phase2-secrets-path-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-phase2-secrets-path-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-phase2-secrets-path-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-phase2-secrets-path-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-phase2-secrets-path-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-phase2-secrets-path-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD),
- "need-tls-phase2-secrets-path-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);
connection = make_tls_phase2_connection ("need-tls-phase2-secrets-blob-key",
NM_SETTING_802_1X_CK_SCHEME_BLOB);
- ASSERT (connection != NULL,
- "need-tls-phase2-secrets-blob-key",
- "error creating test connection");
/* Ensure we don't need any secrets since we just set up the connection */
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name == NULL,
- "need-tls-phase2-secrets-blob-key",
- "secrets are unexpectedly required");
- ASSERT (hints == NULL,
- "need-tls-phase2-secrets-blob-key",
- "hints should be NULL since no secrets were required");
+ g_assert (!setting_name);
+ g_assert (!hints);
/* Connection is good; clear secrets and ensure private key password is then required */
nm_connection_clear_secrets (connection);
hints = NULL;
setting_name = nm_connection_need_secrets (connection, &hints);
- ASSERT (setting_name != NULL,
- "need-tls-phase2-secrets-blob-key-password",
- "unexpected secrets success");
- ASSERT (strcmp (setting_name, NM_SETTING_802_1X_SETTING_NAME) == 0,
- "need-tls-phase2-secrets-blob-key-password",
- "unexpected setting secrets required");
-
- ASSERT (hints != NULL,
- "need-tls-phase2-secrets-blob-key-password",
- "expected returned secrets hints");
- ASSERT (find_hints_item (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD),
- "need-tls-phase2-secrets-blob-key-password",
- "expected to require private key password, but it wasn't");
+ g_assert_cmpstr (setting_name, ==, NM_SETTING_802_1X_SETTING_NAME);
+ _assert_hints_has (hints, NM_SETTING_802_1X_PHASE2_PRIVATE_KEY_PASSWORD);
g_ptr_array_free (hints, TRUE);
g_object_unref (connection);