18c2ecf20Sopenharmony_ci#
28c2ecf20Sopenharmony_ci# KUnit base configuration
38c2ecf20Sopenharmony_ci#
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_cimenuconfig KUNIT
68c2ecf20Sopenharmony_ci	tristate "KUnit - Enable support for unit tests"
78c2ecf20Sopenharmony_ci	help
88c2ecf20Sopenharmony_ci	  Enables support for kernel unit tests (KUnit), a lightweight unit
98c2ecf20Sopenharmony_ci	  testing and mocking framework for the Linux kernel. These tests are
108c2ecf20Sopenharmony_ci	  able to be run locally on a developer's workstation without a VM or
118c2ecf20Sopenharmony_ci	  special hardware when using UML. Can also be used on most other
128c2ecf20Sopenharmony_ci	  architectures. For more information, please see
138c2ecf20Sopenharmony_ci	  Documentation/dev-tools/kunit/.
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciif KUNIT
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ciconfig KUNIT_DEBUGFS
188c2ecf20Sopenharmony_ci	bool "KUnit - Enable /sys/kernel/debug/kunit debugfs representation" if !KUNIT_ALL_TESTS
198c2ecf20Sopenharmony_ci	default KUNIT_ALL_TESTS
208c2ecf20Sopenharmony_ci	help
218c2ecf20Sopenharmony_ci	  Enable debugfs representation for kunit.  Currently this consists
228c2ecf20Sopenharmony_ci	  of /sys/kernel/debug/kunit/<test_suite>/results files for each
238c2ecf20Sopenharmony_ci	  test suite, which allow users to see results of the last test suite
248c2ecf20Sopenharmony_ci	  run that occurred.
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ciconfig KUNIT_TEST
278c2ecf20Sopenharmony_ci	tristate "KUnit test for KUnit" if !KUNIT_ALL_TESTS
288c2ecf20Sopenharmony_ci	default KUNIT_ALL_TESTS
298c2ecf20Sopenharmony_ci	help
308c2ecf20Sopenharmony_ci	  Enables the unit tests for the KUnit test framework. These tests test
318c2ecf20Sopenharmony_ci	  the KUnit test framework itself; the tests are both written using
328c2ecf20Sopenharmony_ci	  KUnit and test KUnit. This option should only be enabled for testing
338c2ecf20Sopenharmony_ci	  purposes by developers interested in testing that KUnit works as
348c2ecf20Sopenharmony_ci	  expected.
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ciconfig KUNIT_EXAMPLE_TEST
378c2ecf20Sopenharmony_ci	tristate "Example test for KUnit" if !KUNIT_ALL_TESTS
388c2ecf20Sopenharmony_ci	default KUNIT_ALL_TESTS
398c2ecf20Sopenharmony_ci	help
408c2ecf20Sopenharmony_ci	  Enables an example unit test that illustrates some of the basic
418c2ecf20Sopenharmony_ci	  features of KUnit. This test only exists to help new users understand
428c2ecf20Sopenharmony_ci	  what KUnit is and how it is used. Please refer to the example test
438c2ecf20Sopenharmony_ci	  itself, lib/kunit/example-test.c, for more information. This option
448c2ecf20Sopenharmony_ci	  is intended for curious hackers who would like to understand how to
458c2ecf20Sopenharmony_ci	  use KUnit for kernel development.
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ciconfig KUNIT_ALL_TESTS
488c2ecf20Sopenharmony_ci	tristate "All KUnit tests with satisfied dependencies"
498c2ecf20Sopenharmony_ci	help
508c2ecf20Sopenharmony_ci	  Enables all KUnit tests, if they can be enabled.
518c2ecf20Sopenharmony_ci	  KUnit tests run during boot and output the results to the debug log
528c2ecf20Sopenharmony_ci	  in TAP format (http://testanything.org/). Only useful for kernel devs
538c2ecf20Sopenharmony_ci	  running the KUnit test harness, and not intended for inclusion into a
548c2ecf20Sopenharmony_ci	  production build.
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci	  For more information on KUnit and unit tests in general please refer
578c2ecf20Sopenharmony_ci	  to the KUnit documentation in Documentation/dev-tools/kunit/.
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci	  If unsure, say N.
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ciendif # KUNIT
62