]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/test/test-pretty-print.c
Merge pull request #31899 from yuwata/sd-journal-add-match
[thirdparty/systemd.git] / src / test / test-pretty-print.c
index ece1a161e451fdf7af87608f8a40c84b314793f2..9ab52c60129f168f9a4f6e5bdcee7dbf05fb63ef 100644 (file)
 #include "strv.h"
 #include "tests.h"
 
+#define CYLON_WIDTH 6
+
+static void test_draw_cylon_one(unsigned pos) {
+        char buf[CYLON_WIDTH + CYLON_BUFFER_EXTRA + 1];
+
+        log_debug("/* %s(%u) */", __func__, pos);
+
+        assert(pos <= CYLON_WIDTH + 1);
+
+        memset(buf, 0xff, sizeof(buf));
+        draw_cylon(buf, sizeof(buf), CYLON_WIDTH, pos);
+        ASSERT_LE(strlen(buf), sizeof(buf));
+}
+
+TEST(draw_cylon) {
+        bool saved = log_get_show_color();
+
+        log_show_color(false);
+        for (unsigned i = 0; i <= CYLON_WIDTH + 1; i++)
+                test_draw_cylon_one(i);
+
+        log_show_color(true);
+        for (unsigned i = 0; i <= CYLON_WIDTH + 1; i++)
+                test_draw_cylon_one(i);
+
+        log_show_color(saved);
+}
+
 TEST(terminal_urlify) {
         _cleanup_free_ char *formatted = NULL;