summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2022-11-02 22:02:18 +0100
committerThomas Haller <thaller@redhat.com>2022-11-03 09:23:57 +0100
commitdc26e65928740bd20ab01aee422ee9401e0fe11c (patch)
tree6c24ea9f7857df14fd8c63dfcc5942a23e083149
parent545edb7093412e7ea936fc788d63d5ddc9f4e51e (diff)
tests: add tests for generating stable UUIDs for keyfile/initrd
Fixes: 7ee0da3eaffd ('build: don't "update-po" during make dist')
-rw-r--r--src/core/settings/plugins/keyfile/tests/test-keyfile-settings.c13
-rw-r--r--src/nm-initrd-generator/tests/test-cmdline-reader.c17
2 files changed, 25 insertions, 5 deletions
diff --git a/src/core/settings/plugins/keyfile/tests/test-keyfile-settings.c b/src/core/settings/plugins/keyfile/tests/test-keyfile-settings.c
index 28923ae6e1..169a64c5a1 100644
--- a/src/core/settings/plugins/keyfile/tests/test-keyfile-settings.c
+++ b/src/core/settings/plugins/keyfile/tests/test-keyfile-settings.c
@@ -2292,14 +2292,19 @@ test_read_missing_vlan_flags(void)
static void
test_read_missing_id_uuid(void)
{
- gs_unref_object NMConnection *connection = NULL;
- gs_free char *expected_uuid = NULL;
- const char *FILENAME = TEST_KEYFILES_DIR "/Test_Missing_ID_UUID";
+ gs_unref_object NMConnection *connection = NULL;
+ gs_free char *expected_uuid = NULL;
+ gs_free char *expected_uuid2 = NULL;
+ const char *FILENAME = TEST_KEYFILES_DIR "/Test_Missing_ID_UUID";
+ const char F[] = "keyfile\0" TEST_KEYFILES_DIR "/Test_Missing_ID_UUID";
expected_uuid = nm_uuid_generate_from_strings_old("keyfile", FILENAME);
- connection = keyfile_read_connection_from_file(FILENAME);
+ expected_uuid2 =
+ nm_uuid_generate_from_string_str(F, sizeof(F), NM_UUID_TYPE_VERSION3, &nm_uuid_ns_1);
+ g_assert_cmpstr(expected_uuid, ==, expected_uuid2);
+ connection = keyfile_read_connection_from_file(FILENAME);
g_assert_cmpstr(nm_connection_get_id(connection), ==, "Test_Missing_ID_UUID");
g_assert_cmpstr(nm_connection_get_uuid(connection), ==, expected_uuid);
}
diff --git a/src/nm-initrd-generator/tests/test-cmdline-reader.c b/src/nm-initrd-generator/tests/test-cmdline-reader.c
index a8e51f9756..2dfc23a369 100644
--- a/src/nm-initrd-generator/tests/test-cmdline-reader.c
+++ b/src/nm-initrd-generator/tests/test-cmdline-reader.c
@@ -13,6 +13,7 @@
#include <sys/socket.h>
#include "libnm-core-intern/nm-core-internal.h"
+#include "libnm-glib-aux/nm-uuid.h"
#include "nm-initrd-generator/nm-initrd-generator.h"
@@ -1664,7 +1665,11 @@ test_ibft_ip_dev(void)
{
const char *const *ARGV = NM_MAKE_STRV("ip=eth0:ibft");
NMSettingConnection *s_con;
- gs_unref_object NMConnection *connection = NULL;
+ gs_unref_object NMConnection *connection = NULL;
+ const char *s_hwaddr = "00:53:00:ab:00:01";
+ const char *s_vlanid = "666";
+ const char *s_ipaddr = "2001:0db8:0000:0000:0000:0000:0000:0002";
+ gs_free char *expected_uuid = NULL;
connection = _parse_con(ARGV, "eth0");
@@ -1674,6 +1679,16 @@ test_ibft_ip_dev(void)
==,
NM_SETTING_VLAN_SETTING_NAME);
g_assert_cmpstr(nm_setting_connection_get_interface_name(s_con), ==, NULL);
+
+ expected_uuid = nm_uuid_generate_from_strings_old("ibft",
+ s_hwaddr,
+ s_vlanid ? "V" : "v",
+ s_vlanid ? s_vlanid : "",
+ s_ipaddr ? "A" : "DHCP",
+ s_ipaddr ? s_ipaddr : "");
+
+ g_assert_cmpstr(expected_uuid, ==, "16d9bd1c-e2ab-31ef-9196-860078e81a23");
+ g_assert_cmpstr(nm_connection_get_uuid(connection), ==, expected_uuid);
}
static void