test: Pass the test state to cmd_ut_category()

Update this function to access a unit-test state, so that the caller can
collect results from running multiple suites.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2025-01-20 14:25:58 -07:00
committed by Tom Rini
parent 374203bd2e
commit bbff0b165c
4 changed files with 38 additions and 36 deletions

View File

@@ -9,14 +9,18 @@
struct cmd_tbl;
struct unit_test;
struct unit_test_state;
/* 'command' functions normally called do_xxx where xxx is the command name */
typedef int (*ut_cmd_func)(struct cmd_tbl *cmd, int flags, int argc,
char *const argv[]);
typedef int (*ut_cmd_func)(struct unit_test_state *uts, struct cmd_tbl *cmd,
int flags, int argc, char *const argv[]);
/**
* cmd_ut_category() - Run a category of unit tests
*
* @uts: Unit-test state, which must be ready for use, i.e. ut_init_state()
* has been called. The caller is responsible for calling
* ut_uninit_state() after this function returns
* @name: Category name
* @prefix: Prefix of test name
* @tests: List of tests to run
@@ -26,14 +30,14 @@ typedef int (*ut_cmd_func)(struct cmd_tbl *cmd, int flags, int argc,
* @argv: Arguments: argv[1] is the test to run (if @argc >= 2)
* Return: 0 if OK, CMD_RET_FAILURE on failure
*/
int cmd_ut_category(const char *name, const char *prefix,
struct unit_test *tests, int n_ents,
int cmd_ut_category(struct unit_test_state *uts, const char *name,
const char *prefix, struct unit_test *tests, int n_ents,
int argc, char *const argv[]);
int do_ut_bootstd(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[]);
int do_ut_bootstd(struct unit_test_state *uts, struct cmd_tbl *cmdtp, int flag,
int argc, char *const argv[]);
int do_ut_optee(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]);
int do_ut_overlay(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[]);
int do_ut_overlay(struct unit_test_state *uts, struct cmd_tbl *cmdtp, int flag,
int argc, char *const argv[]);
#endif /* __TEST_SUITES_H__ */