]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: Test STRLEN for C11 string literals
authorJan Janssen <medhefgo@web.de>
Sun, 22 May 2022 07:37:27 +0000 (09:37 +0200)
committerLuca Boccassi <luca.boccassi@gmail.com>
Sun, 22 May 2022 19:21:04 +0000 (20:21 +0100)
src/test/test-format-util.c

index ee74d1c8981e04b0fb054906614cb4bfcd956a47..306350937a78e49002105a293c1917d75215c9e0 100644 (file)
@@ -4,12 +4,24 @@
 #include "macro.h"
 #include "string-util.h"
 #include "tests.h"
+#include "uchar.h"
 
 /* Do some basic checks on STRLEN() and DECIMAL_STR_MAX() */
-assert_cc(STRLEN("xxx") == 3);
 assert_cc(STRLEN("") == 0);
-assert_cc(STRLEN(L"xxx") == 3 * sizeof(wchar_t));
+assert_cc(STRLEN("a") == 1);
+assert_cc(STRLEN("123") == 3);
+assert_cc(STRLEN(u8"") == 0);
+assert_cc(STRLEN(u8"a") == 1);
+assert_cc(STRLEN(u8"123") == 3);
+assert_cc(STRLEN(u"") == 0);
+assert_cc(STRLEN(u"a") == sizeof(char16_t));
+assert_cc(STRLEN(u"123") == 3 * sizeof(char16_t));
+assert_cc(STRLEN(U"") == 0);
+assert_cc(STRLEN(U"a") == sizeof(char32_t));
+assert_cc(STRLEN(U"123") == 3 * sizeof(char32_t));
 assert_cc(STRLEN(L"") == 0);
+assert_cc(STRLEN(L"a") == sizeof(wchar_t));
+assert_cc(STRLEN(L"123") == 3 * sizeof(wchar_t));
 assert_cc(DECIMAL_STR_MAX(uint8_t) == STRLEN("255")+1);
 assert_cc(DECIMAL_STR_MAX(int8_t) == STRLEN("-127")+1);
 assert_cc(DECIMAL_STR_MAX(uint64_t) == STRLEN("18446744073709551615")+1);