]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: add test for DECIMAL_STR_WIDTH()
authorLennart Poettering <lennart@poettering.net>
Mon, 14 Mar 2022 11:02:42 +0000 (12:02 +0100)
committerLennart Poettering <lennart@poettering.net>
Mon, 14 Mar 2022 17:18:24 +0000 (18:18 +0100)
src/test/test-macro.c

index 24411f10a52a3a83f04703cc328bec2c00811f4c..84b0af6870640754d22d3c3e14b2fa28b5b065e0 100644 (file)
@@ -387,4 +387,27 @@ TEST(flags) {
         assert_se(f == F2);
 }
 
+TEST(DECIMAL_STR_WIDTH) {
+        assert_se(DECIMAL_STR_WIDTH(0) == 1);
+        assert_se(DECIMAL_STR_WIDTH(1) == 1);
+        assert_se(DECIMAL_STR_WIDTH(2) == 1);
+        assert_se(DECIMAL_STR_WIDTH(9) == 1);
+        assert_se(DECIMAL_STR_WIDTH(10) == 2);
+        assert_se(DECIMAL_STR_WIDTH(11) == 2);
+        assert_se(DECIMAL_STR_WIDTH(99) == 2);
+        assert_se(DECIMAL_STR_WIDTH(100) == 3);
+        assert_se(DECIMAL_STR_WIDTH(101) == 3);
+        assert_se(DECIMAL_STR_WIDTH(-1) == 2);
+        assert_se(DECIMAL_STR_WIDTH(-2) == 2);
+        assert_se(DECIMAL_STR_WIDTH(-9) == 2);
+        assert_se(DECIMAL_STR_WIDTH(-10) == 3);
+        assert_se(DECIMAL_STR_WIDTH(-11) == 3);
+        assert_se(DECIMAL_STR_WIDTH(-99) == 3);
+        assert_se(DECIMAL_STR_WIDTH(-100) == 4);
+        assert_se(DECIMAL_STR_WIDTH(-101) == 4);
+        assert_se(DECIMAL_STR_WIDTH(UINT64_MAX) == STRLEN("18446744073709551615"));
+        assert_se(DECIMAL_STR_WIDTH(INT64_MAX) == STRLEN("9223372036854775807"));
+        assert_se(DECIMAL_STR_WIDTH(INT64_MIN) == STRLEN("-9223372036854775808"));
+}
+
 DEFINE_TEST_MAIN(LOG_INFO);