diff options
| author | Michael Biebl <biebl@debian.org> | 2023-08-09 21:55:35 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2023-08-09 21:55:35 +0200 |
| commit | 05e4a733f2141995181a551854d5df929f084adf (patch) | |
| tree | 83bb937740a6667525ba0df046748ecaa829c269 /src/libnm-core-impl/tests/test-general.c | |
| parent | 14b0f3a9dc9ea90d60a3b057350fd4d637dc021a (diff) | |
New upstream version 1.44.0 upstream/1.44.0
Diffstat (limited to 'src/libnm-core-impl/tests/test-general.c')
| -rw-r--r-- | src/libnm-core-impl/tests/test-general.c | 99 |
1 files changed, 77 insertions, 22 deletions
diff --git a/src/libnm-core-impl/tests/test-general.c b/src/libnm-core-impl/tests/test-general.c index 87f7b042..30b1ca5d 100644 --- a/src/libnm-core-impl/tests/test-general.c +++ b/src/libnm-core-impl/tests/test-general.c @@ -7,6 +7,7 @@ #include "libnm-core-impl/nm-default-libnm-core.h" +#include <ctype.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> @@ -87,21 +88,65 @@ G_STATIC_ASSERT(NM_UTILS_HWADDR_LEN_MAX == _NM_UTILS_HWADDR_LEN_MAX); static void test_nm_ascii_spaces(void) { - int i; - const char *const S = NM_ASCII_SPACES; + int i; + + { + const char *const S = NM_ASCII_SPACES; - for (i = 0; S[i]; i++) - g_assert(!strchr(&S[i + 1], S[i])); + for (i = 0; S[i]; i++) + g_assert(!strchr(&S[i + 1], S[i])); - for (i = 0; S[i] != '\0'; i++) - g_assert(g_ascii_isspace(S[i])); + for (i = 0; S[i] != '\0'; i++) + g_assert(g_ascii_isspace(S[i])); - g_assert(!g_ascii_isspace((char) 0)); - for (i = 1; i < 0x100; i++) { - if (g_ascii_isspace((char) i)) - g_assert(strchr(S, (char) i)); - else - g_assert(!strchr(S, (char) i)); + g_assert(!g_ascii_isspace((char) 0)); + for (i = 1; i < 0x100; i++) { + g_assert((!!g_ascii_isspace((char) i)) == (!!strchr(S, (char) i))); + } + } + + { + const char *const S = NM_ASCII_WHITESPACES; + + for (i = 0; S[i]; i++) + g_assert(!strchr(&S[i + 1], S[i])); + + for (i = 0; S[i] != '\0'; i++) + g_assert(nm_ascii_is_whitespace(S[i])); + + g_assert(!nm_ascii_is_whitespace((char) 0)); + for (i = 1; i < 0x100; i++) { + g_assert(nm_ascii_is_whitespace((char) i) == (!!strchr(S, (char) i))); + } + } + + { + const char *const S = NM_ASCII_SPACES_CTYPE; + + for (i = 0; S[i]; i++) + g_assert(!strchr(&S[i + 1], S[i])); + + if (nm_streq0(g_getenv("LANG"), "C")) { + g_assert(!isspace((char) 0)); + for (i = 1; i < 0x100; i++) { + g_assert((!!isspace((char) i)) == (!!strchr(S, (char) i))); + } + } + } + + { + const char *const S = NM_ASCII_SPACES_KERNEL; + + for (i = 0; S[i]; i++) + g_assert(!strchr(&S[i + 1], S[i])); + + for (i = 0; S[i] != '\0'; i++) + g_assert(nm_ascii_is_space_kernel(S[i])); + + g_assert(!nm_ascii_is_space_kernel((char) 0)); + for (i = 1; i < 0x100; i++) { + g_assert(nm_ascii_is_space_kernel((char) i) == (!!strchr(S, (char) i))); + } } } @@ -1417,6 +1462,7 @@ _do_test_c_list_sort(CListSort *elements, guint n_list, gboolean headless) g_assert(!c_list_is_empty(&head)); g_assert(c_list_length(&head) == n_list); + g_assert(c_list_is_empty_or_single(&head) == (n_list <= 1)); el_prev = NULL; c_list_for_each (iter, &head) { @@ -1443,6 +1489,10 @@ test_c_list_sort(void) guint n_list; guint repeat; + g_assert(!c_list_is_linked(NULL)); + g_assert(c_list_is_empty(NULL)); + g_assert(c_list_is_empty_or_single(NULL)); + { CList head; @@ -1450,6 +1500,7 @@ test_c_list_sort(void) c_list_sort(&head, _c_list_sort_cmp, NULL); g_assert(c_list_length(&head) == 0); g_assert(c_list_is_empty(&head)); + g_assert(c_list_is_empty_or_single(&head)); } elements = g_new0(CListSort, N_ELEMENTS); @@ -1517,6 +1568,8 @@ _do_test_c_list_insert_sorted(CListSort *elements, guint n_list, bool append_equ g_assert(c_list_length_is(&head, n_list)); g_assert(!c_list_length_is(&head, n_list + 1)); + g_assert(c_list_is_empty_or_single(&head) == (n_list <= 1)); + el_prev = NULL; c_list_for_each_entry (el, &head, lst) { if (el_prev) { @@ -3202,7 +3255,7 @@ test_setting_new_from_dbus_bad(void) nmtst_assert_success(conn, error); setting = nm_connection_get_setting(conn, NM_TYPE_SETTING_WIRELESS); g_assert(setting); - g_assert_cmpint(nm_setting_wireless_get_rate(NM_SETTING_WIRELESS(setting)), ==, 10); + g_assert_cmpint(nm_setting_wireless_get_rate(NM_SETTING_WIRELESS(setting)), ==, 0); g_object_unref(conn); g_variant_unref(dict); @@ -6247,14 +6300,16 @@ test_connection_normalize_infiniband(void) nmtst_connection_normalize(con); g_assert_cmpstr(nm_connection_get_interface_name(con), ==, "x234567890123.0"); -#define iface_name(parent, p_key, expected) \ - G_STMT_START \ - { \ - gs_free char *_s = nm_setting_infiniband_create_virtual_interface_name((parent), (p_key)); \ - \ - g_assert(nm_utils_ifname_valid_kernel(_s, NULL)); \ - g_assert_cmpstr(_s, ==, (expected)); \ - } \ +#define iface_name(parent, p_key, expected) \ + G_STMT_START \ + { \ + char _name[NM_IFNAMSIZ]; \ + \ + nm_net_devname_infiniband(_name, (parent), (p_key)); \ + \ + g_assert(nm_utils_ifname_valid_kernel(_name, NULL)); \ + g_assert_cmpstr(_name, ==, (expected)); \ + } \ G_STMT_END iface_name("foo", 15, "foo.000f"); @@ -10515,7 +10570,7 @@ test_nm_ip_addr_zero(void) g_assert_cmpstr(nm_inet_ntop(AF_INET, &nm_ip_addr_zero, buf), ==, "0.0.0.0"); g_assert_cmpstr(nm_inet_ntop(AF_INET6, &nm_ip_addr_zero, buf), ==, "::"); - G_STATIC_ASSERT_EXPR(sizeof(a) == sizeof(a.array)); + G_STATIC_ASSERT_EXPR(sizeof(a) == sizeof(a.addr_ptr)); } static void |