diff options
author | Thomas Haller <thaller@redhat.com> | 2022-10-07 11:51:40 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2022-10-07 13:15:30 +0200 |
commit | 900d7db9787d07df343dfd524897589ad5949ed8 (patch) | |
tree | 3b25129323e50a58f1a5c3801660e5c565a1f575 | |
parent | 087049c4941e272d55ee1de8d49a90e8b76f6c57 (diff) | |
download | NetworkManager-th/tmp1.tar.gz |
TESTth/tmp1
-rw-r--r-- | src/libnm-core-impl/nm-meta-setting-base-impl.c | 5 | ||||
-rw-r--r-- | src/libnm-core-impl/tests/test-setting.c | 23 |
2 files changed, 28 insertions, 0 deletions
diff --git a/src/libnm-core-impl/nm-meta-setting-base-impl.c b/src/libnm-core-impl/nm-meta-setting-base-impl.c index 3434c85839..62c366d2ca 100644 --- a/src/libnm-core-impl/nm-meta-setting-base-impl.c +++ b/src/libnm-core-impl/nm-meta-setting-base-impl.c @@ -822,6 +822,11 @@ nm_meta_setting_infos_by_gtype(GType gtype) const NMMetaSettingInfo *setting_info; #if _NM_META_SETTING_BASE_IMPL_LIBNM + return _infos_by_gtype_binary_search(gtype); +#endif + nm_assert_not_reached(); + +#if _NM_META_SETTING_BASE_IMPL_LIBNM setting_info = _infos_by_gtype_from_class(gtype); #else setting_info = _infos_by_gtype_binary_search(gtype); diff --git a/src/libnm-core-impl/tests/test-setting.c b/src/libnm-core-impl/tests/test-setting.c index 85d549eb76..65fcafd076 100644 --- a/src/libnm-core-impl/tests/test-setting.c +++ b/src/libnm-core-impl/tests/test-setting.c @@ -5134,6 +5134,29 @@ main(int argc, char **argv) { nmtst_init(&argc, &argv, TRUE); + { + gs_unref_object NMConnection *con = NULL; + guint8 ctr = 0; + guint i; + + con = nmtst_create_minimal_connection("test", NULL, NM_SETTING_WIRED_SETTING_NAME, NULL); + + nm_connection_add_setting(con, nm_setting_wired_new()); + + nmtst_connection_normalize(con); + nmtst_assert_connection_verifies_without_normalization(con); + + for (i = 0; i < 10000000; i++) { + ctr += GPOINTER_TO_UINT(nm_connection_get_setting(con, NM_TYPE_SETTING_WIRED)); + ctr += GPOINTER_TO_UINT(nm_connection_get_setting(con, NM_TYPE_SETTING_CONNECTION)); + ctr += GPOINTER_TO_UINT(nm_connection_get_setting(con, NM_TYPE_SETTING_PROXY)); + ctr += GPOINTER_TO_UINT(nm_connection_get_setting(con, NM_TYPE_SETTING_WIREGUARD)); + ctr += GPOINTER_TO_UINT(nm_connection_get_setting(con, NM_TYPE_SETTING_IP4_CONFIG)); + } + + return !!ctr; + } + g_test_add_func("/libnm/test_connection_uuid", test_connection_uuid); g_test_add_func("/libnm/settings/test_nm_meta_setting_types_by_priority", |