u-boot/test/Kconfig
Simon Glass 29784d62ed test: Add some tests for kconfig.h
The macros in this file are a little confusing and we currently have no
tests to check that they work as expected.

Add some tests which check the macros in C code. Add a few tests which
check that the build errors are generated correctly too, using buildman's
-a option.

Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-10 13:38:30 -04:00

105 lines
2.9 KiB
Plaintext

menuconfig UNIT_TEST
bool "Unit tests"
help
Select this to compile in unit tests for various parts of
U-Boot. Test suites will be subcommands of the "ut" command.
This does not require sandbox to be included, but it is most
often used there.
config SPL_UNIT_TEST
bool "Unit tests in SPL"
depends on SPL
# We need to be able to unbind devices for tests to work
select SPL_DM_DEVICE_REMOVE
help
Select this to enable unit tests in SPL. Most test are designed for
running in U-Boot proper, but some are intended for SPL, such as
of-platdata and SPL handover. To run these tests with the sandbox_spl
board, use the -u (unit test) option.
config UT_LIB
bool "Unit tests for library functions"
depends on UNIT_TEST
default y if !SANDBOX_VPL
help
Enables the 'ut lib' command which tests library functions like
memcat(), memcyp(), memmove() and ASN1 compiler/decoder.
if UT_LIB
config UT_LIB_ASN1
bool "Unit test for asn1 compiler and decoder function"
default y
imply ASYMMETRIC_KEY_TYPE
imply ASYMMETRIC_PUBLIC_KEY_SUBTYPE
imply X509_CERTIFICATE_PARSER
imply PKCS7_MESSAGE_PARSER
imply RSA_PUBLIC_KEY_PARSER
help
Enables a test which exercises asn1 compiler and decoder function
via various parsers.
config UT_LIB_CRYPT
bool "Unit test for crypt-style password hashing"
depends on !SPL && AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
default y
select CRYPT_PW
select CRYPT_PW_SHA256
select CRYPT_PW_SHA512
help
Enables a test for the crypt-style password hash functions.
config UT_LIB_RSA
bool "Unit test for rsa_verify() function"
depends on RSA
depends on RSA_VERIFY_WITH_PKEY
select IMAGE_SIGN_INFO
default y
help
Enables rsa_verify() test, currently rsa_verify_with_pkey only()
only, at the 'ut lib' command.
endif
config UT_COMPRESSION
bool "Unit test for compression"
depends on UNIT_TEST
depends on CMDLINE && GZIP_COMPRESSED && BZIP2 && LZMA && LZO && LZ4
default y
help
Enables tests for compression and decompression routines for simple
sanity and for buffer overflow conditions.
config UT_LOG
bool "Unit tests for logging functions"
depends on UNIT_TEST
default y
help
Enables the 'ut log' command which tests logging functions like
log_err().
See also CONFIG_LOG_TEST which provides the 'log test' command.
config UT_TIME
bool "Unit tests for time functions"
depends on UNIT_TEST
help
Enables the 'ut time' command which tests that the time functions
work correctly. The test is fairly simple and will not catch all
problems. But if you are having problems with udelay() and the like,
this is a good place to start.
config UT_UNICODE
bool "Unit tests for Unicode functions"
depends on UNIT_TEST
default y
select CHARSET
help
Enables the 'ut unicode' command which tests that the functions for
manipulating Unicode strings work correctly.
source "test/dm/Kconfig"
source "test/env/Kconfig"
source "test/lib/Kconfig"
source "test/optee/Kconfig"
source "test/overlay/Kconfig"