common: Drop log.h from common header
[oweals/u-boot.git] / test / cmd_ut.c
index 6b24f463f3329d2eb300e1999e94a636cfb89ab0..cc9543c315c1eda35a6a64769e18d62cfa197e68 100644 (file)
@@ -1,8 +1,7 @@
+// SPDX-License-Identifier: GPL-2.0
 /*
  * (C) Copyright 2015
  * Joe Hershberger, National Instruments, joe.hershberger@ni.com
- *
- * SPDX-License-Identifier:    GPL-2.0
  */
 
 #include <common.h>
 #include <test/suites.h>
 #include <test/test.h>
 
-static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
+static int do_ut_all(struct cmd_tbl *cmdtp, int flag, int argc,
+                    char *const argv[]);
 
-int cmd_ut_category(const char *name, struct unit_test *tests, int n_ents,
-                   int argc, char * const argv[])
+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);
 
@@ -36,7 +44,7 @@ int cmd_ut_category(const char *name, struct unit_test *tests, int n_ents,
        return uts.fail_count ? CMD_RET_FAILURE : 0;
 }
 
-static cmd_tbl_t cmd_ut_sub[] = {
+static struct cmd_tbl cmd_ut_sub[] = {
        U_BOOT_CMD_MKENT(all, CONFIG_SYS_MAXARGS, 1, do_ut_all, "", ""),
 #if defined(CONFIG_UT_DM)
        U_BOOT_CMD_MKENT(dm, CONFIG_SYS_MAXARGS, 1, do_ut_dm, "", ""),
@@ -44,19 +52,36 @@ static cmd_tbl_t cmd_ut_sub[] = {
 #if defined(CONFIG_UT_ENV)
        U_BOOT_CMD_MKENT(env, CONFIG_SYS_MAXARGS, 1, do_ut_env, "", ""),
 #endif
+#ifdef CONFIG_UT_OPTEE
+       U_BOOT_CMD_MKENT(optee, CONFIG_SYS_MAXARGS, 1, do_ut_optee, "", ""),
+#endif
 #ifdef CONFIG_UT_OVERLAY
        U_BOOT_CMD_MKENT(overlay, CONFIG_SYS_MAXARGS, 1, do_ut_overlay, "", ""),
 #endif
+#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
+#if CONFIG_IS_ENABLED(UT_UNICODE) && !defined(API_BUILD)
+       U_BOOT_CMD_MKENT(unicode, CONFIG_SYS_MAXARGS, 1, do_ut_unicode, "", ""),
+#endif
 #ifdef CONFIG_SANDBOX
        U_BOOT_CMD_MKENT(compression, CONFIG_SYS_MAXARGS, 1, do_ut_compression,
                         "", ""),
+       U_BOOT_CMD_MKENT(bloblist, CONFIG_SYS_MAXARGS, 1, do_ut_bloblist,
+                        "", ""),
+       U_BOOT_CMD_MKENT(str, CONFIG_SYS_MAXARGS, 1, do_ut_str,
+                        "", ""),
 #endif
 };
 
-static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+static int do_ut_all(struct cmd_tbl *cmdtp, int flag, int argc,
+                    char *const argv[])
 {
        int i;
        int retval;
@@ -72,9 +97,9 @@ static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        return any_fail;
 }
 
-static int do_ut(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+static int do_ut(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 {
-       cmd_tbl_t *cp;
+       struct cmd_tbl *cp;
 
        if (argc < 2)
                return CMD_RET_USAGE;
@@ -94,23 +119,40 @@ static int do_ut(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 #ifdef CONFIG_SYS_LONGHELP
 static char ut_help_text[] =
        "all - execute all enabled tests\n"
+#ifdef CONFIG_SANDBOX
+       "ut bloblist - Test bloblist implementation\n"
+       "ut compression - Test compressors and bootm decompression\n"
+#endif
 #ifdef CONFIG_UT_DM
        "ut dm [test-name]\n"
 #endif
 #ifdef CONFIG_UT_ENV
        "ut env [test-name]\n"
 #endif
+#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
 #ifdef CONFIG_UT_OVERLAY
        "ut overlay [test-name]\n"
 #endif
+#ifdef CONFIG_SANDBOX
+       "ut str - Basic test of string functions\n"
+#endif
 #ifdef CONFIG_UT_TIME
        "ut time - Very basic test of time functions\n"
 #endif
-#ifdef CONFIG_SANDBOX
-       "ut compression - Test compressors and bootm decompression\n"
+#if defined(CONFIG_UT_UNICODE) && \
+       !defined(CONFIG_SPL_BUILD) && !defined(API_BUILD)
+       "ut unicode [test-name] - test Unicode functions\n"
 #endif
        ;
-#endif
+#endif /* CONFIG_SYS_LONGHELP */
 
 U_BOOT_CMD(
        ut, CONFIG_SYS_MAXARGS, 1, do_ut,