mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-09-19 16:11:32 +00:00
libnm/test: add test for nm_utils_uuid_generate_from_string()
This commit is contained in:
parent
ea14a0136f
commit
e67425347a
|
@ -1964,6 +1964,8 @@ nm_utils_uuid_generate_from_string (const char *s)
|
|||
uuid_t *uuid;
|
||||
char *buf = NULL;
|
||||
|
||||
g_return_val_if_fail (s && *s, NULL);
|
||||
|
||||
uuid = g_malloc0 (sizeof (*uuid));
|
||||
crypto_md5_hash (NULL, 0, s, strlen (s), (char *) uuid, sizeof (*uuid));
|
||||
|
||||
|
|
|
@ -3802,6 +3802,48 @@ test_hexstr2bin (void)
|
|||
}
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void
|
||||
_test_uuid (const char *expected_uuid, const char *str)
|
||||
{
|
||||
gs_free char *uuid_test = NULL;
|
||||
|
||||
g_assert (str);
|
||||
|
||||
uuid_test = nm_utils_uuid_generate_from_string (str);
|
||||
|
||||
g_assert (uuid_test);
|
||||
g_assert (nm_utils_is_uuid (uuid_test));
|
||||
|
||||
if (strcmp (uuid_test, expected_uuid)) {
|
||||
g_error ("UUID test failed: text=%s, uuid=%s, expected=%s",
|
||||
str, uuid_test, expected_uuid);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
test_nm_utils_uuid_generate_from_string (void)
|
||||
{
|
||||
gs_free char *uuid_test = NULL;
|
||||
|
||||
_test_uuid ("0cc175b9-c0f1-b6a8-31c3-99e269772661", "a");
|
||||
_test_uuid ("098f6bcd-4621-d373-cade-4e832627b4f6", "test");
|
||||
_test_uuid ("59c0547b-7fe2-1c15-2cce-e328e8bf6742", "/etc/NetworkManager/system-connections/em1");
|
||||
|
||||
g_test_expect_message ("libnm", G_LOG_LEVEL_CRITICAL, "*char *nm_utils_uuid_generate_from_string(const char *): *s && *s*");
|
||||
uuid_test = nm_utils_uuid_generate_from_string ("");
|
||||
g_assert (uuid_test == NULL);
|
||||
g_test_assert_expected_messages ();
|
||||
|
||||
g_test_expect_message ("libnm", G_LOG_LEVEL_CRITICAL, "*char *nm_utils_uuid_generate_from_string(const char *): *s && *s*");
|
||||
uuid_test = nm_utils_uuid_generate_from_string (NULL);
|
||||
g_assert (uuid_test == NULL);
|
||||
g_test_assert_expected_messages ();
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
NMTST_DEFINE ();
|
||||
|
||||
int main (int argc, char **argv)
|
||||
|
@ -3896,6 +3938,7 @@ int main (int argc, char **argv)
|
|||
g_test_add_func ("/core/general/test_setting_ip6_gateway", test_setting_ip6_gateway);
|
||||
|
||||
g_test_add_func ("/core/general/hexstr2bin", test_hexstr2bin);
|
||||
g_test_add_func ("/core/general/test_nm_utils_uuid_generate_from_string", test_nm_utils_uuid_generate_from_string);
|
||||
|
||||
return g_test_run ();
|
||||
}
|
||||
|
|
|
@ -1490,6 +1490,8 @@ nm_utils_uuid_generate_from_string (const char *s)
|
|||
uuid_t *uuid;
|
||||
char *buf = NULL;
|
||||
|
||||
g_return_val_if_fail (s && *s, NULL);
|
||||
|
||||
if (!nm_utils_init (&error)) {
|
||||
g_warning ("error initializing crypto: (%d) %s",
|
||||
error ? error->code : 0,
|
||||
|
|
|
@ -2490,6 +2490,48 @@ test_libnm_linking (void)
|
|||
g_free (err);
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void
|
||||
_test_uuid (const char *expected_uuid, const char *str)
|
||||
{
|
||||
gs_free char *uuid_test = NULL;
|
||||
|
||||
g_assert (str);
|
||||
|
||||
uuid_test = nm_utils_uuid_generate_from_string (str);
|
||||
|
||||
g_assert (uuid_test);
|
||||
g_assert (nm_utils_is_uuid (uuid_test));
|
||||
|
||||
if (strcmp (uuid_test, expected_uuid)) {
|
||||
g_error ("UUID test failed: text=%s, uuid=%s, expected=%s",
|
||||
str, uuid_test, expected_uuid);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
test_nm_utils_uuid_generate_from_string (void)
|
||||
{
|
||||
gs_free char *uuid_test = NULL;
|
||||
|
||||
_test_uuid ("0cc175b9-c0f1-b6a8-31c3-99e269772661", "a");
|
||||
_test_uuid ("098f6bcd-4621-d373-cade-4e832627b4f6", "test");
|
||||
_test_uuid ("59c0547b-7fe2-1c15-2cce-e328e8bf6742", "/etc/NetworkManager/system-connections/em1");
|
||||
|
||||
g_test_expect_message ("libnm-util", G_LOG_LEVEL_CRITICAL, "*char *nm_utils_uuid_generate_from_string(const char *): *s && *s*");
|
||||
uuid_test = nm_utils_uuid_generate_from_string ("");
|
||||
g_assert (uuid_test == NULL);
|
||||
g_test_assert_expected_messages ();
|
||||
|
||||
g_test_expect_message ("libnm-util", G_LOG_LEVEL_CRITICAL, "*char *nm_utils_uuid_generate_from_string(const char *): *s && *s*");
|
||||
uuid_test = nm_utils_uuid_generate_from_string (NULL);
|
||||
g_assert (uuid_test == NULL);
|
||||
g_test_assert_expected_messages ();
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
NMTST_DEFINE ();
|
||||
|
||||
int main (int argc, char **argv)
|
||||
|
@ -2567,6 +2609,8 @@ int main (int argc, char **argv)
|
|||
|
||||
test_libnm_linking ();
|
||||
|
||||
test_nm_utils_uuid_generate_from_string ();
|
||||
|
||||
base = g_path_get_basename (argv[0]);
|
||||
fprintf (stdout, "%s: SUCCESS\n", base);
|
||||
g_free (base);
|
||||
|
|
Loading…
Reference in a new issue