Tom Rini | 10e4779 | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
Joe Hershberger | 11dd7cc | 2015-05-20 14:27:28 -0500 | [diff] [blame] | 2 | /* |
| 3 | * (C) Copyright 2015 |
| 4 | * Joe Hershberger, National Instruments, joe.hershberger@ni.com |
Joe Hershberger | 11dd7cc | 2015-05-20 14:27:28 -0500 | [diff] [blame] | 5 | */ |
| 6 | |
| 7 | #ifndef __TEST_SUITES_H__ |
| 8 | #define __TEST_SUITES_H__ |
| 9 | |
Simon Glass | ed38aef | 2020-05-10 11:40:03 -0600 | [diff] [blame] | 10 | struct cmd_tbl; |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 11 | struct unit_test; |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 12 | struct unit_test_state; |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 13 | |
Simon Glass | 78fd76b | 2025-01-20 14:25:33 -0700 | [diff] [blame] | 14 | /* 'command' functions normally called do_xxx where xxx is the command name */ |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 15 | typedef int (*ut_cmd_func)(struct unit_test_state *uts, struct cmd_tbl *cmd, |
| 16 | int flags, int argc, char *const argv[]); |
Simon Glass | 78fd76b | 2025-01-20 14:25:33 -0700 | [diff] [blame] | 17 | |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 18 | /** |
| 19 | * cmd_ut_category() - Run a category of unit tests |
| 20 | * |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 21 | * @uts: Unit-test state, which must be ready for use, i.e. ut_init_state() |
| 22 | * has been called. The caller is responsible for calling |
| 23 | * ut_uninit_state() after this function returns |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 24 | * @name: Category name |
Philippe Reynes | 1f99f84 | 2019-12-17 19:07:04 +0100 | [diff] [blame] | 25 | * @prefix: Prefix of test name |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 26 | * @tests: List of tests to run |
| 27 | * @n_ents: Number of tests in @tests |
Heinrich Schuchardt | d41a382 | 2018-08-27 22:04:10 +0200 | [diff] [blame] | 28 | * @argc: Argument count provided. Must be >= 1. If this is 1 then all |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 29 | * tests are run, otherwise only the one named @argv[1] is run. |
| 30 | * @argv: Arguments: argv[1] is the test to run (if @argc >= 2) |
Heinrich Schuchardt | 47b4c02 | 2022-01-19 18:05:50 +0100 | [diff] [blame] | 31 | * Return: 0 if OK, CMD_RET_FAILURE on failure |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 32 | */ |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 33 | int cmd_ut_category(struct unit_test_state *uts, const char *name, |
| 34 | const char *prefix, struct unit_test *tests, int n_ents, |
Simon Glass | ed38aef | 2020-05-10 11:40:03 -0600 | [diff] [blame] | 35 | int argc, char *const argv[]); |
Simon Glass | 81cbe1c | 2017-11-25 11:57:29 -0700 | [diff] [blame] | 36 | |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 37 | int do_ut_bootstd(struct unit_test_state *uts, struct cmd_tbl *cmdtp, int flag, |
| 38 | int argc, char *const argv[]); |
Simon Glass | ed38aef | 2020-05-10 11:40:03 -0600 | [diff] [blame] | 39 | int do_ut_optee(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]); |
Simon Glass | 6685ece | 2025-01-20 14:25:58 -0700 | [diff] [blame] | 40 | int do_ut_overlay(struct unit_test_state *uts, struct cmd_tbl *cmdtp, int flag, |
| 41 | int argc, char *const argv[]); |
Joe Hershberger | 9dc1d71 | 2015-05-20 14:27:29 -0500 | [diff] [blame] | 42 | |
Joe Hershberger | 11dd7cc | 2015-05-20 14:27:28 -0500 | [diff] [blame] | 43 | #endif /* __TEST_SUITES_H__ */ |