1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
8 #include "alloc-util.h"
10 #include "pretty-print.h"
16 static void test_draw_cylon_one(unsigned pos
) {
17 char buf
[CYLON_WIDTH
+ CYLON_BUFFER_EXTRA
+ 1];
19 log_debug("/* %s(%u) */", __func__
, pos
);
21 assert(pos
<= CYLON_WIDTH
+ 1);
23 memset(buf
, 0xff, sizeof(buf
));
24 draw_cylon(buf
, sizeof(buf
), CYLON_WIDTH
, pos
);
25 ASSERT_LE(strlen(buf
), sizeof(buf
));
29 bool saved
= log_get_show_color();
31 log_show_color(false);
32 for (unsigned i
= 0; i
<= CYLON_WIDTH
+ 1; i
++)
33 test_draw_cylon_one(i
);
36 for (unsigned i
= 0; i
<= CYLON_WIDTH
+ 1; i
++)
37 test_draw_cylon_one(i
);
39 log_show_color(saved
);
42 TEST(terminal_urlify
) {
43 _cleanup_free_
char *formatted
= NULL
;
45 assert_se(terminal_urlify("https://www.freedesktop.org/wiki/Software/systemd", "systemd homepage", &formatted
) >= 0);
46 printf("Hey, consider visiting the %s right now! It is very good!\n", formatted
);
48 formatted
= mfree(formatted
);
50 assert_se(terminal_urlify_path("/etc/fstab", "this link to your /etc/fstab", &formatted
) >= 0);
51 printf("Or click on %s to have a look at it!\n", formatted
);
55 assert_se(cat_files("/no/such/file", NULL
, 0) == -ENOENT
);
56 assert_se(cat_files(NULL
, NULL
, 0) == 0);
58 if (access("/etc/fstab", R_OK
) >= 0)
59 assert_se(cat_files("/etc/fstab", STRV_MAKE("/etc/fstab", "/etc/fstab"), 0) == 0);
62 TEST(red_green_cross_check_mark
) {
65 printf("yea: <%s>\n", GREEN_CHECK_MARK());
66 printf("nay: <%s>\n", RED_CROSS_MARK());
68 printf("%s → %s → %s → %s\n",
72 COLOR_MARK_BOOL(!!!b
));
75 TEST(print_separator
) {
79 DEFINE_TEST_MAIN(LOG_INFO
);