test: Add a new suite for commands

Add a new suite for 'cmd' tests, used for testing commands. These are
kept in the test/cmd directory.

For now it is empty, but it will be used for coreboot-command tests.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2023-10-01 19:15:12 -06:00 committed by Tom Rini
parent 9565771076
commit 4001e5ab9b
5 changed files with 44 additions and 0 deletions

15
include/test/cmd.h Normal file
View file

@ -0,0 +1,15 @@
/* SPDX-License-Identifier: GPL-2.0 */
/*
* Copyright 2023 Google LLC
* Written by Simon Glass <sjg@chromium.org>
*/
#ifndef __TEST_CMD_H__
#define __TEST_CMD_H__
#include <test/test.h>
/* Declare a new command test */
#define CMD_TEST(_name, _flags) UNIT_TEST(_name, _flags, cmd_test)
#endif /* __TEST_CMD_H__ */

View file

@ -34,6 +34,7 @@ int do_ut_bootstd(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[]);
int do_ut_bloblist(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[]);
int do_ut_cmd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]);
int do_ut_common(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]);
int do_ut_compression(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[]);

View file

@ -3,6 +3,8 @@
# Copyright (c) 2013 Google, Inc
# Copyright 2022-2023 Arm Limited and/or its affiliates <open-source-office@arm.com>
obj-y += cmd_ut_cmd.o
ifdef CONFIG_HUSH_PARSER
obj-$(CONFIG_CONSOLE_RECORD) += test_echo.o
endif

20
test/cmd/cmd_ut_cmd.c Normal file
View file

@ -0,0 +1,20 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright 2023 Google LLC
* Written by Simon Glass <sjg@chromium.org>
*
* Unit tests for command functions
*/
#include <command.h>
#include <test/cmd.h>
#include <test/suites.h>
#include <test/ut.h>
int do_ut_cmd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
{
struct unit_test *tests = UNIT_TEST_SUITE_START(cmd_test);
const int n_ents = UNIT_TEST_SUITE_COUNT(cmd_test);
return cmd_ut_category("cmd", "cmd_test_", tests, n_ents, argc, argv);
}

View file

@ -60,6 +60,9 @@ static struct cmd_tbl cmd_ut_sub[] = {
#ifdef CONFIG_BOOTSTD
U_BOOT_CMD_MKENT(bootstd, CONFIG_SYS_MAXARGS, 1, do_ut_bootstd,
"", ""),
#endif
#ifdef CONFIG_CMDLINE
U_BOOT_CMD_MKENT(cmd, CONFIG_SYS_MAXARGS, 1, do_ut_cmd, "", ""),
#endif
U_BOOT_CMD_MKENT(common, CONFIG_SYS_MAXARGS, 1, do_ut_common, "", ""),
#if defined(CONFIG_UT_DM)
@ -195,6 +198,9 @@ U_BOOT_LONGHELP(ut,
#ifdef CONFIG_BOOTSTD
"\nbootstd - standard boot implementation"
#endif
#ifdef CONFIG_CMDLINE
"\ncmd - test various commands"
#endif
#ifdef CONFIG_SANDBOX
"\ncompression - compressors and bootm decompression"
#endif