Branch data Line data Source code
1 : : /* SPDX-License-Identifier: LGPL-2.1+ */ 2 : : 3 : : #include <stdio.h> 4 : : #include <sys/stat.h> 5 : : #include <sys/types.h> 6 : : #include <unistd.h> 7 : : 8 : : #include "alloc-util.h" 9 : : #include "macro.h" 10 : : #include "pretty-print.h" 11 : : #include "strv.h" 12 : : #include "tests.h" 13 : : 14 : 4 : static void test_terminal_urlify(void) { 15 : 4 : _cleanup_free_ char *formatted = NULL; 16 : : 17 [ - + ]: 4 : assert_se(terminal_urlify("https://www.freedesktop.org/wiki/Software/systemd/", "systemd homepage", &formatted) >= 0); 18 : 4 : printf("Hey, consider visiting the %s right now! It is very good!\n", formatted); 19 : : 20 : 4 : formatted = mfree(formatted); 21 : : 22 [ - + ]: 4 : assert_se(terminal_urlify_path("/etc/fstab", "this link to your /etc/fstab", &formatted) >= 0); 23 : 4 : printf("Or click on %s to have a look at it!\n", formatted); 24 : 4 : } 25 : : 26 : 4 : static void test_cat_files(void) { 27 [ - + ]: 4 : assert_se(cat_files("/no/such/file", NULL, 0) == -ENOENT); 28 [ - + ]: 4 : assert_se(cat_files("/no/such/file", NULL, CAT_FLAGS_MAIN_FILE_OPTIONAL) == 0); 29 : : 30 [ + - ]: 4 : if (access("/etc/fstab", R_OK) >= 0) 31 [ - + ]: 4 : assert_se(cat_files("/etc/fstab", STRV_MAKE("/etc/fstab", "/etc/fstab"), 0) == 0); 32 : 4 : } 33 : : 34 : 4 : int main(int argc, char *argv[]) { 35 : 4 : test_setup_logging(LOG_INFO); 36 : : 37 : 4 : test_terminal_urlify(); 38 : 4 : test_cat_files(); 39 : : 40 : 4 : print_separator(); 41 : : 42 : 4 : return 0; 43 : : }