Merge tag 'efi-2020-07-rc5-2' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
[oweals/u-boot.git] / test / cmd_ut.c
index b7e01a4847ebc825383c721aae8dd58bbd57e4f5..cc9543c315c1eda35a6a64769e18d62cfa197e68 100644 (file)
@@ -9,19 +9,28 @@
 #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);
 
@@ -35,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, "", ""),
@@ -43,9 +52,18 @@ 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
@@ -55,10 +73,15 @@ static cmd_tbl_t cmd_ut_sub[] = {
 #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;
@@ -74,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;
@@ -97,6 +120,7 @@ static int do_ut(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 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
@@ -105,9 +129,21 @@ static char ut_help_text[] =
 #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