mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-11-29 06:31:28 +01:00
test: Add a common unit test command
Add a command that all other unit tests should be a sub-command of. Also include a command that will run all tests. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
e721b882e9
commit
c617ede08a
11
include/test/suites.h
Normal file
11
include/test/suites.h
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
/*
|
||||||
|
* (C) Copyright 2015
|
||||||
|
* Joe Hershberger, National Instruments, joe.hershberger@ni.com
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __TEST_SUITES_H__
|
||||||
|
#define __TEST_SUITES_H__
|
||||||
|
|
||||||
|
#endif /* __TEST_SUITES_H__ */
|
||||||
@ -4,6 +4,7 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0+
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
#
|
#
|
||||||
|
|
||||||
|
obj-$(CONFIG_UNIT_TEST) += cmd_ut.o
|
||||||
obj-$(CONFIG_UNIT_TEST) += ut.o
|
obj-$(CONFIG_UNIT_TEST) += ut.o
|
||||||
obj-$(CONFIG_SANDBOX) += command_ut.o
|
obj-$(CONFIG_SANDBOX) += command_ut.o
|
||||||
obj-$(CONFIG_SANDBOX) += compression.o
|
obj-$(CONFIG_SANDBOX) += compression.o
|
||||||
|
|||||||
62
test/cmd_ut.c
Normal file
62
test/cmd_ut.c
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* (C) Copyright 2015
|
||||||
|
* Joe Hershberger, National Instruments, joe.hershberger@ni.com
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <common.h>
|
||||||
|
#include <command.h>
|
||||||
|
#include <test/suites.h>
|
||||||
|
|
||||||
|
static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
|
||||||
|
|
||||||
|
static cmd_tbl_t cmd_ut_sub[] = {
|
||||||
|
U_BOOT_CMD_MKENT(all, CONFIG_SYS_MAXARGS, 1, do_ut_all, "", ""),
|
||||||
|
};
|
||||||
|
|
||||||
|
static int do_ut_all(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
int retval;
|
||||||
|
int any_fail = 0;
|
||||||
|
|
||||||
|
for (i = 1; i < ARRAY_SIZE(cmd_ut_sub); i++) {
|
||||||
|
printf("----Running %s tests----\n", cmd_ut_sub[i].name);
|
||||||
|
retval = cmd_ut_sub[i].cmd(cmdtp, flag, 1, &cmd_ut_sub[i].name);
|
||||||
|
if (!any_fail)
|
||||||
|
any_fail = retval;
|
||||||
|
}
|
||||||
|
|
||||||
|
return any_fail;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int do_ut(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
|
{
|
||||||
|
cmd_tbl_t *cp;
|
||||||
|
|
||||||
|
if (argc < 2)
|
||||||
|
return CMD_RET_USAGE;
|
||||||
|
|
||||||
|
/* drop initial "ut" arg */
|
||||||
|
argc--;
|
||||||
|
argv++;
|
||||||
|
|
||||||
|
cp = find_cmd_tbl(argv[0], cmd_ut_sub, ARRAY_SIZE(cmd_ut_sub));
|
||||||
|
|
||||||
|
if (cp)
|
||||||
|
return cp->cmd(cmdtp, flag, argc, argv);
|
||||||
|
|
||||||
|
return CMD_RET_USAGE;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_SYS_LONGHELP
|
||||||
|
static char ut_help_text[] =
|
||||||
|
"all - execute all enabled tests\n"
|
||||||
|
;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
U_BOOT_CMD(
|
||||||
|
ut, CONFIG_SYS_MAXARGS, 1, do_ut,
|
||||||
|
"unit tests", ut_help_text
|
||||||
|
);
|
||||||
Loading…
x
Reference in New Issue
Block a user