#
# KUnit base configuration
#

menu "KUnit support"

config KUNIT
	bool "Enable support for unit tests (KUnit)"
	help
	  Enables support for kernel unit tests (KUnit), a lightweight unit
	  testing and mocking framework for the Linux kernel. These tests are
	  able to be run locally on a developer's workstation without a VM or
	  special hardware when using UML. Can also be used on most other
	  architectures. For more information, please see
	  Documentation/dev-tools/kunit/.

config KUNIT_TEST
	bool "KUnit test for KUnit"
	depends on KUNIT
	help
	  Enables the unit tests for the KUnit test framework. These tests test
	  the KUnit test framework itself; the tests are both written using
	  KUnit and test KUnit. This option should only be enabled for testing
	  purposes by developers interested in testing that KUnit works as
	  expected.

config KUNIT_EXAMPLE_TEST
	bool "Example test for KUnit"
	depends on KUNIT
	help
	  Enables an example unit test that illustrates some of the basic
	  features of KUnit. This test only exists to help new users understand
	  what KUnit is and how it is used. Please refer to the example test
	  itself, kunit/example-test.c, for more information. This option is
	  intended for curious hackers who would like to understand how to use
	  KUnit for kernel development.

endmenu
