buildman: Use yellow consistently for warning lines
[oweals/u-boot.git] / test / cmd_ut.c
index 2781f8bd5668cafdde519bb1653cdc3e8a7f8172..7fdcdbb1a63760beada556b87abee4a85c4ea7a1 100644 (file)
 
 static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
 
-int cmd_ut_category(const char *name, struct unit_test *tests, int n_ents,
+int cmd_ut_category(const char *name, const char *prefix,
+                   struct unit_test *tests, int n_ents,
                    int argc, char * const argv[])
 {
        struct unit_test_state uts = { .fail_count = 0 };
        struct unit_test *test;
+       int prefix_len = prefix ? strlen(prefix) : 0;
 
        if (argc == 1)
                printf("Running %d %s tests\n", n_ents, name);
 
        for (test = tests; test < tests + n_ents; test++) {
-               if (argc > 1 && strcmp(argv[1], test->name))
+               const char *test_name = test->name;
+
+               /* Remove the prefix */
+               if (prefix && !strncmp(test_name, prefix, prefix_len))
+                       test_name += prefix_len;
+
+               if (argc > 1 && strcmp(argv[1], test_name))
                        continue;
                printf("Test: %s\n", test->name);
 
@@ -52,6 +60,9 @@ static cmd_tbl_t cmd_ut_sub[] = {
 #ifdef CONFIG_UT_LIB
        U_BOOT_CMD_MKENT(lib, CONFIG_SYS_MAXARGS, 1, do_ut_lib, "", ""),
 #endif
+#ifdef CONFIG_UT_LOG
+       U_BOOT_CMD_MKENT(log, CONFIG_SYS_MAXARGS, 1, do_ut_log, "", ""),
+#endif
 #ifdef CONFIG_UT_TIME
        U_BOOT_CMD_MKENT(time, CONFIG_SYS_MAXARGS, 1, do_ut_time, "", ""),
 #endif
@@ -117,6 +128,9 @@ static char ut_help_text[] =
 #ifdef CONFIG_UT_LIB
        "ut lib [test-name] - test library functions\n"
 #endif
+#ifdef CONFIG_UT_LOG
+       "ut log [test-name] - test logging functions\n"
+#endif
 #ifdef CONFIG_UT_OPTEE
        "ut optee [test-name]\n"
 #endif